Merge lp:~azzar1/gtk/fix-1720400 into lp:~ubuntu-desktop/gtk/ubuntugtk3

Proposed by Andrea Azzarone
Status: Merged
Merged at revision: 580
Proposed branch: lp:~azzar1/gtk/fix-1720400
Merge into: lp:~ubuntu-desktop/gtk/ubuntugtk3
Diff against target: 61 lines (+41/-0)
3 files modified
debian/changelog (+8/-0)
debian/patches/clear_glcontext_on_window_withdraw.patch (+32/-0)
debian/patches/series (+1/-0)
To merge this branch: bzr merge lp:~azzar1/gtk/fix-1720400
Reviewer Review Type Date Requested Status
Jeremy Bícha Approve
Review via email: mp+332776@code.launchpad.net

Commit message

Apply proposed fix for a segmentation fault when adding Google online account.

To post a comment you must log in.
Revision history for this message
Jeremy Bícha (jbicha) wrote :

Thanks!

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'debian/changelog'
2--- debian/changelog 2017-10-16 12:35:41 +0000
3+++ debian/changelog 2017-10-25 11:51:35 +0000
4@@ -1,3 +1,11 @@
5+gtk+3.0 (3.22.24-0ubuntu3) UNRELEASED; urgency=medium
6+
7+ * Add clear_glcontext_on_window_withdraw.patch:
8+ - Apply proposed fix for a segmentation fault when
9+ adding Google online account (LP: #1720400)
10+
11+ -- Andrea Azzarone <andrea.azzarone@canonical.com> Wed, 25 Oct 2017 11:16:44 +0000
12+
13 gtk+3.0 (3.22.24-0ubuntu2) UNRELEASED; urgency=medium
14
15 * Add 0004_fix-gtkentry-wayland-regression.patch:
16
17=== added file 'debian/patches/clear_glcontext_on_window_withdraw.patch'
18--- debian/patches/clear_glcontext_on_window_withdraw.patch 1970-01-01 00:00:00 +0000
19+++ debian/patches/clear_glcontext_on_window_withdraw.patch 2017-10-25 11:51:35 +0000
20@@ -0,0 +1,32 @@
21+Description: (gdk) Clear GL context when window is withdrawn
22+ Some clients (e.g. gnome-online-accounts) quickly unmap and map
23+ a window. With some backends the backend surface will be replaced
24+ causing the application to crash because the GL context is still
25+ using the old surface. Clearing the GL context when a window is
26+ withdrawn fixes this.
27+Author: Andrea Azzarone <andrea.azzarone@canonical.com>
28+Origin: ubuntu
29+Bug: https://bugzilla.gnome.org/show_bug.cgi?id=789141
30+Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/gnome-control-center/+bug/1720400
31+
32+--- a/gdk/gdkwindow.c
33++++ b/gdk/gdkwindow.c
34+@@ -5744,6 +5744,7 @@
35+ {
36+ GdkWindowImplClass *impl_class;
37+ gboolean was_mapped;
38++ GdkGLContext *current_context;
39+
40+ g_return_if_fail (GDK_IS_WINDOW (window));
41+
42+@@ -5768,6 +5769,10 @@
43+ _gdk_synthesize_crossing_events_for_geometry_change (window->parent);
44+ }
45+
46++ current_context = gdk_gl_context_get_current ();
47++ if (current_context != NULL && gdk_gl_context_get_window (current_context) == window)
48++ gdk_gl_context_clear_current ();
49++
50+ recompute_visible_regions (window, FALSE);
51+ gdk_window_clear_old_updated_area (window);
52+ }
53
54=== modified file 'debian/patches/series'
55--- debian/patches/series 2017-10-16 12:35:41 +0000
56+++ debian/patches/series 2017-10-25 11:51:35 +0000
57@@ -28,3 +28,4 @@
58 unity-headerbar-maximized-mode.patch
59 gtksocket-unscale-before-sending-configurenotify.patch
60 no_content_hub.patch
61+clear_glcontext_on_window_withdraw.patch

Subscribers

People subscribed via source and target branches