Bug 424334

Summary: System Settings crashes in KNSCore::Engine::loadProviders() when I open GHNS windows of SDDM and Splash Screen KCMs in sequence
Product: [Frameworks and Libraries] frameworks-knewstuff Reporter: Patrick Silva <bugseforuns>
Component: generalAssignee: Jeremy Whiting <jpwhiting>
Status: RESOLVED DUPLICATE    
Severity: crash CC: admin, kdelibs-bugs, nate
Priority: NOR Keywords: drkonqi
Version: 5.72.0   
Target Milestone: ---   
Platform: Neon   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Patrick Silva 2020-07-17 14:22:44 UTC
Application: systemsettings5 (5.19.80)

Qt Version: 5.14.2
Frameworks Version: 5.73.0
Operating System: Linux 5.3.0-62-generic x86_64
Windowing system: Wayland
Distribution: KDE neon Unstable Edition

-- Information about the crash:
- What I was doing when the application crashed:
I opened GHNS window of SDDM kcm, closed it, swiched to Splash Screen kcm, opened its GHNS window and System Settings crashed.

The crash can be reproduced every time.

-- Backtrace:
Application: System Settings (systemsettings5), signal: Segmentation fault
Content of s_kcrashErrorMessage: [Current thread is 1 (Thread 0x7f0de8ae4800 (LWP 21071))]
[KCrash Handler]
#6  0x00007f0de4853ca6 in std::__atomic_base<QObjectPrivate::ConnectionData*>::load(std::memory_order) const (__m=std::memory_order_relaxed, this=0x2300000041) at /usr/include/c++/7/bits/atomic_base.h:713
#7  0x00007f0de4853ca6 in std::atomic<QObjectPrivate::ConnectionData*>::load(std::memory_order) const (__m=std::memory_order_relaxed, this=0x2300000041) at /usr/include/c++/7/atomic:452
#8  0x00007f0de4853ca6 in QAtomicOps<QObjectPrivate::ConnectionData*>::loadRelaxed<QObjectPrivate::ConnectionData*>(std::atomic<QObjectPrivate::ConnectionData*> const&) (_q_value=...) at ../../include/QtCore/../../src/corelib/thread/qatomic_cxx11.h:239
#9  0x00007f0de4853ca6 in QBasicAtomicPointer<QObjectPrivate::ConnectionData>::loadRelaxed() const (this=0x2300000041) at ../../include/QtCore/../../src/corelib/thread/qbasicatomic.h:248
#10 0x00007f0de4853ca6 in QObjectPrivate::ensureConnectionData() (this=0x2300000001) at kernel/qobject_p.h:369
#11 0x00007f0de4853ca6 in QObjectPrivate::addConnection(int, QObjectPrivate::Connection*) (this=0x2300000001, signal=signal@entry=3, c=c@entry=0x55ce383203e0) at kernel/qobject.cpp:328
#12 0x00007f0de4856c0e in QObjectPrivate::connectImpl(QObject const*, int, QObject const*, void**, QtPrivate::QSlotObjectBase*, Qt::ConnectionType, int const*, QMetaObject const*) (sender=sender@entry=0x55ce3b0d87f0, signal_index=3, receiver=receiver@entry=0x55ce36edcb30, slot=slot@entry=0x7ffe8c4fdac0, slotObj=slotObj@entry=0x55ce38312d90, type=<optimized out>, types=<optimized out>, senderMetaObject=<optimized out>) at kernel/qobject.cpp:5034
#13 0x00007f0de48570ed in QObject::connectImpl(QObject const*, void**, QObject const*, void**, QtPrivate::QSlotObjectBase*, Qt::ConnectionType, int const*, QMetaObject const*) (sender=0x55ce3b0d87f0, signal=<optimized out>, receiver=0x55ce36edcb30, slot=0x7ffe8c4fdac0, slotObj=0x55ce38312d90, type=Qt::AutoConnection, types=0x0, senderMetaObject=<optimized out>) at kernel/qobject.cpp:4970
#14 0x00007f0d9910688d in KNSCore::Engine::loadProviders() () at /usr/lib/x86_64-linux-gnu/libKF5NewStuffCore.so.5
#15 0x00007f0d9910af38 in KNSCore::Engine::init(QString const&) () at /usr/lib/x86_64-linux-gnu/libKF5NewStuffCore.so.5
#16 0x00007f0d77de3955 in  () at /usr/lib/x86_64-linux-gnu/qt5/qml/org/kde/newstuff/libnewstuffqmlplugin.so
#17 0x00007f0d77df4f85 in  () at /usr/lib/x86_64-linux-gnu/qt5/qml/org/kde/newstuff/libnewstuffqmlplugin.so
#18 0x00007f0d77df5b63 in  () at /usr/lib/x86_64-linux-gnu/qt5/qml/org/kde/newstuff/libnewstuffqmlplugin.so
#19 0x00007f0de1e943b2 in QQmlVMEMetaObject::metaCall(QObject*, QMetaObject::Call, int, void**) (this=0x55ce37d93ea0, o=<optimized out>, c=QMetaObject::WriteProperty, _id=2, a=0x7ffe8c4fe030) at qml/qqmlvmemetaobject.cpp:947
#20 0x00007f0de1ddc85d in QV4::QObjectWrapper::setProperty(QV4::ExecutionEngine*, QObject*, QQmlPropertyData*, QV4::Value const&) (engine=engine@entry=0x55ce38083830, object=object@entry=0x55ce3ac329a0, property=0x7f0d8c1f4a08, value=...) at jsruntime/qv4qobjectwrapper.cpp:542
#21 0x00007f0de1ddcb4e in QV4::QObjectWrapper::setQmlProperty(QV4::ExecutionEngine*, QQmlContextData*, QObject*, QV4::String*, QV4::QObjectWrapper::RevisionMode, QV4::Value const&) (engine=0x55ce38083830, qmlContext=<optimized out>, object=0x55ce3ac329a0, name=<optimized out>, revisionMode=QV4::QObjectWrapper::IgnoreRevision, value=...) at jsruntime/qv4qobjectwrapper.cpp:435
#22 0x00007f0de1ddcc9b in QV4::QObjectWrapper::virtualPut(QV4::Managed*, QV4::PropertyKey, QV4::Value const&, QV4::Value*) (m=0x7f0d94e705b8, id=..., value=..., receiver=0x7f0d94e705b8) at jsruntime/qv4qobjectwrapper.cpp:721
#23 0x00007f0de1da28a9 in QV4::Object::put(QV4::PropertyKey, QV4::Value const&, QV4::Value*) (receiver=0x7f0d94e705b8, v=..., id=..., this=0x7f0d94e705b8) at jsruntime/qv4object_p.h:324
#24 0x00007f0de1da28a9 in QV4::Object::virtualResolveLookupSetter(QV4::Object*, QV4::ExecutionEngine*, QV4::Lookup*, QV4::Value const&) (object=0x7f0d94e705b8, engine=0x55ce38083830, lookup=0x55ce37c9feb0, value=...) at jsruntime/qv4object.cpp:804
#25 0x00007f0de1df5978 in QV4::Moth::VME::interpret(QV4::CppStackFrame*, QV4::ExecutionEngine*, char const*) (frame=0x7ffe8c4fe3d0, engine=0x55ce38083830, code=0x7f0dac01030d ".\r\030\a\246\016\a") at jsruntime/qv4vme_moth.cpp:653
#26 0x00007f0de1dfa686 in QV4::Moth::VME::exec(QV4::CppStackFrame*, QV4::ExecutionEngine*) (frame=frame@entry=0x7ffe8c4fe3d0, engine=engine@entry=0x55ce38083830) at jsruntime/qv4vme_moth.cpp:463
#27 0x00007f0de1d8dd20 in QV4::ArrowFunction::virtualCall(QV4::FunctionObject const*, QV4::Value const*, QV4::Value const*, int) (fo=<optimized out>, thisObject=<optimized out>, argv=<optimized out>, argc=<optimized out>) at jsruntime/qv4functionobject.cpp:528
#28 0x00007f0de1e0a549 in QV4::FunctionObject::call(QV4::Value const*, QV4::Value const*, int) const (argc=0, argv=0x7f0d94e70500, thisObject=0x7f0d94e70578, this=0x7ffe8c4fe478) at jsruntime/qv4functionobject_p.h:202
#29 0x00007f0de1e0a549 in QV4::Runtime::CallQmlContextPropertyLookup::call(QV4::ExecutionEngine*, unsigned int, QV4::Value*, int) (engine=0x55ce38083830, index=<optimized out>, argv=0x7f0d94e70500, argc=0) at jsruntime/qv4runtime.cpp:1366
#30 0x00007f0de1df5302 in QV4::Moth::VME::interpret(QV4::CppStackFrame*, QV4::ExecutionEngine*, char const*) (frame=0x7ffe8c4fe660, engine=0x55ce38083830, code=0x7f0dac010374 "\016\002") at jsruntime/qv4vme_moth.cpp:784
#31 0x00007f0de1dfa686 in QV4::Moth::VME::exec(QV4::CppStackFrame*, QV4::ExecutionEngine*) (frame=frame@entry=0x7ffe8c4fe660, engine=engine@entry=0x55ce38083830) at jsruntime/qv4vme_moth.cpp:463
#32 0x00007f0de1d8cfaa in QV4::Function::call(QV4::Value const*, QV4::Value const*, int, QV4::ExecutionContext const*) (this=this@entry=0x55ce37d0c9e0, thisObject=thisObject@entry=0x7f0d94e704e8, argv=argv@entry=0x7f0d94e70500, argc=<optimized out>, context=<optimized out>) at jsruntime/qv4function.cpp:69
#33 0x00007f0de1f0ae57 in QQmlJavaScriptExpression::evaluate(QV4::CallData*, bool*) (this=this@entry=0x55ce37c0d330, callData=callData@entry=0x7f0d94e704d0, isUndefined=isUndefined@entry=0x0) at qml/qqmljavascriptexpression.cpp:211
#34 0x00007f0de1eb4f69 in QQmlBoundSignalExpression::evaluate(void**) (this=this@entry=0x55ce37c0d330, a=a@entry=0x0) at qml/qqmlboundsignal.cpp:223
#35 0x00007f0de1eb61bb in QQmlBoundSignal_callback(QQmlNotifierEndpoint*, void**) (e=0x55ce3a6631e0, a=0x0) at qml/qqmlboundsignal.cpp:356
#36 0x00007f0de1eeb322 in QQmlNotifier::emitNotify(QQmlNotifierEndpoint*, void**) (endpoint=<optimized out>, a=a@entry=0x0) at qml/qqmlnotifier.cpp:104
#37 0x00007f0de1e99119 in QQmlData::signalEmitted(QAbstractDeclarativeData*, QObject*, int, void**) (object=0x55ce3b0baea0, index=<optimized out>, a=0x0) at qml/qqmlengine.cpp:858
#38 0x00007f0de4860314 in doActivate<false>(QObject*, int, void**) (sender=0x55ce3b0baea0, signal_index=64, argv=0x0) at kernel/qobject.cpp:3762
#39 0x00007f0de485af92 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (sender=<optimized out>, m=m@entry=0x7f0dd66fa360 <QQuickAbstractButton::staticMetaObject>, local_signal_index=local_signal_index@entry=3, argv=argv@entry=0x0) at kernel/qobject.cpp:3930
#40 0x00007f0dd6494823 in QQuickAbstractButton::clicked() (this=<optimized out>) at .moc/moc_qquickabstractbutton_p.cpp:630
#41 0x00007f0dd6411cd6 in QQuickAbstractButtonPrivate::trigger() (this=this@entry=0x55ce363a0930) at qquickabstractbutton.cpp:340
#42 0x00007f0dd6413b81 in QQuickAbstractButtonPrivate::handleRelease(QPointF const&) (this=0x55ce363a0930, point=...) at qquickabstractbutton.cpp:180
#43 0x00007f0dd64317f5 in QQuickControl::mouseReleaseEvent(QMouseEvent*) (this=<optimized out>, event=0x7ffe8c500be0) at qquickcontrol.cpp:2131
#44 0x00007f0de24e6258 in QQuickItem::event(QEvent*) (this=0x55ce3b0baea0, ev=0x7ffe8c500be0) at items/qquickitem.cpp:8153
#45 0x00007f0de59a49ac in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=this@entry=0x55ce3624a550, receiver=receiver@entry=0x55ce3b0baea0, e=e@entry=0x7ffe8c500be0) at kernel/qapplication.cpp:3685
#46 0x00007f0de59abbb0 in QApplication::notify(QObject*, QEvent*) (this=0x7ffe8c501b90, receiver=0x55ce3b0baea0, e=0x7ffe8c500be0) at kernel/qapplication.cpp:3431
#47 0x00007f0de48254a8 in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x55ce3b0baea0, event=0x7ffe8c500be0) at kernel/qcoreapplication.cpp:1075
#48 0x00007f0de482567e in QCoreApplication::sendEvent(QObject*, QEvent*) (receiver=receiver@entry=0x55ce3b0baea0, event=event@entry=0x7ffe8c500be0) at kernel/qcoreapplication.cpp:1470
#49 0x00007f0de250044d in QQuickWindowPrivate::deliverMouseEvent(QQuickPointerMouseEvent*) (this=this@entry=0x55ce3b0d6210, pointerEvent=0x55ce38313f50) at items/qquickwindow.cpp:1891
#50 0x00007f0de25014b5 in QQuickWindowPrivate::deliverPointerEvent(QQuickPointerEvent*) (this=this@entry=0x55ce3b0d6210, event=0x55ce38313f50) at items/qquickwindow.cpp:2454
#51 0x00007f0de250222e in QQuickWindowPrivate::handleMouseEvent(QMouseEvent*) (this=0x55ce3b0d6210, event=0x7ffe8c500be0) at items/qquickwindow.cpp:2317
#52 0x00007f0de50bdc05 in QWindow::event(QEvent*) (this=this@entry=0x55ce37d656c0, ev=ev@entry=0x7ffe8c500be0) at kernel/qwindow.cpp:2363
#53 0x00007f0de2503975 in QQuickWindow::event(QEvent*) (this=0x55ce37d656c0, e=0x7ffe8c500be0) at items/qquickwindow.cpp:1773
#54 0x00007f0de59a49ac in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=this@entry=0x55ce3624a550, receiver=receiver@entry=0x55ce37d656c0, e=e@entry=0x7ffe8c500be0) at kernel/qapplication.cpp:3685
#55 0x00007f0de59abbb0 in QApplication::notify(QObject*, QEvent*) (this=0x7ffe8c501b90, receiver=0x55ce37d656c0, e=0x7ffe8c500be0) at kernel/qapplication.cpp:3431
#56 0x00007f0de48254a8 in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x55ce37d656c0, event=0x7ffe8c500be0) at kernel/qcoreapplication.cpp:1075
#57 0x00007f0de482567e in QCoreApplication::sendEvent(QObject*, QEvent*) (receiver=<optimized out>, event=event@entry=0x7ffe8c500be0) at kernel/qcoreapplication.cpp:1470
#58 0x00007f0de2dfecec in QQuickWidget::mouseReleaseEvent(QMouseEvent*) (this=<optimized out>, e=0x7ffe8c501220) at qquickwidget.cpp:1398
#59 0x00007f0de59e58c8 in QWidget::event(QEvent*) (this=this@entry=0x55ce3845a870, event=event@entry=0x7ffe8c501220) at kernel/qwidget.cpp:9033
#60 0x00007f0de2dfeecb in QQuickWidget::event(QEvent*) (this=0x55ce3845a870, e=0x7ffe8c501220) at qquickwidget.cpp:1551
#61 0x00007f0de59a49ac in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=this@entry=0x55ce3624a550, receiver=receiver@entry=0x55ce3845a870, e=e@entry=0x7ffe8c501220) at kernel/qapplication.cpp:3685
#62 0x00007f0de59ac9f8 in QApplication::notify(QObject*, QEvent*) (this=<optimized out>, receiver=0x55ce3845a870, e=0x7ffe8c501220) at kernel/qapplication.cpp:3129
#63 0x00007f0de48254a8 in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x55ce3845a870, event=0x7ffe8c501220) at kernel/qcoreapplication.cpp:1075
#64 0x00007f0de482568e in QCoreApplication::sendSpontaneousEvent(QObject*, QEvent*) (receiver=receiver@entry=0x55ce3845a870, event=event@entry=0x7ffe8c501220) at kernel/qcoreapplication.cpp:1482
#65 0x00007f0de59ab07f in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool, bool) (receiver=receiver@entry=0x55ce3845a870, event=event@entry=0x7ffe8c501220, alienWidget=0x55ce3845a870, nativeWidget=0x55ce362a6bc0, buttonDown=buttonDown@entry=0x7f0de60b59a0 <qt_button_down>, lastMouseReceiver=..., spontaneous=true, onlyDispatchEnterLeave=false) at kernel/qapplication.cpp:2615
#66 0x00007f0de59fff81 in QWidgetWindow::handleMouseEvent(QMouseEvent*) (this=this@entry=0x55ce3637cb40, event=event@entry=0x7ffe8c5016a0) at kernel/qwidgetwindow.cpp:673
#67 0x00007f0de5a02dea in QWidgetWindow::event(QEvent*) (this=0x55ce3637cb40, event=0x7ffe8c5016a0) at kernel/qwidgetwindow.cpp:295
#68 0x00007f0de59a49ac in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=this@entry=0x55ce3624a550, receiver=receiver@entry=0x55ce3637cb40, e=e@entry=0x7ffe8c5016a0) at kernel/qapplication.cpp:3685
#69 0x00007f0de59abbb0 in QApplication::notify(QObject*, QEvent*) (this=0x7ffe8c501b90, receiver=0x55ce3637cb40, e=0x7ffe8c5016a0) at kernel/qapplication.cpp:3431
#70 0x00007f0de48254a8 in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x55ce3637cb40, event=0x7ffe8c5016a0) at kernel/qcoreapplication.cpp:1075
#71 0x00007f0de482568e in QCoreApplication::sendSpontaneousEvent(QObject*, QEvent*) (receiver=receiver@entry=0x55ce3637cb40, event=event@entry=0x7ffe8c5016a0) at kernel/qcoreapplication.cpp:1482
#72 0x00007f0de50b28b5 in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) (e=0x55ce38397600) at kernel/qguiapplication.cpp:2203
#73 0x00007f0de50b39e5 in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) (e=e@entry=0x55ce38397600) at kernel/qguiapplication.cpp:1935
#74 0x00007f0de508c1cb in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) (flags=...) at kernel/qwindowsysteminterface.cpp:1170
#75 0x00007f0dd8338d00 in userEventSourceDispatch(_GSource*, int (*)(void*), void*) () at /usr/lib/x86_64-linux-gnu/libQt5WaylandClient.so.5
#76 0x00007f0ddd0e4417 in g_main_context_dispatch () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#77 0x00007f0ddd0e4650 in  () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#78 0x00007f0ddd0e46dc in g_main_context_iteration () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#79 0x00007f0de48847ac in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x55ce3628e300, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#80 0x00007f0de4823d2a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7ffe8c501a40, flags=..., flags@entry=...) at kernel/qeventloop.cpp:225
#81 0x00007f0de482d4a0 in QCoreApplication::exec() () at kernel/qcoreapplication.cpp:1383
#82 0x000055ce359e4804 in main(int, char**) (argc=<optimized out>, argv=<optimized out>) at ./app/main.cpp:168

Possible duplicates by query: bug 417802.

Reported using DrKonqi
Comment 1 Nate Graham 2020-07-17 15:10:31 UTC
Cannot reproduce in openSUSE TW with Qt 5.15
Comment 2 Patrick Silva 2020-07-17 15:28:11 UTC
humm, weirdly I can't reproduce after reboot.
Possibly duplicae of bug 416328.
Comment 3 Nate Graham 2020-07-17 15:30:36 UTC
Ah, probably. Good catch, Patrick!

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