Bug 385202

Summary: KRunner crashes while typing in the name of an application
Product: [Plasma] krunner Reporter: Diego <diego.ml>
Component: generalAssignee: Kai Uwe Broulik <kde>
Status: RESOLVED FIXED    
Severity: crash CC: andpago, asturm, olivier, patrick.eigensatz, syslock
Priority: NOR Keywords: drkonqi
Version: 5.10.5   
Target Milestone: ---   
Platform: Fedora RPMs   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:
Attachments: New crash information added by DrKonqi

Description Diego 2017-09-29 13:47:52 UTC
Application: krunner (5.10.5)

Qt Version: 5.7.1
Frameworks Version: 5.36.0
Operating System: Linux 4.12.13-200.fc25.x86_64 x86_64
Distribution: "Fedora release 25 (Twenty Five)"

-- Information about the crash:
- What I was doing when the application crashed:

I was typing "amarok" in KRunner to start the application, but after "am" KRunner freezed for a second or two and then crashed miserably.

This happens often to me. It should be the 20th time it happens or so.

The crash can be reproduced sometimes.

-- Backtrace:
Application: krunner (krunner), signal: Aborted
Using host libthread_db library "/lib64/libthread_db.so.1".
[Current thread is 1 (Thread 0x7fe136a28f40 (LWP 2022))]

Thread 22 (Thread 0x7fe0abfff700 (LWP 32620)):
#0  0x00007fe132514f3d in poll () at /lib64/libc.so.6
#1  0x00007fe12a4a5166 in g_main_context_iterate.isra () at /lib64/libglib-2.0.so.0
#2  0x00007fe12a4a527c in g_main_context_iteration () at /lib64/libglib-2.0.so.0
#3  0x00007fe13331b6eb in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5
#4  0x00007fe1332cc68a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5
#5  0x00007fe1331295e3 in QThread::exec() () at /lib64/libQt5Core.so.5
#6  0x00007fe13312d9ca in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5
#7  0x00007fe12ef2073a in start_thread () at /lib64/libpthread.so.0
#8  0x00007fe132520e7f in clone () at /lib64/libc.so.6

Thread 21 (Thread 0x7fe0d2ffd700 (LWP 5318)):
#0  0x00007fe12ef26480 in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007fe13312e04a in QWaitCondition::wait(QMutex*, unsigned long) () at /lib64/libQt5Core.so.5
#2  0x00007fe109741880 in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) () at /lib64/libKF5ThreadWeaver.so.5
#3  0x00007fe109745a38 in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5
#4  0x00007fe1097409fd in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5
#5  0x00007fe1097438c9 in ThreadWeaver::Thread::run() () at /lib64/libKF5ThreadWeaver.so.5
#6  0x00007fe13312d9ca in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5
#7  0x00007fe12ef2073a in start_thread () at /lib64/libpthread.so.0
#8  0x00007fe132520e7f in clone () at /lib64/libc.so.6

Thread 20 (Thread 0x7fe0d37fe700 (LWP 5317)):
#0  0x00007fe12ef26480 in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007fe13312e04a in QWaitCondition::wait(QMutex*, unsigned long) () at /lib64/libQt5Core.so.5
#2  0x00007fe109741880 in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) () at /lib64/libKF5ThreadWeaver.so.5
#3  0x00007fe109745a38 in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5
#4  0x00007fe1097409fd in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5
#5  0x00007fe1097438c9 in ThreadWeaver::Thread::run() () at /lib64/libKF5ThreadWeaver.so.5
#6  0x00007fe13312d9ca in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5
#7  0x00007fe12ef2073a in start_thread () at /lib64/libpthread.so.0
#8  0x00007fe132520e7f in clone () at /lib64/libc.so.6

Thread 19 (Thread 0x7fe0d3fff700 (LWP 5316)):
#0  0x00007fe12ef26480 in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007fe13312e04a in QWaitCondition::wait(QMutex*, unsigned long) () at /lib64/libQt5Core.so.5
#2  0x00007fe109741880 in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) () at /lib64/libKF5ThreadWeaver.so.5
#3  0x00007fe109745a38 in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5
#4  0x00007fe1097409fd in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5
#5  0x00007fe1097438c9 in ThreadWeaver::Thread::run() () at /lib64/libKF5ThreadWeaver.so.5
#6  0x00007fe13312d9ca in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5
#7  0x00007fe12ef2073a in start_thread () at /lib64/libpthread.so.0
#8  0x00007fe132520e7f in clone () at /lib64/libc.so.6

