Bug 259342

Summary: KAddressbook crashes when adding a contact / group
Product: [Applications] kaddressbook Reporter: Brian Beck <brian.beck76>
Component: generalAssignee: kdepim bugs <kdepim-bugs>
Status: RESOLVED WORKSFORME    
Severity: crash CC: tokoe
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Ubuntu   
OS: Linux   
Latest Commit: Version Fixed In:

Description Brian Beck 2010-12-09 16:41:10 UTC
Application: kaddressbook (4.4.8)
KDE Platform Version: 4.5.85 (4.6 Beta2)
Qt Version: 4.7.0
Operating System: Linux 2.6.35-23-generic x86_64
Distribution: Ubuntu 10.10

-- Information about the crash:
- What I was doing when the application crashed:
I open KAddressbook, press the "Add Contact" button, type a name in the name field, press save, and KAddressbook crashes.

When I run KAddressbook from the command line, this is what is output:
$ kaddressbook
Bus::open: Can not get ibus-daemon's address. 
IBusInputContext::createInputContext: no connection to ibus-daemon 
bbeck@tardis:~$ kaddressbook(2594)/libkdepim Akonadi::PluginLoader::scan: missing or empty [Plugin]X-Akonadi-Class value in " "/usr/share/kde4/apps/akonadi/plugins/serializer/akonadi_serializer_kcal.desktop" " - skipping 

kaddressbook(2594)/libkdepim Akonadi::PluginLoader::scan: missing or empty [Plugin]X-Akonadi-Class value in " "/usr/share/kde4/apps/akonadi/plugins/serializer/akonadi_serializer_bookmark.desktop" " - skipping 

kaddressbook(2594)/libkdepim Akonadi::PluginLoader::scan: missing or empty [Plugin]X-Akonadi-Class value in " "/usr/share/kde4/apps/akonadi/plugins/serializer/akonadi_serializer_contactgroup.desktop" " - skipping 

kaddressbook(2594)/libkdepim Akonadi::PluginLoader::scan: missing or empty [Plugin]X-Akonadi-Class value in " "/usr/share/kde4/apps/akonadi/plugins/serializer/akonadi_serializer_mail.desktop" " - skipping 

kaddressbook(2594)/libkdepim Akonadi::PluginLoader::scan: missing or empty [Plugin]X-Akonadi-Class value in " "/usr/share/kde4/apps/akonadi/plugins/serializer/akonadi_serializer_addressee.desktop" " - skipping 

kaddressbook(2594)/libkdepim Akonadi::PluginLoader::scan: missing or empty [Plugin]X-Akonadi-Class value in " "/usr/share/kde4/apps/akonadi/plugins/serializer/akonadi_serializer_microblog.desktop" " - skipping 

Qt has caught an exception thrown from an event handler. Throwing
exceptions from an event handler is not supported in Qt. You must
reimplement QApplication::notify() and catch all exceptions there.

