Package: libgtk-3-0 Version: 3.22.3-2 Severity: important Any attempts to run a GTK3 program when connected remotely from old X make the program segfault on start. Anything GTK2, xlogo, etc, do work as normal. The segfault doesn't seem to be arch-dependant, reproduced it on amd64 and armhf.
I've tried a bunch of programs, all crash. Attached backtrace is from 'eom'. Meow! -- System Information: Debian Release: stretch/sid APT prefers unstable-debug APT policy: (500, 'unstable-debug'), (500, 'unstable'), (500, 'testing'), (150, 'experimental') Architecture: amd64 (x86_64) Foreign Architectures: i386 Kernel: Linux 4.8.8+ (SMP w/6 CPU cores) Locale: LANG=C.UTF-8, LC_CTYPE=C.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Init: sysvinit (via /sbin/init) Versions of packages libgtk-3-0 depends on: ii adwaita-icon-theme 3.22.0-1 ii hicolor-icon-theme 0.15-1 ii libatk-bridge2.0-0 2.22.0-1 ii libatk1.0-0 2.22.0-1 ii libc6 2.24-5 ii libcairo-gobject2 1.14.6-1.1 ii libcairo2 1.14.6-1.1 ii libcolord2 1.3.3-2 ii libcups2 2.2.1-2 ii libepoxy0 1.3.1-1 ii libfontconfig1 2.11.0-6.7 ii libfreetype6 2.6.3-3+b1 ii libgdk-pixbuf2.0-0 2.36.0-1 ii libglib2.0-0 2.50.2-1 ii libgtk-3-common 3.22.3-2 ii libjson-glib-1.0-0 1.2.2-1 ii libpango-1.0-0 1.40.3-3 ii libpangocairo-1.0-0 1.40.3-3 ii libpangoft2-1.0-0 1.40.3-3 ii librest-0.7-0 0.8.0-2 ii libsoup2.4-1 2.56.0-1 ii libwayland-client0 1.11.0-2 ii libwayland-cursor0 1.11.0-2 ii libwayland-egl1-mesa [libwayland-egl1] 12.0.4-2 ii libx11-6 2:1.6.3-1 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.2-1 ii libxi6 2:1.7.6-1.1 ii libxinerama1 2:1.1.3-1+b1 ii libxkbcommon0 0.6.1-1 ii libxml2 2.9.4+dfsg1-2.1 ii libxrandr2 2:1.5.0-1 ii shared-mime-info 1.7-1 Versions of packages libgtk-3-0 recommends: ii libgtk-3-bin 3.22.3-2 Versions of packages libgtk-3-0 suggests: pn gvfs <none> ii librsvg2-common 2.40.16-1 -- no debconf information
GNU gdb (Debian 7.11.1-2+b1) 7.11.1 Copyright (C) 2016 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-linux-gnu". Type "show configuration" for configuration details. For bug reporting instructions, please see: <http://www.gnu.org/software/gdb/bugs/>. Find the GDB manual and other documentation resources online at: <http://www.gnu.org/software/gdb/documentation/>. For help, type "help". Type "apropos word" to search for commands related to "word"... Reading symbols from eom...Reading symbols from /usr/lib/debug/.build-id/95/865258ef7f9a9be0cfe314b2fbcf6d317b3027.debug...done. done. (gdb) run Starting program: /usr/bin/eom [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". Program received signal SIGSEGV, Segmentation fault. XIFreeDeviceInfo (info=info@entry=0x0) at ../../src/XIQueryDevice.c:118 (gdb) bt full #0 0x00007ffff1f735dc in XIFreeDeviceInfo (info=info@entry=0x0) at ../../src/XIQueryDevice.c:118 ptr = 0x0 #1 0x00007ffff69d9d1a in gdk_x11_device_manager_xi2_constructed (object=0x5555557da0a0 [GdkX11DeviceManagerXI2]) at ././gdk/x11/gdkdevicemanager-xi2.c:727 device_manager = 0x5555557da0a0 [GdkX11DeviceManagerXI2] display = 0x5555558050e0 [GdkX11Display] screen = <optimized out> masters = 0x5555558534c0 slaves = 0x555555853520 xdisplay = <optimized out> info = 0x0 dev = <optimized out> ndevices = -1 i = <optimized out> event_mask = {deviceid = 4, mask_len = 0, mask = 0x7fffffffdc80 "\030"} mask = "\000" __func__ = "gdk_x11_device_manager_xi2_constructed" #2 0x00007ffff3bca777 in g_object_new_internal (class=class@entry=0x555555857710, params=params@entry=0x7fffffffddc0, n_params=n_params@entry=4) at ././gobject/gobject.c:1823 nqueue = 0x5555557d9380 object = 0x5555557da0a0 [GdkX11DeviceManagerXI2] __func__ = "g_object_new_internal" #3 0x00007ffff3bcc10e in g_object_new_valist (object_type=object_type@entry=93824995389216, first_property_name=first_property_name@entry=0x7ffff6a1dc45 "display", var_args=var_args@entry=0x7fffffffdf10) at ././gobject/gobject.c:2042 stack_params = {{pspec = 0x5555557f6340 [GParamObject], value = 0x7fffffffdd10}, {pspec = 0x55555580aac0 [GParamInt], value = 0x7fffffffdce0}, {pspec = 0x55555580ab40 [GParamInt], value = 0x7fffffffdcb0}, {pspec = 0x55555580abc0 [GParamInt], value = 0x7fffffffdc80}, {pspec = 0x555555856e10, value = 0x7ffff2e43a0a <__libc_calloc+730>}, {pspec = 0x50, value = 0x5555557d7420}, {pspec = 0x0, value = 0x7fffffffdf80}, {pspec = 0x0, value = 0x7ffff38f0e61 <g_malloc0+33>}, {pspec = 0x555555856f20, value = 0x7ffff3be2b03 <type_data_make_W+147>}, {pspec = 0x1, value = 0x555555856f20}, {pspec = 0x7ffff6a38f92, value = 0x7fffffffdf80}, {pspec = 0x555555856f20, value = 0x7ffff6a38f92}, {pspec = 0x7fffffffdf80, value = 0x7fff00000002}, {pspec = 0x18, value = 0x40}, {pspec = 0x0, value = 0x3000000002}, {pspec = 0x0, value = 0x0}} params = 0x7fffffffddc0 name = <optimized out> n_params = 4 class = <optimized out> unref_class = <optimized out> object = <optimized out> __func__ = "g_object_new_valist" #4 0x00007ffff3bcc3b1 in g_object_new (object_type=93824995389216, first_property_name=first_property_name@entry=0x7ffff6a1dc45 "display") at ././gobject/gobject.c:1626 var_args = {{gp_offset = 48, fp_offset = 48, overflow_arg_area = 0x7fffffffe020, reg_save_area = 0x7fffffffdf30}} __func__ = "g_object_new" #5 0x00007ffff69d86ae in _gdk_x11_device_manager_new (display=display@entry=0x5555558050e0 [GdkX11Display]) at ././gdk/x11/gdkdevicemanager-x11.c:60 device_manager_xi2 = <optimized out> major = 2 minor = 3 opcode = 138 firstevent = 70 firsterror = 134 xdisplay = <optimized out> __func__ = "_gdk_x11_device_manager_new" #6 0x00007ffff69dd72f in _gdk_x11_display_open (display_name=<optimized out>) at ././gdk/x11/gdkdisplay-x11.c:1423 xdisplay = <optimized out> display = 0x5555558050e0 [GdkX11Display] display_x11 = 0x5555558050e0 [GdkX11Display] attr = {title = 0x3 <error: Cannot access memory at address 0x3>, event_mask = 1434292896, x = 21845, y = 1434288144, width = 21845, height = 1, wclass = GDK_INPUT_OUTPUT, visual = 0x2, window_type = 4137802855, cursor = 0x1, wmclass_name = 0x7ffff2dfd132 <__GI_getenv+194> "\205\300u\332B\200<+=u\323J\215\\+\001\353\222\017\037@", wmclass_class = 0x0, override_redirect = 0, type_hint = GDK_WINDOW_TYPE_HINT_NORMAL} argc = <optimized out> argv = {0x5555557f6801 "A\177UUU"} class_hint = <optimized out> pid = 1 ignore = 148 maj = 0 min = 0 __func__ = "_gdk_x11_display_open" #7 0x00007ffff69b2155 in gdk_display_manager_open_display (manager=<optimized out>, name=0x0) at ././gdk/gdkdisplaymanager.c:472 backend = 0x5555557d0f60 "*" any = 1 backend_list = <optimized out> display = 0x0 backends = 0x5555557d8010 i = <optimized out> allow_any = 1 __func__ = "gdk_display_manager_open_display" #8 0x00007ffff6ea1746 in post_parse_hook (context=<optimized out>, group=<optimized out>, data=0x5555557f2b20, error=0x7fffffffe298) at ././gtk/gtkmain.c:801 info = 0x5555557f2b20 #9 0x00007ffff38f7b08 in g_option_context_parse (context=<optimized out>, argc=0x7fffffffe28c, argv=<optimized out>, error=<optimized out>) at ././glib/goption.c:2165 group = <optimized out> i = 1 j = <optimized out> k = <optimized out> list = 0x5555557f3200 #10 0x00005555555727ee in main (argc=<optimized out>, argv=<optimized out>) at main.c:215 error = 0x0 ctx = 0x5555557ef2f0 provider = <optimized out> (gdb) q A debugging session is active. Inferior 1 [process 3632] will be killed. Quit anyway? (y or n) y