Thread 18 (Thread 0x7fe0d8ff9700 (LWP 5315)):
#0  0x00007fe1331a3faa in ucstrncmp(QChar const*, QChar const*, int) () at /lib64/libQt5Core.so.5
#1  0x00007fe1331a40a0 in ucstrcmp(QChar const*, int, QChar const*, int) () at /lib64/libQt5Core.so.5
#2  0x00007fe1331a9f2d in operator<(QString const&, QString const&) () at /lib64/libQt5Core.so.5
#3  0x00007fe113da0b50 in QMapData<QString, Solid::Backends::UDisks2::DeviceBackend*>::findNode(QString const&) const () at /lib64/libKF5Solid.so.5
#4  0x00007fe113da0871 in Solid::Backends::UDisks2::DeviceBackend::backendForUDI(QString const&, bool) () at /lib64/libKF5Solid.so.5
#5  0x00007fe113d8bf57 in Solid::Backends::UDisks2::Manager::updateBackend(QString const&) () at /lib64/libKF5Solid.so.5
#6  0x00007fe113d8c2b2 in Solid::Backends::UDisks2::Manager::slotMediaChanged(QDBusMessage const&) () at /lib64/libKF5Solid.so.5
#7  0x00007fe113dca585 in Solid::Backends::UDisks2::Manager::qt_metacall(QMetaObject::Call, int, void**) () at /lib64/libKF5Solid.so.5
#8  0x00007fe136b64b70 in QDBusConnectionPrivate::deliverCall(QObject*, int, QDBusMessage const&, QVector<int> const&, int) () at /lib64/libQt5DBus.so.5
#9  0x00007fe1332f57e9 in QObject::event(QEvent*) () at /lib64/libQt5Core.so.5
#10 0x00007fe133da1ecc in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /lib64/libQt5Widgets.so.5
#11 0x00007fe133da9671 in QApplication::notify(QObject*, QEvent*) () at /lib64/libQt5Widgets.so.5
#12 0x00007fe1332cd6fa in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /lib64/libQt5Core.so.5
#13 0x00007fe1332cfde0 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () at /lib64/libQt5Core.so.5
#14 0x00007fe13331b653 in postEventSourceDispatch(_GSource*, int (*)(void*), void*) () at /lib64/libQt5Core.so.5
#15 0x00007fe12a4a4e52 in g_main_context_dispatch () at /lib64/libglib-2.0.so.0
#16 0x00007fe12a4a51d0 in g_main_context_iterate.isra () at /lib64/libglib-2.0.so.0
#17 0x00007fe12a4a527c in g_main_context_iteration () at /lib64/libglib-2.0.so.0
#18 0x00007fe13331b6cf in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5
#19 0x00007fe1332cc68a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5
#20 0x00007fe0f4f635a6 in SearchRunner::match(Plasma::RunnerContext&) () at /usr/lib64/qt5/plugins/krunner_baloosearchrunner.so
#21 0x00007fe109965818 in Plasma::AbstractRunner::performMatch(Plasma::RunnerContext&) () at /lib64/libKF5Runner.so.5
#22 0x00007fe1097451b8 in ThreadWeaver::Executor::run(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /lib64/libKF5ThreadWeaver.so.5
#23 0x00007fe109743d00 in ThreadWeaver::Job::execute(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /lib64/libKF5ThreadWeaver.so.5
#24 0x00007fe109743810 in ThreadWeaver::Thread::run() () at /lib64/libKF5ThreadWeaver.so.5
#25 0x00007fe13312d9ca in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5
#26 0x00007fe12ef2073a in start_thread () at /lib64/libpthread.so.0
#27 0x00007fe132520e7f in clone () at /lib64/libc.so.6

Thread 17 (Thread 0x7fe0d97fa700 (LWP 5314)):
#0  0x00007fe12ef26480 in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007fe13312e04a in QWaitCondition::wait(QMutex*, unsigned long) () at /lib64/libQt5Core.so.5
#2  0x00007fe109741880 in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) () at /lib64/libKF5ThreadWeaver.so.5
#3  0x00007fe109745a38 in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5
#4  0x00007fe1097409fd in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5
#5  0x00007fe1097438c9 in ThreadWeaver::Thread::run() () at /lib64/libKF5ThreadWeaver.so.5
#6  0x00007fe13312d9ca in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5
#7  0x00007fe12ef2073a in start_thread () at /lib64/libpthread.so.0
#8  0x00007fe132520e7f in clone () at /lib64/libc.so.6

Thread 16 (Thread 0x7fe0d9ffb700 (LWP 5313)):
#0  0x00007fe12ef26480 in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007fe13312e04a in QWaitCondition::wait(QMutex*, unsigned long) () at /lib64/libQt5Core.so.5
#2  0x00007fe1331280d3 in QSemaphore::acquire(int) () at /lib64/libQt5Core.so.5
#3  0x00007fe1332f496e in QMetaObject::activate(QObject*, int, int, void**) () at /lib64/libQt5Core.so.5
#4  0x00007fe0f791c4bf in PlacesRunner::doMatch(Plasma::RunnerContext*) () at /usr/lib64/qt5/plugins/krunner_placesrunner.so
#5  0x00007fe109965818 in Plasma::AbstractRunner::performMatch(Plasma::RunnerContext&) () at /lib64/libKF5Runner.so.5
#6  0x00007fe1097451b8 in ThreadWeaver::Executor::run(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /lib64/libKF5ThreadWeaver.so.5
#7  0x00007fe109743d00 in ThreadWeaver::Job::execute(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /lib64/libKF5ThreadWeaver.so.5
#8  0x00007fe109743810 in ThreadWeaver::Thread::run() () at /lib64/libKF5ThreadWeaver.so.5
#9  0x00007fe13312d9ca in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5
#10 0x00007fe12ef2073a in start_thread () at /lib64/libpthread.so.0
#11 0x00007fe132520e7f in clone () at /lib64/libc.so.6

