diff --git a/debian/changelog b/debian/changelog index fae48fc48a..bf98fd7ef7 100644 --- a/debian/changelog +++ b/debian/changelog @@ -15,6 +15,9 @@ gtk+3.0 (3.23.0-1) UNRELEASED; urgency=medium * debian/patches/m4macros-Set-a-serial-number.patch: Drop, included in this release. * debian/control{,.in}: Bump libepoxy (1.4) and pango (1.41.0) per upstream. + * debian/patches/gdk-x11-Check-if-we-have-access-to-GL-before-using-G.patch: + Drop - GTK now calls epoxy_has_glx() directly so this bypassed approach + isn't necessary. -- Iain Lane Wed, 18 Jul 2018 14:08:52 +0100 diff --git a/debian/patches/gdk-x11-Check-if-we-have-access-to-GL-before-using-G.patch b/debian/patches/gdk-x11-Check-if-we-have-access-to-GL-before-using-G.patch deleted file mode 100644 index 18ed4f4a4f..0000000000 --- a/debian/patches/gdk-x11-Check-if-we-have-access-to-GL-before-using-G.patch +++ /dev/null @@ -1,55 +0,0 @@ -From: Emmanuele Bassi -Date: Fri, 20 Jan 2017 18:07:01 +0000 -Subject: gdk/x11: Check if we have access to GL before using GLX API - -If the platform does not have access to libGL then any call to GL and -GLX API through libepoxy will fail with an assertion. Until such time -that libepoxy exposes API for us to use, we can simply dlopen libGL -ourselves and do a symbol check. - -[smcv: fix typo] - -Bug: https://bugzilla.gnome.org/show_bug.cgi?id=775279 -Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=847366 -Applied-upstream: no, GTK+ 4 added a dependency on newer libepoxy instead ---- - gdk/x11/gdkglcontext-x11.c | 26 ++++++++++++++++++++++++++ - 1 file changed, 26 insertions(+) - -diff --git a/gdk/x11/gdkglcontext-x11.c b/gdk/x11/gdkglcontext-x11.c -index 0819f89..d8ddf0f 100644 ---- a/gdk/x11/gdkglcontext-x11.c -+++ b/gdk/x11/gdkglcontext-x11.c -@@ -854,6 +854,32 @@ gdk_x11_screen_init_gl (GdkScreen *screen) - if (_gdk_gl_flags & GDK_GL_DISABLE) - return FALSE; - -+ /* This is an ad hoc check that bypasses libepoxy to check if libGL.so is -+ * unavailable, and disables GL support if that's the case -+ * -+ * Ideally, libepoxy should do this for us, but that would require adding -+ * new API, and we'd need a fallback anyway. -+ */ -+ { -+ Bool (* fp_glXQueryExtension) (Display *dpy, int *err_base, int *ev_base); -+ GModule *module = g_module_open ("libGL.so.1", 0); -+ -+ if (module == NULL) -+ { -+ GDK_NOTE (OPENGL, g_message ("No libGL.so found")); -+ return FALSE; -+ } -+ -+ if (!g_module_symbol (module, "glXQueryExtension", (gpointer *) &fp_glXQueryExtension)) -+ { -+ GDK_NOTE (OPENGL, g_message ("No glXQueryExtension symbol found")); -+ g_module_close (module); -+ return FALSE; -+ } -+ -+ g_module_close (module); -+ } -+ - dpy = gdk_x11_display_get_xdisplay (display); - - if (!glXQueryExtension (dpy, &error_base, &event_base)) diff --git a/debian/patches/series b/debian/patches/series index 7d510f5526..716687700b 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -5,4 +5,3 @@ 060_ignore-random-icons.patch no-accessibility-dump.patch reftest-known-fail.patch -gdk-x11-Check-if-we-have-access-to-GL-before-using-G.patch