Bug#928498: gitg: Crash with assertion failed
Bernhard Übelacker
bernhardu at mailbox.org
Mon May 6 23:34:42 BST 2019
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
-------------- next part --------------
# 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 at debian:~/xbmc/xbmc$ gitg
**
GtkSourceView:ERROR:gtksourcecontextengine.c:5543:update_syntax: assertion failed: (g_slist_length (ce->priv->invalid) <= 1)
Abgebrochen (Speicherabzug geschrieben)
root at 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 at 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 at 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 at 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 at 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 at 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 at entry=0x7f92a473c15d "GtkSourceView", file=file at entry=0x7f92a4748ac7 "gtksourcecontextengine.c", line=line at entry=5543, func=func at entry=0x7f92a474a178 <__func__.60215> "update_syntax", expr=expr at entry=0x7f92a4749838 "g_slist_length (ce->priv->invalid) <= 1") at ../../../glib/gtestutils.c:2619
#4 0x00007f92a472b444 in update_syntax (ce=ce at entry=0x55893f14eb50, end=end at entry=0x0, time=time at 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 at entry=0x55893e995270) at ../../../glib/gmain.c:3847
#9 0x00007f92a47b91c8 in g_main_context_iterate (context=context at entry=0x55893e995270, block=block at entry=1, dispatch=dispatch at entry=1, self=<optimized out>) at ../../../glib/gmain.c:3920
#10 0x00007f92a47b925c in g_main_context_iteration (context=context at entry=0x55893e995270, may_block=may_block at 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 at 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 at entry=0x7f92a473c15d "GtkSourceView", file=file at entry=0x7f92a4748ac7 "gtksourcecontextengine.c", line=line at entry=5543, func=func at entry=0x7f92a474a178 <__func__.60215> "update_syntax", expr=expr at 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 at entry=0x55893f14eb50, end=end at entry=0x0, time=time at 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 at entry=0x55893e995270) at ../../../glib/gmain.c:3847
No locals.
#9 0x00007f92a47b91c8 in g_main_context_iterate (context=context at entry=0x55893e995270, block=block at entry=1, dispatch=dispatch at 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 at entry=0x55893e995270, may_block=may_block at 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
More information about the pkg-gnome-maintainers
mailing list