Thread 15 (Thread 0x7fe0da7fc700 (LWP 5312)):
#0  0x00007fe1331a409b in ucstrcmp(QChar const*, int, QChar const*, int) () at /lib64/libQt5Core.so.5
#1  0x00007fe1331a9f2d in operator<(QString const&, QString const&) () at /lib64/libQt5Core.so.5
#2  0x00007fe113da0b50 in QMapData<QString, Solid::Backends::UDisks2::DeviceBackend*>::findNode(QString const&) const () at /lib64/libKF5Solid.so.5
#3  0x00007fe113da0871 in Solid::Backends::UDisks2::DeviceBackend::backendForUDI(QString const&, bool) () at /lib64/libKF5Solid.so.5
#4  0x00007fe113d96cd0 in Solid::Backends::UDisks2::Device::Device(QString const&) () at /lib64/libKF5Solid.so.5
#5  0x00007fe113d8d20b in Solid::Backends::UDisks2::Manager::devicesFromQuery(QString const&, Solid::DeviceInterface::Type) () at /lib64/libKF5Solid.so.5
#6  0x00007fe113d4da4c in Solid::Device::listFromQuery(Solid::Predicate const&, QString const&) () at /lib64/libKF5Solid.so.5
#7  0x00007fe113d4e0e6 in Solid::Device::listFromQuery(QString const&, QString const&) () at /lib64/libKF5Solid.so.5
#8  0x00007fe0f4d4be7b in Baloo::StorageDevices::initCacheEntries() () at /lib64/libKF5Baloo.so.5
#9  0x00007fe0f4d4c051 in Baloo::StorageDevices::StorageDevices(QObject*) () at /lib64/libKF5Baloo.so.5
#10 0x00007fe0f4d4a7fd in Baloo::FileIndexerConfig::FileIndexerConfig(QObject*) () at /lib64/libKF5Baloo.so.5
#11 0x00007fe0f4d47a60 in Baloo::IndexerConfig::IndexerConfig() () at /lib64/libKF5Baloo.so.5
#12 0x00007fe0f4f62194 in SearchRunner::match(Plasma::RunnerContext&, QString const&, QString const&) () at /usr/lib64/qt5/plugins/krunner_baloosearchrunner.so
#13 0x00007fe0f4f631d9 in SearchRunner::match(Plasma::RunnerContext&) () at /usr/lib64/qt5/plugins/krunner_baloosearchrunner.so
#14 0x00007fe109965818 in Plasma::AbstractRunner::performMatch(Plasma::RunnerContext&) () at /lib64/libKF5Runner.so.5
#15 0x00007fe1097451b8 in ThreadWeaver::Executor::run(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /lib64/libKF5ThreadWeaver.so.5
#16 0x00007fe109743d00 in ThreadWeaver::Job::execute(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /lib64/libKF5ThreadWeaver.so.5
#17 0x00007fe109743810 in ThreadWeaver::Thread::run() () at /lib64/libKF5ThreadWeaver.so.5
#18 0x00007fe13312d9ca in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5
#19 0x00007fe12ef2073a in start_thread () at /lib64/libpthread.so.0
#20 0x00007fe132520e7f in clone () at /lib64/libc.so.6

