Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package tmux for openSUSE:Factory checked in 
at 2026-05-25 21:53:40
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/tmux (Old)
 and      /work/SRC/openSUSE:Factory/.tmux.new.2084 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "tmux"

Mon May 25 21:53:40 2026 rev:64 rq:1354965 version:3.6b

Changes:
--------
--- /work/SRC/openSUSE:Factory/tmux/tmux.changes        2025-12-11 
18:32:13.366501525 +0100
+++ /work/SRC/openSUSE:Factory/.tmux.new.2084/tmux.changes      2026-05-25 
21:56:53.053163756 +0200
@@ -1,0 +2,7 @@
+Thu May 21 09:25:15 UTC 2026 - Fredrik Lönnegren <[email protected]>
+
+- tmux 3.6b:
+  * Remove images from the correct list when they are removed while in the
+    alternate screen.
+
+-------------------------------------------------------------------

Old:
----
  tmux-3.6a.tar.gz

New:
----
  tmux-3.6b.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ tmux.spec ++++++
--- /var/tmp/diff_new_pack.UwhDyP/_old  2026-05-25 21:56:53.825195514 +0200
+++ /var/tmp/diff_new_pack.UwhDyP/_new  2026-05-25 21:56:53.825195514 +0200
@@ -18,7 +18,7 @@
 
 
 Name:           tmux
-Version:        3.6a
+Version:        3.6b
 Release:        0
 Summary:        Terminal multiplexer
 License:        ISC AND BSD-3-Clause AND BSD-2-Clause

++++++ tmux-3.6a.tar.gz -> tmux-3.6b.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tmux-3.6a/CHANGES new/tmux-3.6b/CHANGES
--- old/tmux-3.6a/CHANGES       2025-12-05 06:39:41.000000000 +0100
+++ new/tmux-3.6b/CHANGES       2026-05-20 17:38:14.000000000 +0200
@@ -1,3 +1,8 @@
+CHANGES FROM 3.6a TO 3.6b
+
+* Remove images from the correct list when they are removed while in the
+  alternate screen (reported by xlabai at tencent dot com).
+
 CHANGES FROM 3.6 TO 3.6a
 
 * Fix a buffer overread and an infinite loop in format processing (reported by
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tmux-3.6a/configure new/tmux-3.6b/configure
--- old/tmux-3.6a/configure     2025-12-05 06:48:18.000000000 +0100
+++ new/tmux-3.6b/configure     2026-05-20 17:40:32.000000000 +0200
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for tmux 3.6a.
+# Generated by GNU Autoconf 2.69 for tmux 3.6b.
 #
 #
 # Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
@@ -577,8 +577,8 @@
 # Identity of this package.
 PACKAGE_NAME='tmux'
 PACKAGE_TARNAME='tmux'
-PACKAGE_VERSION='3.6a'
-PACKAGE_STRING='tmux 3.6a'
+PACKAGE_VERSION='3.6b'
+PACKAGE_STRING='tmux 3.6b'
 PACKAGE_BUGREPORT=''
 PACKAGE_URL=''
 
@@ -1386,7 +1386,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures tmux 3.6a to adapt to many kinds of systems.
+\`configure' configures tmux 3.6b to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1457,7 +1457,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of tmux 3.6a:";;
+     short | recursive ) echo "Configuration of tmux 3.6b:";;
    esac
   cat <<\_ACEOF
 
@@ -1615,7 +1615,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-tmux configure 3.6a
+tmux configure 3.6b
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -2026,7 +2026,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by tmux $as_me 3.6a, which was
+It was created by tmux $as_me 3.6b, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -2892,7 +2892,7 @@
 
 # Define the identity of the package.
  PACKAGE='tmux'
- VERSION='3.6a'
+ VERSION='3.6b'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -8949,7 +8949,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by tmux $as_me 3.6a, which was
+This file was extended by tmux $as_me 3.6b, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -9006,7 +9006,7 @@
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; 
s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-tmux config.status 3.6a
+tmux config.status 3.6b
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tmux-3.6a/configure.ac new/tmux-3.6b/configure.ac
--- old/tmux-3.6a/configure.ac  2025-12-05 06:37:44.000000000 +0100
+++ new/tmux-3.6b/configure.ac  2026-05-20 17:39:26.000000000 +0200
@@ -1,6 +1,6 @@
 # configure.ac
 
-AC_INIT([tmux], 3.6a)
+AC_INIT([tmux], 3.6b)
 AC_PREREQ([2.60])
 
 AC_CONFIG_AUX_DIR(etc)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tmux-3.6a/image.c new/tmux-3.6b/image.c
--- old/tmux-3.6a/image.c       2023-08-22 09:44:11.000000000 +0200
+++ new/tmux-3.6b/image.c       2026-05-20 17:39:00.000000000 +0200
@@ -25,6 +25,7 @@
 
 static struct images   all_images = TAILQ_HEAD_INITIALIZER(all_images);
 static u_int           all_images_count;
+#define MAX_IMAGE_COUNT 20
 
 static void
 image_free(struct image *im)
@@ -34,7 +35,7 @@
        TAILQ_REMOVE(&all_images, im, all_entry);
        all_images_count--;
 
-       TAILQ_REMOVE(&s->images, im, entry);
+       TAILQ_REMOVE(im->list, im, entry);
        sixel_free(im->data);
        free(im->fallback);
        free(im);
@@ -108,10 +109,11 @@
 
        image_fallback(&im->fallback, im->sx, im->sy);
 
-       TAILQ_INSERT_TAIL(&s->images, im, entry);
+       im->list = &s->images;
+       TAILQ_INSERT_TAIL(im->list, im, entry);
 
        TAILQ_INSERT_TAIL(&all_images, im, all_entry);
-       if (++all_images_count == 10/*XXX*/)
+       if (++all_images_count == MAX_IMAGE_COUNT)
                image_free(TAILQ_FIRST(&all_images));
 
        return (im);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tmux-3.6a/screen.c new/tmux-3.6b/screen.c
--- old/tmux-3.6a/screen.c      2025-12-02 15:25:05.000000000 +0100
+++ new/tmux-3.6b/screen.c      2026-05-20 17:39:00.000000000 +0200
@@ -633,7 +633,10 @@
 void
 screen_alternate_on(struct screen *s, struct grid_cell *gc, int cursor)
 {
-       u_int   sx, sy;
+       u_int            sx, sy;
+#ifdef ENABLE_SIXEL
+       struct image    *im;
+#endif
 
        if (SCREEN_IS_ALTERNATE(s))
                return;
@@ -650,6 +653,8 @@
 
 #ifdef ENABLE_SIXEL
        TAILQ_CONCAT(&s->saved_images, &s->images, entry);
+       TAILQ_FOREACH(im, &s->saved_images, entry)
+           im->list = &s->saved_images;
 #endif
 
        grid_view_clear(s->grid, 0, 0, sx, sy, 8);
@@ -662,7 +667,10 @@
 void
 screen_alternate_off(struct screen *s, struct grid_cell *gc, int cursor)
 {
-       u_int   sx = screen_size_x(s), sy = screen_size_y(s);
+       u_int            sx = screen_size_x(s), sy = screen_size_y(s);
+#ifdef ENABLE_SIXEL
+       struct image    *im;
+#endif
 
        /*
         * If the current size is different, temporarily resize to the old size
@@ -709,6 +717,8 @@
 #ifdef ENABLE_SIXEL
        image_free_all(s);
        TAILQ_CONCAT(&s->images, &s->saved_images, entry);
+       TAILQ_FOREACH(im, &s->images, entry)
+           im->list = &s->images;
 #endif
 
        if (s->cx > screen_size_x(s) - 1)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tmux-3.6a/tmux.h new/tmux-3.6b/tmux.h
--- old/tmux-3.6a/tmux.h        2025-12-05 06:37:44.000000000 +0100
+++ new/tmux-3.6b/tmux.h        2026-05-20 17:39:00.000000000 +0200
@@ -936,8 +936,10 @@
        u_int                    sx;
        u_int                    sy;
 
-       TAILQ_ENTRY (image)      all_entry;
+       struct images           *list;
        TAILQ_ENTRY (image)      entry;
+
+       TAILQ_ENTRY (image)      all_entry;
 };
 TAILQ_HEAD(images, image);
 #endif

Reply via email to