Bug#558593: gedit crashes on find and replace in a html file

Paolo Scarabelli paolo at msw.it
Sun Nov 29 13:16:45 UTC 2009


Package: gedit
Version: 2.28.2-1
Severity: important


Good day,

I have an OpenOffice generated html file which is on a single line, whenever
I try to run a replace (I try to add a new line '\n' before each '<t'
to make the source more readable) gedit crashes.

If I rename the file to .txt gedit doesn't crash and the replace operation
works as expected.


I use mixed repositories (squeeze/sid) so some of the libraries may be from
unstable.


I attach the gdb backtrace and the file which causes the crash.


Regards,


Paolo.



-- Package-specific info:
Active plugins:
  - docinfo
  - modelines
  - filebrowser
  - spell
  - time

No plugin installed in $HOME.

Module versions:
  - glib                  2.22.2
  - gtk+                  2.18.3
  - gtksourceview         2.8.1
  - pygobject             2.20.0
  - pygtk                 2.16.0
  - pygtksourceview       2.8.0
  - enchant               1.4.2
  - iso-codes             3.11.1

Python module versions:
  - python                2.5.4
  - pygtk                 2.16.0 (GTK+ 2.18.3)


-- System Information:
Debian Release: squeeze/sid
  APT prefers testing
  APT policy: (500, 'testing'), (100, 'unstable')
Architecture: i386 (i686)

Kernel: Linux 2.6.31-1-686 (SMP w/1 CPU core)
Locale: LANG=en_SG.UTF-8, LC_CTYPE=en_SG.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages gedit depends on:
ii  gconf2                      2.28.0-1     GNOME configuration database syste
ii  gedit-common                2.28.2-1     official text editor of the GNOME 
ii  iso-codes                   3.11.1-1     ISO language, territory, currency,
ii  libatk1.0-0                 1.28.0-1     The ATK accessibility toolkit
ii  libattr1                    1:2.4.44-1   Extended attribute shared library
ii  libc6                       2.10.1-7     GNU C Library: Shared libraries
ii  libcairo2                   1.8.8-2      The Cairo 2D vector graphics libra
ii  libenchant1c2a              1.4.2-3.4    a wrapper library for various spel
ii  libgconf2-4                 2.28.0-1     GNOME configuration database syste
ii  libglib2.0-0                2.22.2-2     The GLib library of C routines
ii  libgtk2.0-0                 2.18.3-1     The GTK+ graphical user interface 
ii  libgtksourceview2.0-0       2.8.1-1      shared libraries for the GTK+ synt
ii  libice6                     2:1.0.5-1    X11 Inter-Client Exchange library
ii  libpango1.0-0               1.26.0-1     Layout and rendering of internatio
ii  libsm6                      2:1.1.1-1    X11 Session Management library
ii  libx11-6                    2:1.2.2-1    X11 client-side library
ii  libxml2                     2.7.6.dfsg-1 GNOME XML library
ii  python                      2.5.4-2      An interactive high-level object-o
ii  python-gobject              2.20.0-1     Python bindings for the GObject li
ii  python-gtk2                 2.16.0-1     Python bindings for the GTK+ widge
ii  python-gtksourceview2       2.8.0-1      Python bindings for the GtkSourceV
ii  python-support              1.0.4        automated rebuilding support for P
ii  python2.5                   2.5.4-2      An interactive high-level object-o

Versions of packages gedit recommends:
ii  python-gnome2                 2.28.0-1   Python bindings for the GNOME desk
ii  zenity                        2.28.0-1   Display graphical dialog boxes fro

gedit suggests no packages.

-- no debconf information
-------------- next part --------------
A non-text attachment was scrubbed...
Name: test.html
Type: application/xml
Size: 61667 bytes
Desc: not available
URL: <http://lists.alioth.debian.org/pipermail/pkg-gnome-maintainers/attachments/20091129/4cb4d0fe/attachment-0001.xml>
-------------- next part --------------
paolo at neptune:~$ gdb gedit
GNU gdb (GDB) 7.0-debian
Copyright (C) 2009 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 "i486-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /usr/bin/gedit...done.
(gdb) run
Starting program: /usr/bin/gedit 
[Thread debugging using libthread_db enabled]
[New Thread 0xb537ab70 (LWP 3071)]

(gedit:3068): GtkSourceView-CRITICAL **: Highlighting a single line took too much time, syntax highlighting will be disabled
[Thread 0xb537ab70 (LWP 3071) exited]