Thread 14 (Thread 0x7fe0d27fc700 (LWP 5311)):
[KCrash Handler]
#6  0x00007fe13244e8df in raise () at /lib64/libc.so.6
#7  0x00007fe1324504da in abort () at /lib64/libc.so.6
#8  0x00007fe1324921f0 in __libc_message () at /lib64/libc.so.6
#9  0x00007fe13249b85a in _int_free () at /lib64/libc.so.6
#10 0x00007fe13249f28c in free () at /lib64/libc.so.6
#11 0x00007fe1331921eb in QMapDataBase::freeNodeAndRebalance(QMapNodeBase*) () at /lib64/libQt5Core.so.5
#12 0x00007fe113da0a5e in Solid::Backends::UDisks2::DeviceBackend::destroyBackend(QString const&) () at /lib64/libKF5Solid.so.5
#13 0x00007fe113d8df04 in Solid::Backends::UDisks2::Manager::slotInterfacesRemoved(QDBusObjectPath const&, QStringList const&) () at /lib64/libKF5Solid.so.5
#14 0x00007fe1332f4721 in QMetaObject::activate(QObject*, int, int, void**) () at /lib64/libQt5Core.so.5
#15 0x00007fe113dc7381 in OrgFreedesktopDBusObjectManagerInterface::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) () at /lib64/libKF5Solid.so.5
#16 0x00007fe113dca6c5 in OrgFreedesktopDBusObjectManagerInterface::qt_metacall(QMetaObject::Call, int, void**) () at /lib64/libKF5Solid.so.5
#17 0x00007fe136b64b70 in QDBusConnectionPrivate::deliverCall(QObject*, int, QDBusMessage const&, QVector<int> const&, int) () at /lib64/libQt5DBus.so.5
#18 0x00007fe1332f57e9 in QObject::event(QEvent*) () at /lib64/libQt5Core.so.5
#19 0x00007fe133da1ecc in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /lib64/libQt5Widgets.so.5
#20 0x00007fe133da9671 in QApplication::notify(QObject*, QEvent*) () at /lib64/libQt5Widgets.so.5
#21 0x00007fe1332cd6fa in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /lib64/libQt5Core.so.5
#22 0x00007fe1332cfde0 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () at /lib64/libQt5Core.so.5
#23 0x00007fe13331b653 in postEventSourceDispatch(_GSource*, int (*)(void*), void*) () at /lib64/libQt5Core.so.5
#24 0x00007fe12a4a4e52 in g_main_context_dispatch () at /lib64/libglib-2.0.so.0
#25 0x00007fe12a4a51d0 in g_main_context_iterate.isra () at /lib64/libglib-2.0.so.0
#26 0x00007fe12a4a527c in g_main_context_iteration () at /lib64/libglib-2.0.so.0
#27 0x00007fe13331b6cf in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5
#28 0x00007fe1332cc68a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5
#29 0x00007fe0f4f635a6 in SearchRunner::match(Plasma::RunnerContext&) () at /usr/lib64/qt5/plugins/krunner_baloosearchrunner.so
#30 0x00007fe109965818 in Plasma::AbstractRunner::performMatch(Plasma::RunnerContext&) () at /lib64/libKF5Runner.so.5
#31 0x00007fe1097451b8 in ThreadWeaver::Executor::run(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /lib64/libKF5ThreadWeaver.so.5
#32 0x00007fe109743d00 in ThreadWeaver::Job::execute(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /lib64/libKF5ThreadWeaver.so.5
#33 0x00007fe109743810 in ThreadWeaver::Thread::run() () at /lib64/libKF5ThreadWeaver.so.5
#34 0x00007fe13312d9ca in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5
#35 0x00007fe12ef2073a in start_thread () at /lib64/libpthread.so.0
#36 0x00007fe132520e7f in clone () at /lib64/libc.so.6

Thread 13 (Thread 0x7fe0daffd700 (LWP 5310)):
#0  0x00007fe1331a3f98 in ucstrncmp(QChar const*, QChar const*, int) () at /lib64/libQt5Core.so.5
#1  0x00007fe1331a40a0 in ucstrcmp(QChar const*, int, QChar const*, int) () at /lib64/libQt5Core.so.5
#2  0x00007fe1331a9f2d in operator<(QString const&, QString const&) () at /lib64/libQt5Core.so.5
#3  0x00007fe113da0b50 in QMapData<QString, Solid::Backends::UDisks2::DeviceBackend*>::findNode(QString const&) const () at /lib64/libKF5Solid.so.5
#4  0x00007fe113da0871 in Solid::Backends::UDisks2::DeviceBackend::backendForUDI(QString const&, bool) () at /lib64/libKF5Solid.so.5
#5  0x00007fe113d96cd0 in Solid::Backends::UDisks2::Device::Device(QString const&) () at /lib64/libKF5Solid.so.5
#6  0x00007fe113d8d20b in Solid::Backends::UDisks2::Manager::devicesFromQuery(QString const&, Solid::DeviceInterface::Type) () at /lib64/libKF5Solid.so.5
#7  0x00007fe113d4da4c in Solid::Device::listFromQuery(Solid::Predicate const&, QString const&) () at /lib64/libKF5Solid.so.5
#8  0x00007fe113d4e0e6 in Solid::Device::listFromQuery(QString const&, QString const&) () at /lib64/libKF5Solid.so.5
#9  0x00007fe0f4d4be7b in Baloo::StorageDevices::initCacheEntries() () at /lib64/libKF5Baloo.so.5
#10 0x00007fe0f4d4c051 in Baloo::StorageDevices::StorageDevices(QObject*) () at /lib64/libKF5Baloo.so.5
#11 0x00007fe0f4d4a7fd in Baloo::FileIndexerConfig::FileIndexerConfig(QObject*) () at /lib64/libKF5Baloo.so.5
#12 0x00007fe0f4d47a60 in Baloo::IndexerConfig::IndexerConfig() () at /lib64/libKF5Baloo.so.5
#13 0x00007fe0f4f62194 in SearchRunner::match(Plasma::RunnerContext&, QString const&, QString const&) () at /usr/lib64/qt5/plugins/krunner_baloosearchrunner.so
#14 0x00007fe0f4f631d9 in SearchRunner::match(Plasma::RunnerContext&) () at /usr/lib64/qt5/plugins/krunner_baloosearchrunner.so
#15 0x00007fe109965818 in Plasma::AbstractRunner::performMatch(Plasma::RunnerContext&) () at /lib64/libKF5Runner.so.5
#16 0x00007fe1097451b8 in ThreadWeaver::Executor::run(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /lib64/libKF5ThreadWeaver.so.5
#17 0x00007fe109743d00 in ThreadWeaver::Job::execute(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /lib64/libKF5ThreadWeaver.so.5
#18 0x00007fe109743810 in ThreadWeaver::Thread::run() () at /lib64/libKF5ThreadWeaver.so.5
#19 0x00007fe13312d9ca in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5
#20 0x00007fe12ef2073a in start_thread () at /lib64/libpthread.so.0
#21 0x00007fe132520e7f in clone () at /lib64/libc.so.6

