Bug 514440

Summary: Krunner crashes in WebshortcutRunner::loadSyntaxes when switching Plasma theme
Product: [Plasma] krunner Reporter: valdikss
Component: webshortcutsAssignee: Plasma Bugs List <plasma-bugs-null>
Status: CONFIRMED ---    
Severity: crash CC: alexander.lohnau, natalie_clarius, nate, notmart
Priority: NOR    
Version First Reported In: 6.5.4   
Target Milestone: ---   
Platform: Other   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:

Description valdikss 2026-01-11 05:56:30 UTC
SUMMARY

I use Koi software which switches light/dark Plasma theme based on time.
When Koi switches theme from light to dark, the krunner usually crashes.


STEPS TO REPRODUCE
1. Switch the theme from Breeze Dark to Breeze with Koi (it switches plasma style / icons / colors)


OBSERVED RESULT

Krunner crashes, starting from WebshortcutRunner::loadSyntaxes

KAutoWebSearch::populateProvidersList →
KIO::KURISearchFilterEngine::KURISearchFilterEngine (src/urifilters/ikws/kuriikwsfiltereng.cpp:36) →
SearchProvider::SearchProvider (src/urifilters/ikws/searchprovider.cpp:21)
→ KDesktopFile::KDesktopFile (src/core/kdesktopfile.cpp:47)
→ KConfig::reparseConfiguration (src/core/kconfig.cpp:688), null pointer dereference.

EXPECTED RESULT

Krunner does not crash

SOFTWARE/OS VERSIONS

kf6-krunner-6.21.0-1.fc43.x86_64

Operating System: Fedora Linux 43
KDE Plasma Version: 6.5.4
KDE Frameworks Version: 6.21.0
Qt Version: 6.10.1
Kernel Version: 6.17.12-300.fc43.x86_64 (64-bit)
Graphics Platform: Wayland
Processors: 16 × 13th Gen Intel® Core™ i5-1340P
Memory: 32 GiB of RAM (30,9 GiB usable)
Graphics Processor: Intel® Iris® Xe Graphics
Manufacturer: Intel(R) Client Systems
Product Name: NUC13ANKi5
System Version: N11211-203


…
#0  0x00007f995fdcc255 in KCrash::defaultCrashHandler (sig=11) at /usr/src/debug/kf6-kcrash-6.21.0-1.fc43.x86_64/src/kcrash.cpp:538
#1  0x00007f995ca27290 in <signal handler called> () at /lib64/libc.so.6
#2  QList<QString>::size (this=0x0) at /usr/include/qt6/QtCore/qlist.h:450
#3  QList<QString>::clear (this=0x0) at /usr/include/qt6/QtCore/qlist.h:490
#4  KConfig::reparseConfiguration (this=<optimized out>) at /usr/src/debug/kf6-kconfig-6.21.0-1.fc43.x86_64/src/core/kconfig.cpp:688
#5  0x00007f995fd3bfee in KDesktopFile::KDesktopFile (this=0x7f98f6ffbab0, resourceType=<optimized out>, fileName=..., this=<optimized out>, resourceType=<optimized out>, fileName=<optimized out>)
    at /usr/src/debug/kf6-kconfig-6.21.0-1.fc43.x86_64/src/core/kdesktopfile.cpp:47
#6  0x00007f992c2c2d90 in SearchProvider::SearchProvider (this=0x7f98e80f1ed0, servicePath=...) at /usr/src/debug/kf6-kio-6.21.0-1.fc43.x86_64/src/urifilters/ikws/searchprovider.cpp:21
#7  KIO::SearchProviderRegistry::reload (this=0x7f992c2cc0f0 <KIO::KURISearchFilterEngine::self()::self+16>) at /usr/src/debug/kf6-kio-6.21.0-1.fc43.x86_64/src/urifilters/ikws/searchproviderregistry.cpp:48
#8  0x00007f992c2c47d9 in KIO::KURISearchFilterEngine::KURISearchFilterEngine (this=0x7f992c2cc0e0 <KIO::KURISearchFilterEngine::self()::self>, this=<optimized out>)
    at /usr/src/debug/kf6-kio-6.21.0-1.fc43.x86_64/src/urifilters/ikws/kuriikwsfiltereng.cpp:36
#9  0x00007f992c2c49e4 in KIO::KURISearchFilterEngine::self () at /usr/src/debug/kf6-kio-6.21.0-1.fc43.x86_64/src/urifilters/ikws/kuriikwsfiltereng.cpp:157
#10 KIO::KURISearchFilterEngine::self () at /usr/src/debug/kf6-kio-6.21.0-1.fc43.x86_64/src/urifilters/ikws/kuriikwsfiltereng.cpp:157
#11 0x00007f992c2e42d7 in KAutoWebSearch::populateProvidersList (this=<optimized out>, searchProviders=..., data=..., allproviders=false)
    at /usr/src/debug/kf6-kio-6.21.0-1.fc43.x86_64/src/urifilters/ikws/kuriikwsfilter.cpp:30
#12 0x00007f992c2e5982 in KAutoWebSearch::filterUri (this=0x7f98e80fc3f0, data=...) at /usr/src/debug/kf6-kio-6.21.0-1.fc43.x86_64/src/urifilters/ikws/kuriikwsfilter.cpp:77
#13 0x00007f995afb0405 in KUriFilter::filterUri (this=this@entry=0x7f995afff8a8 <QGlobalStatic<QtGlobalStatic::Holder<(anonymous namespace)::Q_QGS_m_self> >::instance()::holder>, data=..., filters=...)
    at /usr/src/debug/kf6-kio-6.21.0-1.fc43.x86_64/src/gui/kurifilter.cpp:433
#14 0x00007f995afb07eb in KUriFilter::filterSearchUri (this=0x7f995afff8a8 <QGlobalStatic<QtGlobalStatic::Holder<(anonymous namespace)::Q_QGS_m_self> >::instance()::holder>, data=..., types=..., 
    types@entry=...) at /usr/src/debug/kf6-kio-6.21.0-1.fc43.x86_64/src/gui/kurifilter.cpp:488
#15 0x00007f9917e9b3a7 in WebshortcutRunner::loadSyntaxes (this=0x55d2bd1fcaa0) at /usr/src/debug/plasma-workspace-6.5.4-1.fc43.x86_64/runners/webshortcuts/webshortcutrunner.cpp:57
#16 0x00007f995fdef252 in operator() (__closure=0x55d2bd19c740) at /usr/src/debug/kf6-krunner-6.21.0-1.fc43.x86_64/src/abstractrunner.cpp:34
#17 operator() (__closure=<optimized out>) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:116