(gedit:3068): Gtk-CRITICAL **: gtk_text_buffer_get_iter_at_offset: assertion `GTK_IS_TEXT_BUFFER (buffer)' failed

(gedit:3068): Gtk-CRITICAL **: gtk_text_buffer_move_mark: assertion `GTK_IS_TEXT_MARK (mark)' failed

(gedit:3068): Gtk-WARNING **: Invalid text buffer iterator: either the iterator is uninitialized, or the characters/pixbufs/widgets in the buffer have been modified since the iterator was created.
You must use marks, character numbers, or line numbers to preserve a position across buffer modifications.
You can apply tags and insert marks without invalidating your iterators,
but any mutation that affects 'indexable' buffer contents (contents that can be referred to by character offset)
will invalidate all outstanding iterators

(gedit:3068): Gtk-CRITICAL **: gtk_text_buffer_move_mark: assertion `GTK_IS_TEXT_MARK (mark)' failed

(gedit:3068): Gtk-CRITICAL **: gtk_text_buffer_get_iter_at_mark: assertion `GTK_IS_TEXT_MARK (mark)' failed

Program received signal SIGSEGV, Segmentation fault.
_gtk_text_btree_get_chars_changed_stamp (tree=0xb7e369e4)
    at /build/buildd-gtk+2.0_2.18.3-1-i386-YrT8XN/gtk+2.0-2.18.3/gtk/gtktextbtree.c:539
539	/build/buildd-gtk+2.0_2.18.3-1-i386-YrT8XN/gtk+2.0-2.18.3/gtk/gtktextbtree.c: No such file or directory.
	in /build/buildd-gtk+2.0_2.18.3-1-i386-YrT8XN/gtk+2.0-2.18.3/gtk/gtktextbtree.c
(gdb) 
(gdb) 
(gdb) 
(gdb) bt
#0  _gtk_text_btree_get_chars_changed_stamp (tree=0xb7e369e4)
    at /build/buildd-gtk+2.0_2.18.3-1-i386-YrT8XN/gtk+2.0-2.18.3/gtk/gtktextbtree.c:539
#1  0xb7c5ff93 in IA__gtk_text_iter_get_offset (iter=0x1)
    at /build/buildd-gtk+2.0_2.18.3-1-i386-YrT8XN/gtk+2.0-2.18.3/gtk/gtktextiter.c:575
#2  0xb7e69618 in ?? () from /usr/lib/libgtksourceview-2.0.so.0
#3  0xb7e6980f in ?? () from /usr/lib/libgtksourceview-2.0.so.0
#4  0xb7e63b22 in ?? () from /usr/lib/libgtksourceview-2.0.so.0
#5  0xb7e4a773 in ?? () from /usr/lib/libgtksourceview-2.0.so.0
#6  0xb7bb31da in _gtk_marshal_VOID__BOXED_STRING_INT (closure=0x8134500, return_value=0x0, n_param_values=4, 
    param_values=0xbfffded4, invocation_hint=0xbfffe1dc, marshal_data=0x1bf)
    at /build/buildd-gtk+2.0_2.18.3-1-i386-YrT8XN/gtk+2.0-2.18.3/gtk/gtkmarshalers.c:1423
#7  0xb7803569 in g_type_class_meta_marshal (closure=0x8134500, return_value=0x0, n_param_values=4, param_values=0x81334c0, 
    invocation_hint=0xbfffe1dc, marshal_data=0x44)
    at /build/buildd-glib2.0_2.22.2-2-i386-R8GTDn/glib2.0-2.22.2/gobject/gclosure.c:878
#8  0xb7804de3 in IA__g_closure_invoke (closure=0x8134500, return_value=0x0, n_param_values=4, param_values=0x81334c0, 
    invocation_hint=0xbfffe1dc) at /build/buildd-glib2.0_2.22.2-2-i386-R8GTDn/glib2.0-2.22.2/gobject/gclosure.c:767
#9  0xb7818bb7 in signal_emit_unlocked_R (node=0x8290888, detail=0, instance=0x82cb040, emission_return=0x0, 
    instance_and_params=0x81334c0) at /build/buildd-glib2.0_2.22.2-2-i386-R8GTDn/glib2.0-2.22.2/gobject/gsignal.c:3285
#10 0xb781a359 in IA__g_signal_emit_valist (instance=0x82cb040, signal_id=330, detail=0, var_args=0xbfffe388 "")
    at /build/buildd-glib2.0_2.22.2-2-i386-R8GTDn/glib2.0-2.22.2/gobject/gsignal.c:2980
