Bug 58328 - kbabel editor somethimes crashes when started from catalogmanager
Summary: kbabel editor somethimes crashes when started from catalogmanager
Status: RESOLVED FIXED
Alias: None
Product: kbabel
Classification: Miscellaneous
Component: general (show other bugs)
Version: unspecified
Platform: Compiled Sources Linux
: NOR crash
Target Milestone: ---
Assignee: Stanislav Visnovsky
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2003-05-11 00:05 UTC by Luc de Louw
Modified: 2004-03-15 14:53 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:


Attachments
traceback from the crashmanage (4.40 KB, text/plain)
2003-05-11 00:07 UTC, Luc de Louw
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Luc de Louw 2003-05-11 00:05:54 UTC
Version:           1.2beta2 CVS 2003-05-10 (using KDE Devel)
Installed from:    Compiled sources
Compiler:          gcc 3.3 20030226 prerelease included in SuSE 8.2
OS:          Linux

Sometimes kbabel crashes when started by doubleclicking a entry in the catalogmanager. The splashscreen appears for very short time, before the crashmanager appears.

Traceback is saved, about 80 Lines. Prefer to send it via email if whished
Comment 1 Luc de Louw 2003-05-11 00:07:26 UTC
Created attachment 1514 [details]
traceback from the crashmanage

Hope this helps
Comment 2 Stanislav Visnovsky 2003-05-13 14:51:54 UTC
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);
 }


Comment 3 Mogens Jæger 2004-03-15 14:53:24 UTC
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 ()