Bug 498411 - Switching from Desktop containment to Folder containment crashes Plasma in Positioner::updatePositionsList
Summary: Switching from Desktop containment to Folder containment crashes Plasma in Po...
Status: RESOLVED FIXED
Alias: None
Product: plasmashell
Classification: Plasma
Component: Containment (show other bugs)
Version: master
Platform: Other Linux
: NOR crash
Target Milestone: 1.0
Assignee: Plasma Bugs List
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2025-01-09 04:38 UTC by Nate Graham
Modified: 2025-01-09 18:52 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In: 6.3.0
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Nate Graham 2025-01-09 04:38:37 UTC
STEPS TO REPRODUCE
1. Right-click on desktop > Desktop and Wallpaper
2. Change Layout to "Desktop"
3. Click OK button on the dialog
4. Right-click on desktop > Desktop and Wallpaper
5. Change Layout to "Folder"
6. Click OK button on the dialog


OBSERVED RESULT
Plasmashell crashes 100% of the time with the following long backtrace:

Thread 1 (Thread 0x7f86db8b8dc0 (LWP 61243)):
[KCrash Handler]
#5  0x00007f866b6bd9ca in Positioner::updatePositionsList (this=0x29c72a10) at /home/nate/kde/src/plasma-desktop/containments/desktop/plugins/folder/positioner.cpp:465
#6  0x00007f86e115b601 in QtPrivate::QSlotObjectBase::call (this=0x2d3f5fb0, r=<optimized out>, a=0x7fff6732f8c0) at /usr/src/debug/qt6-qtbase-6.8.1-7.fc41.x86_64/src/corelib/kernel/qobjectdefs_impl.h:486
#7  doActivate<false> (sender=0x29df1590, signal_index=13, argv=0x7fff6732f8c0) at /usr/src/debug/qt6-qtbase-6.8.1-7.fc41.x86_64/src/corelib/kernel/qobject.cpp:4124
#8  0x00007f86e1151c07 in QMetaObject::activate (sender=sender@entry=0x29df1590, m=m@entry=0x7f86e1680f80, local_signal_index=local_signal_index@entry=10, argv=argv@entry=0x7fff6732f8c0) at /usr/src/debug/qt6-qtbase-6.8.1-7.fc41.x86_64/src/corelib/kernel/qobject.cpp:4184
#9  0x00007f86e1369b8a in QAbstractItemModel::rowsInserted (this=this@entry=0x29df1590, _t1=..., _t2=<optimized out>, _t3=<optimized out>, _t4=...) at /usr/src/debug/qt6-qtbase-6.8.1-7.fc41.x86_64/redhat-linux-build/src/corelib/Core_autogen/include/moc_qabstractitemmodel.cpp:1060
#10 0x00007f86e13788a7 in QAbstractItemModel::endInsertRows (this=0x29df1590) at /usr/src/debug/qt6-qtbase-6.8.1-7.fc41.x86_64/src/corelib/itemmodels/qabstractitemmodel.cpp:2915
#11 0x00007f86e13bf805 in QSortFilterProxyModelPrivate::insert_source_items (this=this@entry=0x24f15880, source_to_proxy=..., proxy_to_source=..., source_items=..., source_parent=..., orient=orient@entry=Qt::Vertical, emit_signal=true) at /usr/src/debug/qt6-qtbase-6.8.1-7.fc41.x86_64/src/corelib/itemmodels/qsortfilterproxymodel.cpp:932
#12 0x00007f86e13c5a27 in QSortFilterProxyModelPrivate::source_items_inserted (this=0x24f15880, source_parent=..., start=<optimized out>, end=<optimized out>, orient=Qt::Vertical) at /usr/src/debug/qt6-qtbase-6.8.1-7.fc41.x86_64/src/corelib/itemmodels/qsortfilterproxymodel.cpp:1043
#13 0x00007f86e13c88eb in QSortFilterProxyModelPrivate::_q_sourceRowsInserted (this=0x24f15880, source_parent=..., start=0, end=13) at /usr/src/debug/qt6-qtbase-6.8.1-7.fc41.x86_64/src/corelib/itemmodels/qsortfilterproxymodel.cpp:1685
#14 0x00007f86e115b601 in QtPrivate::QSlotObjectBase::call (this=0x24c31370, r=<optimized out>, a=0x7fff6732fca0) at /usr/src/debug/qt6-qtbase-6.8.1-7.fc41.x86_64/src/corelib/kernel/qobjectdefs_impl.h:486
#15 doActivate<false> (sender=0x2ac59410, signal_index=13, argv=0x7fff6732fca0) at /usr/src/debug/qt6-qtbase-6.8.1-7.fc41.x86_64/src/corelib/kernel/qobject.cpp:4124
#16 0x00007f86e1151c07 in QMetaObject::activate (sender=sender@entry=0x2ac59410, m=m@entry=0x7f86e1680f80, local_signal_index=local_signal_index@entry=10, argv=argv@entry=0x7fff6732fca0) at /usr/src/debug/qt6-qtbase-6.8.1-7.fc41.x86_64/src/corelib/kernel/qobject.cpp:4184
#17 0x00007f86e1369b8a in QAbstractItemModel::rowsInserted (this=this@entry=0x2ac59410, _t1=..., _t2=<optimized out>, _t3=<optimized out>, _t4=...) at /usr/src/debug/qt6-qtbase-6.8.1-7.fc41.x86_64/redhat-linux-build/src/corelib/Core_autogen/include/moc_qabstractitemmodel.cpp:1060
#18 0x00007f86e13788a7 in QAbstractItemModel::endInsertRows (this=0x2ac59410) at /usr/src/debug/qt6-qtbase-6.8.1-7.fc41.x86_64/src/corelib/itemmodels/qabstractitemmodel.cpp:2915
#19 0x00007f86e173857b in KDirModelPrivate::_k_slotNewItems (this=<optimized out>, directoryUrl=<optimized out>, items=<optimized out>) at /home/nate/kde/src/kio/src/widgets/kdirmodel.cpp:593
#20 0x00007f86e115b601 in QtPrivate::QSlotObjectBase::call (this=0x24c30340, r=<optimized out>, a=0x7fff6732ffd0) at /usr/src/debug/qt6-qtbase-6.8.1-7.fc41.x86_64/src/corelib/kernel/qobjectdefs_impl.h:486
#21 doActivate<false> (sender=0x29df2230, signal_index=12, argv=0x7fff6732ffd0) at /usr/src/debug/qt6-qtbase-6.8.1-7.fc41.x86_64/src/corelib/kernel/qobject.cpp:4124
#22 0x00007f86e1151c07 in QMetaObject::activate (sender=<optimized out>, m=m@entry=0x7f86e4ce0f20 <KCoreDirLister::staticMetaObject>, local_signal_index=local_signal_index@entry=9, argv=argv@entry=0x7fff6732ffd0) at /usr/src/debug/qt6-qtbase-6.8.1-7.fc41.x86_64/src/corelib/kernel/qobject.cpp:4184
#23 0x00007f86e4bfbc6a in KCoreDirLister::itemsAdded (this=<optimized out>, _t1=..., _t2=...) at /home/nate/kde/build/kio/src/core/KF6KIOCore_autogen/include/moc_kcoredirlister.cpp:541
#24 0x00007f86e4c016c1 in KCoreDirListerPrivate::emitItems (this=0x29df24f0) at /usr/include/qt6/QtCore/qhash.h:1180
#25 0x00007f86e4c0a497 in KCoreDirListerCache::emitItemsFromCache (this=0x24066990, cachedItemsJob=0x25757e00, lister=0x29df2230, _url=..., _reload=false, _emitCompleted=<optimized out>) at /usr/include/c++/14/bits/unique_ptr.h:193
#26 0x00007f86e4c0a5e8 in KCoreDirListerPrivate::CachedItemsJob::done (this=this@entry=0x25757e00) at /home/nate/kde/src/kio/src/core/kcoredirlister.cpp:288
#27 0x00007f86e4c0a823 in KCoreDirListerPrivate::CachedItemsJob::done (this=0x25757e00) at /home/nate/kde/src/kio/src/core/kcoredirlister.cpp:285
#28 KCoreDirListerCache::updateDirectory (this=0x24066990, _dir=<optimized out>) at /home/nate/kde/src/kio/src/core/kcoredirlister.cpp:628
#29 0x00007f866b69afc0 in FolderModel::setUrl (this=0x29df1590, url=...) at /home/nate/kde/src/plasma-desktop/containments/desktop/plugins/folder/foldermodel.cpp:362
#30 0x00007f86e2c69ec5 in QQmlPropertyData::writeProperty (this=<optimized out>, target=<optimized out>, value=0x7fff673303f0, flags=...) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/qml/qqmlpropertydata_p.h:336
#31 GenericBinding<10>::doStore<QString> (this=0x2a114a80, value=..., pd=<optimized out>, flags=...) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/qml/qqmlbinding.cpp:282
#32 GenericBinding<10>::write (this=0x2a114a80, result=..., isUndefined=<optimized out>, flags=...) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/qml/qqmlbinding.cpp:263
#33 0x00007f86e2c61681 in QQmlBinding::doUpdate (this=0x2a114a80, watcher=..., flags=..., scope=...) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/qml/qqmlbinding.cpp:711
#34 0x00007f86e2c653d8 in QQmlBinding::update (this=0x2a114a80, flags=...) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/qml/qqmlbinding.cpp:165
#35 0x00007f86e2c92a7b in QQmlContextData::refreshExpressionsRecursive (this=<optimized out>, expression=0x2a114a80) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/qml/qqmlcontextdata.cpp:209
#36 0x00007f86e2c92a68 in QQmlContextData::refreshExpressionsRecursive (this=<optimized out>, expression=0x2a114f30) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/qml/qqmlcontextdata.cpp:206
#37 0x00007f86e2c92a68 in QQmlContextData::refreshExpressionsRecursive (this=<optimized out>, expression=0x24ee90c0) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/qml/qqmlcontextdata.cpp:206
#38 0x00007f86e2c92a68 in QQmlContextData::refreshExpressionsRecursive (this=<optimized out>, expression=0x2bd04070) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/qml/qqmlcontextdata.cpp:206
#39 0x00007f86e2c92a68 in QQmlContextData::refreshExpressionsRecursive (this=<optimized out>, expression=0x2bd04110) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/qml/qqmlcontextdata.cpp:206
#40 0x00007f86e2c92a68 in QQmlContextData::refreshExpressionsRecursive (this=<optimized out>, expression=0x2bd041f0) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/qml/qqmlcontextdata.cpp:206
#41 0x00007f86e2c92a68 in QQmlContextData::refreshExpressionsRecursive (this=<optimized out>, expression=0x2bd04300) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/qml/qqmlcontextdata.cpp:206
#42 0x00007f86e2c92a68 in QQmlContextData::refreshExpressionsRecursive (this=<optimized out>, expression=0x2bd043c0) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/qml/qqmlcontextdata.cpp:206
#43 0x00007f86e2c92a68 in QQmlContextData::refreshExpressionsRecursive (this=<optimized out>, expression=0x2bd04530) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/qml/qqmlcontextdata.cpp:206
#44 0x00007f86e2c92a68 in QQmlContextData::refreshExpressionsRecursive (this=<optimized out>, expression=0x2bd045a0) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/qml/qqmlcontextdata.cpp:206
#45 0x00007f86e2c92a68 in QQmlContextData::refreshExpressionsRecursive (this=this@entry=0x2b4157e0, expression=0x2d9054b0) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/qml/qqmlcontextdata.cpp:206
#46 0x00007f86e2c94278 in QQmlContextData::refreshExpressionsRecursive (this=0x2b4157e0, isGlobal=false) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/qml/qqmlcontextdata.cpp:229
#47 0x00007f86e2c942fb in QQmlContextData::refreshExpressionsRecursive (this=0x2b4156e0, isGlobal=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/qml/qqmlcontextdata.cpp:235
#48 0x00007f86e2c943cc in QQmlContextData::refreshExpressionsRecursive (this=0x27dbf9f0, isGlobal=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/qml/qqmlcontextdata.cpp:219
#49 0x00007f86e2c943cc in QQmlContextData::refreshExpressionsRecursive (this=0x29bd7320, isGlobal=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/qml/qqmlcontextdata.cpp:219
#50 0x00007f86e2c946f5 in QQmlContextData::refreshExpressions (this=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/qml/qqmlcontextdata.cpp:261
#51 0x00007f86e2c916fd in QQmlContext::setContextProperty (this=0x27dbf140, name=..., value=...) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/qml/qqmlcontext.cpp:240
#52 0x00007f86e2c9178d in QQmlContext::setContextProperty (this=0x27dbf140, name=..., value=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/qml/qqmlcontext.cpp:263
#53 0x00007f86e4ef44e8 in PlasmaQuick::AppletQuickItem::itemForApplet (applet=<optimized out>) at /usr/include/c++/14/utility:107
#54 0x00007f86e4f094af in PlasmaQuick::ContainmentViewPrivate::setContainment (this=0x23a62810, cont=0x2473d0d0) at /home/nate/kde/src/libplasma/src/plasmaquick/containmentview.cpp:113
#55 0x00007f86e4f09bb9 in PlasmaQuick::ContainmentView::setContainment (this=<optimized out>, cont=<optimized out>) at /home/nate/kde/src/libplasma/src/plasmaquick/containmentview.cpp:260
#56 0x00000000004497b8 in ShellCorona::setContainmentTypeForScreen (this=this@entry=0x7f86b80029a0, screen=0, plugin=...) at /home/nate/kde/src/plasma-workspace/shell/shellcorona.cpp:2105
#57 0x000000000040ba88 in ContainmentConfigView::setContainmentPlugin (this=0x27e0c700, plugin=...) at /home/nate/kde/src/plasma-workspace/shell/containmentconfigview.cpp:107
#58 ContainmentConfigView::setContainmentPlugin (this=0x27e0c700, plugin=...) at /home/nate/kde/src/plasma-workspace/shell/containmentconfigview.cpp:101
#59 0x000000000040df63 in ContainmentConfigView::qt_metacall (this=0x27e0c700, _c=QMetaObject::WriteProperty, _id=6, _a=0x7fff673311f0) at /home/nate/kde/build/plasma-workspace/shell/plasmashell_autogen/include/moc_containmentconfigview.cpp:252
#60 0x00007f86e2ba663e in QV4::QObjectWrapper::setProperty (engine=engine@entry=0x2bb73e30, object=object@entry=0x27e0c700, property=0x23fd2470, value=...) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/qml/qqmlpropertydata_p.h:256
#61 0x00007f86e2ba777e in QV4::QObjectWrapper::setQmlProperty (engine=engine@entry=0x2bb73e30, qmlContext=..., object=0x27e0c700, name=<optimized out>, flags=flags@entry=..., value=...) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/jsruntime/qv4qobjectwrapper.cpp:555
#62 0x00007f86e2ba7950 in QV4::QObjectWrapper::virtualPut (m=0x7f8637bbf7e0, id=..., value=..., receiver=0x7f8637bbf7e0) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/jsruntime/qv4qobjectwrapper.cpp:953
#63 0x00007f86e2b7e1bf in QV4::Object::put (this=0x7f8637bbf7e0, id=..., v=<optimized out>, receiver=0x7f8637bbf7e0) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/jsruntime/qv4object_p.h:41
#64 QV4::Object::virtualResolveLookupSetter (object=0x7f8637bbf7e0, engine=0x2bb73e30, lookup=0x2871a730, value=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/jsruntime/qv4object.cpp:823
#65 0x00007f86e2c22e9d in QV4::Moth::VME::interpret (frame=0x7fff6732f750, frame@entry=0x7fff673316c0, engine=0x2bb73e30, code=0x7f8656790662 "\016\002") at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/jsruntime/qv4vme_moth.cpp:321
#66 0x00007f86e2c27e9f in QV4::Moth::VME::exec (frame=frame@entry=0x7fff673316c0, engine=engine@entry=0x2bb73e30) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/jsruntime/qv4vme_moth.cpp:487
#67 0x00007f86e2b527df in qfoDoCall (fo=<optimized out>, thisObject=<optimized out>, argv=<optimized out>, argc=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/jsruntime/qv4functionobject.cpp:527
#68 0x00007f86e2c228f8 in QV4::FunctionObject::call (this=<optimized out>, thisObject=<optimized out>, argv=<optimized out>, argc=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/jsruntime/qv4functionobject_p.h:187
#69 QV4::Moth::VME::interpret (frame=0x7fff6732f750, frame@entry=0x7fff673319a0, engine=0x2bb73e30, code=0x7f8637bbf750 " \370\3615\206\177") at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/jsruntime/qv4vme_moth.cpp:798
#70 0x00007f86e2c27e9f in QV4::Moth::VME::exec (frame=frame@entry=0x7fff673319a0, engine=engine@entry=0x2bb73e30) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/jsruntime/qv4vme_moth.cpp:487
#71 0x00007f86e2b527df in qfoDoCall (fo=<optimized out>, thisObject=<optimized out>, argv=<optimized out>, argc=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/jsruntime/qv4functionobject.cpp:527
#72 0x00007f86e2c228f8 in QV4::FunctionObject::call (this=<optimized out>, thisObject=<optimized out>, argv=<optimized out>, argc=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/jsruntime/qv4functionobject_p.h:187
#73 QV4::Moth::VME::interpret (frame=0x7fff6732f750, frame@entry=0x7fff67331c80, engine=0x2bb73e30, code=0x7f8637bbf6c8 "\300\221\3615\206\177") at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/jsruntime/qv4vme_moth.cpp:798
#74 0x00007f86e2c27e9f in QV4::Moth::VME::exec (frame=frame@entry=0x7fff67331c80, engine=engine@entry=0x2bb73e30) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/jsruntime/qv4vme_moth.cpp:487
#75 0x00007f86e2b4d644 in QV4::doCall (self=<optimized out>, thisObject=<optimized out>, argv=<optimized out>, argc=<optimized out>, context=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/jsruntime/qv4function.cpp:52
#76 0x00007f86e2b4de48 in QV4::Function::call (this=this@entry=0x2b4c9b10, thisObject=<optimized out>, argv=argv@entry=0x7f8637bbf680, argc=<optimized out>, context=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/jsruntime/qv4function.cpp:77
#77 0x00007f86e2b4e18f in operator() (__closure=<synthetic pointer>, thisObject=<optimized out>, argv=0x7f8637bbf680, argc=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/jsruntime/qv4function.cpp:28
#78 QV4::convertAndCall<QV4::Function::call(QObject*, void**, const QMetaType*, int, QV4::ExecutionContext*)::<lambda(const QV4::Value*, const QV4::Value*, int)> > (engine=<optimized out>, thisObject=<optimized out>, a=0x7fff67333a40, types=0x7fff67331f98, argc=<optimized out>, call=...) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/jsruntime/qv4jscall_p.h:199
#79 QV4::Function::call (this=0x2b4c9b10, thisObject=<optimized out>, a=a@entry=0x7fff67333a40, types=0x7fff67331f98, argc=<optimized out>, context=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/jsruntime/qv4function.cpp:25
#80 0x00007f86e2cd8ee7 in QQmlJavaScriptExpression::evaluate (this=this@entry=0x2559efb0, a=a@entry=0x7fff67333a40, types=<optimized out>, argc=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/qml/qqmljavascriptexpression_p.h:248
#81 0x00007f86e2c6f56b in QQmlBoundSignalExpression::evaluate (this=0x2559efb0, a=a@entry=0x7fff67333a40) at /usr/include/qt6/QtCore/qvarlengtharray.h:86
#82 0x00007f86e2c70120 in QQmlBoundSignal_callback (e=0x28ce8800, a=0x7fff67333a40) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/qml/ftw/qqmlrefcount_p.h:73
#83 0x00007f86e2d09dd5 in QQmlNotifier::emitNotify (endpoint=<optimized out>, a=0x7fff67333a40) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/qml/qqmlnotifier.cpp:70
#84 0x00007f86e115af78 in doActivate<false> (sender=0x242e8e80, signal_index=11, argv=0x7fff67333a40) at /usr/src/debug/qt6-qtbase-6.8.1-7.fc41.x86_64/src/corelib/kernel/qobject.cpp:4014
#85 0x00007f86e1151c07 in QMetaObject::activate (sender=sender@entry=0x242e8e80, m=m@entry=0x7f86cd05c8c0 <QQuickAction::staticMetaObject>, local_signal_index=local_signal_index@entry=8, argv=argv@entry=0x7fff67333a40) at /usr/src/debug/qt6-qtbase-6.8.1-7.fc41.x86_64/src/corelib/kernel/qobject.cpp:4184
#86 0x00007f86cce22d94 in QQuickAction::triggered (this=this@entry=0x242e8e80, _t1=<optimized out>, _t1@entry=0x0) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/redhat-linux-build/src/quicktemplates/QuickTemplates2_autogen/include/moc_qquickaction_p.cpp:401
#87 0x00007f86cce240c9 in QQuickActionPrivate::trigger (this=0x246974c0, source=0x0, doToggle=true) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/quicktemplates/qquickaction.cpp:531
#88 0x00007f86cce241a2 in QQuickAction::trigger (this=<optimized out>, source=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/quicktemplates/qquickaction.cpp:512
#89 0x00007f86cce24555 in QQuickAction::qt_static_metacall (_o=<optimized out>, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/redhat-linux-build/src/quicktemplates/QuickTemplates2_autogen/include/moc_qquickaction_p.cpp:216
#90 0x00007f86cce24ee7 in QQuickAction::qt_metacall (this=0x242e8e80, _c=<optimized out>, _id=13, _a=0x7fff67333e70) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/redhat-linux-build/src/quicktemplates/QuickTemplates2_autogen/include/moc_qquickaction_p.cpp:331
#91 0x00007f86e2d2269a in QQmlObjectOrGadget::metacall (this=this@entry=0x7fff67334110, type=type@entry=QMetaObject::InvokeMetaMethod, index=<optimized out>, index@entry=17, argv=argv@entry=0x7fff67333e70) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/qml/qqmlobjectorgadget.cpp:14
#92 0x00007f86e2bae033 in QV4::CallMethod (object=..., index=17, returnType=..., argCount=0, argTypes=0x0, engine=<optimized out>, callArgs=<optimized out>, callType=QMetaObject::InvokeMetaMethod) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/jsruntime/qv4qobjectwrapper.cpp:1697
#93 QV4::QObjectMethod::callPrecise (object=..., data=<optimized out>, engine=<optimized out>, engine@entry=0x2bb73e30, callArgs=<optimized out>, callArgs@entry=0x7f8637bbf648, callType=callType@entry=QMetaObject::InvokeMetaMethod) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/jsruntime/qv4qobjectwrapper.cpp:1994
#94 0x00007f86e2bb10e1 in operator() (__closure=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/jsruntime/qv4qobjectwrapper.cpp:2984
#95 operator()<QV4::QObjectMethod::callInternal(const QV4::Value*, const QV4::Value*, int) const::<lambda()> > (__closure=<synthetic pointer>, call=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/jsruntime/qv4qobjectwrapper.cpp:2961
#96 QV4::QObjectMethod::callInternal (this=<optimized out>, thisObject=0x7f8637bbf600, argv=0x7f8637bbf5c8, argc=0) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/jsruntime/qv4qobjectwrapper.cpp:2984
#97 0x00007f86e2c228f8 in QV4::FunctionObject::call (this=<optimized out>, thisObject=<optimized out>, argv=<optimized out>, argc=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/jsruntime/qv4functionobject_p.h:187
#98 QV4::Moth::VME::interpret (frame=0x7fff6732f750, frame@entry=0x7fff67334400, engine=0x2bb73e30, code=0x7f8637bbf600 "`\361\3555\206\177") at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/jsruntime/qv4vme_moth.cpp:798
#99 0x00007f86e2c27e9f in QV4::Moth::VME::exec (frame=frame@entry=0x7fff67334400, engine=engine@entry=0x2bb73e30) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/jsruntime/qv4vme_moth.cpp:487
#100 0x00007f86e2b4d644 in QV4::doCall (self=<optimized out>, thisObject=<optimized out>, argv=<optimized out>, argc=<optimized out>, context=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/jsruntime/qv4function.cpp:52
#101 0x00007f86e2b4de48 in QV4::Function::call (this=this@entry=0x29870c10, thisObject=<optimized out>, argv=argv@entry=0x7f8637bbf5b8, argc=<optimized out>, context=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/jsruntime/qv4function.cpp:77
#102 0x00007f86e2b4e18f in operator() (__closure=<synthetic pointer>, thisObject=<optimized out>, argv=0x7f8637bbf5b8, argc=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/jsruntime/qv4function.cpp:28
#103 QV4::convertAndCall<QV4::Function::call(QObject*, void**, const QMetaType*, int, QV4::ExecutionContext*)::<lambda(const QV4::Value*, const QV4::Value*, int)> > (engine=<optimized out>, thisObject=<optimized out>, a=0x7fff673361c0, types=0x7fff67334718, argc=<optimized out>, call=...) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/jsruntime/qv4jscall_p.h:199
#104 QV4::Function::call (this=0x29870c10, thisObject=<optimized out>, a=a@entry=0x7fff673361c0, types=0x7fff67334718, argc=<optimized out>, context=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/jsruntime/qv4function.cpp:25
#105 0x00007f86e2cd8ee7 in QQmlJavaScriptExpression::evaluate (this=this@entry=0x28d185a0, a=a@entry=0x7fff673361c0, types=<optimized out>, argc=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/qml/qqmljavascriptexpression_p.h:248
#106 0x00007f86e2c6f56b in QQmlBoundSignalExpression::evaluate (this=0x28d185a0, a=a@entry=0x7fff673361c0) at /usr/include/qt6/QtCore/qvarlengtharray.h:86
#107 0x00007f86e2c70120 in QQmlBoundSignal_callback (e=0x235d4030, a=0x7fff673361c0) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/qml/ftw/qqmlrefcount_p.h:73
#108 0x00007f86e2d09dd5 in QQmlNotifier::emitNotify (endpoint=<optimized out>, a=0x7fff673361c0) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/qml/qqmlnotifier.cpp:70
#109 0x00007f86e115af78 in doActivate<false> (sender=0x25e99ef0, signal_index=11, argv=0x7fff673361c0) at /usr/src/debug/qt6-qtbase-6.8.1-7.fc41.x86_64/src/corelib/kernel/qobject.cpp:4014
#110 0x00007f86e1151c07 in QMetaObject::activate (sender=sender@entry=0x25e99ef0, m=m@entry=0x7f86cd05c8c0 <QQuickAction::staticMetaObject>, local_signal_index=local_signal_index@entry=8, argv=argv@entry=0x7fff673361c0) at /usr/src/debug/qt6-qtbase-6.8.1-7.fc41.x86_64/src/corelib/kernel/qobject.cpp:4184
#111 0x00007f86cce22d94 in QQuickAction::triggered (this=this@entry=0x25e99ef0, _t1=<optimized out>, _t1@entry=0x0) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/redhat-linux-build/src/quicktemplates/QuickTemplates2_autogen/include/moc_qquickaction_p.cpp:401
#112 0x00007f86cce240c9 in QQuickActionPrivate::trigger (this=0x2753bb30, source=0x0, doToggle=true) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/quicktemplates/qquickaction.cpp:531
#113 0x00007f86cce241a2 in QQuickAction::trigger (this=<optimized out>, source=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/quicktemplates/qquickaction.cpp:512
#114 0x00007f86cce24555 in QQuickAction::qt_static_metacall (_o=<optimized out>, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/redhat-linux-build/src/quicktemplates/QuickTemplates2_autogen/include/moc_qquickaction_p.cpp:216
#115 0x00007f86cce24ee7 in QQuickAction::qt_metacall (this=0x25e99ef0, _c=<optimized out>, _id=13, _a=0x7fff673365f0) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/redhat-linux-build/src/quicktemplates/QuickTemplates2_autogen/include/moc_qquickaction_p.cpp:331
#116 0x00007f86e2d2269a in QQmlObjectOrGadget::metacall (this=this@entry=0x7fff67336890, type=type@entry=QMetaObject::InvokeMetaMethod, index=<optimized out>, index@entry=17, argv=argv@entry=0x7fff673365f0) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/qml/qqmlobjectorgadget.cpp:14
#117 0x00007f86e2bae033 in QV4::CallMethod (object=..., index=17, returnType=..., argCount=0, argTypes=0x0, engine=<optimized out>, callArgs=<optimized out>, callType=QMetaObject::InvokeMetaMethod) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/jsruntime/qv4qobjectwrapper.cpp:1697
#118 QV4::QObjectMethod::callPrecise (object=..., data=<optimized out>, engine=<optimized out>, engine@entry=0x2bb73e30, callArgs=<optimized out>, callArgs@entry=0x7f8637bbf580, callType=callType@entry=QMetaObject::InvokeMetaMethod) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/jsruntime/qv4qobjectwrapper.cpp:1994
#119 0x00007f86e2bb10e1 in operator() (__closure=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/jsruntime/qv4qobjectwrapper.cpp:2984
#120 operator()<QV4::QObjectMethod::callInternal(const QV4::Value*, const QV4::Value*, int) const::<lambda()> > (__closure=<synthetic pointer>, call=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/jsruntime/qv4qobjectwrapper.cpp:2961
#121 QV4::QObjectMethod::callInternal (this=<optimized out>, thisObject=0x7f8637bbf538, argv=0x7f8637bbf500, argc=0) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/jsruntime/qv4qobjectwrapper.cpp:2984
#122 0x00007f86e2c228f8 in QV4::FunctionObject::call (this=<optimized out>, thisObject=<optimized out>, argv=<optimized out>, argc=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/jsruntime/qv4functionobject_p.h:187
#123 QV4::Moth::VME::interpret (frame=0x7fff6732f750, frame@entry=0x7fff67336b80, engine=0x2bb73e30, code=0x7f8637bbf538 " \360\3555\206\177") at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/jsruntime/qv4vme_moth.cpp:798
#124 0x00007f86e2c27e9f in QV4::Moth::VME::exec (frame=frame@entry=0x7fff67336b80, engine=engine@entry=0x2bb73e30) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/jsruntime/qv4vme_moth.cpp:487
#125 0x00007f86e2b4d644 in QV4::doCall (self=<optimized out>, thisObject=<optimized out>, argv=<optimized out>, argc=<optimized out>, context=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/jsruntime/qv4function.cpp:52
#126 0x00007f86e2b4de48 in QV4::Function::call (this=this@entry=0x29f957e0, thisObject=<optimized out>, argv=argv@entry=0x7f8637bbf4f8, argc=<optimized out>, context=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/jsruntime/qv4function.cpp:77
#127 0x00007f86e2b4e18f in operator() (__closure=<synthetic pointer>, thisObject=<optimized out>, argv=0x7f8637bbf4f8, argc=<optimized out>) at /usr/src/debug/qt6-qtdeclarative-6.8.1-5.fc41.x86_64/src/qml/jsruntime/qv4function.cpp:28
Comment 1 Marco Martin 2025-01-09 14:04:41 UTC
can reproduce
Comment 2 Bug Janitor Service 2025-01-09 14:27:37 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/plasma-desktop/-/merge_requests/2703
Comment 3 Marco Martin 2025-01-09 16:44:25 UTC
Git commit 239ffd7014b0ba93fe4be3079e1d6352dcea25a5 by Marco Martin.
Committed on 09/01/2025 at 14:34.
Pushed by mart into branch 'master'.

containments/desktop: Execute updatePositionsList only if we know how many icons per stripe

updatePositionsList() is not always guaranteed to be called after
setPerStripe has been called.
setPerStripe is called by rowsInserted and setPerStripe by the QML ui
so if the model is ready before the ui we'll have a divide by zero

M  +1    -1    containments/desktop/plugins/folder/positioner.cpp

https://invent.kde.org/plasma/plasma-desktop/-/commit/239ffd7014b0ba93fe4be3079e1d6352dcea25a5
Comment 4 Marco Martin 2025-01-09 17:04:37 UTC
Git commit c387739d24a7b75fbf38563fe5cffc232decebc5 by Marco Martin.
Committed on 09/01/2025 at 16:47.
Pushed by mart into branch 'Plasma/6.3'.

containments/desktop: Execute updatePositionsList only if we know how many icons per stripe

updatePositionsList() is not always guaranteed to be called after
setPerStripe has been called.
setPerStripe is called by rowsInserted and setPerStripe by the QML ui
so if the model is ready before the ui we'll have a divide by zero


(cherry picked from commit 239ffd7014b0ba93fe4be3079e1d6352dcea25a5)

239ffd70 containments/desktop: Execute updatePositionsList only if we know how many icons per stripe

Co-authored-by: Marco Martin <notmart@gmail.com>

M  +1    -1    containments/desktop/plugins/folder/positioner.cpp

https://invent.kde.org/plasma/plasma-desktop/-/commit/c387739d24a7b75fbf38563fe5cffc232decebc5