#11 0xb781a7b6 in IA__g_signal_emit (instance=0x82cb040, signal_id=330, detail=0)
    at /build/buildd-glib2.0_2.22.2-2-i386-R8GTDn/glib2.0-2.22.2/gobject/gsignal.c:3037
#12 0xb7c4e105 in gtk_text_buffer_emit_insert (buffer=0x82cb040, iter=0xbfffe400, text=0x83369a8 "\n<t", len=3)
    at /build/buildd-gtk+2.0_2.18.3-1-i386-YrT8XN/gtk+2.0-2.18.3/gtk/gtktextbuffer.c:891
#13 0x08076680 in gedit_document_replace_all (doc=0x82cb040, find=0x8735740 "<t", replace=0x8602d18 "\\n<t", flags=0)
    at gedit-document.c:1801
#14 0x080afb04 in do_replace_all (dialog=0x8603018, window=0x8152030) at gedit-commands-search.c:414
#15 0x080afbf2 in search_dialog_response_cb (dialog=0x8603018, response_id=102, window=0x8152030) at gedit-commands-search.c:449
#16 0xb781228c in IA__g_cclosure_marshal_VOID__INT (closure=0x836c600, return_value=0x0, n_param_values=2, param_values=0x876a7b8, 
    invocation_hint=0xbfffe69c, marshal_data=0x80afb66)
    at /build/buildd-glib2.0_2.22.2-2-i386-R8GTDn/glib2.0-2.22.2/gobject/gmarshal.c:216
#17 0xb7804de3 in IA__g_closure_invoke (closure=0x836c600, return_value=0x0, n_param_values=2, param_values=0x876a7b8, 
    invocation_hint=0xbfffe69c) at /build/buildd-glib2.0_2.22.2-2-i386-R8GTDn/glib2.0-2.22.2/gobject/gclosure.c:767
#18 0xb7818f0f in signal_emit_unlocked_R (node=0x8131e10, detail=0, instance=0x8603018, emission_return=0x0, 
    instance_and_params=0x876a7b8) at /build/buildd-glib2.0_2.22.2-2-i386-R8GTDn/glib2.0-2.22.2/gobject/gsignal.c:3247
#19 0xb781a359 in IA__g_signal_emit_valist (instance=0x8603018, signal_id=89, detail=0, 
    var_args=0xbfffe840 "\230f\203\267\200p\262\267h\350\377\277D%\201\267\030\060`\bf")
    at /build/buildd-glib2.0_2.22.2-2-i386-R8GTDn/glib2.0-2.22.2/gobject/gsignal.c:2980
#20 0xb781a7b6 in IA__g_signal_emit (instance=0x8603018, signal_id=89, detail=0)
    at /build/buildd-glib2.0_2.22.2-2-i386-R8GTDn/glib2.0-2.22.2/gobject/gsignal.c:3037
#21 0xb7b27071 in IA__gtk_dialog_response (dialog=0x8603018, response_id=102)
    at /build/buildd-gtk+2.0_2.18.3-1-i386-YrT8XN/gtk+2.0-2.18.3/gtk/gtkdialog.c:928
#22 0xb7812544 in IA__g_cclosure_marshal_VOID__VOID (closure=0x8338db8, return_value=0x0, n_param_values=1, param_values=0x83dab50, 
    invocation_hint=0xbfffe9cc, marshal_data=0xb7b27080)
    at /build/buildd-glib2.0_2.22.2-2-i386-R8GTDn/glib2.0-2.22.2/gobject/gmarshal.c:77
#23 0xb7804de3 in IA__g_closure_invoke (closure=0x8338db8, return_value=0x0, n_param_values=1, param_values=0x83dab50, 
    invocation_hint=0xbfffe9cc) at /build/buildd-glib2.0_2.22.2-2-i386-R8GTDn/glib2.0-2.22.2/gobject/gclosure.c:767
#24 0xb7818f0f in signal_emit_unlocked_R (node=0x812d910, detail=0, instance=0x81dc6f0, emission_return=0x0, 
    instance_and_params=0x83dab50) at /build/buildd-glib2.0_2.22.2-2-i386-R8GTDn/glib2.0-2.22.2/gobject/gsignal.c:3247
