Bug 263895

Summary: Kontact crash when moving to-do s by drag and drop
Product: [Applications] korganizer Reporter: marian.trenkwalder
Component: generalAssignee: kdepim bugs <kdepim-bugs>
Status: RESOLVED FIXED    
Severity: crash CC: smartins, tabaccatore
Priority: NOR    
Version: SVN trunk (KDE 4)   
Target Milestone: ---   
Platform: Arch Linux   
OS: Linux   
Latest Commit: Version Fixed In: 4.11.4
Sentry Crash Report:
Attachments: New crash information added by DrKonqi

Description marian.trenkwalder 2011-01-21 17:49:57 UTC
Application: kontact (4.6 beta4)
KDE Platform Version: 4.5.95 (4.6 RC2)
Qt Version: 4.7.0
Operating System: Linux 2.6.37-CHAKRA x86_64
Distribution (Platform): Archlinux Packages

-- Information about the crash:
- What I was doing when the application crashed:
I move a To-do by using drag and drop in the To-do list, kontact crash

The crash can be reproduced every time.

-- Backtrace:
Application: Kontact (kontact), signal: Segmentation fault
[Current thread is 1 (Thread 0x7f1d8a30d760 (LWP 4401))]

Thread 2 (Thread 0x7f1d724df710 (LWP 4402)):
#0  0x00007f1d8264640c in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#1  0x00007f1d86cd2574 in WTF::TCMalloc_PageHeap::scavengerThread() () from /usr/lib/libQtWebKit.so.4
#2  0x00007f1d86cd25a9 in WTF::TCMalloc_PageHeap::runScavengerThread(void*) () from /usr/lib/libQtWebKit.so.4
#3  0x00007f1d82641cb0 in start_thread () from /lib/libpthread.so.0
#4  0x00007f1d8781b9fd in clone () from /lib/libc.so.6
#5  0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7f1d8a30d760 (LWP 4401)):
[KCrash Handler]
#6  QString (this=0x0) at /usr/include/QtCore/qstring.h:727
#7  KCalCore::IncidenceBase::uid (this=0x0) at /home/manutortosa/desktop-testing/kdepimlibs/src/kdepimlibs-4.5.95/kcalcore/incidencebase.cpp:226
#8  0x00007f1d5dd3ca57 in KOTodoModel::dropMimeData (this=0x1fe8140, data=<value optimized out>, action=<value optimized out>, row=<value optimized out>, column=<value optimized out>, 
    parent=<value optimized out>) at /home/manutortosa/desktop-testing/kdepim-beta/src/kdepim-4.5.94.1/korganizer/views/todoview/kotodomodel.cpp:993
#9  0x00007f1d88ed4a08 in QSortFilterProxyModel::dropMimeData (this=<value optimized out>, data=0x1e73440, action=Qt::MoveAction, row=<value optimized out>, column=<value optimized out>, 
    parent=<value optimized out>) at itemviews/qsortfilterproxymodel.cpp:1828
#10 0x00007f1d88e4b2fe in QAbstractItemView::dropEvent (this=0x1ffea80, event=0x7fffdfd0d7f0) at itemviews/qabstractitemview.cpp:1981
#11 0x00007f1d8894f6f8 in QWidget::event (this=0x1ffea80, event=0x7fffdfd0d7f0) at kernel/qwidget.cpp:8377
#12 0x00007f1d88d1e816 in QFrame::event (this=0x1ffea80, e=0x7fffdfd0d7f0) at widgets/qframe.cpp:557
#13 0x00007f1d88e45223 in QAbstractItemView::viewportEvent (this=0x1ffea80, event=0x7fffdfd0d7f0) at itemviews/qabstractitemview.cpp:1619
#14 0x00007f1d88e8e865 in QTreeView::viewportEvent (this=0x1ffea80, event=0x7fffdfd0d7f0) at itemviews/qtreeview.cpp:1256
#15 0x00007f1d87f21677 in QCoreApplicationPrivate::sendThroughObjectEventFilters (this=<value optimized out>, receiver=0x1ffbe00, event=0x7fffdfd0d7f0) at kernel/qcoreapplication.cpp:847
#16 0x00007f1d888f62d9 in QApplicationPrivate::notify_helper (this=0xd088e0, receiver=0x1ffbe00, e=0x7fffdfd0d7f0) at kernel/qapplication.cpp:4393
#17 0x00007f1d888fb8ee in QApplication::notify (this=<value optimized out>, receiver=<value optimized out>, e=0x7fffdfd0d7f0) at kernel/qapplication.cpp:4203
#18 0x00007f1d896c0596 in KApplication::notify(QObject*, QEvent*) () from /usr/lib/libkdeui.so.5
#19 0x00007f1d87f214ec in QCoreApplication::notifyInternal (this=0x7fffdfd10a80, receiver=0x1ffbe00, event=0x7fffdfd0d7f0) at kernel/qcoreapplication.cpp:732
#20 0x00007f1d88988dc3 in QCoreApplication::sendEvent (this=<value optimized out>, xe=<value optimized out>, passive=<value optimized out>)
    at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#21 QX11Data::xdndHandleDrop (this=<value optimized out>, xe=<value optimized out>, passive=<value optimized out>) at kernel/qdnd_x11.cpp:1183
