From Bugzilla Helper: User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.10) Gecko/20050719 Red Hat/1.0.6-1.4.1 StumbleUpon/1.9992 Firefox/1.0.6 Description of problem: During writing a email to a remote user, I use the spell check feature and it never finds a spelling error on my emails. I deliberately write incorrect words and the spell check tool simply informs me that there is no spelling errors. Version-Release number of selected component (if applicable): evolution-2.0.2-16 gtkhtml3-3.3.2-3 evolution-2.0.2-16 How reproducible: Always Steps to Reproduce: 1. Up2date -u to RHEL 4 U1 Desktop 2. Configure Evolution to a IMAP Server 3. Start Evolution, create a email message 4. Type incorrect words 5. Do a spell check 6. Spell Check engine informs me that there is no spelling errors Actual Results: Spell Check Tool does not identify incorrect words in email messages. Expected Results: Should have identified the incorrect words. Always informs me that the spelling is ok. Additional info: evolution-2.0.2-16 gtkhtml3-3.3.2-3
Devel NAK for U3.
dmalcolm: gnome-spell-1.0.5-9 Running evolution from the command line revealed: ** (evolution:5686): WARNING **: aspell error: The file "/home/jdeverea/.aspell.en.pws" is not in the proper format. This turns out to be a zero-byte file Moving it out of the way and trying again: ** (evolution:5799): WARNING **: aspell error: The file "/home/jdeverea/.aspell.en.prepl" is not in the proper format. (another 0 byte file) Moving this out of the way, and trying again, and spell checking is working again. Seems to have fixed it for this user/computer; however, this is a pernicious bug, as it fails silently. Need to investigate how the zero-byte files got created, if they're intended to be valid, and if we can give some kind of indication to the user that spellchecking is not going to work, rather than merely logging it to the console.
Renaming bug to better describe symptoms from an Evolution-user's point of view
"aspell error:" can be generated in gnome-spell/dictionary.c in update_engine() and in engine_check_word() In both cases, they call raise_error() which creates a GNOME_Spell_Dictionary_Error and sets it as the exception in the CORBA_Environment. update_engine() is called by update_engines() and looks like it will accumulate the last CORBA error if one occurred. (error occurring as a result of call to new_aspell_speller or delete_aspell_speller) update_engines() is called by all of the impl functions of GNOME_Spell_Dictionary, and it looks like none of the references there correctly handle CORBA errors. engine_check_word() is called by impl_gnome_spell_dictionary_check_word which seems to correctly propagate the error back. Finally, looking at gtkhtml-3.3.2/components/html-editor/spell.c, it looks like the caller throws away any CORBA errors set in the environment. To summarize: Analysis of why there's no GUI feedback: any failures in updates_engines() when initializing aspell/pspell will be thrown away inside the implementation of gnome-spell; failures in engine_check_word will be propagated up to gtkhtml, but they get thrown away inside gtkhtml. Haven't yet looked at why the failure occurred, and how to reproduce.
Development Management has reviewed and declined this request. You may appeal this decision by reopening this request.