Bug 56454 - Kpilotdaemon crashes when syncing with Korganizer
Summary: Kpilotdaemon crashes when syncing with Korganizer
Status: RESOLVED FIXED
Alias: None
Product: kpilot
Classification: Applications
Component: General (show other bugs)
Version: unspecified
Platform: unspecified Linux
: NOR crash
Target Milestone: ---
Assignee: groot
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2003-03-26 22:14 UTC by Steve Pribyl
Modified: 2004-10-19 16:20 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Steve Pribyl 2003-03-26 22:14:35 UTC
Version:            (using KDE 3.0.0)
Compiler:          gcc version 2.96 20000731 (Red Hat Linux 7.3 2.96-110)
OS:          Linux (i686) release 2.4.19

RH 7.3
Kernel 2.4.19
KDE 3.0

Removed RH kpilot and pilot-link
Using 
kpilot 3.0-4.3.8 --prefix=/usr (RHism)
pilot-link 0.11.7

Palm V
PalmOS 3.3

When ever I try to sync KOrganizer the Kpilotdaemon crashes.


[New Thread 1024 (LWP 2359)]
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  0x413a2271 in VCalConduitPrivate::updateIncidences ()
   from /usr/lib/kde3/libvcalconduit.so.0
#7  0x4139af26 in VCalConduitBase::openCalendar ()
   from /usr/lib/kde3/libvcalconduit.so.0
#8  0x413994f7 in VCalConduitBase::exec ()
   from /usr/lib/kde3/libvcalconduit.so.0
#9  0x40efd548 in SyncAction::execConduit () from /usr/lib/libkpilot.so.0
#10 0x40efbe61 in SyncAction::qt_invoke () from /usr/lib/libkpilot.so.0
#11 0x40ef5540 in ConduitAction::qt_invoke () from /usr/lib/libkpilot.so.0
#12 0x41397b9b in VCalConduitBase::qt_invoke ()
   from /usr/lib/kde3/libvcalconduit.so.0
#13 0x413a20f4 in VCalConduit::qt_invoke ()
   from /usr/lib/kde3/libvcalconduit.so.0
#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 0x0805f803 in main ()
#26 0x42017499 in __libc_start_main () from /lib/i686/libc.so.6
Comment 1 Steve Pribyl 2003-03-26 22:45:00 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
Comment 2 Reinhold Kainhofer 2003-06-01 19:02:18 UTC
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>