Bug 284860

Summary: Adding a http calendar in korganizer crashes Plasma desktop
Product: [Plasma] plasma4 Reporter: SZÉKELYI Szabolcs <cc>
Component: generalAssignee: Plasma Bugs List <plasma-bugs>
Status: RESOLVED DUPLICATE    
Severity: crash CC: cfeck
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Ubuntu   
OS: Linux   
Latest Commit: Version Fixed In:

Description SZÉKELYI Szabolcs 2011-10-24 11:21:52 UTC
Version:           unspecified (using KDE 4.7.1) 
OS:                Linux

Tried to add a calendar from a HTTP server, and it reproducibly crashes the Plasma Desktop. The crash report assistant is not started.

Reproducible: Always

Steps to Reproduce:
Add a calendar from an HTTP server.

Actual Results:  
The desktop crashes. The background and panels disappear, windows are still shown, desktop switching is possible.

Expected Results:  
The desktop should not crash.

OS: Linux (x86_64) release 3.0.0-12-generic
Compiler: gcc
Comment 1 Christoph Feck 2011-10-25 10:16:29 UTC
If this is reproducible, try running plasma-desktop via gdb in Konsole:

> kquitapp plasma-desktop
> gdb --args plasma-desktop --nofork
> (gdb) run

When the crash appears, use "bt" to get the backtrace:

> (gdb) bt
Comment 2 SZÉKELYI Szabolcs 2011-11-11 02:14:13 UTC
Here's a backtrace of the problem. I managed to create a HTTP calendar, and plasma-desktop crashed. If I restart it, it crashes again after a few seconds. If I restart it in under gdb, it produces the following backtrace:

#0  0x00007ffff77ec3a5 in __GI_raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
        resultvar = 0
        pid = <optimized out>
        selftid = <optimized out>
#1  0x00007ffff77efb0b in __GI_abort () at abort.c:92
        save_stage = 2
        act = {__sigaction_handler = {sa_handler = 0x7fffd6a46000, sa_sigaction = 0x7fffd6a46000}, sa_mask = {__val = {140737349222848, 
              140737345473440, 140737354115680, 6737280, 6301088, 2, 140737345955709, 4294967295, 140737488346400, 30704032, 140737349217960, 
              3080456, 0, 6301088, 2, 140737279688704}}, sa_flags = -136405068, sa_restorer = 0x7fff00000005}
        sigs = {__val = {32, 0 <repeats 15 times>}}
#2  0x00007ffff39bbd7d in __gnu_cxx::__verbose_terminate_handler() () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
No symbol table info available.
#3  0x00007ffff39b9f26 in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
No symbol table info available.
#4  0x00007ffff39b9f53 in std::terminate() () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
No symbol table info available.
#5  0x00007ffff39ba096 in __cxa_rethrow () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
No symbol table info available.
#6  0x00007ffff4a5202e in QEventLoop::exec (this=<optimized out>, flags=<optimized out>) at kernel/qeventloop.cpp:214
        d = 0x80e870
        app = 0x66cd80
#7  0x00007ffff4a56789 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1064
        threadData = 0x602430
        eventLoop = {<QObject> = {_vptr.QObject = 0x7ffff4d808d0, static staticMetaObject = {d = {superdata = 0x0, 
                stringdata = 0x7ffff4b0d4e0 "QObject", data = 0x7ffff4b0d580, extradata = 0x7ffff4d784e0}}, d_ptr = {d = 0x80e870}, 
            static staticQtMetaObject = {d = {superdata = 0x0, stringdata = 0x7ffff4b16180 "Qt", data = 0x7ffff4b19a20, extradata = 0x0}}}, 
          static staticMetaObject = {d = {superdata = 0x7ffff4d784c0, stringdata = 0x7ffff4b1f9a0 "QEventLoop", data = 0x7ffff4b1f9c0, 
              extradata = 0x0}}}
        returnCode = <optimized out>
#8  0x00007ffff7b961a3 in kdemain () from /usr/lib/kde4/libkdeinit/libkdeinit4_plasma-desktop.so
No symbol table info available.
#9  0x00007ffff77d730d in __libc_start_main (main=0x400640, argc=2, ubp_av=0x7fffffffe1e8, init=<optimized out>, fini=<optimized out>, 
    rtld_fini=<optimized out>, stack_end=0x7fffffffe1d8) at libc-start.c:226
        result = <optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {0, -431523022735741913, 4195912, 140737488347616, 0, 0, 431523022681074727, 
                431504309939530791}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x400740, 0x7fffffffe1e8}, data = {prev = 0x0, 
              cleanup = 0x0, canceltype = 4196160}}}
        not_first_call = <optimized out>
