Package: libgtk-3-0 Version: 3.14.5-1 Severity: important Tags: patch, jessie, sid, fixed-in-experimental
Dear Maintainer, There is a bug in the jessie/sid version of gtk+3.0 which causes problems with multiple programs. The most annoying of them (at least for me) seems to be that gnome-terminal-server occasionally freezes and makes it necessary to close down all open terminal windows. It has been fixed upstream and also in the Debian experimental version, but it is still present in jessie and sid. I think it is as severe that it should be fixed also in jessie. The upstream bug is here: https://bugzilla.gnome.org/show_bug.cgi?id=742636 with some discussion also here: https://bugzilla.gnome.org/show_bug.cgi?id=735101 A nice little Python script for testing the presence of the bug is also attached to the latter bug: https://bugzilla.gnome.org/attachment.cgi?id=304326 (Just hit the 'Make it stop working' button a lot, and when the window closes, things are broken :) ) For sid, it will be fixed as soon as experimental is migrated, but for jessie, a patch is needed. I've applied the following patch to 3.14.5-1 on a system running Jessie and it seems to fix the problem: Index: gtk+3.0-3.14.5/gdk/gdkinternals.h =================================================================== --- gtk+3.0-3.14.5.orig/gdk/gdkinternals.h +++ gtk+3.0-3.14.5/gdk/gdkinternals.h @@ -240,6 +240,7 @@ struct _GdkWindow guint in_update : 1; guint geometry_dirty : 1; guint event_compression : 1; + guint frame_clock_events_paused : 1; /* The GdkWindow that has the impl, ref:ed if another window. * This ref is required to keep the wrapper of the impl window alive Index: gtk+3.0-3.14.5/gdk/gdkwindow.c =================================================================== --- gtk+3.0-3.14.5.orig/gdk/gdkwindow.c +++ gtk+3.0-3.14.5/gdk/gdkwindow.c @@ -10603,6 +10603,8 @@ gdk_window_flush_events (GdkFrameClock * _gdk_display_pause_events (display); gdk_frame_clock_request_phase (clock, GDK_FRAME_CLOCK_PHASE_RESUME_EVENTS); + + window->frame_clock_events_paused = TRUE; } static void @@ -10629,6 +10631,8 @@ gdk_window_resume_events (GdkFrameClock display = gdk_window_get_display (window); _gdk_display_unpause_events (display); + + window->frame_clock_events_paused = FALSE; } static void @@ -10661,6 +10665,9 @@ gdk_window_set_frame_clock (GdkWindow if (window->frame_clock) { + if (window->frame_clock_events_paused) + gdk_window_resume_events (window->frame_clock, G_OBJECT (window)); + g_signal_handlers_disconnect_by_func (G_OBJECT (window->frame_clock), G_CALLBACK (gdk_window_flush_events), window); Best regards, Ruben -- System Information: Debian Release: 8.1 APT prefers stable-updates APT policy: (500, 'stable-updates'), (500, 'proposed-updates'), (500, 'stable') Architecture: amd64 (x86_64) Foreign Architectures: i386, armel Kernel: Linux 3.16.0-4-amd64 (SMP w/8 CPU cores) Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Init: systemd (via /run/systemd/system) Versions of packages libgtk-3-0 depends on: ii libatk-bridge2.0-0 2.14.0-2 ii libatk1.0-0 2.14.0-1 ii libc6 2.19-18 ii libcairo-gobject2 1.14.0-2.1 ii libcairo2 1.14.0-2.1 ii libcolord2 1.2.1-1+b2 ii libcups2 1.7.5-11 ii libfontconfig1 2.11.0-6.3 ii libfreetype6 2.5.2-3 ii libgdk-pixbuf2.0-0 2.31.1-2+b1 ii libglib2.0-0 2.42.1-1 ii libgtk-3-common 3.14.5-1 ii libjson-glib-1.0-0 1.0.2-1 ii libpango-1.0-0 1.36.8-3 ii libpangocairo-1.0-0 1.36.8-3 ii libpangoft2-1.0-0 1.36.8-3 ii librest-0.7-0 0.7.92-3 ii libsoup2.4-1 2.48.0-1 ii libwayland-client0 1.6.0-2 ii libwayland-cursor0 1.6.0-2 ii libx11-6 2:1.6.2-3 ii libxcomposite1 1:0.4.4-1 ii libxcursor1 1:1.1.14-1+b1 ii libxdamage1 1:1.1.4-2+b1 ii libxext6 2:1.3.3-1 ii libxfixes3 1:5.0.1-2+b2 ii libxi6 2:1.7.4-1+b2 ii libxinerama1 2:1.1.3-1+b1 ii libxkbcommon0 0.4.3-2 ii libxml2 2.9.1+dfsg1-5 ii libxrandr2 2:1.4.2-1+b1 ii multiarch-support 2.19-18 ii shared-mime-info 1.3-1 Versions of packages libgtk-3-0 recommends: ii hicolor-icon-theme 0.13-1 ii libgtk-3-bin 3.14.5-1 Versions of packages libgtk-3-0 suggests: ii gvfs 1.22.2-1 ii librsvg2-common 2.40.5-1 -- no debconf information -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org