Package: release.debian.org Severity: normal Tags: bookworm User: release.debian....@packages.debian.org Usertags: pu X-Debbugs-Cc: vte2...@packages.debian.org Control: affects -1 + src:vte2.91
I've uploaded another proposed vte2.91 update for bookworm. Please consider this for 12.2. [ Reason ] #1040049 [ Impact ] If not fixed, there is a crash with an assertion failure that occurs frequently in some user workflows (I've never been able to reproduce it myself, but the bug reporter Luca Boccassi saw it frequently). [ Tests ] Luca has been running a prerelease version of this update (identical except for version number) for several weeks, and has not seen the bug again. Available from: https://people.debian.org/~smcv/12.2/pool/main/v/vte2.91/ A functionally equivalent version was in testing for about 1 week before being superseded by a newer upstream release, with no regression reports. The version proposed here is a straightforward rebuild of that version for bookworm. [ Risks ] Low risk: targeted fix from upstream which just invalidates caches more often. [ Checklist ] [x] *all* changes are documented in the d/changelog [x] I reviewed all changes and I approve them [x] attach debdiff against the package in (old)stable [x] the issue is verified as fixed in unstable [ Changes ] All changes are for #1040049, no extraneous diff present.
diffstat for vte2.91-0.70.6 vte2.91-0.70.6 debian/changelog | 17 ++ debian/patches/series | 1 debian/patches/widget-Invalidate-ringview-when-the-invalidating.patch | 69 ++++++++++ src/vte.cc | 13 + 4 files changed, 100 insertions(+) diff -Nru vte2.91-0.70.6/debian/changelog vte2.91-0.70.6/debian/changelog --- vte2.91-0.70.6/debian/changelog 2023-06-14 12:17:06.000000000 +0100 +++ vte2.91-0.70.6/debian/changelog 2023-08-09 13:01:27.000000000 +0100 @@ -1,3 +1,20 @@ +vte2.91 (0.70.6-2~deb12u1) bookworm; urgency=medium + + * Team upload + * Rebuild for bookworm (Closes: #1040049) + + -- Simon McVittie <s...@debian.org> Wed, 09 Aug 2023 13:01:27 +0100 + +vte2.91 (0.70.6-2) unstable; urgency=medium + + * Team upload + * d/p/widget-Invalidate-ringview-when-the-invalidating.patch: + Add patch from upstream git to invalidate ring view more often when + necessary, fixing various assertion failures during event handling + (Closes: #1040049) + + -- Simon McVittie <s...@debian.org> Fri, 14 Jul 2023 11:31:40 +0100 + vte2.91 (0.70.6-1~deb12u1) bookworm; urgency=medium * Team upload diff -Nru vte2.91-0.70.6/debian/patches/series vte2.91-0.70.6/debian/patches/series --- vte2.91-0.70.6/debian/patches/series 2023-06-14 12:17:06.000000000 +0100 +++ vte2.91-0.70.6/debian/patches/series 2023-08-09 13:01:27.000000000 +0100 @@ -1 +1,2 @@ +widget-Invalidate-ringview-when-the-invalidating.patch Allow-background-color-and-color-on-VteTerminal-widgets-t.patch diff -Nru vte2.91-0.70.6/debian/patches/widget-Invalidate-ringview-when-the-invalidating.patch vte2.91-0.70.6/debian/patches/widget-Invalidate-ringview-when-the-invalidating.patch --- vte2.91-0.70.6/debian/patches/widget-Invalidate-ringview-when-the-invalidating.patch 1970-01-01 01:00:00.000000000 +0100 +++ vte2.91-0.70.6/debian/patches/widget-Invalidate-ringview-when-the-invalidating.patch 2023-08-09 13:01:27.000000000 +0100 @@ -0,0 +1,69 @@ +From: Egmont Koblinger <egm...@gmail.com> +Date: Thu, 13 Jul 2023 21:59:29 +0200 +Subject: widget: Invalidate ringview when the invalidating + +When the ringview is not invalidated when the ring has changed leads to +failed assertion aborts when handling events, e.g. vte#2636, vte#2637, +vte#2632, vte#2577. + +Bug: https://gitlab.gnome.org/GNOME/vte/-/issues/2636 +Bug: https://gitlab.gnome.org/GNOME/vte/-/issues/2637 +Bug-Debian: https://bugs.debian.org/1040049 +Applied-upstream: 0.73.0, commit:461bc3e43c819fa0e3b62d0cf40ef533a69cc7f7 +--- + src/vte.cc | 13 +++++++++++++ + 1 file changed, 13 insertions(+) + +diff --git a/src/vte.cc b/src/vte.cc +index b8e15d7..561cc42 100644 +--- a/src/vte.cc ++++ b/src/vte.cc +@@ -2050,6 +2050,7 @@ Terminal::queue_adjustment_value_changed(double v) + _vte_debug_print(VTE_DEBUG_ADJ, + "Scrolling by %f\n", dy); + ++ m_ringview.invalidate(); + invalidate_all(); + match_contents_clear(); + emit_text_scrolled(dy); +@@ -2899,6 +2900,9 @@ Terminal::drop_scrollback() + if (m_screen == &m_normal_screen) { + queue_adjustment_value_changed(m_normal_screen.insert_delta); + adjust_adjustments_full(); ++ m_ringview.invalidate(); ++ invalidate_all(); ++ match_contents_clear(); + } + } + +@@ -7548,6 +7552,9 @@ Terminal::set_size(long columns, + gtk_widget_queue_resize(m_widget); // FIXMEgtk4? + #endif + ++ m_ringview.invalidate(); ++ invalidate_all(); ++ match_contents_clear(); + /* Our visible text changed. */ + emit_text_modified(); + } +@@ -9780,6 +9787,10 @@ Terminal::set_scrollback_lines(long lines) + queue_adjustment_value_changed(scroll_delta); + adjust_adjustments_full(); + ++ m_ringview.invalidate(); ++ invalidate_all(); ++ match_contents_clear(); ++ + return true; + } + +@@ -9962,7 +9973,9 @@ Terminal::reset(bool clear_tabstops, + /* BiDi */ + m_bidi_rtl = FALSE; + /* Cause everything to be redrawn (or cleared). */ ++ m_ringview.invalidate(); + invalidate_all(); ++ match_contents_clear(); + + /* Reset XTerm window controls */ + m_xterm_wm_iconified = false; diff -Nru vte2.91-0.70.6/src/vte.cc vte2.91-0.70.6/src/vte.cc --- vte2.91-0.70.6/src/vte.cc 2023-06-01 20:34:34.000000000 +0100 +++ vte2.91-0.70.6/src/vte.cc 2023-08-20 12:20:20.000000000 +0100 @@ -2050,6 +2050,7 @@ _vte_debug_print(VTE_DEBUG_ADJ, "Scrolling by %f\n", dy); + m_ringview.invalidate(); invalidate_all(); match_contents_clear(); emit_text_scrolled(dy); @@ -2899,6 +2900,9 @@ if (m_screen == &m_normal_screen) { queue_adjustment_value_changed(m_normal_screen.insert_delta); adjust_adjustments_full(); + m_ringview.invalidate(); + invalidate_all(); + match_contents_clear(); } } @@ -7548,6 +7552,9 @@ gtk_widget_queue_resize(m_widget); // FIXMEgtk4? #endif + m_ringview.invalidate(); + invalidate_all(); + match_contents_clear(); /* Our visible text changed. */ emit_text_modified(); } @@ -9780,6 +9787,10 @@ queue_adjustment_value_changed(scroll_delta); adjust_adjustments_full(); + m_ringview.invalidate(); + invalidate_all(); + match_contents_clear(); + return true; } @@ -9962,7 +9973,9 @@ /* BiDi */ m_bidi_rtl = FALSE; /* Cause everything to be redrawn (or cleared). */ + m_ringview.invalidate(); invalidate_all(); + match_contents_clear(); /* Reset XTerm window controls */ m_xterm_wm_iconified = false;