** Description changed: + [Impact] + + With the addition of SIXEL support by default, tmux may crash due to + SIXEL images having no color or being unable to scale. This is most + often seen when opening neovim in a tmux session. + + This fix will allow problematic SIXEL images to render without crashing + tmux, and most importantly will fix using neovim in tmux. + + The bug is fixed through an upstream patch that adds checks for a lack + of colors or scalability in SIXEL images, while also freeing them + regardless of reflow state. + + [Test Plan] + + As stated by the reporter, the steps to reproduce are: + + Steps to reproduce: + 1. SSH to a Noble machine + 2. Install latest stable release of neovim (0.10.0) + 3. Run tmux with 'tmux -vv' to spawn a server with verbose logging + 4. Run neovim with 'sudo nvim -u NONE' + 5. [server exited unexpectedly] + + Observe in log (tmux-server-PID.log): + 1717870463.535540 input_enter_dcs + 1717870463.535557 screen_write_collect_flush: flushed 0 items (screen_write_sixelimage) + 1717870463.535577 tty_cmd_sixelimage: image is 1x1 + 1717870463.535595 tty_cmd_sixelimage: clamping to 0,0-1,1 + 1717870463.535615 fatal: xcalloc: zero size + + The bug is fixed when tmux no longer crashes after following these + instructions. + + + [Where problems could occur] + + Based on the changes added through the commit, problems would be limited + to sixel image rendering. Previously, images with no colors or ability + to scale would lead to a crash. Now, however, they cause their + respective functions to bail out early. Likewise no color images cause + sixel_print() to return NULL. If other functions calling these do not + handle the results properly, then this may cause new issues. Finally, + when resizing the screen, all images are freed and redrawn regardless of + reflow. This may cause changes in behavior when resizing the screen + without reflow enabled. + + [Other Info] + + This bug has been fixed in Debian Sid and Oracular through the inclusion of individual upstream commits as patches in 3.4-3 + + [Original Description] + Please sync tmux (main) from Oracular (main) Noble was released with 3.4 which introduced half-baked Sixel support enabled by default that now had two important crash fixes upstream.
** Changed in: tmux (Ubuntu Noble) Status: Incomplete => In Progress -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/2068393 Title: Two Sixel support fixes needed for stabilization on noble To manage notifications about this bug go to: https://bugs.launchpad.net/tmux/+bug/2068393/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs