Bug 484690

Summary: systemsettings crashes on close while DeviceAutoMounter KCM is open
Product: [Applications] systemsettings Reporter: Nicolas Fella <nicolas.fella>
Component: kcm_deviceautomounterAssignee: Plasma Bugs List <plasma-bugs>
Status: RESOLVED FIXED    
Severity: crash CC: nate, tdfischer
Priority: NOR    
Version: master   
Target Milestone: ---   
Platform: Other   
OS: Linux   
Latest Commit: Version Fixed In: 6.2.0
Sentry Crash Report:

Description Nicolas Fella 2024-03-29 00:20:38 UTC
==10240==ERROR: AddressSanitizer: heap-use-after-free on address 0x50400065b0d8 at pc 0x7fb5db19007f bp 0x7ffd4ed41040 sp 0x7ffd4ed41038
READ of size 8 at 0x50400065b0d8 thread T0
    #0 0x7fb5db19007e in QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData> >::get() const /home/nico/workspace/qt6/qtbase/src/corelib/tools/qscopedpointer.h:112
    #1 0x7fb5db19007e in decltype (({parm#1}.get)()) qGetPtrHelper<QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData> > const>(QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData> > const&) /home/nico/workspace/qt6/qtbase/src/corelib/global/qtclasshelpermacros.h:79
    #2 0x7fb5db19007e in QTreeView::d_func() const /home/nico/workspace/qt6/qtbase/src/widgets/itemviews/qtreeview.h:196
    #3 0x7fb5db19007e in QTreeView::columnWidth(int) const /home/nico/workspace/qt6/qtbase/src/widgets/itemviews/qtreeview.cpp:479
    #4 0x7fb5bbb22cb3 in DeviceAutomounterKCM::saveLayout() /home/nico/kde/src/plasma-desktop/solid-device-automounter/kcm/DeviceAutomounterKCM.cpp:170
    #5 0x7fb5bbb242ee in DeviceAutomounterKCM::~DeviceAutomounterKCM() /home/nico/kde/src/plasma-desktop/solid-device-automounter/kcm/DeviceAutomounterKCM.cpp:58
    #6 0x7fb5bbb242ee in DeviceAutomounterKCM::~DeviceAutomounterKCM() /home/nico/kde/src/plasma-desktop/solid-device-automounter/kcm/DeviceAutomounterKCM.cpp:59
    #7 0x7fb5d4c3aee3 in QObjectPrivate::deleteChildren() /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qobject.cpp:2206
    #8 0x7fb5da797306 in QWidget::~QWidget() /home/nico/workspace/qt6/qtbase/src/widgets/kernel/qwidget.cpp:1532
    #9 0x7fb5da9a1042 in QFrame::~QFrame() /home/nico/workspace/qt6/qtbase/src/widgets/widgets/qframe.cpp:229
    #10 0x7fb5da994076 in QAbstractScrollArea::~QAbstractScrollArea() /home/nico/workspace/qt6/qtbase/src/widgets/widgets/qabstractscrollarea.cpp:478
    #11 0x7fb5dad1f26a in QScrollArea::~QScrollArea() /home/nico/workspace/qt6/qtbase/src/widgets/widgets/qscrollarea.cpp:133
    #12 0x7fb5dad1f290 in QScrollArea::~QScrollArea() /home/nico/workspace/qt6/qtbase/src/widgets/widgets/qscrollarea.cpp:133
    #13 0x7fb5d4c3aee3 in QObjectPrivate::deleteChildren() /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qobject.cpp:2206
    #14 0x7fb5da797306 in QWidget::~QWidget() /home/nico/workspace/qt6/qtbase/src/widgets/kernel/qwidget.cpp:1532
    #15 0x7fb5da9a1042 in QFrame::~QFrame() /home/nico/workspace/qt6/qtbase/src/widgets/widgets/qframe.cpp:229
    #16 0x7fb5dad6f9c0 in QStackedWidget::~QStackedWidget() /home/nico/workspace/qt6/qtbase/src/widgets/widgets/qstackedwidget.cpp:110
    #17 0x7fb5dc94543d in KPageStackedWidget::~KPageStackedWidget() /home/nico/kde/src/kwidgetsaddons/src/kpageview_p.h:25
    #18 0x7fb5dc94543d in KPageStackedWidget::~KPageStackedWidget() /home/nico/kde/src/kwidgetsaddons/src/kpageview_p.h:25
    #19 0x7fb5d4c3aee3 in QObjectPrivate::deleteChildren() /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qobject.cpp:2206
    #20 0x7fb5da797306 in QWidget::~QWidget() /home/nico/workspace/qt6/qtbase/src/widgets/kernel/qwidget.cpp:1532
    #21 0x7fb5dc9287b4 in KPageView::~KPageView() /home/nico/kde/src/kwidgetsaddons/src/kpageview.cpp:658
    #22 0x7fb5dc950184 in KPageWidget::~KPageWidget() /home/nico/kde/src/kwidgetsaddons/src/kpagewidget.cpp:58
    #23 0x7fb5dc9501b0 in KPageWidget::~KPageWidget() /home/nico/kde/src/kwidgetsaddons/src/kpagewidget.cpp:58
    #24 0x7fb5d4c3aee3 in QObjectPrivate::deleteChildren() /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qobject.cpp:2206
    #25 0x7fb5da797306 in QWidget::~QWidget() /home/nico/workspace/qt6/qtbase/src/widgets/kernel/qwidget.cpp:1532
    #26 0x7fb5df544c59 in ModuleView::~ModuleView() /home/nico/kde/src/systemsettings/core/ModuleView.cpp:222
    #27 0x7fb5df544e20 in ModuleView::~ModuleView() /home/nico/kde/src/systemsettings/core/ModuleView.cpp:222
    #28 0x7fb5d4c3aee3 in QObjectPrivate::deleteChildren() /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qobject.cpp:2206
    #29 0x7fb5da797306 in QWidget::~QWidget() /home/nico/workspace/qt6/qtbase/src/widgets/kernel/qwidget.cpp:1532
    #30 0x45cb5d in FocusHackWidget::~FocusHackWidget() /home/nico/kde/src/systemsettings/app/SidebarMode.cpp:45
    #31 0x45cb5d in FocusHackWidget::~FocusHackWidget() /home/nico/kde/src/systemsettings/app/SidebarMode.cpp:45
    #32 0x7fb5d4c3aee3 in QObjectPrivate::deleteChildren() /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qobject.cpp:2206
    #33 0x7fb5da797306 in QWidget::~QWidget() /home/nico/workspace/qt6/qtbase/src/widgets/kernel/qwidget.cpp:1532
    #34 0x7fb5da9a1042 in QFrame::~QFrame() /home/nico/workspace/qt6/qtbase/src/widgets/widgets/qframe.cpp:229
    #35 0x7fb5dad6f9c0 in QStackedWidget::~QStackedWidget() /home/nico/workspace/qt6/qtbase/src/widgets/widgets/qstackedwidget.cpp:110
    #36 0x7fb5dad6f9e6 in QStackedWidget::~QStackedWidget() /home/nico/workspace/qt6/qtbase/src/widgets/widgets/qstackedwidget.cpp:110
    #37 0x7fb5d4c3aee3 in QObjectPrivate::deleteChildren() /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qobject.cpp:2206
    #38 0x7fb5da797306 in QWidget::~QWidget() /home/nico/workspace/qt6/qtbase/src/widgets/kernel/qwidget.cpp:1532
    #39 0x7fb5dac1067a in QMainWindow::~QMainWindow() /home/nico/workspace/qt6/qtbase/src/widgets/widgets/qmainwindow.cpp:340
    #40 0x7fb5de560b8e in KMainWindow::~KMainWindow() /home/nico/kde/src/kxmlgui/src/kmainwindow.cpp:433
    #41 0x7fb5de6d1fee in KXmlGuiWindow::~KXmlGuiWindow() /home/nico/kde/src/kxmlgui/src/kxmlguiwindow.cpp:217
    #42 0x436b9c in SettingsBase::~SettingsBase() /home/nico/kde/src/systemsettings/app/SettingsBase.cpp:69
    #43 0x436cc0 in SettingsBase::~SettingsBase() /home/nico/kde/src/systemsettings/app/SettingsBase.cpp:69
    #44 0x7fb5d4c2279b in qDeleteInEventHandler(QObject*) /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qobject.cpp:4900
    #45 0x7fb5d4c30ead in QObject::event(QEvent*) /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qobject.cpp:1424
    #46 0x7fb5da7a926c in QWidget::event(QEvent*) /home/nico/workspace/qt6/qtbase/src/widgets/kernel/qwidget.cpp:9422
    #47 0x7fb5dac16338 in QMainWindow::event(QEvent*) /home/nico/workspace/qt6/qtbase/src/widgets/widgets/qmainwindow.cpp:1321
    #48 0x7fb5de56307f in KMainWindow::event(QEvent*) /home/nico/kde/src/kxmlgui/src/kmainwindow.cpp:906
    #49 0x7fb5de6e1d22 in KXmlGuiWindow::event(QEvent*) /home/nico/kde/src/kxmlgui/src/kxmlguiwindow.cpp:221
    #50 0x7fb5da673811 in QApplicationPrivate::notify_helper(QObject*, QEvent*) /home/nico/workspace/qt6/qtbase/src/widgets/kernel/qapplication.cpp:3296
    #51 0x7fb5da6899ca in QApplication::notify(QObject*, QEvent*) /home/nico/workspace/qt6/qtbase/src/widgets/kernel/qapplication.cpp:3243
    #52 0x7fb5d4b48f9f in QCoreApplication::notifyInternal2(QObject*, QEvent*) /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1121
    #53 0x7fb5d4b4911e in QCoreApplication::sendEvent(QObject*, QEvent*) /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1539
    #54 0x7fb5d4b4a451 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1901
    #55 0x7fb5d4b4a746 in QCoreApplication::sendPostedEvents(QObject*, int) /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1760
    #56 0x7fb5d52c0c8f in postEventSourceDispatch /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:243
    #57 0x7fb5d3f1270f in g_main_dispatch ../glib/gmain.c:3344
    #58 0x7fb5d3f1270f in g_main_context_dispatch_unlocked ../glib/gmain.c:4152
    #59 0x7fb5d3f14357 in g_main_context_iterate_unlocked ../glib/gmain.c:4217
    #60 0x7fb5d3f14a0b in g_main_context_iteration ../glib/gmain.c:4282
    #61 0x7fb5d52bf21f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:393
    #62 0x7fb5d6963375 in QPAEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) /home/nico/workspace/qt6/qtbase/src/gui/platform/unix/qeventdispatcher_glib.cpp:87
    #63 0x7fb5d4b66453 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qeventloop.cpp:100
    #64 0x7fb5d4b67837 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qeventloop.cpp:182
    #65 0x7fb5d4b510a0 in QCoreApplication::exec() /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1442
    #66 0x7fb5d5bd6fc5 in QGuiApplication::exec() /home/nico/workspace/qt6/qtbase/src/gui/kernel/qguiapplication.cpp:1925
    #67 0x7fb5da672ea6 in QApplication::exec() /home/nico/workspace/qt6/qtbase/src/widgets/kernel/qapplication.cpp:2574
    #68 0x4190ef in main /home/nico/kde/src/systemsettings/app/main.cpp:175
    #69 0x7fb5d402a1ef in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58
    #70 0x7fb5d402a2b8 in __libc_start_main_impl ../csu/libc-start.c:360
    #71 0x41dd44 in _start ../sysdeps/x86_64/start.S:115

0x50400065b0d8 is located 8 bytes inside of 40-byte region [0x50400065b0d0,0x50400065b0f8)
freed by thread T0 here:
    #0 0x7fb5deefd0d8 in operator delete(void*, unsigned long) ../../../../libsanitizer/asan/asan_new_delete.cpp:164
    #1 0x7fb5db18f651 in QTreeView::~QTreeView() /home/nico/workspace/qt6/qtbase/src/widgets/itemviews/qtreeview.cpp:172
    #2 0x7fb5d4c3aee3 in QObjectPrivate::deleteChildren() /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qobject.cpp:2206
    #3 0x7fb5da797306 in QWidget::~QWidget() /home/nico/workspace/qt6/qtbase/src/widgets/kernel/qwidget.cpp:1532
    #4 0x7fb5deca8d1d in KCModuleProxyInternal::~KCModuleProxyInternal() /home/nico/kde/src/kcmutils/src/kcmodule.cpp:20
    #5 0x7fb5deca8d1d in KCModuleProxyInternal::~KCModuleProxyInternal() /home/nico/kde/src/kcmutils/src/kcmodule.cpp:20
    #6 0x7fb5d4c3aee3 in QObjectPrivate::deleteChildren() /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qobject.cpp:2206
    #7 0x7fb5da797306 in QWidget::~QWidget() /home/nico/workspace/qt6/qtbase/src/widgets/kernel/qwidget.cpp:1532
    #8 0x7fb5da797372 in QWidget::~QWidget() /home/nico/workspace/qt6/qtbase/src/widgets/kernel/qwidget.cpp:1558
    #9 0x7fb5d4c3aee3 in QObjectPrivate::deleteChildren() /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qobject.cpp:2206
    #10 0x7fb5da797306 in QWidget::~QWidget() /home/nico/workspace/qt6/qtbase/src/widgets/kernel/qwidget.cpp:1532
    #11 0x7fb5da9a1042 in QFrame::~QFrame() /home/nico/workspace/qt6/qtbase/src/widgets/widgets/qframe.cpp:229
    #12 0x7fb5da994076 in QAbstractScrollArea::~QAbstractScrollArea() /home/nico/workspace/qt6/qtbase/src/widgets/widgets/qabstractscrollarea.cpp:478
    #13 0x7fb5dad1f26a in QScrollArea::~QScrollArea() /home/nico/workspace/qt6/qtbase/src/widgets/widgets/qscrollarea.cpp:133
    #14 0x7fb5dad1f290 in QScrollArea::~QScrollArea() /home/nico/workspace/qt6/qtbase/src/widgets/widgets/qscrollarea.cpp:133
    #15 0x7fb5d4c3aee3 in QObjectPrivate::deleteChildren() /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qobject.cpp:2206
    #16 0x7fb5da797306 in QWidget::~QWidget() /home/nico/workspace/qt6/qtbase/src/widgets/kernel/qwidget.cpp:1532
    #17 0x7fb5da9a1042 in QFrame::~QFrame() /home/nico/workspace/qt6/qtbase/src/widgets/widgets/qframe.cpp:229
    #18 0x7fb5dad6f9c0 in QStackedWidget::~QStackedWidget() /home/nico/workspace/qt6/qtbase/src/widgets/widgets/qstackedwidget.cpp:110
    #19 0x7fb5dc94543d in KPageStackedWidget::~KPageStackedWidget() /home/nico/kde/src/kwidgetsaddons/src/kpageview_p.h:25
    #20 0x7fb5dc94543d in KPageStackedWidget::~KPageStackedWidget() /home/nico/kde/src/kwidgetsaddons/src/kpageview_p.h:25
    #21 0x7fb5d4c3aee3 in QObjectPrivate::deleteChildren() /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qobject.cpp:2206
    #22 0x7fb5da797306 in QWidget::~QWidget() /home/nico/workspace/qt6/qtbase/src/widgets/kernel/qwidget.cpp:1532
    #23 0x7fb5dc9287b4 in KPageView::~KPageView() /home/nico/kde/src/kwidgetsaddons/src/kpageview.cpp:658
    #24 0x7fb5dc950184 in KPageWidget::~KPageWidget() /home/nico/kde/src/kwidgetsaddons/src/kpagewidget.cpp:58
    #25 0x7fb5dc9501b0 in KPageWidget::~KPageWidget() /home/nico/kde/src/kwidgetsaddons/src/kpagewidget.cpp:58
    #26 0x7fb5d4c3aee3 in QObjectPrivate::deleteChildren() /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qobject.cpp:2206
    #27 0x7fb5da797306 in QWidget::~QWidget() /home/nico/workspace/qt6/qtbase/src/widgets/kernel/qwidget.cpp:1532
    #28 0x7fb5df544c59 in ModuleView::~ModuleView() /home/nico/kde/src/systemsettings/core/ModuleView.cpp:222
    #29 0x7fb5df544e20 in ModuleView::~ModuleView() /home/nico/kde/src/systemsettings/core/ModuleView.cpp:222
    #30 0x7fb5d4c3aee3 in QObjectPrivate::deleteChildren() /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qobject.cpp:2206
    #31 0x7fb5da797306 in QWidget::~QWidget() /home/nico/workspace/qt6/qtbase/src/widgets/kernel/qwidget.cpp:1532

previously allocated by thread T0 here:
    #0 0x7fb5deefc1d8 in operator new(unsigned long) ../../../../libsanitizer/asan/asan_new_delete.cpp:95
    #1 0x7fb5bbb28d6d in Ui_DeviceAutomounterKCM::setupUi(QWidget*) /home/nico/kde/build/plasma-desktop/solid-device-automounter/kcm/ui_DeviceAutomounterKCM.h:40
    #2 0x7fb5bbb1fbd2 in DeviceAutomounterKCM::DeviceAutomounterKCM(QObject*, KPluginMetaData const&) /home/nico/kde/src/plasma-desktop/solid-device-automounter/kcm/DeviceAutomounterKCM.cpp:37
    #3 0x7fb5bbb29ea1 in QObject* KPluginFactory::createWithMetaDataInstance<DeviceAutomounterKCM, QObject>(QWidget*, QObject*, KPluginMetaData const&, QList<QVariant> const&) /home/nico/kde/usr/include/KF6/KCoreAddons/kpluginfactory.h:608
    #4 0x7fb5dbfda3fe in KPluginFactory::create(char const*, QWidget*, QObject*, QList<QVariant> const&) /home/nico/kde/src/kcoreaddons/src/lib/plugin/kpluginfactory.cpp:118
    #5 0x7fb5dec6cc64 in KCModule* KPluginFactory::create<KCModule>(QObject*, QList<QVariant> const&) /home/nico/kde/usr/include/KF6/KCoreAddons/kpluginfactory.h:634
    #6 0x7fb5dec6cc64 in KPluginFactory::Result<KCModule> KPluginFactory::instantiatePlugin<KCModule>(KPluginMetaData const&, QObject*, QList<QVariant> const&) /home/nico/kde/usr/include/KF6/KCoreAddons/kpluginfactory.h:383
    #7 0x7fb5dec6a466 in KCModuleLoader::loadModule(KPluginMetaData const&, QWidget*, QList<QVariant> const&, std::shared_ptr<QQmlEngine> const&) /home/nico/kde/src/kcmutils/src/kcmoduleloader.cpp:92
    #8 0x7fb5df54e118 in ModuleView::addModule(MenuItem*, QList<QString> const&) /home/nico/kde/src/systemsettings/core/ModuleView.cpp:280
    #9 0x7fb5df551645 in ModuleView::loadModule(QModelIndex const&, QList<QString> const&) /home/nico/kde/src/systemsettings/core/ModuleView.cpp:239
    #10 0x7fb5df551645 in ModuleView::loadModule(QModelIndex const&, QList<QString> const&) /home/nico/kde/src/systemsettings/core/ModuleView.cpp:229
    #11 0x4696ff in SidebarMode::loadModule(QModelIndex const&, QList<QString> const&) /home/nico/kde/src/systemsettings/app/SidebarMode.cpp:317
    #12 0x4728cc in SidebarMode::loadModule(QModelIndex const&, QList<QString> const&) /home/nico/kde/usr/include/QtCore/qabstractitemmodel.h:142
    #13 0x4728cc in SidebarMode::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) /home/nico/kde/build/systemsettings/app/systemsettings_autogen/include/moc_SidebarMode.cpp:758
    #14 0x473673 in SidebarMode::qt_metacall(QMetaObject::Call, int, void**) /home/nico/kde/build/systemsettings/app/systemsettings_autogen/include/moc_SidebarMode.cpp:883
    #15 0x7fb5d4b6f49a in QMetaObject::metacall(QObject*, QMetaObject::Call, int, void**) /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qmetaobject.cpp:334
    #16 0x7fb5d8355750 in QQmlObjectOrGadget::metacall(QMetaObject::Call, int, void**) const /home/nico/workspace/qt6/qtdeclarative/src/qml/qml/qqmlobjectorgadget.cpp:14
    #17 0x7fb5d7e9f39e in CallMethod /home/nico/workspace/qt6/qtdeclarative/src/qml/jsruntime/qv4qobjectwrapper.cpp:1525
    #18 0x7fb5d7ea23fa in CallPrecise /home/nico/workspace/qt6/qtdeclarative/src/qml/jsruntime/qv4qobjectwrapper.cpp:1830
    #19 0x7fb5d7ea263a in operator() /home/nico/workspace/qt6/qtdeclarative/src/qml/jsruntime/qv4qobjectwrapper.cpp:2733
    #20 0x7fb5d7ea2912 in operator()<QV4::QObjectMethod::callInternal(const QV4::Value*, const QV4::Value*, int) const::<lambda()> > /home/nico/workspace/qt6/qtdeclarative/src/qml/jsruntime/qv4qobjectwrapper.cpp:2710
    #21 0x7fb5d7ea3a24 in QV4::QObjectMethod::callInternal(QV4::Value const*, QV4::Value const*, int) const /home/nico/workspace/qt6/qtdeclarative/src/qml/jsruntime/qv4qobjectwrapper.cpp:2733
    #22 0x7fb5d7ea3d5e in QV4::QObjectMethod::virtualCall(QV4::FunctionObject const*, QV4::Value const*, QV4::Value const*, int) /home/nico/workspace/qt6/qtdeclarative/src/qml/jsruntime/qv4qobjectwrapper.cpp:2622
    #23 0x7fb5d7c36e15 in QV4::FunctionObject::call(QV4::Value const*, QV4::Value const*, int) const /home/nico/workspace/qt6/qtbase/include/QtQml/6.6.1/QtQml/private/../../../../../../qtdeclarative/src/qml/jsruntime/qv4functionobject_p.h:171
    #24 0x7fb5d7fc1c98 in QV4::Moth::VME::interpret(QV4::JSTypesStackFrame*, QV4::ExecutionEngine*, char const*) /home/nico/workspace/qt6/qtdeclarative/src/qml/jsruntime/qv4vme_moth.cpp:902
    #25 0x7fb5d7fd6adc in QV4::Moth::VME::exec(QV4::JSTypesStackFrame*, QV4::ExecutionEngine*) /home/nico/workspace/qt6/qtdeclarative/src/qml/jsruntime/qv4vme_moth.cpp:584
    #26 0x7fb5d7d931dd in doCall /home/nico/workspace/qt6/qtdeclarative/src/qml/jsruntime/qv4function.cpp:54
    #27 0x7fb5d7d94d5d in QV4::Function::call(QV4::Value const*, QV4::Value const*, int, QV4::ExecutionContext*) /home/nico/workspace/qt6/qtdeclarative/src/qml/jsruntime/qv4function.cpp:79
    #28 0x7fb5d7d9524e in operator() /home/nico/workspace/qt6/qtdeclarative/src/qml/jsruntime/qv4function.cpp:30
    #29 0x7fb5d7d9524e in convertAndCall<QV4::Function::call(QObject*, void**, const QMetaType*, int, QV4::ExecutionContext*)::<lambda(const QV4::Value*, const QV4::Value*, int)> > /home/nico/workspace/qt6/qtbase/include/QtQml/6.6.1/QtQml/private/../../../../../../qtdeclarative/src/qml/jsruntime/qv4jscall_p.h:170
    #30 0x7fb5d7d95759 in QV4::Function::call(QObject*, void**, QMetaType const*, int, QV4::ExecutionContext*) /home/nico/workspace/qt6/qtdeclarative/src/qml/jsruntime/qv4function.cpp:27
    #31 0x7fb5d82961fc in QQmlJavaScriptExpression::evaluate(void**, QMetaType const*, int) /home/nico/workspace/qt6/qtdeclarative/src/qml/qml/qqmljavascriptexpression.cpp:270
    #32 0x7fb5d80c3c39 in QQmlBoundSignalExpression::evaluate(void**) /home/nico/workspace/qt6/qtdeclarative/src/qml/qml/qqmlboundsignal.cpp:199
    #33 0x7fb5d80c508d in QQmlBoundSignal_callback(QQmlNotifierEndpoint*, void**) /home/nico/workspace/qt6/qtdeclarative/src/qml/qml/qqmlboundsignal.cpp:314

