Bug 515710

Summary: Plasmashell crashes when I drag and drop a widget from the widgets list to the panel
Product: [Plasma] plasmashell Reporter: Petar Nedyalkov <shakerbg>
Component: generic-crashAssignee: Plasma Bugs List <plasma-bugs-null>
Status: CONFIRMED ---    
Severity: crash CC: ahiemstra, akselmo
Priority: NOR    
Version First Reported In: 6.5.5   
Target Milestone: 1.0   
Platform: Other   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:
Attachments: Video
Backtrace (Petar Nedyalkov)
backtrace

Description Petar Nedyalkov 2026-02-08 06:26:30 UTC
Created attachment 189350 [details]
Video

SUMMARY
Plasmashell crashes when I drag and drop a widget from the widgets list to the panel

STEPS TO REPRODUCE
1. Right click the mouse and choose "Enter Edit Mode"
2. Click the "Add or Manage Widgets"
3. Drag a widget (e.g. "Analog Clock") and drop it to the panel
4. Observe.

OBSERVED RESULT
Plasmashell crashes when I drag and drop a widget from the widgets list to the panel

Error message taken from Konsole:
KPackage in "/home/pnedyalkov/.local/share/plasma/plasmoids/Freyry.Weather/" "" does not match requested format "Plasma/Applet"
KPackage in "/home/pnedyalkov/.local/share/plasma/plasmoids/zayron.simple.separator/" "" does not match requested format "Plasma/Applet"
kf.package: Could not find required file "mainscript" for package "/usr/share/plasma/plasmoids/org.kde.plasma.brightness/" should be QList("ui/main.qml")
kf.package: Could not find required file "mainscript" for package "/usr/share/plasma/plasmoids/org.kde.plasma.kickerdash/" should be QList("ui/main.qml")
kf.package: Could not find required file "mainscript" for package "/usr/share/plasma/plasmoids/org.kde.plasma.battery/" should be QList("ui/main.qml")
kf.package: Could not find required file "mainscript" for package "/usr/share/plasma/plasmoids/org.kde.plasma.kweather_1x4/" should be QList("ui/main.qml")
QWaylandGLContext: Failed to create the decorations EGLContext. Decorations will not be drawn.
kf.package: Could not find required file "mainscript" for package "/usr/share/plasma/plasmoids/org.kde.plasma.kickerdash/" should be QList("ui/main.qml")
kf.package: Could not find required file "mainscript" for package "/usr/share/plasma/plasmoids/org.kde.plasma.kickerdash/" should be QList("ui/main.qml")
kf.package: Could not find required file "mainscript" for package "/usr/share/plasma/plasmoids/org.kde.plasma.brightness/" should be QList("ui/main.qml")
kf.package: Could not find required file "mainscript" for package "/usr/share/plasma/plasmoids/org.kde.plasma.brightness/" should be QList("ui/main.qml")
This plugin does not support setting window opacity
Segmentation fault         (core dumped) plasmashell --replace


EXPECTED RESULT
The drag and drop function is working without causing plasmashell crashes. The dropped widget is located in the panel

SOFTWARE/OS VERSIONS
Operating System: Fedora Linux 43
KDE Plasma Version: 6.5.5
KDE Frameworks Version: 6.22.0
Qt Version: 6.10.1

Kernel Version: 6.18.8-cachyos1.fc43.x86_64 (64-bit)
Graphics Platform: Wayland
Processors: 12 × Intel® Core™ i7-9750H CPU @ 2.60GHz
Memory: 16 GiB of RAM (15,5 GiB usable)
Graphics Processor: NVIDIA GeForce RTX 2060
Manufacturer: LENOVO
Product Name: 81Q4
System Version: LENOVO LEGION Y540-17IRH

ADDITIONAL INFORMATION
Video is attached for reference.
Comment 1 Akseli Lahtinen 2026-02-09 09:41:26 UTC
I can confirm the crash, but only this way:

1. Have top and bottom panel, with only task manager in bottom panel
2. Enter edit mode
3. Add analog clock to top panel
4. Start dragging the clock widget from top panel to bottom panel
5. Plasmashell gets confused and crashes

Also I could not open the video, I don't know why.

