Summary: | Kpilotdaemon crashes when syncing with Korganizer | ||
---|---|---|---|
Product: | [Applications] kpilot | Reporter: | Steve Pribyl <linux> |
Component: | General | Assignee: | groot |
Status: | RESOLVED FIXED | ||
Severity: | crash | ||
Priority: | NOR | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | unspecified | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: |
Description
Steve Pribyl
2003-03-26 22:14:35 UTC
Debug Stacktrace [New Thread 1024 (LWP 20725)] 0x420b4769 in wait4 () from /lib/i686/libc.so.6 #0 0x420b4769 in wait4 () from /lib/i686/libc.so.6 #1 0x4213030c in __DTOR_END__ () from /lib/i686/libc.so.6 #2 0x40ea5ca3 in waitpid () from /lib/i686/libpthread.so.0 #3 0x4062b8d2 in KCrash::defaultCrashHandler () from /usr/lib/libkdecore-gcc2.96.so.4 #4 0x40ea3f75 in pthread_sighandler () from /lib/i686/libpthread.so.0 #5 <signal handler called> #6 0x4136261a in VCalConduitPrivate::updateIncidences (this=0x81acaf8) at vcal-conduit.cc:90 #7 0x4135f981 in VCalConduitBase::openCalendar (this=0x815e1a8) at vcal-conduitbase.cc:341 #8 0x4135f0a1 in VCalConduitBase::exec (this=0x815e1a8) at vcal-conduitbase.cc:245 #9 0x40ef9668 in SyncAction::execConduit (this=0x815e1a8) at syncAction.cc:91 #10 0x40ef8d8f in SyncAction::qt_invoke (this=0x815e1a8, _id=2, _o=0xbffff440) at syncAction.moc:146 #11 0x40ef644d in ConduitAction::qt_invoke (this=0x815e1a8, _id=2, _o=0xbffff440) at plugin.moc:146 #12 0x4135e6e9 in VCalConduitBase::qt_invoke (this=0x815e1a8, _id=2, _o=0xbffff440) at vcal-conduitbase.moc:92 #13 0x41362431 in VCalConduit::qt_invoke (this=0x815e1a8, _id=2, _o=0xbffff440) at vcal-conduit.moc:76 #14 0x40938ec7 in QObject::activate_signal () from /usr/lib/qt3-gcc2.96/lib/libqt-mt.so.3 #15 0x40c315ac in QSignal::signal () from /usr/lib/qt3-gcc2.96/lib/libqt-mt.so.3 #16 0x4094ed04 in QSignal::activate () from /usr/lib/qt3-gcc2.96/lib/libqt-mt.so.3 #17 0x4095488b in QSingleShotTimer::event () from /usr/lib/qt3-gcc2.96/lib/libqt-mt.so.3 #18 0x408d8ff3 in QApplication::internalNotify () from /usr/lib/qt3-gcc2.96/lib/libqt-mt.so.3 #19 0x408d8e8c in QApplication::notify () from /usr/lib/qt3-gcc2.96/lib/libqt-mt.so.3 #20 0x40590f1b in KApplication::notify () from /usr/lib/libkdecore-gcc2.96.so.4 #21 0x40880339 in qt_activate_timers () from /usr/lib/qt3-gcc2.96/lib/libqt-mt.so.3 #22 0x4087dec4 in QApplication::processNextEvent () from /usr/lib/qt3-gcc2.96/lib/libqt-mt.so.3 #23 0x408da4bc in QApplication::enter_loop () from /usr/lib/qt3-gcc2.96/lib/libqt-mt.so.3 #24 0x4087d637 in QApplication::exec () from /usr/lib/qt3-gcc2.96/lib/libqt-mt.so.3 #25 0x0805690c in main (argc=1, argv=0xbffffc74) at pilotDaemon.cc:900 #26 0x42017499 in __libc_start_main () from /lib/i686/libc.so.6 Subject: kdepim/kpilot/conduits/vcalconduit CVS commit by kainhofe: Added a few checks for 0L pointers. A messed up configuration (e.g. because the conduit's config dialog changed) could have lead to crashes as in bug #56454. CCMAIL: 56454-done@bugs.kde.org M +8 -5 vcal-conduit.cc 1.89 M +7 -1 vcal-conduitbase.cc 1.37 M +0 -5 vcal-setup.cc 1.29 --- kdepim/kpilot/conduits/vcalconduit/vcal-conduit.cc #1.88:1.89 @@ -80,4 +80,6 @@ void VCalConduitPrivate::addIncidence(KC int VCalConduitPrivate::updateIncidences() { + FUNCTIONSETUP; + if (!fCalendar) return 0; fAllEvents = fCalendar->events(); fAllEvents.setAutoDelete(false); @@ -90,4 +92,5 @@ void VCalConduitPrivate::removeIncidence // use dynamic_cast which returns a null pointer if the class does not match... fAllEvents.remove(dynamic_cast<KCal::Event*>(e)); + if (!fCalendar) return 0; fCalendar->deleteEvent(dynamic_cast<KCal::Event*>(e)); } --- kdepim/kpilot/conduits/vcalconduit/vcal-conduitbase.cc #1.36:1.37 @@ -348,4 +348,10 @@ error: } + if (!fCalendar) + { + kdWarning() <<k_funcinfo << "Unable to initialize calendar object. Please check the conduit's setup."<<endl; + emit logError(i18n("Unable to initialize the calendar object. Please check the conduit's setup")); + return false; + } fP = newVCalPrivate(fCalendar); if (!fP) return false; --- kdepim/kpilot/conduits/vcalconduit/vcal-setup.cc #1.28:1.29 @@ -38,5 +38,4 @@ #include <kconfig.h> -//#include <kfiledialog.h> #include <kurlrequester.h> |