terminate called after throwing an instance of 'Akonadi::PayloadException'
  what():  Akonadi::PayloadException: Wrong payload type (requested: sp(0)<QByteArray>; present: sp(0)<KABC::Addressee>
KCrash: Application 'kaddressbook' crashing...
KCrash: Attempting to start /usr/lib/kde4/libexec/drkonqi from kdeinit
sock_file=/home/bbeck/.kde/socket-tardis/kdeinit4__0
QSocketNotifier: Invalid socket 12 and type 'Read', disabling...

The crash can be reproduced every time.

-- Backtrace:
Application: KAddressBook (kaddressbook), signal: Aborted
[Current thread is 1 (Thread 0x7ff73ce1c780 (LWP 2594))]

Thread 2 (Thread 0x7ff7206b8710 (LWP 2597)):
#0  0x00007ff739e85203 in __poll (fds=<value optimized out>, nfds=<value optimized out>, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:87
#1  0x00007ff735dd1009 in ?? () from /lib/libglib-2.0.so.0
#2  0x00007ff735dd145c in g_main_context_iteration () from /lib/libglib-2.0.so.0
#3  0x00007ff73a7df1e6 in QEventDispatcherGlib::processEvents (this=0x1ee1f70, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:417
#4  0x00007ff73a7b1a02 in QEventLoop::processEvents (this=<value optimized out>, flags=) at kernel/qeventloop.cpp:149
#5  0x00007ff73a7b1dec in QEventLoop::exec (this=0x7ff7206b7d90, flags=) at kernel/qeventloop.cpp:201
#6  0x00007ff73a6bc2fd in QThread::exec (this=<value optimized out>) at thread/qthread.cpp:490
#7  0x00007ff73a7915f8 in QInotifyFileSystemWatcherEngine::run (this=0x1f0a7c0) at io/qfilesystemwatcher_inotify.cpp:248
#8  0x00007ff73a6bf27e in QThreadPrivate::start (arg=0x1f0a7c0) at thread/qthread_unix.cpp:266
#9  0x00007ff7364c4971 in start_thread (arg=<value optimized out>) at pthread_create.c:304
#10 0x00007ff739e9194d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#11 0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7ff73ce1c780 (LWP 2594)):
[KCrash Handler]
#6  0x00007ff739ddeba5 in raise (sig=<value optimized out>) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#7  0x00007ff739de26b0 in abort () at abort.c:92
#8  0x00007ff73a3ff6bd in __gnu_cxx::__verbose_terminate_handler() () from /usr/lib/libstdc++.so.6
#9  0x00007ff73a3fd906 in ?? () from /usr/lib/libstdc++.so.6
#10 0x00007ff73a3fd933 in std::terminate() () from /usr/lib/libstdc++.so.6
#11 0x00007ff73a3fda86 in __cxa_rethrow () from /usr/lib/libstdc++.so.6
#12 0x00007ff73a7b1f3d in QEventLoop::exec (this=<value optimized out>, flags=<value optimized out>) at kernel/qeventloop.cpp:214
#13 0x00007ff73a7b5ebb in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1009
#14 0x00000000004052ad in main (argc=<value optimized out>, argv=<value optimized out>) at ../../kaddressbook/main.cpp:58

Possible duplicates by query: bug 259305, bug 259302, bug 259289, bug 259272, bug 259240.

Reported using DrKonqi
Comment 1 Tobias Koenig 2010-12-09 18:17:10 UTC
Hej,

> bbeck@tardis:~$ kaddressbook(2594)/libkdepim Akonadi::PluginLoader::scan:
> missing or empty [Plugin]X-Akonadi-Class value in "
> "/usr/share/kde4/apps/akonadi/plugins/serializer/akonadi_serializer_kcal.desktop"
> " - skipping 
Looks like you have old .desktop files around, which do not contain the needed entry. Please make sure you have a clean setup on your system.

Ciao,
Tobias
Comment 2 Brian Beck 2010-12-09 20:26:18 UTC
Thanks Tobias.  It appears that kubuntu is packaging the wrong .desktop files.  I moved my serializer directory to serializer.BAK, then using aptitude reinstalled the kdepim-runtime package.  However it appears that the same files were installed:

/usr/share/kde4/apps/akonadi/plugins$ md5sum serializer/* 
63e5b2a5a53f1e0baed268a839652507  serializer/akonadi_serializer_addressee.desktop
eb5f290b164cd22c63f5f1b6c601500d  serializer/akonadi_serializer_bookmark.desktop
ecb6c8a3591ea052cc4b81fa81eb8d65  serializer/akonadi_serializer_contactgroup.desktop
59ddbc2c3829d3a29293f56f337f6a0e  serializer/akonadi_serializer_kcal.desktop
8d00691f54484eb5571f3b7aa6c67935  serializer/akonadi_serializer_mail.desktop
89ab551dd1a407834f4d5de8fa352035  serializer/akonadi_serializer_microblog.desktop

/usr/share/kde4/apps/akonadi/plugins$ md5sum serializer.BAK/* 
63e5b2a5a53f1e0baed268a839652507  serializer.BAK/akonadi_serializer_addressee.desktop
eb5f290b164cd22c63f5f1b6c601500d  serializer.BAK/akonadi_serializer_bookmark.desktop
ecb6c8a3591ea052cc4b81fa81eb8d65  serializer.BAK/akonadi_serializer_contactgroup.desktop
59ddbc2c3829d3a29293f56f337f6a0e  serializer.BAK/akonadi_serializer_kcal.desktop
8d00691f54484eb5571f3b7aa6c67935  serializer.BAK/akonadi_serializer_mail.desktop
89ab551dd1a407834f4d5de8fa352035  serializer.BAK/akonadi_serializer_microblog.desktop

So if you are a kubuntu user, and are running into this problem you can do this:

1. Backup /usr/share/kde4/apps/akonadi/plugins/serializer/
2. Go to http://websvn.kde.org/trunk/KDE/kdepim/runtime/plugins/
3. Download all the .desktop files
4. Copy them into /usr/share/kde4/apps/akonadi/plugins/serializer/

Now everything should be good.  (At least it was for me.)

-- Brian