Bug 517137 - Crash when opening config for KWin script with faulty .ui file
Summary: Crash when opening config for KWin script with faulty .ui file
Status: RESOLVED FIXED
Alias: None
Product: systemsettings
Classification: Applications
Component: kcm_kwinscripts (other bugs)
Version First Reported In: 6.6.80
Platform: Compiled Sources Linux
: NOR crash
Target Milestone: ---
Assignee: KWin default assignee
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2026-03-05 14:11 UTC by Nicolas Fella
Modified: 2026-03-19 22:45 UTC (History)
3 users (show)

See Also:
Latest Commit:
Version Fixed/Implemented In: 6.6.4
Sentry Crash Report: https://crash-reports.kde.org/organizations/kde/issues/382389/events/7cba7da3041a4c32ba7a7e4b1f7a9c15/


Attachments
New crash information added by DrKonqi (85.00 KB, text/plain)
2026-03-05 14:11 UTC, Nicolas Fella
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Nicolas Fella 2026-03-05 14:11:48 UTC
Application: systemsettings (6.6.80)
 (Compiled from sources)
ApplicationNotResponding [ANR]: false
Qt Version: 6.11.1
Frameworks Version: 6.24.0
Operating System: Linux 6.19.6-300.fc44.x86_64 x86_64
Windowing System: Wayland
Distribution: "Fedora Linux 44 (KDE Plasma Desktop Edition Prerelease)"
DrKonqi: 6.6.80 [CoredumpBackend]

-- Information about the crash:
- Edit /usr/share/kwin-wayland/scripts/videowall/contents/ui/config.ui to introduce a syntax error
- Open KWin script KCM
- Enable Video Wall
- Click Configure

The crash can be reproduced every time.

-- Backtrace (Reduced):
#5  QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData> >::get (this=0x8) at /home/nico/workspace/qt6/qtbase/src/corelib/tools/qscopedpointer.h:111
[...]
#8  QObject::objectName (this=this@entry=0x0) at /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qobject.cpp:1316
#9  0x00007ff6d806bf8c in KWin::GenericScriptedConfig::createUi (this=this@entry=0x97dbde0) at /home/nico/kde/src/kwin/src/kcms/common/genericscriptedconfig.cpp:114
#10 0x00007ff6d806cc59 in KWin::ScriptingConfig::ScriptingConfig (this=0x97dbde0, keyword=..., parent=0x7354ec0, args=...) at /home/nico/kde/src/kwin/src/kcms/common/genericscriptedconfig.cpp:166
#11 KWin::GenericScriptedConfigFactory::create (this=<optimized out>, iface=<optimized out>, parentWidget=0x7354ec0, parent=<optimized out>, args=...) at /home/nico/kde/src/kwin/src/kcms/common/genericscriptedconfig.cpp:42
#12 0x00007ff74faf3717 in KPluginFactory::create<KCModule> (this=0x7c9a820, parent=0x7354ec0, args=...) at /home/nico/kde/usr/include/KF6/KCoreAddons/kpluginfactory.h:683
#13 KPluginFactory::instantiatePlugin<KCModule> (data=..., parent=parent@entry=0x7354ec0, args=...) at /home/nico/kde/usr/include/KF6/KCoreAddons/kpluginfactory.h:421
#14 0x00007ff74faf266d in KCModuleLoader::loadModule (metaData=..., parent=parent@entry=0x7354ec0, args=..., eng=std::shared_ptr<QQmlEngine> (empty) = {...}) at /home/nico/kde/src/kcmutils/src/kcmoduleloader.cpp:90
#15 0x00007ff74faf9f1a in KCMultiDialog::addModule (this=this@entry=0x75b1460, metaData=..., args=...) at /home/nico/kde/src/kcmutils/src/kcmultidialog.cpp:394
#16 0x00007ff6de2366c7 in Module::configure (this=<optimized out>, data=...) at /home/nico/kde/src/kwin/src/kcms/scripts/module.cpp:86
#17 0x00007ff6de2383d7 in Module::qt_metacall (this=0x98342c0, _c=<optimized out>, _id=6, _a=0x7fff2dbf7d68) at /home/nico/kde/build/kwin/src/kcms/scripts/kcm_kwin_scripts_autogen/include/moc_module.cpp:169
#18 0x00007ff74e6d5f7d in QQmlObjectOrGadget::metacall (this=this@entry=0x7fff2dbf8150, type=type@entry=QMetaObject::InvokeMetaMethod, index=<optimized out>, index@entry=28, argv=<optimized out>) at /home/nico/workspace/qt6/qtdeclarative/src/qml/qml/qqmlobjectorgadget.cpp:15
#19 0x00007ff74e514b7c in QV4::CallMethod (object=..., index=<optimized out>, returnType=returnType@entry=..., argCount=<optimized out>, argTypes=<optimized out>, engine=<optimized out>, callArgs=<optimized out>, callType=<optimized out>) at /home/nico/workspace/qt6/qtbase/src/corelib/tools/qvarlengtharray.h:91
#20 0x00007ff74e516a20 in QV4::QObjectMethod::callPrecise (object=..., data=..., engine=<optimized out>, engine@entry=0x6cb6350, callArgs=<optimized out>, callArgs@entry=0x7ff6f5fbf658, callType=callType@entry=QMetaObject::InvokeMetaMethod) at /home/nico/workspace/qt6/qtdeclarative/src/qml/jsruntime/qv4qobjectwrapper.cpp:2094
#21 0x00007ff74e517351 in operator() (__closure=<optimized out>) at /home/nico/workspace/qt6/qtdeclarative/src/qml/jsruntime/qv4qobjectwrapper.cpp:3123
#23 QV4::QObjectMethod::callInternal (this=<optimized out>, thisObject=0x7ff6f5fbf608, argv=0x7ff6f5fbf620, argc=1) at /home/nico/workspace/qt6/qtdeclarative/src/qml/jsruntime/qv4qobjectwrapper.cpp:3123


Reported using DrKonqi
Comment 1 Nicolas Fella 2026-03-05 14:11:49 UTC
Created attachment 190386 [details]
New crash information added by DrKonqi

DrKonqi auto-attaching complete backtrace.
Comment 2 Bug Janitor Service 2026-03-05 14:18:46 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/kwin/-/merge_requests/8933
Comment 3 Nicolas Fella 2026-03-14 16:37:45 UTC
Git commit 56bf81e1f13ca06aec69383c4b14d9435ee351f8 by Nicolas Fella.
Committed on 14/03/2026 at 16:18.
Pushed by nicolasfella into branch 'master'.

kcms/scripts: Check result from loading UI file

And don't crash on a faulty file

M  +7    -0    src/kcms/common/genericscriptedconfig.cpp

https://invent.kde.org/plasma/kwin/-/commit/56bf81e1f13ca06aec69383c4b14d9435ee351f8
Comment 4 Nicolas Fella 2026-03-15 13:54:55 UTC
Git commit 45f2379a04008dbcc0c348ae3e102d4ce92b10dd by Nicolas Fella.
Committed on 15/03/2026 at 13:28.
Pushed by nicolasfella into branch 'Plasma/6.6'.

kcms/scripts: Check result from loading UI file

And don't crash on a faulty file


(cherry picked from commit 56bf81e1f13ca06aec69383c4b14d9435ee351f8)

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

M  +7    -0    src/kcms/common/genericscriptedconfig.cpp

https://invent.kde.org/plasma/kwin/-/commit/45f2379a04008dbcc0c348ae3e102d4ce92b10dd