GNOME Bugzilla – Bug 640836
"Join lines" then "Undo" make gedit crashing
Last modified: 2011-01-30 23:48:28 UTC
Created attachment 179527 [details] Sample file useful to reproduce the bug 1) Make sure you have plugin "Join lines/ Split lines" activated: "Edit > Preferences > Plugins". 2) In gedit, open the attached file "sample.html". 3) Select all text ("Ctrl+a") and choose "Edit > Join lines". 4) Click on the "Undo" button. Actual result: gedit crashes. Expected result: undo the last action. More information: - my version: gedit 2.30.3
Backtrace obtained with gedit-dbgsym and gedit-plugins-dbgsym installed: GNU gdb (GDB) 7.2-ubuntu Copyright (C) 2010 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 "i686-linux-gnu". For bug reporting instructions, please see: <http://www.gnu.org/software/gdb/bugs/>... Reading symbols from /usr/bin/gedit...Reading symbols from /usr/lib/debug/usr/bin/gedit...done. done. (gdb) handle SIG33 pass nostop noprint Signal Stop Print Pass to program Description SIG33 No No Yes Real-time event 33 (gdb) set pagination 0 (gdb) tun[K[K[Krun /home/zz/Bureau/sample.html Starting program: /usr/bin/gedit /home/zz/Bureau/sample.html [Thread debugging using libthread_db enabled] [New Thread 0xb7c2eb70 (LWP 4168)] [New Thread 0xb482fb70 (LWP 4169)] (gedit:4165): GtkSourceView-CRITICAL **: La mise en surbrillance d'une seule ligne a pris trop de temps, la coloration syntaxique sera désactivée sys:1: GtkWarning: IA__gtk_text_buffer_get_iter_at_offset: assertion `GTK_IS_TEXT_BUFFER (buffer)' failed sys:1: GtkWarning: IA__gtk_text_buffer_move_mark: assertion `GTK_IS_TEXT_MARK (mark)' failed [Thread 0xb482fb70 (LWP 4169) exited] Program received signal SIGSEGV, Segmentation fault. 0x0038e237 in ?? () from /usr/lib/libgtk-x11-2.0.so.0 (gdb) backtrace full
+ Trace 225742
Thread 1 (Thread 0xb7fe1850 (LWP 4165))
A debugging session is active. Inferior 1 [process 4165] will be killed. Quit anyway? (y or n)
Created attachment 179528 [details] Valgrind log Valgrind log obtained with the following command: zz@ordi:~/bureau$ G_SLICE=always-malloc G_DEBUG=gc-friendly valgrind -v --tool=memcheck --leak-check=full --num-callers=40 --log-file=valgrind.log /usr/bin/gedit /home/zz/Bureau/sample.html (gedit:4273): GtkSourceView-CRITICAL **: La mise en surbrillance d'une seule ligne a pris trop de temps, la coloration syntaxique sera désactivée sys:1: GtkWarning: IA__gtk_text_buffer_get_iter_at_offset: assertion `GTK_IS_TEXT_BUFFER (buffer)' failed sys:1: GtkWarning: IA__gtk_text_buffer_move_mark: assertion `GTK_IS_TEXT_MARK (mark)' failed Processus arrêté zz@ordi:~/bureau$
The stacktrace is missing any glib and gtk debug symbols...
Thanks for taking the time to report this bug. Unfortunately, that stack trace is missing some elements that will help a lot to solve the problem, so it will be hard for the developers to fix that crash. Can you get us a stack trace with debugging symbols? Please see http://live.gnome.org/GettingTraces for more information on how to do so and reopen this bug or report a new one. Thanks in advance!
Jean-Phillipe, you need also glib, gtksourceview and gobject debug symbols so this stacktrace.
GNU gdb (GDB) 7.2-ubuntu Copyright (C) 2010 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 "i686-linux-gnu". For bug reporting instructions, please see: <http://www.gnu.org/software/gdb/bugs/>... Reading symbols from /usr/bin/gedit...Reading symbols from /usr/lib/debug/usr/bin/gedit...done. done. (gdb) handle SIG33 pass nostop noprint Signal Stop Print Pass to program Description SIG33 No No Yes Real-time event 33 (gdb) set pagination 0 (gdb) run /home/zz/Bureau/sample.html Starting program: /usr/bin/gedit /home/zz/Bureau/sample.html [Thread debugging using libthread_db enabled] [New Thread 0xb7c2eb70 (LWP 7921)] [New Thread 0xb4843b70 (LWP 7926)] [New Thread 0xb402bb70 (LWP 7943)] (gedit:7918): GtkSourceView-CRITICAL **: La mise en surbrillance d'une seule ligne a pris trop de temps, la coloration syntaxique sera désactivée sys:1: GtkWarning: IA__gtk_text_buffer_get_iter_at_offset: assertion `GTK_IS_TEXT_BUFFER (buffer)' failed sys:1: GtkWarning: IA__gtk_text_buffer_move_mark: assertion `GTK_IS_TEXT_MARK (mark)' failed [Thread 0xb402bb70 (LWP 7943) exited] Program received signal SIGSEGV, Segmentation fault. _gtk_text_btree_get_chars_changed_stamp (tree=0x58fff4) at /build/buildd/gtk+2.0-2.22.0/gtk/gtktextbtree.c:541 541 /build/buildd/gtk+2.0-2.22.0/gtk/gtktextbtree.c: Aucun fichier ou dossier de ce type. in /build/buildd/gtk+2.0-2.22.0/gtk/gtktextbtree.c (gdb) backtrace full
+ Trace 225759
Thread 1 (Thread 0xb7fe1850 (LWP 7918))
A debugging session is active. Inferior 1 [process 7918] will be killed. Quit anyway? (y or n)
Created attachment 179647 [details] Valgrind log
Thanks for providing updated traces. This is a gtksourceview bug, and is already fixed. *** This bug has been marked as a duplicate of bug 607677 ***