#10 0x0000000000400671 in _start ()
Comment 3 SZÉKELYI Szabolcs 2011-11-11 02:27:18 UTC
Here's another backtrace, looks quite different. The previous one popped up the crash reporter, this doesn't. I managed to reproduce it the same way as the previous one: I just restarted plasma-desktop in the debugger as you suggested, and the crash comes a few seconds after, without me doing anything.

#0  __memmove_ssse3_back () at ../sysdeps/x86_64/multiarch/memcpy-ssse3-back.S:1670
#1  0x00007ffff498988d in QListData::remove (this=0x1d11e38, i=<optimized out>) at /usr/include/x86_64-linux-gnu/bits/string3.h:58
#2  0x00007fffd6b3d90f in takeAt (i=-1, this=0x1d11e38) at /usr/include/qt4/QtCore/qlist.h:474
#3  Akonadi::EntityTreeModelPrivate::monitoredItemRemoved (this=0x14a0d50, item=<optimized out>) at ../../akonadi/entitytreemodel_p.cpp:1022
#4  0x00007fffd6b2e9d7 in Akonadi::EntityTreeModel::qt_metacall (this=0xc17dc0, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, 
    _a=0x7fffffffcd60) at ./entitytreemodel.moc:168
#5  0x00007ffff4a65eba in QMetaObject::activate (sender=0x136dfd0, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fffffffcd60)
    at kernel/qobject.cpp:3278
#6  0x00007fffd6b77bb5 in Akonadi::Monitor::itemRemoved (this=<optimized out>, _t1=<optimized out>) at ./monitor.moc:190
#7  0x00007fffd6b7c51c in Akonadi::MonitorPrivate::emitItemNotification (this=0xf13e70, msg=..., item=<optimized out>, 
    collection=<optimized out>, collectionDest=<optimized out>) at ../../akonadi/monitor_p.cpp:525
#8  0x00007fffd6b7d562 in Akonadi::MonitorPrivate::emitNotification (this=0xf13e70, msg=...) at ../../akonadi/monitor_p.cpp:284
#9  0x00007fffd6ae24f1 in Akonadi::ChangeRecorderPrivate::emitNotification (this=0xf13e70, msg=<optimized out>)
    at ../../akonadi/changerecorder_p.h:60
#10 0x00007fffd6b7d246 in Akonadi::MonitorPrivate::flushPipeline (this=0xf13e70) at ../../akonadi/monitor_p.cpp:425
#11 0x00007fffd6b7d6f9 in Akonadi::MonitorPrivate::dataAvailable (this=0xf13e70) at ../../akonadi/monitor_p.cpp:434
#12 0x00007fffd6b77f85 in Akonadi::Monitor::qt_metacall (this=0x136dfd0, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, 
    _a=0x7fffffffd250) at ./monitor.moc:156
#13 0x00007fffd6ae0a48 in Akonadi::ChangeRecorder::qt_metacall (this=0x136dfd0, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, 
    _a=<optimized out>) at ./changerecorder.moc:72
#14 0x00007ffff4a65eba in QMetaObject::activate (sender=0x1498f50, m=<optimized out>, local_signal_index=<optimized out>, argv=0x0)
    at kernel/qobject.cpp:3278
#15 0x00007fffd6b7fa7d in Akonadi::EntityCache<Akonadi::Item, Akonadi::ItemFetchJob, Akonadi::ItemFetchScope>::fetchResult (this=0x1498f50, 
    job=<optimized out>) at ../../akonadi/entitycache_p.h:190
#16 0x00007fffd6b27e33 in Akonadi::EntityCacheBase::qt_metacall (this=0x1498f50, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, 
    _a=0x7fffffffd430) at ./entitycache_p.moc:77
#17 0x00007ffff4a65eba in QMetaObject::activate (sender=0x1c10d00, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fffffffd430)
    at kernel/qobject.cpp:3278
#18 0x00007ffff51315b2 in KJob::result (this=<optimized out>, _t1=0x1c10d00) at ./kjob.moc:194
#19 0x00007ffff51315f0 in KJob::emitResult (this=0x1c10d00) at ../../kdecore/jobs/kjob.cpp:312
#20 0x00007fffd6b73dc0 in Akonadi::JobPrivate::handleResponse (this=<optimized out>, tag=..., data=...) at ../../akonadi/job.cpp:66
#21 0x00007fffd6ba7c26 in Akonadi::SessionPrivate::dataReceived (this=0xde8760) at ../../akonadi/session.cpp:218
#22 0x00007fffd6baac7d in Akonadi::Session::qt_metacall (this=0x88b070, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, 
    _a=0x7fffffffd6c0) at ./session.moc:96
