After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 332320 - reproducible crashes when using e.g. cyrillic input method
reproducible crashes when using e.g. cyrillic input method
Status: RESOLVED OBSOLETE
Product: GtkHtml
Classification: Other
Component: Editing
3.9.x
Other Linux
: Normal normal
: 2.5
Assigned To: gtkhtml-maintainers
Evolution QA team
Depends on:
Blocks: 327508
 
 
Reported: 2006-02-23 13:02 UTC by André Klapper
Modified: 2006-06-13 20:39 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description André Klapper 2006-02-23 13:02:14 UTC
start the mail composer (plain text). make sure you have a signature with...say 3 lines.
set the cursor to the first line, the line directly above the signature. right-click and chose input method: cyrillic.
type something on your english keyboard, for example "e". you will see a "[?]" (remember that other languages use for example one character for a sound that we would use two characters for, that's the reason for this behaviour). then type "j". evolution will overwrite the first five letters of my signature.
uhm, i don't want that. so i choose "undo". and now evolution freezes.

this has nothing to do with the signature. you can also try this if you put e.g. ten lines only containing "abc" into the editor, then put the cursor to the beginning, switch input method to cyrillic, enter an "e" (or any other letter whose transcription to cyrillic depends on the following letter) and another letter. see that many letters will just be overwritten now. try undo. evo crashes.

this is 100% reproducible. it could have something to do with bug 319407, i guess. this is evo2.5.91, but i've seen this for quite some time.

this is a blocker. you are unable to undo something and you loose information when letters get overwritten. you cannot get them back.
this must be fixed for 2.6.

i'm quoting two stacktraces here regarding this issue and a quite similar one:




Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 1100346272 (LWP 9654)]
0x4192ba28 in main_arena () from /lib/tls/libc.so.6
(gdb) thread apply all bt
[......]

Thread 1 (Thread 1100346272 (LWP 9654))

  • #0 main_arena
    from /lib/tls/libc.so.6
  • #1 html_object_cursor_backward
    at htmlobject.c line 1557
  • #2 backward
    at htmlcursor.c line 253
  • #3 html_cursor_jump_to_position
    at htmlcursor.c line 655
  • #4 action_do_and_destroy_undo
    at htmlundo.c line 159
  • #5 html_undo_do_undo
    at htmlundo.c line 188
  • #6 html_engine_undo
    at htmlengine-edit.c line 71
  • #7 gtk_html_undo
    at gtkhtml.c line 4306
  • #8 command
    at gtkhtml.c line 4721
  • #9 gtk_html_command
    at gtkhtml.c line 5527
  • #10 command_cb
    at menubar.c line 578
  • #11 marshal_VOID__USER_DATA_STRING
    at bonobo-ui-component.c line 221
  • #12 IA__g_closure_invoke
    at gclosure.c line 490
  • #13 bonobo_closure_invoke_va_list
    at bonobo-types.c line 404
  • #14 bonobo_closure_invoke
    at bonobo-types.c line 467
  • #15 impl_Bonobo_UIComponent_execVerb
    at bonobo-ui-component.c line 158
  • #16 _ORBIT_skel_small_Bonobo_UIComponent_execVerb
    at Bonobo-common.c line 332
  • #17 ORBit_c_stub_invoke
    at poa.c line 2631
  • #18 Bonobo_UIComponent_execVerb
    at Bonobo-stubs.c line 544
  • #19 real_exec_verb
    at bonobo-ui-engine.c line 1533
  • #20 impl_emit_verb_on
    at bonobo-ui-engine.c line 1591
  • #21 IA__g_cclosure_marshal_VOID__POINTER
    at gmarshal.c line 601
  • #22 g_type_class_meta_marshal
    at gclosure.c line 567
  • #23 IA__g_closure_invoke
    at gclosure.c line 490
  • #24 signal_emit_unlocked_R
    at gsignal.c line 2476
  • #25 IA__g_signal_emit_valist
    at gsignal.c line 2197
  • #26 IA__g_signal_emit
    at gsignal.c line 2241
  • #27 bonobo_ui_engine_emit_verb_on_w
    at bonobo-ui-engine.c line 3040
  • #28 exec_verb_cb
    at bonobo-ui-sync-menu.c line 445
  • #29 IA__g_cclosure_marshal_VOID__VOID
    at gmarshal.c line 77
  • #30 IA__g_closure_invoke
    at gclosure.c line 490
  • #31 signal_emit_unlocked_R
    at gsignal.c line 2438
  • #32 IA__g_signal_emit_valist
    at gsignal.c line 2197
  • #33 IA__g_signal_emit
    at gsignal.c line 2241
  • #34 IA__gtk_widget_activate
    at gtkwidget.c line 3766
  • #35 IA__gtk_menu_shell_activate_item
  • #36 gtk_menu_shell_button_release
    at gtkmenushell.c line 663
  • #37 gtk_menu_button_release
    at gtkmenu.c line 2566
  • #38 _gtk_marshal_BOOLEAN__BOXED
    at gtkmarshalers.c line 83
  • #39 g_type_class_meta_marshal
    at gclosure.c line 567
  • #40 IA__g_closure_invoke
    at gclosure.c line 490
  • #41 signal_emit_unlocked_R
    at gsignal.c line 2476
  • #42 IA__g_signal_emit_valist
    at gsignal.c line 2207
  • #43 IA__g_signal_emit
    at gsignal.c line 2241
  • #44 gtk_widget_event_internal
    at gtkwidget.c line 3735
  • #45 IA__gtk_widget_event
    at gtkwidget.c line 3538
  • #46 IA__gtk_propagate_event
    at gtkmain.c line 2166
  • #47 IA__gtk_main_do_event
    at gtkmain.c line 1406
  • #48 gdk_event_dispatch
    at gdkevents-x11.c line 2297
  • #49 g_main_dispatch
    at gmain.c line 1916
  • #50 IA__g_main_context_dispatch
    at gmain.c line 2466
  • #51 g_main_context_iterate
    at gmain.c line 2547
  • #52 IA__g_main_loop_run
    at gmain.c line 2751
  • #53 bonobo_main
    at bonobo-main.c line 311
  • #54 main
    at main.c line 603

Thread 1 (Thread 1100346272 (LWP 4353))

  • #0 html_object_cursor_forward
    at htmlobject.c line 1551
  • #1 forward
    at htmlcursor.c line 211
  • #2 html_cursor_jump_to_position
    at htmlcursor.c line 650
  • #3 action_do_and_destroy_undo
    at htmlundo.c line 159
  • #4 html_undo_do_undo
    at htmlundo.c line 188
  • #5 html_engine_undo
    at htmlengine-edit.c line 71
  • #6 gtk_html_undo
    at gtkhtml.c line 4306
  • #7 command
    at gtkhtml.c line 4721
  • #8 gtk_html_command
    at gtkhtml.c line 5527
  • #9 command_cb
    at menubar.c line 578
  • #10 marshal_VOID__USER_DATA_STRING
    at bonobo-ui-component.c line 221
  • #11 IA__g_closure_invoke
    at gclosure.c line 490
  • #12 bonobo_closure_invoke_va_list
    at bonobo-types.c line 404
  • #13 bonobo_closure_invoke
    at bonobo-types.c line 467
  • #14 impl_Bonobo_UIComponent_execVerb
    at bonobo-ui-component.c line 158
  • #15 _ORBIT_skel_small_Bonobo_UIComponent_execVerb
    at Bonobo-common.c line 332
  • #16 ORBit_c_stub_invoke
    at poa.c line 2631
  • #17 Bonobo_UIComponent_execVerb
    at Bonobo-stubs.c line 544
  • #18 real_exec_verb
    at bonobo-ui-engine.c line 1533
  • #19 impl_emit_verb_on
    at bonobo-ui-engine.c line 1591
  • #20 IA__g_cclosure_marshal_VOID__POINTER
    at gmarshal.c line 601
  • #21 g_type_class_meta_marshal
    at gclosure.c line 567
  • #22 IA__g_closure_invoke
    at gclosure.c line 490
  • #23 signal_emit_unlocked_R
    at gsignal.c line 2476
  • #24 IA__g_signal_emit_valist
    at gsignal.c line 2197
  • #25 IA__g_signal_emit
    at gsignal.c line 2241
  • #26 bonobo_ui_engine_emit_verb_on_w
    at bonobo-ui-engine.c line 3040
  • #27 exec_verb_cb
    at bonobo-ui-sync-menu.c line 445
  • #28 IA__g_cclosure_marshal_VOID__VOID
    at gmarshal.c line 77
  • #29 IA__g_closure_invoke
    at gclosure.c line 490
  • #30 signal_emit_unlocked_R
    at gsignal.c line 2438
  • #31 IA__g_signal_emit_valist
    at gsignal.c line 2197
  • #32 IA__g_signal_emit
    at gsignal.c line 2241
  • #33 closure_accel_activate
    at gtkwidget.c line 3151
  • #34 IA__g_closure_invoke
    at gclosure.c line 490
  • #35 signal_emit_unlocked_R
    at gsignal.c line 2438
  • #36 IA__g_signal_emit_valist
    at gsignal.c line 2207
  • #37 IA__g_signal_emit
    at gsignal.c line 2241
  • #38 IA__gtk_accel_group_activate
    at gtkaccelgroup.c line 769
  • #39 IA__gtk_accel_groups_activate
    at gtkaccelgroup.c line 807
  • #40 IA__gtk_window_activate_key
    at gtkwindow.c line 7608
  • #41 gtk_window_key_press_event
    at gtkwindow.c line 4643
  • #42 bonobo_window_key_press_event
    at bonobo-window.c line 267
  • #43 _gtk_marshal_BOOLEAN__BOXED
    at gtkmarshalers.c line 83
  • #44 g_type_class_meta_marshal
    at gclosure.c line 567
  • #45 IA__g_closure_invoke
    at gclosure.c line 490
  • #46 signal_emit_unlocked_R
    at gsignal.c line 2476
  • #47 IA__g_signal_emit_valist
    at gsignal.c line 2207
  • #48 IA__g_signal_emit
    at gsignal.c line 2241
  • #49 gtk_widget_event_internal
    at gtkwidget.c line 3735
  • #50 IA__gtk_widget_event
    at gtkwidget.c line 3538
  • #51 IA__gtk_propagate_event
    at gtkmain.c line 2140
  • #52 IA__gtk_main_do_event
    at gtkmain.c line 1406
  • #53 gdk_event_dispatch
    at gdkevents-x11.c line 2297
  • #54 g_main_dispatch
    at gmain.c line 1916
  • #55 IA__g_main_context_dispatch
    at gmain.c line 2466
  • #56 g_main_context_iterate
    at gmain.c line 2547
  • #57 IA__g_main_loop_run
    at gmain.c line 2751
  • #58 bonobo_main
    at bonobo-main.c line 311
  • #59 main
    at main.c line 603

