Summary: | kbabel editor somethimes crashes when started from catalogmanager | ||
---|---|---|---|
Product: | kbabel | Reporter: | Luc de Louw <luc> |
Component: | general | Assignee: | Stanislav Visnovsky <visnovsky> |
Status: | RESOLVED FIXED | ||
Severity: | crash | ||
Priority: | NOR | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | Compiled Sources | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Attachments: | traceback from the crashmanage |
Description
Luc de Louw
2003-05-11 00:05:54 UTC
Created attachment 1514 [details]
traceback from the crashmanage
Hope this helps
Subject: kdesdk/kbabel/kbabel CVS commit by nanulo: Fix 58328: Crash because of broken recent files list: 1) validate the URLs in the recent file list after loading 2) do not allow invalid/empty URLs in the list IMHO 2) is the reason why there were problems with recent files - after unsuccessful try on open(), the file was added into the recent files anyway. CCMAIL: 58328-done@bugs.kde.org M +11 -1 kbabel.cpp 1.160 --- kdesdk/kbabel/kbabel/kbabel.cpp #1.159:1.160 @@ -851,4 +851,13 @@ void KBabelMW::restoreSettings( KConfig* { a_recent->loadEntries(config); + + // cleanup maybe broken list + QStringList list = a_recent->items(); + QStringList result; + for ( QStringList::Iterator it = list.begin(); it != list.end(); ++it ) { + KURL u( *it ); + if( u.isValid() && !u.isEmpty() ) result.append( *it ); + } + a_recent->setItems(result); } } @@ -1025,4 +1034,5 @@ void KBabelMW::fileOpen() void KBabelMW::addToRecentFiles(KURL url) { + if( url.isValid() && ! url.isEmpty() ) a_recent->addURL(url); } I have experienced crashes too, but some files works OK, but other don't, and those crashes the KBabel each time I try to start them. My backtrace output were: (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)...[New Thread 16384 (LWP 20095)] (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...0x41383a86 in waitpid () from /lib/i686/libpthread.so.0 #0 0x41383a86 in waitpid () from /lib/i686/libpthread.so.0 #1 0x40859010 in KCrash::defaultCrashHandler(int) () from /opt/kde3/lib/libkdecore.so.4 #2 0x4138296c in __pthread_sighandler () from /lib/i686/libpthread.so.0 #3 <signal handler called> #4 0x418745e2 in DataBaseManager::count() () from /opt/kde3/lib/kde3/libdbsearchengine.so #5 0x41875e8e in DataBaseManager::addLocation(QString, unsigned) () from /opt/kde3/lib/kde3/libdbsearchengine.so #6 0x418740c9 in DataBaseManager::putItem(DataBaseItem*, bool) () from /opt/kde3/lib/kde3/libdbsearchengine.so #7 0x418768d3 in DataBaseManager::putNewTranslation(QString, QString, int, bool) () from /opt/kde3/lib/kde3/libdbsearchengine.so #8 0x4186ef12 in KDBSearchEngine::stringChanged(QString, QString, QString) () from /opt/kde3/lib/kde3/libdbsearchengine.so #9 0x400f6006 in KBabelDictBox::setTextChanged(QString, QString, QString) () from /opt/kde3/lib/libkbabeldict.so.1 #10 0x4008b2b9 in KBabelView::informDictionary() () from /opt/kde3/lib/libkbabel.so.1 #11 0x4008205d in KBabelView::gotoEntry(int, bool) () from /opt/kde3/lib/libkbabel.so.1 #12 0x400776ed in KBabelView::newFileOpened(bool) () from /opt/kde3/lib/libkbabel.so.1 #13 0x40089fdc in KBabelView::qt_invoke(int, QUObject*) () from /opt/kde3/lib/libkbabel.so.1 #14 0x40c50538 in QObject::activate_signal(QConnectionList*, QUObject*) () from /usr/lib/qt3/lib/libqt-mt.so.3 #15 0x40c50c9b in QObject::activate_signal_bool(int, bool) () from /usr/lib/qt3/lib/libqt-mt.so.3 #16 0x4013210b in Catalog::signalFileOpened(bool) () from /opt/kde3/lib/libkbabelcommon.so.1 #17 0x40122018 in Catalog::openURL(KURL const&, bool&, QString const&) () from /opt/kde3/lib/libkbabelcommon.so.1 #18 0x40077bd5 in KBabelView::open(KURL const&, QString const&, bool) () from /opt/kde3/lib/libkbabel.so.1 #19 0x40069b77 in KBabel::open(KURL const&, QString, bool) () from /opt/kde3/lib/libkbabel.so.1 #20 0x0804bcc1 in KBabelApp::newInstance() () #21 0x40873d3d in KUniqueApplication::processDelayed() () from /opt/kde3/lib/libkdecore.so.4 #22 0x408740dc in KUniqueApplication::qt_invoke(int, QUObject*) () from /opt/kde3/lib/libkdecore.so.4 #23 0x40c5061b in QObject::activate_signal(QConnectionList*, QUObject*) () from /usr/lib/qt3/lib/libqt-mt.so.3 #24 0x40f7ee2a in QSignal::signal(QVariant const&) () from /usr/lib/qt3/lib/libqt-mt.so.3 #25 0x40c6b1e8 in QSignal::activate() () from /usr/lib/qt3/lib/libqt-mt.so.3 #26 0x40c72b93 in QSingleShotTimer::event(QEvent*) () from /usr/lib/qt3/lib/libqt-mt.so.3 #27 0x40bee656 in QApplication::internalNotify(QObject*, QEvent*) () from /usr/lib/qt3/lib/libqt-mt.so.3 #28 0x40bed97e in QApplication::notify(QObject*, QEvent*) () from /usr/lib/qt3/lib/libqt-mt.so.3 #29 0x407e68c9 in KApplication::notify(QObject*, QEvent*) () from /opt/kde3/lib/libkdecore.so.4 #30 0x40bdab53 in QEventLoop::activateTimers() () from /usr/lib/qt3/lib/libqt-mt.so.3 #31 0x40b9629d in QEventLoop::processEvents(unsigned) () from /usr/lib/qt3/lib/libqt-mt.so.3 #32 0x40c02900 in QEventLoop::enterLoop() () from /usr/lib/qt3/lib/libqt-mt.so.3 #33 0x40c027f6 in QEventLoop::exec() () from /usr/lib/qt3/lib/libqt-mt.so.3 #34 0x40bee8ef in QApplication::exec() () from /usr/lib/qt3/lib/libqt-mt.so.3 #35 0x0804d612 in main () |