Bug 502546
Summary: | Evolution crashes when preferences are opened with enchant-voikko installed | ||||||
---|---|---|---|---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Bojan Smojver <bojan> | ||||
Component: | malaga | Assignee: | Ville-Pekka Vainio <vpvainio> | ||||
Status: | CLOSED ERRATA | QA Contact: | Fedora Extras Quality Assurance <extras-qa> | ||||
Severity: | medium | Docs Contact: | |||||
Priority: | low | ||||||
Version: | 11 | CC: | mbarnes, mcrha, vpvainio | ||||
Target Milestone: | --- | ||||||
Target Release: | --- | ||||||
Hardware: | All | ||||||
OS: | Linux | ||||||
Whiteboard: | |||||||
Fixed In Version: | 7.12-4.fc11 | Doc Type: | Bug Fix | ||||
Doc Text: | Story Points: | --- | |||||
Clone Of: | Environment: | ||||||
Last Closed: | 2009-06-27 03:02:07 UTC | Type: | --- | ||||
Regression: | --- | Mount Type: | --- | ||||
Documentation: | --- | CRM: | |||||
Verified Versions: | Category: | --- | |||||
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||
Cloudforms Team: | --- | Target Upstream Version: | |||||
Embargoed: | |||||||
Attachments: |
|
Description
Bojan Smojver
2009-05-26 04:09:00 UTC
Thanks for the bug report. Based on the back trace the crash comes from libvoikko 0x01f8a49a in check_header (header=0x0, file_name=0x96164d0 "/usr/lib/voikko/1/mor-standard/voikko-fi_FI.lex_l", file_type=2, min_code_version=14, max_code_version=14) at ./malaga_files.c:37 when evolution asks for available dictionaries. Is it also crashing when you run this command on a console: $ enchant-lsmod -list-dicts No, that works: $ enchant-lsmod -list-dics voikko (Voikko Provider) myspell (Myspell Provider) voikko (Voikko Provider) myspell (Myspell Provider) BTW, my language is set to English(Australia). Created attachment 345592 [details]
test.c
it wasn't -list-dics, but -list-dicts ('t' missing in your command), but I just installed enchant-voikko-1.4.2-4.fc10.x86_64 and Evolution crashes in a very same way as for you.
Interestingly enough, the test.c is the core of the function, and it works fine, same as gtkhtml-editor-test application, but calling the same from evolution, either by invoking new message or edit->preferences, crashes it.
Uninstalling enchant-voikko helps here, as that's the one where the crash occurs.
Crash appears to be coming from libmalaga. Reassigning. I'm the maintainer of libvoikko and libmalaga, I can look into this issue once I'll have the time. I have to admit that I'm not too familiar with the code of either libraries, especially libmalaga, but it's good you've been able to get backtraces. A related issue is that the libmalaga upstream isn't active in developing the library anymore. If we can get the bug fixed, they might release a new version, but it's somewhat unlikely to get them to fix the code. I can inform the Voikko project about this bug, some people there are somewhat familiar with libmalaga, they might be able to help too. For users who don't need Enchant support for the Finnish language, the best workaround for now is to uninstall the enchant-voikko package. Enchant-voikko only supports Finnish and no other languages. Regarding comment #3, the -list-dicts works here too: $ enchant-lsmod -list-dicts fi (voikko) en_BS (myspell) en_SG (myspell) en_IN (myspell) en_NA (myspell) en_ZW (myspell) en_NG (myspell) en_GB (myspell) en_BZ (myspell) en_AU (myspell) en_HK (myspell) en_DK (myspell) en_GH (myspell) en_NZ (myspell) en_ZA (myspell) en_CA (myspell) en_PH (myspell) en_US (myspell) en_BW (myspell) en_JM (myspell) en_IE (myspell) en_TT (myspell) I removed libvoikko from the system (I don't speak Finish) and now I can see the Preference dialog in Evo. Bug filed against libvoikko, they are not the libmalaga upstream but I hope someone of the Voikko developers could help in getting this bug fixed. https://sourceforge.net/tracker/?func=detail&aid=2802548&group_id=156731&atid=800960 I did some debugging and I'm having trouble believing my own eyes here. Before the segfaulting check_header function is called, the header data is fetched by calling map_file, which is in malaga's files.c file. But for whatever reason, when the evolution-mapi plugin is installed into evolution, the map_file call *gets directed to samba's implementation* at lib/util/util_file.c so it's no wonder the header data expected by malaga is not set and this causes the segfault later on. I've never seen anything like this before, please help if you have any ideas on how to fix this. This bug appears to have been reported against 'rawhide' during the Fedora 11 development cycle. Changing version to '11'. More information and reason for this action is here: http://fedoraproject.org/wiki/BugZappers/HouseKeeping As this situation was completely new to me, I did some googling. According to http://plan99.net/~mike/writing-shared-libraries.html ELF symbols have so called process scoping, so if the same symbols are exported from multiple libraries linked in to the same process, the wrong symbol can be called and this is apparently what happened here. A Voikko developer has provided a patch to rename the (un)map_file functions in libmalaga at https://sourceforge.net/tracker/?func=detail&atid=800960&aid=2802548&group_id=156731 I'll build new libmalaga packages with this patch in the next few days. Either those functions need to be declared static in libmalaga's source code or they need to use a proper namespace for the symbols they export. Something like malaga_map_file() instead of just map_file(). Ah nevermind, that's exactly what the patch does. Good. A new package with the map_file rename patch is built in koji, will submit as a Fedora 11 update. malaga-7.12-4.fc11 has been submitted as an update for Fedora 11. http://admin.fedoraproject.org/updates/malaga-7.12-4.fc11 malaga-7.12-4.fc11 has been pushed to the Fedora 11 testing repository. If problems still persist, please make note of it in this bug report. If you want to test the update, you can install it with su -c 'yum --enablerepo=updates-testing update malaga'. You can provide feedback for this update here: http://admin.fedoraproject.org/updates/F11/FEDORA-2009-6644 malaga-7.12-4.fc11 has been pushed to the Fedora 11 stable repository. If problems still persist, please make note of it in this bug report. |