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 526877 - [PATCH] Evolution Edit->Preferences leads to infinite loop
[PATCH] Evolution Edit->Preferences leads to infinite loop
Status: RESOLVED FIXED
Product: GtkHtml
Classification: Other
Component: API
3.7.x
Other Linux
: Normal critical
: ---
Assigned To: Sankar P
Evolution QA team
evolution[composer]
Depends on:
Blocks: 522153
 
 
Reported: 2008-04-08 06:26 UTC by Sankar P
Modified: 2008-04-16 19:46 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Fix (532 bytes, patch)
2008-04-08 06:29 UTC, Sankar P
reviewed Details | Review

Description Sankar P 2008-04-08 06:26:30 UTC
Running Evolution from SVN trunk (35339), accessing mail-preferences leads to an infinite loop and hence crash.

Stacktrace:

0  0xb68207c3 in g_private_get_posix_impl (private_key=0x806c3e8) at gthread-posix.c:286
  • #1 IA__g_thread_self
    at gthread.c line 754
  • #2 IA__g_static_private_get
    at gthread.c line 422
  • #3 IA__g_get_language_names
    at gutils.c line 3006
  • #4 spell_language_pick_default
    at gtkhtml-spell-language.c line 326
  • #5 gtkhtml_spell_language_lookup
    at gtkhtml-spell-language.c line 364
  • #6 spell_language_pick_default
    at gtkhtml-spell-language.c line 330
  • #7 gtkhtml_spell_language_lookup
    at gtkhtml-spell-language.c line 364
  • #8 spell_language_pick_default
    at gtkhtml-spell-language.c line 330
  • #9 gtkhtml_spell_language_lookup
    at gtkhtml-spell-language.c line 364
  • #10 spell_language_pick_default
    at gtkhtml-spell-language.c line 330
  • #11 gtkhtml_spell_language_lookup
    at gtkhtml-spell-language.c line 364
  • #12 spell_language_pick_default
    at gtkhtml-spell-language.c line 330
  • #13 gtkhtml_spell_language_lookup
    at gtkhtml-spell-language.c line 364
  • #14 spell_language_pick_default
    at gtkhtml-spell-language.c line 330
  • #0 gtkhtml_spell_language_lookup
    at gtkhtml-spell-language.c line 344
  • #1 spell_setup
    at em-composer-prefs.c line 650
  • #2 em_composer_prefs_construct
    at em-composer-prefs.c line 991
  • #3 em_composer_prefs_new
    at em-composer-prefs.c line 1106
  • #4 mail_config_control_factory_cb
    at mail-config-factory.c line 51


P.S:Do not look at the frame numbers.
Comment 1 Sankar P 2008-04-08 06:26:58 UTC
Well, the bug is in gtkhtml. 
Comment 2 Sankar P 2008-04-08 06:29:40 UTC
Created attachment 108840 [details] [review]
Fix

Matt,

I dug out and found that this happens when there are no dictionaries installed. The patch has solved the infinite loop. But I suggest you to take a look at possible regressions this might offer (appending the default dict. as NULL somehwere etc.) 

After that we can commit this patch, if it looks okay.
Comment 3 Matthew Barnes 2008-04-08 12:43:55 UTC
Oh wow, good catch!  Patch looks correct to me.  There was one spot in GtkHTML where I added a NULL check as a result of this, but everywhere else in GtkHTML and Evolution looked safe.  I guess we'll see.

Fixed in GtkHTML revision 8819.
Comment 4 Matthew Barnes 2008-04-16 19:46:03 UTC
*** Bug 528401 has been marked as a duplicate of this bug. ***