#22 0x00007f1d88989e76 in QDragManager::drop (this=0x1c3b2e0) at kernel/qdnd_x11.cpp:1725
#23 0x00007f1d8898cc28 in QDragManager::eventFilter (this=0x1c3b2e0, o=0x143b780, e=0x7fffdfd0e210) at kernel/qdnd_x11.cpp:1312
#24 0x00007f1d87f215bb in QCoreApplicationPrivate::sendThroughApplicationEventFilters (this=0xd088e0, receiver=0x143b780, event=0x7fffdfd0e210) at kernel/qcoreapplication.cpp:828
#25 0x00007f1d888f6256 in QApplicationPrivate::notify_helper (this=0xd088e0, receiver=0x143b780, e=0x7fffdfd0e210) at kernel/qapplication.cpp:4372
#26 0x00007f1d888fc038 in QApplication::notify (this=<value optimized out>, receiver=0x143b780, e=0x7fffdfd0e210) at kernel/qapplication.cpp:3960
#27 0x00007f1d896c0596 in KApplication::notify(QObject*, QEvent*) () from /usr/lib/libkdeui.so.5
#28 0x00007f1d87f214ec in QCoreApplication::notifyInternal (this=0x7fffdfd10a80, receiver=0x143b780, event=0x7fffdfd0e210) at kernel/qcoreapplication.cpp:732
#29 0x00007f1d888f772b in QCoreApplication::sendEvent (receiver=0x143b780, event=0x7fffdfd0e210, alienWidget=0x0, nativeWidget=0x143b780, buttonDown=0x7f1d8946b078, lastMouseReceiver=..., 
    spontaneous=true) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#30 QApplicationPrivate::sendMouseEvent (receiver=0x143b780, event=0x7fffdfd0e210, alienWidget=0x0, nativeWidget=0x143b780, buttonDown=0x7f1d8946b078, lastMouseReceiver=..., spontaneous=true)
    at kernel/qapplication.cpp:3059
#31 0x00007f1d8897e9f8 in QETWidget::translateMouseEvent (this=0x143b780, event=<value optimized out>) at kernel/qapplication_x11.cpp:4403
#32 0x00007f1d8897d0b9 in QApplication::x11ProcessEvent (this=0x7fffdfd10a80, event=0x7fffdfd0e9c0) at kernel/qapplication_x11.cpp:3536
#33 0x00007f1d889a5d02 in x11EventSourceDispatch (s=0xd0fc90, callback=0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:146
#34 0x00007f1d82113c33 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#35 0x00007f1d82114410 in ?? () from /usr/lib/libglib-2.0.so.0
#36 0x00007f1d821146ad in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#37 0x00007f1d87f4f72f in QEventDispatcherGlib::processEvents (this=0xcb6fa0, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:415
#38 0x00007f1d889a599e in QGuiEventDispatcherGlib::processEvents (this=<value optimized out>, flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:204
#39 0x00007f1d87f1ff82 in QEventLoop::processEvents (this=<value optimized out>, flags=...) at kernel/qeventloop.cpp:149
#40 0x00007f1d87f201cc in QEventLoop::exec (this=0x1bd5240, flags=...) at kernel/qeventloop.cpp:201
#41 0x00007f1d8898c88c in QDragManager::drag (this=0x1c3b2e0, o=<value optimized out>) at kernel/qdnd_x11.cpp:1981
#42 0x00007f1d889098c8 in QDrag::exec (this=0x21993c0, supportedActions=..., defaultDropAction=Qt::IgnoreAction) at kernel/qdrag.cpp:284
#43 0x00007f1d88e4f0fe in QAbstractItemView::startDrag (this=0x1ffea80, supportedActions=...) at itemviews/qabstractitemview.cpp:3437
#44 0x00007f1d88e4d8c1 in QAbstractItemView::mouseMoveEvent (this=0x1ffea80, event=<value optimized out>) at itemviews/qabstractitemview.cpp:1700
#45 0x00007f1d8894f17a in QWidget::event (this=0x1ffea80, event=0x7fffdfd0ff20) at kernel/qwidget.cpp:8172
#46 0x00007f1d88d1e816 in QFrame::event (this=0x1ffea80, e=0x7fffdfd0ff20) at widgets/qframe.cpp:557
#47 0x00007f1d88e45223 in QAbstractItemView::viewportEvent (this=0x1ffea80, event=0x7fffdfd0ff20) at itemviews/qabstractitemview.cpp:1619
#48 0x00007f1d88e8e865 in QTreeView::viewportEvent (this=0x1ffea80, event=0x7fffdfd0ff20) at itemviews/qtreeview.cpp:1256
#49 0x00007f1d87f21677 in QCoreApplicationPrivate::sendThroughObjectEventFilters (this=<value optimized out>, receiver=0x1ffbe00, event=0x7fffdfd0ff20) at kernel/qcoreapplication.cpp:847
#50 0x00007f1d888f62d9 in QApplicationPrivate::notify_helper (this=0xd088e0, receiver=0x1ffbe00, e=0x7fffdfd0ff20) at kernel/qapplication.cpp:4393
#51 0x00007f1d888fc038 in QApplication::notify (this=<value optimized out>, receiver=0x1ffbe00, e=0x7fffdfd0ff20) at kernel/qapplication.cpp:3960
#52 0x00007f1d896c0596 in KApplication::notify(QObject*, QEvent*) () from /usr/lib/libkdeui.so.5
#53 0x00007f1d87f214ec in QCoreApplication::notifyInternal (this=0x7fffdfd10a80, receiver=0x1ffbe00, event=0x7fffdfd0ff20) at kernel/qcoreapplication.cpp:732
#54 0x00007f1d888f772b in QCoreApplication::sendEvent (receiver=0x1ffbe00, event=0x7fffdfd0ff20, alienWidget=0x1ffbe00, nativeWidget=0xcf8fe0, buttonDown=0x7f1d8946b078, lastMouseReceiver=..., 
    spontaneous=true) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#55 QApplicationPrivate::sendMouseEvent (receiver=0x1ffbe00, event=0x7fffdfd0ff20, alienWidget=0x1ffbe00, nativeWidget=0xcf8fe0, buttonDown=0x7f1d8946b078, lastMouseReceiver=..., spontaneous=true)
    at kernel/qapplication.cpp:3059
