Control: reassign 928498 gtksourceview3 3.24.9-2 Control: tags + 928498 upstream fixed-upstream patch Control: affects 928498 gitg gedit
Dear Maintainer, this crash seems to be described in upstream bugs [1] and [2]. And upstream seems to have a fix commited to the 3.24 branch [3] too. A package libgtksourceview-3.0-1 built with the patch does not crash gitg anymore. Kind regards, Bernhard [1] https://gitlab.gnome.org/GNOME/gtksourceview/issues/54 [2] https://gitlab.gnome.org/GNOME/gtksourceview/issues/30 [3] https://gitlab.gnome.org/GNOME/gtksourceview/commit/06a9d3751c808870dc72e470700693d01f4fc284
# Buster amd64 qemu VM 2019-05-06 apt update apt dist-upgrade apt install systemd-coredump xserver-xorg lightdm openbox gdb fakeroot gitg gitg-dbgsym libglib2.0-0-dbgsym libgtk-3-0-dbgsym libgtksourceview-3.0-1-dbgsym apt build-dep gtksourceview3 reboot mkdir /home/benutzer/source/gtksourceview3/orig -p cd /home/benutzer/source/gtksourceview3/orig apt source gtksourceview3 cd mkdir xbmc cd xbmc git clone https://github.com/xbmc/xbmc.git cd xbmc export DISPLAY=:0 gitg # click on "Krypton" benutzer@debian:~/xbmc/xbmc$ gitg ** GtkSourceView:ERROR:gtksourcecontextengine.c:5543:update_syntax: assertion failed: (g_slist_length (ce->priv->invalid) <= 1) Abgebrochen (Speicherabzug geschrieben) root@debian:~# coredumpctl list TIME PID UID GID SIG COREFILE EXE Tue 2019-05-07 00:05:33 CEST 951 1000 1000 6 present /usr/bin/gitg root@debian:~# coredumpctl gdb 951 PID: 951 (gitg) UID: 1000 (benutzer) GID: 1000 (benutzer) Signal: 6 (ABRT) Timestamp: Tue 2019-05-07 00:05:32 CEST (1min 6s ago) Command Line: gitg Executable: /usr/bin/gitg Control Group: /user.slice/user-1000.slice/session-5.scope Unit: session-5.scope Slice: user-1000.slice Session: 5 Owner UID: 1000 (benutzer) Boot ID: f41413a2789c4ca899d7db4111d58cd7 Machine ID: 32f43b50ac8c4b21941bc0b02f8e7811 Hostname: debian Storage: /var/lib/systemd/coredump/core.gitg.1000.f41413a2789c4ca899d7db4111d58cd7.951.1557180332000000.lz4 Message: Process 951 (gitg) of user 1000 dumped core. Stack trace of thread 951: #0 0x00007f92a38887bb raise (libc.so.6) #1 0x00007f92a3873535 abort (libc.so.6) #2 0x00007f92a4786dc3 n/a (libglib-2.0.so.0) #3 0x00007f92a47e068a g_assertion_message_expr (libglib-2.0.so.0) #4 0x00007f92a472b444 n/a (libgtksourceview-3.0.so.1) #5 0x00007f92a472b5ab n/a (libgtksourceview-3.0.so.1) #6 0x00007f92a3f00c08 n/a (libgdk-3.so.0) #7 0x00007f92a47b8dd8 g_main_context_dispatch (libglib-2.0.so.0) #8 0x00007f92a47b91c8 n/a (libglib-2.0.so.0) #9 0x00007f92a47b925c g_main_context_iteration (libglib-2.0.so.0) #10 0x00007f92a3d9699d g_application_run (libgio-2.0.so.0) #11 0x000055893e723906 gitg_main_main (gitg) #12 0x00007f92a387509b __libc_start_main (libc.so.6) #13 0x000055893e6cfe5a _start (gitg) Stack trace of thread 953: #0 0x00007f92a393f819 __poll (libc.so.6) #1 0x00007f92a47b9136 n/a (libglib-2.0.so.0) #2 0x00007f92a47b94c2 g_main_loop_run (libglib-2.0.so.0) #3 0x00007f92a3dcff66 n/a (libgio-2.0.so.0) #4 0x00007f92a47e1425 n/a (libglib-2.0.so.0) #5 0x00007f92a344bfa3 start_thread (libpthread.so.0) #6 0x00007f92a394a4cf __clone (libc.so.6) Stack trace of thread 954: #0 0x00007f92a393f819 __poll (libc.so.6) #1 0x00007f92a47b9136 n/a (libglib-2.0.so.0) #2 0x00007f92a47b925c g_main_context_iteration (libglib-2.0.so.0) #3 0x00007f929d652ffd n/a (libdconfsettings.so) #4 0x00007f92a47e1425 n/a (libglib-2.0.so.0) #5 0x00007f92a344bfa3 start_thread (libpthread.so.0) #6 0x00007f92a394a4cf __clone (libc.so.6) Stack trace of thread 952: #0 0x00007f92a393f819 __poll (libc.so.6) #1 0x00007f92a47b9136 n/a (libglib-2.0.so.0) #2 0x00007f92a47b925c g_main_context_iteration (libglib-2.0.so.0) #3 0x00007f92a47b92a1 n/a (libglib-2.0.so.0) #4 0x00007f92a47e1425 n/a (libglib-2.0.so.0) #5 0x00007f92a344bfa3 start_thread (libpthread.so.0) #6 0x00007f92a394a4cf __clone (libc.so.6) Stack trace of thread 959: #0 0x00007f92a3944f59 syscall (libc.so.6) #1 0x00007f92a48030ba g_cond_wait_until (libglib-2.0.so.0) #2 0x00007f92a478b091 n/a (libglib-2.0.so.0) #3 0x00007f92a478b651 g_async_queue_timeout_pop (libglib-2.0.so.0) #4 0x00007f92a47e1e61 n/a (libglib-2.0.so.0) #5 0x00007f92a47e1425 n/a (libglib-2.0.so.0) #6 0x00007f92a344bfa3 start_thread (libpthread.so.0) #7 0x00007f92a394a4cf __clone (libc.so.6) GNU gdb (Debian 8.2.1-2) 8.2.1 Copyright (C) 2018 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 /usr/bin/gitg...(no debugging symbols found)...done. [New LWP 951] [New LWP 953] [New LWP 954] [New LWP 952] [New LWP 959] [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". Core was generated by `gitg'. Program terminated with signal SIGABRT, Aborted. #0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50 50 ../sysdeps/unix/sysv/linux/raise.c: Datei oder Verzeichnis nicht gefunden. [Current thread is 1 (Thread 0x7f929ebcf200 (LWP 951))] (gdb) set width 0 (gdb) set pagination off (gdb) bt #0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50 #1 0x00007f92a3873535 in __GI_abort () at abort.c:79 #2 0x00007f92a4786dc3 in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0 #3 0x00007f92a47e068a in g_assertion_message_expr () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0 #4 0x00007f92a472b444 in ?? () from /usr/lib/x86_64-linux-gnu/libgtksourceview-3.0.so.1 #5 0x00007f92a472b5ab in ?? () from /usr/lib/x86_64-linux-gnu/libgtksourceview-3.0.so.1 #6 0x00007f92a3f00c08 in ?? () from /usr/lib/x86_64-linux-gnu/libgdk-3.so.0 #7 0x00007f92a47b8dd8 in g_main_context_dispatch () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0 #8 0x00007f92a47b91c8 in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0 #9 0x00007f92a47b925c in g_main_context_iteration () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0 #10 0x00007f92a3d9699d in g_application_run () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0 #11 0x000055893e723906 in gitg_main_main () #12 0x00007f92a387509b in __libc_start_main (main=0x55893e6cfe20 <main>, argc=1, argv=0x7ffcb5ff8b88, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7ffcb5ff8b78) at ../csu/libc-start.c:308 #13 0x000055893e6cfe5a in _start () Core was generated by `gitg'. Program terminated with signal SIGABRT, Aborted. #0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50 50 ../sysdeps/unix/sysv/linux/raise.c: Datei oder Verzeichnis nicht gefunden. [Current thread is 1 (Thread 0x7f929ebcf200 (LWP 951))] (gdb) set width 0 (gdb) set pagination off (gdb) bt #0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50 #1 0x00007f92a3873535 in __GI_abort () at abort.c:79 #2 0x00007f92a4786dc3 in g_assertion_message (domain=<optimized out>, file=<optimized out>, line=<optimized out>, func=0x7f92a474a178 <__func__.60215> "update_syntax", message=<optimized out>) at ../../../glib/gtestutils.c:2596 #3 0x00007f92a47e068a in g_assertion_message_expr (domain=domain@entry=0x7f92a473c15d "GtkSourceView", file=file@entry=0x7f92a4748ac7 "gtksourcecontextengine.c", line=line@entry=5543, func=func@entry=0x7f92a474a178 <__func__.60215> "update_syntax", expr=expr@entry=0x7f92a4749838 "g_slist_length (ce->priv->invalid) <= 1") at ../../../glib/gtestutils.c:2619 #4 0x00007f92a472b444 in update_syntax (ce=ce@entry=0x55893f14eb50, end=end@entry=0x0, time=time@entry=10) at gtksourcecontextengine.c:5543 #5 0x00007f92a472b5ab in first_update_callback (ce=0x55893f14eb50) at gtksourcecontextengine.c:2375 #6 0x00007f92a3f00c08 in gdk_threads_dispatch (data=0x55893f82ad60) at ../../../../gdk/gdk.c:770 #7 0x00007f92a47b8dd8 in g_main_dispatch (context=0x55893e995270) at ../../../glib/gmain.c:3182 #8 g_main_context_dispatch (context=context@entry=0x55893e995270) at ../../../glib/gmain.c:3847 #9 0x00007f92a47b91c8 in g_main_context_iterate (context=context@entry=0x55893e995270, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../../../glib/gmain.c:3920 #10 0x00007f92a47b925c in g_main_context_iteration (context=context@entry=0x55893e995270, may_block=may_block@entry=1) at ../../../glib/gmain.c:3981 #11 0x00007f92a3d9699d in g_application_run (application=0x55893e993140, argc=<optimized out>, argv=0x7ffcb5ff8b88) at ../../../gio/gapplication.c:2470 #12 0x000055893e723906 in gitg_main_main (args=0x7ffcb5ff8b88, args_length1=1) at ../gitg/gitg.vala:42 #13 0x00007f92a387509b in __libc_start_main (main=0x55893e6cfe20 <main>, argc=1, argv=0x7ffcb5ff8b88, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7ffcb5ff8b78) at ../csu/libc-start.c:308 #14 0x000055893e6cfe5a in _start () at ../gitg/gitg.vala:27 (gdb) bt full #0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50 set = {__val = {0, 94047969085408, 94047969085580, 94047969085280, 94047969085580, 0, 0, 140267786319180, 0, 32, 2048, 2064, 18446744073709551536, 140267785894488, 2048, 5}} pid = <optimized out> tid = <optimized out> ret = <optimized out> #1 0x00007f92a3873535 in __GI_abort () at abort.c:79 save_stage = 1 act = {__sigaction_handler = {sa_handler = 0xfefefefefefefeff, sa_sigaction = 0xfefefefefefefeff}, sa_mask = {__val = {18374497943492231169, 0, 124, 94047963083632, 6763159771703646976, 140267800911008, 140267801864027, 140267801885432, 140267524980736, 94047963083632, 0, 0, 6763159771703646976, 140267801053895, 94047963083632, 125}}, sa_flags = -1534554624, sa_restorer = 0x7ffcb5ff85a0} sigs = {__val = {32, 0 <repeats 15 times>}} #2 0x00007f92a4786dc3 in g_assertion_message (domain=<optimized out>, file=<optimized out>, line=<optimized out>, func=0x7f92a474a178 <__func__.60215> "update_syntax", message=<optimized out>) at ../../../glib/gtestutils.c:2596 lstr = "5543\000\177\000\000\000\233\233\307\372\221\333]\340\205\377\265\374\177\000\000\070\230t\244\222\177\000" s = 0x55893f6e7370 "\200\244\275?\211U" #3 0x00007f92a47e068a in g_assertion_message_expr (domain=domain@entry=0x7f92a473c15d "GtkSourceView", file=file@entry=0x7f92a4748ac7 "gtksourcecontextengine.c", line=line@entry=5543, func=func@entry=0x7f92a474a178 <__func__.60215> "update_syntax", expr=expr@entry=0x7f92a4749838 "g_slist_length (ce->priv->invalid) <= 1") at ../../../glib/gtestutils.c:2619 s = 0x55893fee3b10 "assertion failed: (g_slist_length (ce->priv->invalid) <= 1)" #4 0x00007f92a472b444 in update_syntax (ce=ce@entry=0x55893f14eb50, end=end@entry=0x0, time=time@entry=10) at gtksourcecontextengine.c:5543 buffer = <optimized out> start_iter = {dummy1 = 0x5589403d68c0, dummy2 = 0x55893fd43c60, dummy3 = 3, dummy4 = 1, dummy5 = 1, dummy6 = -1, dummy7 = -387174087, dummy8 = 1747667398, dummy9 = 0x55893ff71e30, dummy10 = 0x55893ff71e30, dummy11 = 3, dummy12 = 1, dummy13 = 0, dummy14 = 0x0} end_iter = {dummy1 = 0x5589403d68c0, dummy2 = 0x55893fbfa240, dummy3 = -1, dummy4 = 12, dummy5 = 8190, dummy6 = -1, dummy7 = -387174087, dummy8 = 1747667398, dummy9 = 0x55893ec22b00, dummy10 = 0x7f9249f06040, dummy11 = -1, dummy12 = 0, dummy13 = 0, dummy14 = 0x0} line_start = {dummy1 = 0x5589403d68c0, dummy2 = 0x55893fbfa240, dummy3 = 0, dummy4 = 0, dummy5 = 8178, dummy6 = -1, dummy7 = -387174087, dummy8 = 1747668007, dummy9 = 0x0, dummy10 = 0x0, dummy11 = -10000, dummy12 = -10000, dummy13 = 0, dummy14 = 0x0} line_end = {dummy1 = 0x5589403d68c0, dummy2 = 0x55893fbfa240, dummy3 = -1, dummy4 = 12, dummy5 = 8190, dummy6 = -1, dummy7 = -387174087, dummy8 = 1747668011, dummy9 = 0x55893ec22b00, dummy10 = 0x7f9249f06040, dummy11 = -1, dummy12 = 0, dummy13 = 0, dummy14 = 0x0} state = <optimized out> invalid = <optimized out> start_offset = <optimized out> end_offset = <optimized out> line_start_offset = <optimized out> line_end_offset = <optimized out> analyzed_end = 8190 first_line = <optimized out> timer = 0x55893fbb9bb0 __func__ = "update_syntax" #5 0x00007f92a472b5ab in first_update_callback (ce=0x55893f14eb50) at gtksourcecontextengine.c:2375 __func__ = "first_update_callback" _g_boolean_var_ = <optimized out> #6 0x00007f92a3f00c08 in gdk_threads_dispatch (data=0x55893f82ad60) at ../../../../gdk/gdk.c:770 dispatch = 0x55893f82ad60 ret = 0 #7 0x00007f92a47b8dd8 in g_main_dispatch (context=0x55893e995270) at ../../../glib/gmain.c:3182 dispatch = 0x7f92a47b5780 <g_idle_dispatch> prev_source = 0x0 was_in_call = 0 user_data = 0x55893f82ad60 callback = 0x7f92a3f00be0 <gdk_threads_dispatch> cb_funcs = <optimized out> cb_data = 0x5589402cbec0 need_destroy = <optimized out> source = 0x558940118100 current = 0x55893ea28c70 i = 10 current = <optimized out> i = <optimized out> __FUNCTION__ = "g_main_dispatch" source = <optimized out> _g_boolean_var_ = <optimized out> was_in_call = <optimized out> user_data = <optimized out> callback = <optimized out> cb_funcs = <optimized out> cb_data = <optimized out> need_destroy = <optimized out> dispatch = <optimized out> prev_source = <optimized out> _g_boolean_var_ = <optimized out> #8 g_main_context_dispatch (context=context@entry=0x55893e995270) at ../../../glib/gmain.c:3847 No locals. #9 0x00007f92a47b91c8 in g_main_context_iterate (context=context@entry=0x55893e995270, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../../../glib/gmain.c:3920 max_priority = 100 timeout = 0 some_ready = 1 nfds = <optimized out> allocated_nfds = 3 fds = 0x55893eb14270 #10 0x00007f92a47b925c in g_main_context_iteration (context=context@entry=0x55893e995270, may_block=may_block@entry=1) at ../../../glib/gmain.c:3981 retval = <optimized out> #11 0x00007f92a3d9699d in g_application_run (application=0x55893e993140, argc=<optimized out>, argv=0x7ffcb5ff8b88) at ../../../gio/gapplication.c:2470 arguments = 0x55893e992c40 status = 0 context = 0x55893e995270 acquired_context = 1 __FUNCTION__ = "g_application_run" #12 0x000055893e723906 in gitg_main_main (args=0x7ffcb5ff8b88, args_length1=1) at ../gitg/gitg.vala:42 result = 0 _tmp0_ = <optimized out> _tmp1_ = <optimized out> _tmp2_ = 0x0 app = 0x55893e993140 _tmp3_ = 0x55893e993140 #13 0x00007f92a387509b in __libc_start_main (main=0x55893e6cfe20 <main>, argc=1, argv=0x7ffcb5ff8b88, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7ffcb5ff8b78) at ../csu/libc-start.c:308 self = <optimized out> result = <optimized out> unwind_buf = {cancel_jmp_buf = {{jmp_buf = {0, -1223258922303324389, 94047946210864, 140723361909632, 0, 0, -4905251883535794405, -4958138184831697125}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x7ffcb5ff8b98, 0x7f92a4a06190}, data = {prev = 0x0, cleanup = 0x0, canceltype = -1241543784}}} not_first_call = <optimized out> #14 0x000055893e6cfe5a in _start () at ../gitg/gitg.vala:27 No symbol table info available. set width 0 set pagination off bt ######## cd /home/benutzer/source/gtksourceview3 cp orig try1 -a cd try1/gtksourceview3-3.24.9 wget https://gitlab.gnome.org/GNOME/gtksourceview/commit/06a9d3751c808870dc72e470700693d01f4fc284.patch -O ../06a9d3751c808870dc72e470700693d01f4fc284.patch patch -p1 < ../06a9d3751c808870dc72e470700693d01f4fc284.patch dpkg-buildpackage -b dpkg -i /home/benutzer/source/gtksourceview3/try1/{libgtksourceview-3.0-1_3.24.9-2_amd64.deb,libgtksourceview-3.0-1-dbgsym_3.24.9-2_amd64.deb,libgtksourceview-3.0-common_3.24.9-2_all.deb} https://gitlab.gnome.org/GNOME/gtksourceview/issues/54 https://gitlab.gnome.org/GNOME/gtksourceview/issues/30 https://gitlab.gnome.org/GNOME/gtksourceview/commit/54e48e9c45e0ccef4d8fd8f5b9a8660aa6b0ae0b # master https://gitlab.gnome.org/GNOME/gtksourceview/commit/06a9d3751c808870dc72e470700693d01f4fc284 # 3.24