SUMMARY I moved a weekly-recurring event to half an hour later, korganizer asked if that was for this instance or for all, I clicked on All, and korganizer crashed. If it matters, I had previously duplicated an event recurring on thursdays (by copy/pasting it), then modified that event to be on mondays rather than thursdays. And then I moved its start time as described anove. OBSERVED RESULT #0 EventViews::AgendaItem::firstMultiItem() const (this=0x0) at /d/kde/src/5/kde/pim/eventviews/src/agenda/agendaitem.h:171 #1 EventViews::Agenda::endItemAction() (this=0x1111a40) at /d/kde/src/5/kde/pim/eventviews/src/agenda/agenda.cpp:1217 #2 0x00007fd9580c4804 in EventViews::Agenda::eventFilter_mouse(QObject*, QMouseEvent*) (this=0x1111a40, object=<optimized out>, me=0x7ffe802f14d0) at /d/kde/src/5/kde/pim/eventviews/src/agenda/agenda.cpp:703 #3 0x00007fd9552ccda9 in QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*) (receiver=0x7fd948019120, event=0x7ffe802f14d0) at /d/qt/5/kde/qtbase/src/corelib/kernel/qcoreapplication.cpp:1190 #4 0x00007fd9560a981d in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=0xcb42d0, receiver=0x7fd948019120, e=0x7ffe802f14d0) at /d/qt/5/kde/qtbase/src/widgets/kernel/qapplication.cpp:3626 #5 0x00007fd9560a73d2 in QApplication::notify(QObject*, QEvent*) (this=0x7ffe802f2610, receiver=0x7fd948019120, e=0x7ffe802f14d0) at /d/qt/5/kde/qtbase/src/widgets/kernel/qapplication.cpp:3076 #6 0x00007fd9552cc984 in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x7fd948019120, event=0x7ffe802f14d0) at /d/qt/5/kde/qtbase/src/corelib/kernel/qcoreapplication.cpp:1064 #7 0x00007fd9552cd356 in QCoreApplication::sendSpontaneousEvent(QObject*, QEvent*) (receiver=0x7fd948019120, event=0x7ffe802f14d0) at /d/qt/5/kde/qtbase/src/corelib/kernel/qcoreapplication.cpp:1474 #8 0x00007fd9560a5fa3 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool, bool) (receiver=0x7fd948019120, event=0x7ffe802f14d0, alienWidget=0x7fd948019120, nativeWidget=0xe3e7a0, buttonDown=0x7fd956810a10 <qt_button_down>, lastMouseReceiver=..., spontaneous=true, onlyDispatchEnterLeave=false) at /d/qt/5/kde/qtbase/src/widgets/kernel/qapplication.cpp:2614 EXPECTED RESULT No crash :) SOFTWARE/OS VERSIONS KDEPIM Version: git release/21.04 branch (eventviews commit 04450a2) KDE Frameworks Version: 5.81.0 Qt Version: 5.15.2 ADDITIONAL INFORMATION
The line of code is 1217 AgendaItem::QPtr placeItem = d->mActionItem->firstMultiItem(); and clearly d->mActionItem is null.
(In reply to David Faure from comment #1) > The line of code is > > 1217 AgendaItem::QPtr placeItem = d->mActionItem->firstMultiItem(); > > and clearly d->mActionItem is null. And yet mActionItem must have been non-null at line 1147, and I don't see where an assignment happens. Any chance you can reproduce this?
Hmm, many things can happen while a modal dialog is up (the question in showMoveRecurDialog). Like the disappearing+reappearing of events that happens often after I just created them (with the DAV resource at least).
A possibly relevant merge request was started @ https://invent.kde.org/pim/eventviews/-/merge_requests/23
Git commit 57d3025b146bb9cd3bef2c6eaef77f4970361c1a by Glen Ditchfield. Committed on 21/04/2021 at 23:26. Pushed by dfaure into branch 'release/21.04'. Don't crash if an agenda item is deleted while it is being moved When a recurring event is moved, a dialog box asks which instances to move. Apparently `mActionItem` can be set to null by asynchronous events while the dialog is up. M +7 -0 src/agenda/agenda.cpp https://invent.kde.org/pim/eventviews/commit/57d3025b146bb9cd3bef2c6eaef77f4970361c1a