#56 0x00007f1d8897e9f8 in QETWidget::translateMouseEvent (this=0xcf8fe0, event=<value optimized out>) at kernel/qapplication_x11.cpp:4403
#57 0x00007f1d8897d0b9 in QApplication::x11ProcessEvent (this=0x7fffdfd10a80, event=0x7fffdfd106d0) at kernel/qapplication_x11.cpp:3536
#58 0x00007f1d889a5d02 in x11EventSourceDispatch (s=0xd0fc90, callback=0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:146
#59 0x00007f1d82113c33 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#60 0x00007f1d82114410 in ?? () from /usr/lib/libglib-2.0.so.0
#61 0x00007f1d821146ad in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#62 0x00007f1d87f4f72f in QEventDispatcherGlib::processEvents (this=0xcb6fa0, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:415
#63 0x00007f1d889a599e in QGuiEventDispatcherGlib::processEvents (this=<value optimized out>, flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:204
#64 0x00007f1d87f1ff82 in QEventLoop::processEvents (this=<value optimized out>, flags=...) at kernel/qeventloop.cpp:149
#65 0x00007f1d87f201cc in QEventLoop::exec (this=0x7fffdfd109d0, flags=...) at kernel/qeventloop.cpp:201
#66 0x00007f1d87f2571b in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1009
#67 0x000000000040419f in main (argc=1, argv=0x7fffdfd110a8) at /home/manutortosa/desktop-testing/kdepim-beta/src/kdepim-4.5.94.1/kontact/src/main.cpp:218

Reported using DrKonqi
Comment 1 Sergio Martins 2011-01-21 22:49:18 UTC
Fixed already in b35fa91fc16cf0108125dbd1de3415c9b2480f4d
Comment 2 Filippo Ruggeri 2013-11-04 23:17:37 UTC
Created attachment 83342 [details]
New crash information added by DrKonqi

kontact (4.11.2) on KDE Platform 4.11.2 using Qt 4.8.4

- What I was doing when the application crashed: drag-and-drop an item in the to-do list (creating a sub-event)

-- Backtrace (Reduced):
#6  0x00007f849f4f28d0 in KCalCore::IncidenceBase::uid() const () from /usr/lib/libkcalcore.so.4
[...]
#8  0x00007f84aa2e5147 in QSortFilterProxyModel::dropMimeData (this=0x3815b00, data=0x84fd550, action=Qt::MoveAction, row=<optimized out>, column=<optimized out>, parent=...) at itemviews/qsortfilterproxymodel.cpp:1833
#9  0x00007f84aa265c2e in QAbstractItemView::dropEvent (this=0x3b99060, event=0x7fffc3f37930) at itemviews/qabstractitemview.cpp:2006
#10 0x00007f84a9dc006e in QWidget::event (this=this@entry=0x3b99060, event=event@entry=0x7fffc3f37930) at kernel/qwidget.cpp:8576
#11 0x00007f84aa1615be in QFrame::event (this=0x3b99060, e=0x7fffc3f37930) at widgets/qframe.cpp:557
Comment 3 Sergio Martins 2013-11-04 23:33:26 UTC
Git commit 89ae545475608980bac06fb657f87d319c73b251 by Sergio Martins.
Committed on 04/11/2013 at 23:31.
Pushed by smartins into branch 'KDE/4.11'.

Don't dereference null pointer.

It's normal for it to be null. When you drag a to-do out of a parent
and it becomes an orphan destTodo is null.
FIXED-IN: 4.11.4

M  +1    -1    calendarviews/todo/todomodel.cpp

http://commits.kde.org/kdepim/89ae545475608980bac06fb657f87d319c73b251