Thread 12 (Thread 0x7fe0db7fe700 (LWP 5309)):
#0  0x00007fe12ef26480 in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007fe13312e04a in QWaitCondition::wait(QMutex*, unsigned long) () at /lib64/libQt5Core.so.5
#2  0x00007fe109741880 in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) () at /lib64/libKF5ThreadWeaver.so.5
#3  0x00007fe109745a38 in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5
#4  0x00007fe1097409fd in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5
#5  0x00007fe1097438c9 in ThreadWeaver::Thread::run() () at /lib64/libKF5ThreadWeaver.so.5
#6  0x00007fe13312d9ca in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5
#7  0x00007fe12ef2073a in start_thread () at /lib64/libpthread.so.0
#8  0x00007fe132520e7f in clone () at /lib64/libc.so.6

Thread 11 (Thread 0x7fe0dbfff700 (LWP 5308)):
#0  0x00007fe1331a40a9 in ucstrcmp(QChar const*, int, QChar const*, int) () at /lib64/libQt5Core.so.5
#1  0x00007fe1331a9f2d in operator<(QString const&, QString const&) () at /lib64/libQt5Core.so.5
#2  0x00007fe113da0b50 in QMapData<QString, Solid::Backends::UDisks2::DeviceBackend*>::findNode(QString const&) const () at /lib64/libKF5Solid.so.5
#3  0x00007fe113da0a6a in Solid::Backends::UDisks2::DeviceBackend::destroyBackend(QString const&) () at /lib64/libKF5Solid.so.5
#4  0x00007fe113d8df04 in Solid::Backends::UDisks2::Manager::slotInterfacesRemoved(QDBusObjectPath const&, QStringList const&) () at /lib64/libKF5Solid.so.5
#5  0x00007fe1332f4721 in QMetaObject::activate(QObject*, int, int, void**) () at /lib64/libQt5Core.so.5
#6  0x00007fe113dc7381 in OrgFreedesktopDBusObjectManagerInterface::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) () at /lib64/libKF5Solid.so.5
#7  0x00007fe113dca6c5 in OrgFreedesktopDBusObjectManagerInterface::qt_metacall(QMetaObject::Call, int, void**) () at /lib64/libKF5Solid.so.5
#8  0x00007fe136b64b70 in QDBusConnectionPrivate::deliverCall(QObject*, int, QDBusMessage const&, QVector<int> const&, int) () at /lib64/libQt5DBus.so.5
#9  0x00007fe1332f57e9 in QObject::event(QEvent*) () at /lib64/libQt5Core.so.5
#10 0x00007fe133da1ecc in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /lib64/libQt5Widgets.so.5
#11 0x00007fe133da9671 in QApplication::notify(QObject*, QEvent*) () at /lib64/libQt5Widgets.so.5
#12 0x00007fe1332cd6fa in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /lib64/libQt5Core.so.5
#13 0x00007fe1332cfde0 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () at /lib64/libQt5Core.so.5
#14 0x00007fe13331b653 in postEventSourceDispatch(_GSource*, int (*)(void*), void*) () at /lib64/libQt5Core.so.5
#15 0x00007fe12a4a4e52 in g_main_context_dispatch () at /lib64/libglib-2.0.so.0
#16 0x00007fe12a4a51d0 in g_main_context_iterate.isra () at /lib64/libglib-2.0.so.0
#17 0x00007fe12a4a527c in g_main_context_iteration () at /lib64/libglib-2.0.so.0
#18 0x00007fe13331b6cf in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5
#19 0x00007fe1332cc68a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5
#20 0x00007fe0f4f635a6 in SearchRunner::match(Plasma::RunnerContext&) () at /usr/lib64/qt5/plugins/krunner_baloosearchrunner.so
#21 0x00007fe109965818 in Plasma::AbstractRunner::performMatch(Plasma::RunnerContext&) () at /lib64/libKF5Runner.so.5
#22 0x00007fe1097451b8 in ThreadWeaver::Executor::run(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /lib64/libKF5ThreadWeaver.so.5
#23 0x00007fe109743d00 in ThreadWeaver::Job::execute(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /lib64/libKF5ThreadWeaver.so.5
#24 0x00007fe109743810 in ThreadWeaver::Thread::run() () at /lib64/libKF5ThreadWeaver.so.5
#25 0x00007fe13312d9ca in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5
#26 0x00007fe12ef2073a in start_thread () at /lib64/libpthread.so.0
#27 0x00007fe132520e7f in clone () at /lib64/libc.so.6