#23 0x00007ffff4a65eba in QMetaObject::activate (sender=0x81cfb0, m=<optimized out>, local_signal_index=<optimized out>, argv=0x0)
    at kernel/qobject.cpp:3278
#24 0x00007ffff4aadba8 in QIODevice::qt_metacall (this=0x81cfb0, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0x7fffffffd7d0)
    at .moc/release-shared/moc_qiodevice.cpp:77
#25 0x00007ffff1684890 in QLocalSocket::qt_metacall (this=0x81cfb0, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0x7fffffffd7d0)
    at .moc/release-shared/moc_qlocalsocket.cpp:81
#26 0x00007ffff4a65eba in QMetaObject::activate (sender=0xef6a40, m=<optimized out>, local_signal_index=<optimized out>, argv=0x0)
    at kernel/qobject.cpp:3278
#27 0x00007ffff167e91f in QAbstractSocketPrivate::canReadNotification (this=0xf196f0) at socket/qabstractsocket.cpp:643
#28 0x00007ffff166d551 in event (this=<optimized out>, e=<optimized out>) at socket/qnativesocketengine.cpp:1103
#29 QReadNotifier::event (this=<optimized out>, e=<optimized out>) at socket/qnativesocketengine.cpp:1100
#30 0x00007ffff3e03424 in notify_helper (e=0x7fffffffdbc0, receiver=0xf43560, this=0x67ee90) at kernel/qapplication.cpp:4486
#31 QApplicationPrivate::notify_helper (this=0x67ee90, receiver=0xf43560, e=0x7fffffffdbc0) at kernel/qapplication.cpp:4458
---Type <return> to continue, or q <return> to quit---
#32 0x00007ffff3e08291 in QApplication::notify (this=0x66cd80, receiver=0xf43560, e=0x7fffffffdbc0) at kernel/qapplication.cpp:4365
#33 0x00007ffff5701126 in KApplication::notify (this=0x66cd80, receiver=0xf43560, event=0x7fffffffdbc0)
    at ../../kdeui/kernel/kapplication.cpp:311
#34 0x00007ffff4a52afc in QCoreApplication::notifyInternal (this=0x66cd80, receiver=0xf43560, event=0x7fffffffdbc0)
    at kernel/qcoreapplication.cpp:787
#35 0x00007ffff4a7d5b7 in sendEvent (event=0x7fffffffdbc0, receiver=<optimized out>)
    at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#36 socketNotifierSourceDispatch (source=0x679400) at kernel/qeventdispatcher_glib.cpp:110
#37 0x00007fffebe16a5d in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#38 0x00007fffebe17258 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#39 0x00007fffebe17429 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#40 0x00007ffff4a7ded6 in QEventDispatcherGlib::processEvents (this=0x603f40, flags=<optimized out>) at kernel/qeventdispatcher_glib.cpp:422
#41 0x00007ffff3eab07e in QGuiEventDispatcherGlib::processEvents (this=<optimized out>, flags=<optimized out>)
    at kernel/qguieventdispatcher_glib.cpp:204
#42 0x00007ffff4a51cf2 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#43 0x00007ffff4a51ef7 in QEventLoop::exec (this=0x7fffffffde00, flags=...) at kernel/qeventloop.cpp:201
#44 0x00007ffff4a56789 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1064
#45 0x00007ffff7b961a3 in kdemain (argc=2, argv=0x7fffffffe1e8) at ../../../../plasma/desktop/shell/main.cpp:120
#46 0x00007ffff77d730d in __libc_start_main (main=0x400640 <main(int, char**)>, argc=2, ubp_av=0x7fffffffe1e8, init=<optimized out>, 
    fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fffffffe1d8) at libc-start.c:226
#47 0x0000000000400671 in _start ()
Comment 4 SZÉKELYI Szabolcs 2011-11-11 02:30:06 UTC
After this, I removed the calendar that I've added in the beginning, and plasma-desktop doesn't crash anymore.
Comment 5 Christoph Feck 2011-11-19 01:15:38 UTC
Comment #3 is bug 279101. If you can reproduce the crash from comment #2, please add the message about the exception (should appear in Konsole output or in .xsession-errors).
Comment 6 Aaron J. Seigo 2011-11-21 09:15:29 UTC

*** This bug has been marked as a duplicate of bug 279322 ***