Version: 1.9.1 (using KDE KDE 3.3.1) Installed from: Debian testing/unstable Packages OS: Linux KBabel crashes when I get to the 6th string in the attached file (Dutch translation of Debian release notes for Sarge). No crash dialog is shown; if I start kbabel from the command line, the only thing I get is "segmentation fault". I tried running the program in strace (strace kbabel --no-fork <file>) but when I do, the crash does _not_ happen. Running with --no-fork but without strace _does_ crash. This may be related to #46586, but as I'm not sure I decided to open a new bug.
Created attachment 9005 [details] File that causes the crash
Forgot some possibly relevant library versions: libqt3c102-mt 3.3.3-7 kdelibs4 3.3.1-4 libgcc1 3.4.3-6 libdb4.2 4.2.52-17 xlibs 4.3.0.dfsg.1-1
What are the last messages on console if you run it with nofork?
I have managed to get rid of the problem, but can reproduce it by changing the 'Project properties' for Spelling. - If I disable 'on the fly spellchecking', I will never get a crash. - With 'on the fly spellchecking' enabled, I will sometimes get a crash, depending on settings; if I do get a crash, it will always be on the same string. The main factor that determines if I get a crash seems to be the dictionary that's selected: - with Ispell's Default (US English) dictionary the crash will happen more often than not - with the 'Unknown [dutch]' Ispell dictionary the crash will never happen With the Default (US English) dictionary selected: - kbabel will always crash if I select US-ASCII encoding. - if I switch to ISO 8859-1 it will sometimes still crash, but I can get it to work eventually by switching 'on the fly spellchecking' or 'remember ignored words' off and on a couple of times and changing the encoding. However if I close and restart kbabel it may crash again. - if I switch to ISO 8859-15, the same happens as with ISO 8859-1, only with an error 'charsets iso-8859-4 .. iso-8859-15 not supported yet'. I'm not sure if the encoding really is relevant as switching encodings seems to make no difference at all with the Dutch dictionary selected. Especially since the string on which the crash happens does _not_ contain any non-ascii characters! Here are the console messages I've seen. This message is always printed (even if no crash happens): kbabel: WARNING: KGenericFactory: instance requested but no instance name or about data passed to the constructor! The only message that will always be printed on a crash with --nofork is: Segmentation fault (Which is less than helpful ;-) The full message when I select ISO 8859-15 is: kspell (kdelibs): ERROR: charsets iso-8859-4 .. iso-8859-15 not supported yet On three occasions I got these messages, although once not at a crash: QObject::disconnect: No such signal QScrollBar::misspelling(const QString&,const QStringList&,unsigned int) QObject::disconnect: No such signal QScrollBar::misspelling(const QString&,const QStringList&,unsigned int) I will attach the config files for kbabel as they were before I upgraded to the new version of kbabel. Hope all this helps. Cheers, Frans Pop
Created attachment 9463 [details] Config files (from before upgrade to current version of kbabel). I am attaching the 'old' config files as the upgrade could be a contributing factor.
I've tried to fix the spellchecker today, it's in CVS. If you can test, would be great.
I successfully compiled kbabel with the patch (applied against Debian source package for kdesdk 3.3.1 that includes kbabel 1.9.1). Unfortunately it does not fix the segfault. I can still reproduce it in exactly the same way. I tried to strace it again, but the crash still does not happen with strace. Cheers, Frans
Created attachment 9878 [details] Proposed patch Could you, please, try this patch?
I've performed exactly the same tests as with the previous patch. Unfortunately the results were also the same: no difference, the crash still happens :-( Cheers, Frans
Frans, I'm closing this - there will be no more KDE 3.3.x Please, reopen if it's possible to reproduce it with KDE 3.4.x