#25 0xb781a359 in IA__g_signal_emit_valist (instance=0x81dc6f0, signal_id=101, detail=0, 
    var_args=0xbfffeb6c "<r\202\267\230f\203\267\360\306\035\b\210\353\377\277ha\257\267\360\306\035\b a\257\267\250\353\377\277D%\201\267\360\306\035\b\250\300\022\b\210\354\377\277\230f\203\267\070\253=\b\350\300\022\b\330\353\377\277i5\200\267\350\300\022\b")
    at /build/buildd-glib2.0_2.22.2-2-i386-R8GTDn/glib2.0-2.22.2/gobject/gsignal.c:2980
#26 0xb781a7b6 in IA__g_signal_emit (instance=0x81dc6f0, signal_id=101, detail=0)
    at /build/buildd-glib2.0_2.22.2-2-i386-R8GTDn/glib2.0-2.22.2/gobject/gsignal.c:3037
#27 0xb7af4b7a in IA__gtk_button_clicked (button=0x81dc6f0)
---Type <return> to continue, or q <return> to quit---
    at /build/buildd-gtk+2.0_2.18.3-1-i386-YrT8XN/gtk+2.0-2.18.3/gtk/gtkbutton.c:1111
#28 0xb7af6168 in gtk_real_button_released (button=0x81dc6f0)
    at /build/buildd-gtk+2.0_2.18.3-1-i386-YrT8XN/gtk+2.0-2.18.3/gtk/gtkbutton.c:1707
#29 0xb7812544 in IA__g_cclosure_marshal_VOID__VOID (closure=0x812c0e8, return_value=0x0, n_param_values=1, param_values=0x83dab38, 
    invocation_hint=0xbfffed3c, marshal_data=0xb7af6120)
    at /build/buildd-glib2.0_2.22.2-2-i386-R8GTDn/glib2.0-2.22.2/gobject/gmarshal.c:77
#30 0xb7803569 in g_type_class_meta_marshal (closure=0x812c0e8, return_value=0x0, n_param_values=1, param_values=0x83dab38, 
    invocation_hint=0xbfffed3c, marshal_data=0x1a4)
    at /build/buildd-glib2.0_2.22.2-2-i386-R8GTDn/glib2.0-2.22.2/gobject/gclosure.c:878
#31 0xb7804de3 in IA__g_closure_invoke (closure=0x812c0e8, return_value=0x0, n_param_values=1, param_values=0x83dab38, 
    invocation_hint=0xbfffed3c) at /build/buildd-glib2.0_2.22.2-2-i386-R8GTDn/glib2.0-2.22.2/gobject/gclosure.c:767
#32 0xb7818778 in signal_emit_unlocked_R (node=0x812d888, detail=0, instance=0x81dc6f0, emission_return=0x0, 
    instance_and_params=0x83dab38) at /build/buildd-glib2.0_2.22.2-2-i386-R8GTDn/glib2.0-2.22.2/gobject/gsignal.c:3177
#33 0xb781a359 in IA__g_signal_emit_valist (instance=0x81dc6f0, signal_id=100, detail=0, 
    var_args=0xbfffeedc "<r\202\267\344i\343\267\060L\257\267\370\356\377\277SL\257\267\360\306\035\b0L\257\267\030\357\377\277fO\273\267\360\306\035\b\240\066\023\b\270\226\022\b\230f\203\267\270\245v\b\340\250\021\bH\357\377\277i5\200\267\340\250\021\b\300\360\377\277\002") at /build/buildd-glib2.0_2.22.2-2-i386-R8GTDn/glib2.0-2.22.2/gobject/gsignal.c:2980
#34 0xb781a7b6 in IA__g_signal_emit (instance=0x81dc6f0, signal_id=100, detail=0)
    at /build/buildd-glib2.0_2.22.2-2-i386-R8GTDn/glib2.0-2.22.2/gobject/gsignal.c:3037
#35 0xb7af4c1a in IA__gtk_button_released (button=0x81dc6f0)
    at /build/buildd-gtk+2.0_2.18.3-1-i386-YrT8XN/gtk+2.0-2.18.3/gtk/gtkbutton.c:1103
#36 0xb7af4c53 in gtk_button_button_release (widget=0x81dc6f0, event=0x81336a0)
    at /build/buildd-gtk+2.0_2.18.3-1-i386-YrT8XN/gtk+2.0-2.18.3/gtk/gtkbutton.c:1599
#37 0xb7bb4f66 in _gtk_marshal_BOOLEAN__BOXED (closure=0x811a8e0, return_value=0xbffff0c0, n_param_values=2, param_values=0x876a5b8, 
    invocation_hint=0xbffff0ac, marshal_data=0xb7af4c30)
    at /build/buildd-gtk+2.0_2.18.3-1-i386-YrT8XN/gtk+2.0-2.18.3/gtk/gtkmarshalers.c:84