Thread 10 (Thread 0x7fe0f09ad700 (LWP 5307)):
#0  0x00007fe12ef26480 in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007fe13312e04a in QWaitCondition::wait(QMutex*, unsigned long) () at /lib64/libQt5Core.so.5
#2  0x00007fe109741880 in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) () at /lib64/libKF5ThreadWeaver.so.5
#3  0x00007fe109745a38 in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5
#4  0x00007fe1097409fd in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5
#5  0x00007fe109745a92 in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5
#6  0x00007fe1097409fd in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5
#7  0x00007fe109745a92 in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5
#8  0x00007fe1097409fd in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5
#9  0x00007fe109745a92 in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5
#10 0x00007fe1097409fd in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5
#11 0x00007fe1097438c9 in ThreadWeaver::Thread::run() () at /lib64/libKF5ThreadWeaver.so.5
#12 0x00007fe13312d9ca in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5
#13 0x00007fe12ef2073a in start_thread () at /lib64/libpthread.so.0
#14 0x00007fe132520e7f in clone () at /lib64/libc.so.6

Thread 9 (Thread 0x7fe0f11ae700 (LWP 5306)):
#0  0x00007fe12ef26480 in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007fe13312e04a in QWaitCondition::wait(QMutex*, unsigned long) () at /lib64/libQt5Core.so.5
#2  0x00007fe109741880 in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) () at /lib64/libKF5ThreadWeaver.so.5
#3  0x00007fe109745a38 in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5
#4  0x00007fe1097409fd in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5
#5  0x00007fe1097438c9 in ThreadWeaver::Thread::run() () at /lib64/libKF5ThreadWeaver.so.5
#6  0x00007fe13312d9ca in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5
#7  0x00007fe12ef2073a in start_thread () at /lib64/libpthread.so.0
#8  0x00007fe132520e7f in clone () at /lib64/libc.so.6

Thread 8 (Thread 0x7fe0f19af700 (LWP 5305)):
#0  0x00007fe12ef26480 in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007fe13312e04a in QWaitCondition::wait(QMutex*, unsigned long) () at /lib64/libQt5Core.so.5
#2  0x00007fe109741880 in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) () at /lib64/libKF5ThreadWeaver.so.5
#3  0x00007fe109745a38 in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5
#4  0x00007fe1097409fd in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5
#5  0x00007fe1097438c9 in ThreadWeaver::Thread::run() () at /lib64/libKF5ThreadWeaver.so.5
#6  0x00007fe13312d9ca in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5
#7  0x00007fe12ef2073a in start_thread () at /lib64/libpthread.so.0
#8  0x00007fe132520e7f in clone () at /lib64/libc.so.6

Thread 7 (Thread 0x7fe0f21b0700 (LWP 5304)):
#0  0x00007fe12ef26480 in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007fe13312e04a in QWaitCondition::wait(QMutex*, unsigned long) () at /lib64/libQt5Core.so.5
#2  0x00007fe109741880 in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) () at /lib64/libKF5ThreadWeaver.so.5
#3  0x00007fe109745a38 in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5
#4  0x00007fe1097409fd in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5
#5  0x00007fe1097438c9 in ThreadWeaver::Thread::run() () at /lib64/libKF5ThreadWeaver.so.5
#6  0x00007fe13312d9ca in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5
#7  0x00007fe12ef2073a in start_thread () at /lib64/libpthread.so.0
#8  0x00007fe132520e7f in clone () at /lib64/libc.so.6

Thread 6 (Thread 0x7fe0f29b1700 (LWP 5303)):
#0  0x00007fe12ef26480 in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007fe13312e04a in QWaitCondition::wait(QMutex*, unsigned long) () at /lib64/libQt5Core.so.5
#2  0x00007fe109741880 in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) () at /lib64/libKF5ThreadWeaver.so.5
#3  0x00007fe109745a38 in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5
#4  0x00007fe1097409fd in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5
#5  0x00007fe1097438c9 in ThreadWeaver::Thread::run() () at /lib64/libKF5ThreadWeaver.so.5
#6  0x00007fe13312d9ca in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5
#7  0x00007fe12ef2073a in start_thread () at /lib64/libpthread.so.0
#8  0x00007fe132520e7f in clone () at /lib64/libc.so.6