Operating System: KDE Linux 2026-02-09
KDE Plasma Version: 6.6.80
KDE Frameworks Version: 6.24.0
Qt Version: 6.10.2
Kernel Version: 6.18.7-zen1-1-zen (64-bit)
Graphics Platform: Wayland
Processors: 12 × AMD Ryzen 5 3600 6-Core Processor
Memory: 16 GiB of RAM (15.5 GiB usable)
Graphics Processor: AMD Radeon RX 6600
Comment 2 Arjen Hiemstra 2026-02-09 11:13:49 UTC
For a crash we need a backtrace, otherwise we cannot figure out what the problem is. See https://community.kde.org/Guidelines_and_HOWTOs/Debugging/How_to_create_useful_crash_reports how to do that.
Comment 3 Petar Nedyalkov 2026-02-09 12:42:22 UTC
Created attachment 189389 [details]
Backtrace (Petar Nedyalkov)
Comment 4 Akseli Lahtinen 2026-02-09 12:58:21 UTC
Created attachment 189390 [details]
backtrace

Huge backtrace

Thread 1 (Thread 0x7f428e295b80 (LWP 161797)):
[KCrash Handler]
#4  std::__atomic_base<QQmlData::NotifyList*>::load (this=0x3ff0000000000018, __m=std::memory_order_relaxed) at /usr/include/c++/15.2.1/bits/atomic_base.h:828
#5  std::atomic<QQmlData::NotifyList*>::load (this=0x3ff0000000000018, __m=std::memory_order_relaxed) at /usr/include/c++/15.2.1/atomic:586
#6  QAtomicOps<QQmlData::NotifyList*>::loadRelaxed<QQmlData::NotifyList*> (_q_value=...) at /usr/include/qt6/QtCore/qatomic_cxx11.h:203
#7  QBasicAtomicPointer<QQmlData::NotifyList>::loadRelaxed (this=0x3ff0000000000018) at /usr/include/qt6/QtCore/qbasicatomic.h:171
#8  QQmlData::signalHasEndpoint (this=0x3ff0000000000000, index=4) at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/qml/qqmldata_p.h:373
#9  QQmlData::isSignalConnected (d=0x3ff0000000000000, index=4) at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/qml/qqmlengine.cpp:358
#10 0x00007f4294aa3b63 in QObjectPrivate::isDeclarativeSignalConnected (this=<optimized out>, signal_index=4) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobject_p.h:87
#11 doActivate<false> (sender=0x564d9801a1d0, signal_index=4, argv=0x7ffd6902d150) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobject.cpp:4159
#12 0x00007f4296891e40 in QMetaObject::activate<void, Qt::DropAction> (sender=0x564d9801a1d0, mo=<optimized out>, local_signal_index=1, ret=0x0) at /usr/include/qt6/QtCore/qobjectdefs.h:319
#13 QQuickDragAttached::dragFinished (this=<optimized out>, _t1=<optimized out>) at /usr/src/debug/qt6-declarative/build/src/quick/Quick_autogen/include/moc_qquickdrag_p.cpp:690
#14 QQuickDragAttachedPrivate::startDrag (this=0x564d9801b3d0, supportedActions=...) at /usr/src/debug/qt6-declarative/qtdeclarative/src/quick/items/qquickdrag.cpp:864
#15 0x00007f4296892f62 in QQuickDragAttached::qt_metacall (this=0x564d9801a1d0, _c=QMetaObject::WriteProperty, _id=0, _a=0x7ffd6902d210) at /usr/src/debug/qt6-declarative/build/src/quick/Quick_autogen/include/moc_qquickdrag_p.cpp:675
#16 0x00007f429602b513 in QQmlPropertyData::doMetacall<(QMetaObject::Call)2> (this=<optimized out>, object=<optimized out>, idx=<optimized out>, argv=0x7ffd6902d210) at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/qml/qqmlpropertydata_p.h:397
#17 QQmlPropertyData::doMetacall<(QMetaObject::Call)2> (this=<optimized out>, object=<optimized out>, idx=<optimized out>, argv=0x7ffd6902d210) at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/qml/qqmlpropertydata_p.h:392
#18 QQmlPropertyData::writeProperty (this=<optimized out>, target=<optimized out>, value=<optimized out>, flags=...) at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/qml/qqmlpropertydata_p.h:415
#19 0x00007f4296104615 in QQmlPropertyPrivate::write (object=0x564d9801a1d0, property=..., value=..., context=..., flags=...) at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/qml/qqmlproperty.cpp:1920
#20 0x00007f4295fa452f in QV4::QObjectWrapper::setProperty (engine=engine@entry=0x564d949b8f10, object=object@entry=0x564d9801a1d0, property=0x7f4260529d90, value=...) at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/jsruntime/qv4qobjectwrapper.cpp:795
#21 0x00007f4295fa4f71 in QV4::QObjectWrapper::setQmlProperty (engine=0x564d949b8f10, qmlContext=..., object=0x564d9801a1d0, name=<optimized out>, flags=..., value=...) at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/jsruntime/qv4qobjectwrapper.cpp:580
#22 0x00007f429618eef9 in QV4::QQmlTypeWrapper::virtualPut (m=<optimized out>, id=..., value=..., receiver=<optimized out>) at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/qml/qqmltypewrapper.cpp:456
#23 0x00007f4295f83973 in QV4::Object::put (this=<optimized out>, id=..., v=..., receiver=<optimized out>, this=<optimized out>, id=..., v=..., receiver=<optimized out>) at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/jsruntime/qv4object_p.h:288
#24 QV4::Object::virtualResolveLookupSetter (object=0x7f4264a93548, engine=0x564d949b8f10, lookup=0x564d97fe8508, value=...) at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/jsruntime/qv4object.cpp:826
#25 0x00007f429600bccb in QV4::Moth::VME::interpret (frame=0x3ff0000000000000, frame@entry=0x7ffd6902dd50, engine=0x564d949b8f10, code=0x7f4265d9126a "\016\002") at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/jsruntime/qv4vme_moth.cpp:709
#26 0x00007f429600f2c6 in QV4::Moth::VME::exec (frame=<optimized out>, engine=<optimized out>) at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/jsruntime/qv4vme_moth.cpp:493
#27 0x00007f4295f64eb6 in QV4::Moth::VME::exec (frame=0x7ffd6902dd50, engine=0x564d949b8f10) at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/jsruntime/qv4engine_p.h:825
#28 qfoDoCall (fo=<optimized out>, thisObject=<optimized out>, argv=<optimized out>, argc=<optimized out>) at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/jsruntime/qv4functionobject.cpp:528
#29 0x00007f4295efe9bc in QV4::FunctionObject::call (data=..., this=0x7f423b73e2a0) at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/jsruntime/qv4jscall_p.h:104
#30 QJSValue::call (this=this@entry=0x564d96577688, args=...) at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/jsapi/qjsvalue.cpp:745
#31 0x00007f4296590837 in QQuickItemGrabResult::event (this=0x564d9a23fa50, e=<optimized out>) at /usr/include/qt6/QtCore/qlist.h:124
#32 0x00007f4296fec380 in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x564d9a23fa50, e=0x7f41e4217f80) at /usr/src/debug/qt6-base/qtbase/src/widgets/kernel/qapplication.cpp:3305
#33 0x00007f4294a36f48 in QCoreApplication::notifyInternal2 (receiver=0x564d9a23fa50, event=event@entry=0x7f41e4217f80) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qcoreapplication.cpp:1109
#34 0x00007f4294a37320 in QCoreApplication::sendEvent (receiver=<optimized out>, event=0x7f41e4217f80) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qcoreapplication.cpp:1549
#35 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x564d9420e060) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qcoreapplication.cpp:1904
#36 0x00007f4294d1ce78 in QCoreApplication::sendPostedEvents (receiver=0x0, event_type=0) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qcoreapplication.cpp:1757
#37 postEventSourceDispatch (s=0x564d9421ae40) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:246
#38 0x00007f4293457f8d in g_main_dispatch (context=0x7f4288000f60) at ../glib/glib/gmain.c:3565
#39 0x00007f4293459657 in g_main_context_dispatch_unlocked (context=0x7f4288000f60) at ../glib/glib/gmain.c:4425
#40 g_main_context_iterate_unlocked (context=context@entry=0x7f4288000f60, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/glib/gmain.c:4490
#41 0x00007f4293459865 in g_main_context_iteration (context=0x7f4288000f60, may_block=1) at ../glib/glib/gmain.c:4556
#42 0x00007f4294d1acb2 in QEventDispatcherGlib::processEvents (this=0x564d9421b730, flags=...) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:399
#43 0x00007f4294a41cf6 in QEventLoop::processEvents (this=0x7ffd6902e2e0, flags=...) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qeventloop.cpp:104
#44 QEventLoop::exec (this=0x7ffd6902e2e0, flags=...) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qeventloop.cpp:186
#45 0x00007f4294a3b9f1 in QCoreApplication::exec () at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qcoreapplication.cpp:1452
#46 0x0000564d5b8f13a5 in main (argc=<optimized out>, argv=<optimized out>) at /home/akseli/Repositories/kde/src/plasma-workspace/shell/main.cpp:204