SUMMARY: AddressSanitizer: heap-use-after-free /home/nico/workspace/qt6/qtbase/src/corelib/tools/qscopedpointer.h:112 in QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData> >::get() const
Comment 1 Bug Janitor Service 2024-09-22 13:01:49 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/plasma-desktop/-/merge_requests/2539
Comment 2 Nate Graham 2024-09-25 17:39:04 UTC
Git commit 9828adfbbf779ed8d55747dd50c8d5211a4a6479 by Nate Graham, on behalf of Nicolas Fella.
Committed on 25/09/2024 at 17:25.
Pushed by ngraham into branch 'master'.

[kcms/automounter] Fix crash on close

The KCM widget and its children are destroyed before the KCModule.

Therefore by the time we call saveLayout the widget is already deleted
and accessing it crashes.

Instead save the layout right before the widget is deleted

SENTRY: SYSTEMSETTINGS-2D3

M  +1    -5    solid-device-automounter/kcm/DeviceAutomounterKCM.cpp
M  +0    -1    solid-device-automounter/kcm/DeviceAutomounterKCM.h

https://invent.kde.org/plasma/plasma-desktop/-/commit/9828adfbbf779ed8d55747dd50c8d5211a4a6479
Comment 3 Nate Graham 2024-09-25 17:50:23 UTC
Git commit 19bae96a8c51118bad5c60ad976eacf4c0e5b7fb by Nate Graham.
Committed on 25/09/2024 at 17:39.
Pushed by ngraham into branch 'Plasma/6.2'.

[kcms/automounter] Fix crash on close

The KCM widget and its children are destroyed before the KCModule.

Therefore by the time we call saveLayout the widget is already deleted
and accessing it crashes.

Instead save the layout right before the widget is deleted

SENTRY: SYSTEMSETTINGS-2D3


(cherry picked from commit 9828adfbbf779ed8d55747dd50c8d5211a4a6479)

Co-authored-by: Nicolas Fella <nicolas.fella@gmx.de>

M  +1    -5    solid-device-automounter/kcm/DeviceAutomounterKCM.cpp
M  +0    -1    solid-device-automounter/kcm/DeviceAutomounterKCM.h

https://invent.kde.org/plasma/plasma-desktop/-/commit/19bae96a8c51118bad5c60ad976eacf4c0e5b7fb