Thread 5 (Thread 0x7fe0f9a8c700 (LWP 5302)):
#0  0x00007fe12ef26480 in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007fe132db46ac in std::condition_variable::wait(std::unique_lock<std::mutex>&) () at /lib64/libstdc++.so.6
#2  0x00007fe0fde2f546 in bmalloc::AsyncTask<bmalloc::Heap, void (bmalloc::Heap::*)()>::threadRunLoop() () at /lib64/libQt5WebKit.so.5
#3  0x00007fe0fde2f679 in  () at /lib64/libQt5WebKit.so.5
#4  0x00007fe132dba76f in  () at /lib64/libstdc++.so.6
#5  0x00007fe12ef2073a in start_thread () at /lib64/libpthread.so.0
#6  0x00007fe132520e7f in clone () at /lib64/libc.so.6

Thread 4 (Thread 0x7fe10b5ef700 (LWP 2299)):
#0  0x00007fe12a4a46c6 in g_main_context_prepare () at /lib64/libglib-2.0.so.0
#1  0x00007fe12a4a508b in g_main_context_iterate.isra () at /lib64/libglib-2.0.so.0
#2  0x00007fe12a4a527c in g_main_context_iteration () at /lib64/libglib-2.0.so.0
#3  0x00007fe13331b6eb in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5
#4  0x00007fe1332cc68a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5
#5  0x00007fe1331295e3 in QThread::exec() () at /lib64/libQt5Core.so.5
#6  0x00007fe1356ea4a5 in QQmlThreadPrivate::run() () at /lib64/libQt5Qml.so.5
#7  0x00007fe13312d9ca in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5
#8  0x00007fe12ef2073a in start_thread () at /lib64/libpthread.so.0
#9  0x00007fe132520e7f in clone () at /lib64/libc.so.6

Thread 3 (Thread 0x7fe11388b700 (LWP 2237)):
#0  0x00007fe132510b0d in read () at /lib64/libc.so.6
#1  0x00007fe12a4e94d0 in g_wakeup_acknowledge () at /lib64/libglib-2.0.so.0
#2  0x00007fe12a4a4c83 in g_main_context_check () at /lib64/libglib-2.0.so.0
#3  0x00007fe12a4a5104 in g_main_context_iterate.isra () at /lib64/libglib-2.0.so.0
#4  0x00007fe12a4a527c in g_main_context_iteration () at /lib64/libglib-2.0.so.0
#5  0x00007fe13331b6eb in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5
#6  0x00007fe1332cc68a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5
#7  0x00007fe1331295e3 in QThread::exec() () at /lib64/libQt5Core.so.5
#8  0x00007fe136b5afb9 in QDBusConnectionManager::run() () at /lib64/libQt5DBus.so.5
#9  0x00007fe13312d9ca in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5
#10 0x00007fe12ef2073a in start_thread () at /lib64/libpthread.so.0
#11 0x00007fe132520e7f in clone () at /lib64/libc.so.6

Thread 2 (Thread 0x7fe11949c700 (LWP 2039)):
#0  0x00007fe132514f3d in poll () at /lib64/libc.so.6
#1  0x00007fe13157bd10 in _xcb_conn_wait () at /lib64/libxcb.so.1
#2  0x00007fe13157daa9 in xcb_wait_for_event () at /lib64/libxcb.so.1
#3  0x00007fe11cce2d69 in QXcbEventReader::run() () at /lib64/libQt5XcbQpa.so.5
#4  0x00007fe13312d9ca in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5
#5  0x00007fe12ef2073a in start_thread () at /lib64/libpthread.so.0
#6  0x00007fe132520e7f in clone () at /lib64/libc.so.6