#38 0xb7803569 in g_type_class_meta_marshal (closure=0x811a8e0, return_value=0xbffff0c0, n_param_values=2, param_values=0x876a5b8, 
    invocation_hint=0xbffff0ac, marshal_data=0xb4)
    at /build/buildd-glib2.0_2.22.2-2-i386-R8GTDn/glib2.0-2.22.2/gobject/gclosure.c:878
#39 0xb7804de3 in IA__g_closure_invoke (closure=0x811a8e0, return_value=0xbffff0c0, n_param_values=2, param_values=0x876a5b8, 
    invocation_hint=0xbffff0ac) at /build/buildd-glib2.0_2.22.2-2-i386-R8GTDn/glib2.0-2.22.2/gobject/gclosure.c:767
#40 0xb7818bb7 in signal_emit_unlocked_R (node=0x811a9c8, detail=0, instance=0x81dc6f0, emission_return=0xbffff1f8, 
    instance_and_params=0x876a5b8) at /build/buildd-glib2.0_2.22.2-2-i386-R8GTDn/glib2.0-2.22.2/gobject/gsignal.c:3285
#41 0xb781a1ef in IA__g_signal_emit_valist (instance=0x81dc6f0, signal_id=34, detail=0, 
    var_args=0xbffff250 "h\362\377\277\240\066\023\b\360\306\035\b\017\200?\360\306\035\b\270\226\022\b")
    at /build/buildd-glib2.0_2.22.2-2-i386-R8GTDn/glib2.0-2.22.2/gobject/gsignal.c:2990
#42 0xb781a7b6 in IA__g_signal_emit (instance=0x81dc6f0, signal_id=34, detail=0)
    at /build/buildd-glib2.0_2.22.2-2-i386-R8GTDn/glib2.0-2.22.2/gobject/gsignal.c:3037
#43 0xb7cd11b6 in gtk_widget_event_internal (widget=0x81dc6f0, event=0x81336a0)
    at /build/buildd-gtk+2.0_2.18.3-1-i386-YrT8XN/gtk+2.0-2.18.3/gtk/gtkwidget.c:4767
#44 0xb7bad6fc in IA__gtk_propagate_event (widget=0x81dc6f0, event=0x81336a0)
    at /build/buildd-gtk+2.0_2.18.3-1-i386-YrT8XN/gtk+2.0-2.18.3/gtk/gtkmain.c:2417
#45 0xb7baea4f in IA__gtk_main_do_event (event=0x81336a0)
    at /build/buildd-gtk+2.0_2.18.3-1-i386-YrT8XN/gtk+2.0-2.18.3/gtk/gtkmain.c:1622
#46 0xb7a3757a in gdk_event_dispatch (source=0x8119170, callback=0, user_data=0x0)
    at /build/buildd-gtk+2.0_2.18.3-1-i386-YrT8XN/gtk+2.0-2.18.3/gdk/x11/gdkevents-x11.c:2369
#47 0xb7745e98 in g_main_dispatch (context=0x81191b8) at /build/buildd-glib2.0_2.22.2-2-i386-R8GTDn/glib2.0-2.22.2/glib/gmain.c:1960
#48 IA__g_main_context_dispatch (context=0x81191b8) at /build/buildd-glib2.0_2.22.2-2-i386-R8GTDn/glib2.0-2.22.2/glib/gmain.c:2513
#49 0xb7749623 in g_main_context_iterate (context=0x81191b8, block=1, dispatch=1, self=0x80f4850)
    at /build/buildd-glib2.0_2.22.2-2-i386-R8GTDn/glib2.0-2.22.2/glib/gmain.c:2591
#50 0xb7749aea in IA__g_main_loop_run (loop=0x82c8c70) at /build/buildd-glib2.0_2.22.2-2-i386-R8GTDn/glib2.0-2.22.2/glib/gmain.c:2799
#51 0xb7baef09 in IA__gtk_main () at /build/buildd-gtk+2.0_2.18.3-1-i386-YrT8XN/gtk+2.0-2.18.3/gtk/gtkmain.c:1218
#52 0x0806b06d in main (argc=1, argv=0xbffff574) at gedit.c:741
(gdb) quit
A debugging session is active.

	Inferior 1 [process 3068] will be killed.

Quit anyway? (y or n) y
paolo at neptune:~$ 



More information about the pkg-gnome-maintainers mailing list