Public bug reported:

mate-panel sees intermittent crashes (https://github.com/mate-
desktop/mate-panel/issues/1356) which seems to be due to a bug in gtk3
that was recently fixed upstream
(https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/6660).

Note that while in my case the crash happens with mate-panel, it appears
to be affecting more than that - e.g. the upstream MR mentions
xfce4-panel.

Could this upstream fix perhaps be backported to 24.04? It applies
cleanly to 3.24.41-4ubuntu1.3.

For the time being, I've just rebuilt gtk+3.0 locally with the patch
applied.

Details:

Ubuntu 24.04.2 LTS
xorg + nvidia 570.153.02
libgtk-3-0t64:amd64 3.24.41-4ubuntu1.3
mate-panel:amd64 1.27.1-2build3 (and 1.28.0+git20241125-aquos)

Here's an example backtrace from a mate-panel crash caused by the
gtk_drag_finish bug (note the mate-panel version shown below is slightly
newer than exists in 24.04; rebuilt several months ago in a failed
attempt to fix the issue):

Core was generated by `mate-panel'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  0x0000728dd2b9ac24 in gtk_drag_finish (context=0x648e8ebea550, success=0, 
del=0, time=0) at ../../../gtk/gtkdnd.c:961

warning: 961    ../../../gtk/gtkdnd.c: No such file or directory
[Current thread is 1 (Thread 0x728dd1102ac0 (LWP 361159))]
...
Thread 1 (Thread 0x728dd1102ac0 (LWP 361159)):
#0  0x0000728dd2b9ac24 in gtk_drag_finish (context=0x648e8ebea550, success=0, 
del=0, time=0) at ../../../gtk/gtkdnd.c:961
        __inst = 0x648e8ebea550
        __t = 0x648e8e86c7c0 [GdkDragContext]
        __r = <optimized out>
        _g_boolean_var_14 = <optimized out>
        target = 0x0
        __func__ = "gtk_drag_finish"
#1  0x0000728dd2ba0193 in gtk_drag_drop_finished (info=0x648e8ebea550, 
result=GTK_DRAG_RESULT_TIMEOUT_EXPIRED, time=0) at ../../../gtk/gtkdnd.c:2582
        success = 0
#2  0x0000728dd2ba03ad in gtk_drag_drop (info=0x648e8f43dcf0, time=0) at 
../../../gtk/gtkdnd.c:2659
#3  0x0000728dd2738c6d in gdk_threads_dispatch (data=0x0) at 
../../../gdk/gdk.c:769
        dispatch = 0x0
        ret = 0
#4  0x0000728dd22a3532 in g_timeout_dispatch 
(source=source@entry=0x648e8f3062a0, callback=<optimized out>, 
user_data=<optimized out>) at ../../../glib/gmain.c:4989
        timeout_source = 0x648e8f3062a0
        again = <optimized out>
#5  0x0000728dd22a249e in g_main_dispatch (context=0x648e8e7fb5d0) at 
../../../glib/gmain.c:3344
        dispatch = 0x728dd22a3500 <g_timeout_dispatch>
        prev_source = 0x0
        begin_time_nsec = 0
        was_in_call = 0
        user_data = 0x648e8f43dcf0
        callback = 0x728dd2738c40 <gdk_threads_dispatch>
        cb_funcs = <optimized out>
        cb_data = 0x648e8e7f4640
        need_destroy = <optimized out>
        source = 0x648e8f3062a0
        current = 0x648e8e828f10
        i = 3535405997
        __func__ = "g_main_dispatch"
#6  0x0000728dd2301737 in g_main_context_dispatch_unlocked 
(context=0x648e8e7fb5d0) at ../../../glib/gmain.c:4152
#7  g_main_context_iterate_unlocked.isra.0 (context=0x648e8e7fb5d0, 
block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at 
../../../glib/gmain.c:4217
        max_priority = 2147483647
        timeout = 101348
        some_ready = 1
        nfds = 5
        allocated_nfds = <optimized out>
        fds = 0x648e8f40afc0
#8  0x0000728dd22a2f87 in g_main_loop_run (loop=0x648e8eac92f0) at 
../../../glib/gmain.c:4419
        self = <optimized out>
        __func__ = "g_main_loop_run"
#9  0x0000728dd29febc5 in gtk_main () at ../../../gtk/gtkmain.c:1329
        loop = 0x648e8eac92f0
#10 0x0000648e89155e1d in main (argc=<optimized out>, argv=<optimized out>) at 
/usr/src/mate-panel-1.28.0+git20241125-aquos/mate-panel/main.c:223
        desktopfile = <optimized out>
        context = <optimized out>
        error = 0x0
        display = <optimized out>
        screen = 0x648e8e7ea110 [GdkX11Screen]
        css = 0x648e8e922590 [GtkCssProvider]
        provider = 0x648e8e922590
        resource = 0x648e891aab30 "/org/mate/panel/theme/mate-panel.css"
        priority = 1

** Affects: gtk+3.0 (Ubuntu)
     Importance: Undecided
         Status: New

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2114689

Title:
  Crash in gtk_drag_finish() in 24.04; fix merged upstream

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/gtk+3.0/+bug/2114689/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to