Comment 1 André Klapper 2006-02-23 13:03:03 UTC
must-fix for 2.6
Comment 2 Karsten Bräckelmann 2006-02-23 14:20:58 UTC
Andre: I can not reproduce this using "Cyrillic (Transliterated)" input method. I do not have a plain "Cyrillic" input method.

After typing the "e", I do get the e, underlined. Typing "j"results in another character (now that one is underlined). Seems, these input methods differ a lot.


Just figured something else out, though. Typing "j" results in an underlined char as well. A following "u" changes this char entirely, without entering a second char. Looks like this is similar to what you are about. "ju" results in one char only.

However, Evo does *not* overwrite anything for me.

Undo and Redo just work fine as well.


I suspect this to be an underlying issue, not related to GtkHTML.
Using Evo 2.5.91, GTK+ 2.8.12, GNOME 2.13.91+.

Note that you are using GNOME 2.10.x.


Poke me directly, if you want me to test anything else specifically.
Comment 3 André Klapper 2006-02-23 17:37:28 UTC
hmm. seems to be really related to my 9.3.
i haven't used this for a long time, but now that guenther told me about that underlined character, i also realize that something seems to be entirely wrong...

needinfo until i find out more.
Comment 4 André Klapper 2006-03-25 02:08:11 UTC
still see this, but there are no other reports. therefore minoring severity.
Comment 5 André Klapper 2006-06-13 20:39:23 UTC
> I suspect this to be an underlying issue, not related to GtkHTML.
> Note that you are using GNOME 2.10.x.

guenther, of course you were right (never thought of the opposite ;-) - i cannot reproduce this anymore now that i'm on gtk2-2.8.10-36 and suse 10.1.

seems to only happen with gtk 2.6; closing as obsolete.