Thread 1 (Thread 0x7fe136a28f40 (LWP 2022)):
#0  0x00007fe1331a3ffe in ucstrncmp(QChar const*, QChar const*, int) () at /lib64/libQt5Core.so.5
#1  0x00007fe1331a40a0 in ucstrcmp(QChar const*, int, QChar const*, int) () at /lib64/libQt5Core.so.5
#2  0x00007fe1331a9f2d in operator<(QString const&, QString const&) () at /lib64/libQt5Core.so.5
#3  0x00007fe113da0b50 in QMapData<QString, Solid::Backends::UDisks2::DeviceBackend*>::findNode(QString const&) const () at /lib64/libKF5Solid.so.5
#4  0x00007fe113da0871 in Solid::Backends::UDisks2::DeviceBackend::backendForUDI(QString const&, bool) () at /lib64/libKF5Solid.so.5
#5  0x00007fe113d96cd0 in Solid::Backends::UDisks2::Device::Device(QString const&) () at /lib64/libKF5Solid.so.5
#6  0x00007fe113d9b032 in Solid::Backends::UDisks2::Device::volumeDescription() const () at /lib64/libKF5Solid.so.5
#7  0x00007fe113d9b9db in Solid::Backends::UDisks2::Device::description() const () at /lib64/libKF5Solid.so.5
#8  0x00007fe113d4a3bd in Solid::Device::description() const () at /lib64/libKF5Solid.so.5
#9  0x00007fe1183b3530 in KFilePlacesItem::deviceData(int) const () at /lib64/libKF5KIOFileWidgets.so.5
#10 0x00007fe1183b43a5 in KFilePlacesItem::data(int) const () at /lib64/libKF5KIOFileWidgets.so.5
#11 0x00007fe1183b4eb7 in KFilePlacesModel::data(QModelIndex const&, int) const () at /lib64/libKF5KIOFileWidgets.so.5
#12 0x00007fe1183b5487 in KFilePlacesModel::text(QModelIndex const&) const () at /lib64/libKF5KIOFileWidgets.so.5
#13 0x00007fe0f791bbaa in PlacesRunnerHelper::match(Plasma::RunnerContext*) () at /usr/lib64/qt5/plugins/krunner_placesrunner.so
#14 0x00007fe1332f57e9 in QObject::event(QEvent*) () at /lib64/libQt5Core.so.5
#15 0x00007fe133da1ecc in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /lib64/libQt5Widgets.so.5
#16 0x00007fe133da9671 in QApplication::notify(QObject*, QEvent*) () at /lib64/libQt5Widgets.so.5
#17 0x00007fe1332cd6fa in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /lib64/libQt5Core.so.5
#18 0x00007fe1332cfde0 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () at /lib64/libQt5Core.so.5
#19 0x00007fe13331b653 in postEventSourceDispatch(_GSource*, int (*)(void*), void*) () at /lib64/libQt5Core.so.5
#20 0x00007fe12a4a4e52 in g_main_context_dispatch () at /lib64/libglib-2.0.so.0
#21 0x00007fe12a4a51d0 in g_main_context_iterate.isra () at /lib64/libglib-2.0.so.0
#22 0x00007fe12a4a527c in g_main_context_iteration () at /lib64/libglib-2.0.so.0
#23 0x00007fe13331b6cf in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5
#24 0x00007fe1332cc68a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5
#25 0x00007fe1332d418c in QCoreApplication::exec() () at /lib64/libQt5Core.so.5
#26 0x0000560d8278bc38 in main ()

Reported using DrKonqi
Comment 1 Andrei 2018-02-16 17:55:22 UTC
Same thing happens to me:

Application: krunner (5.12.1)

Qt Version: 5.10.1
Frameworks Version: 5.43.0
Operating System: Linux 4.15.3-1-ARCH x86_64
Distribution (Platform): Archlinux Packages

-- Information about the crash:

I was typing firefox in krunner. It crashed as soon as I have typed "fir". The same thing happens when I try to type it into the app launcher widget. This is not the only combination that makes it crash.

The crash can be reproduced every time.

-- Backtrace:
A useful backtrace could not be generated
Comment 2 Patrick Eigensatz 2018-02-17 17:44:01 UTC
Created attachment 110749 [details]
New crash information added by DrKonqi

plasmashell (5.12.1) using Qt 5.10.1

Exactly the same happened here: krunner crashes as soon as I type some letters to start an application. This happens everytime, even after I restart krunner.

-- Backtrace (Reduced):
#5  0x00007fa9b860ca60 in QVariant::QVariant(QVariant const&) () at /usr/lib/libQt5Core.so.5
#6  0x00007fa8cd2862cc in  () at /usr/lib/qt/plugins/sqldrivers/libqsqlite.so
#7  0x00007fa8cd283ae6 in  () at /usr/lib/qt/plugins/sqldrivers/libqsqlite.so
#8  0x00007fa9b638b938 in QSqlQuery::exec() () at /usr/lib/libQt5Sql.so.5
#9  0x00007fa8bfbd2761 in  () at /usr/lib/qt/plugins/krunner_bookmarksrunner.so
Comment 3 Olivier Churlaud 2018-02-17 20:36:54 UTC
*** Bug 390628 has been marked as a duplicate of this bug. ***
Comment 4 Olivier Churlaud 2018-02-17 20:42:07 UTC
It's the same for me, on ArchLinux.

And if I type AAAAAAA in krunner, it doesn't crash, only if application names match.
Comment 5 Kai Uwe Broulik 2018-02-19 14:40:21 UTC
We moved the baloorunner out of process in Plasma 5.12, this should fix the original reported crash. Basically it can no longer crash KRunner as it's out of process but it will also no longer crash in that particular instance as there's only one thread in the out of process one.
Comment 6 Thomas Frenzel 2018-02-19 15:15:30 UTC
Hm so we should open a new bug? For me and maybe others the crash appeared in 5.12 for the first time.