https://bugs.kde.org/show_bug.cgi?id=481004

            Bug ID: 481004
           Summary: System settings crashes in shortcut view if search is
                    modified rapidly
    Classification: Applications
           Product: systemsettings
           Version: master
          Platform: Other
                OS: Linux
            Status: REPORTED
          Severity: normal
          Priority: NOR
         Component: kcm_khotkeys
          Assignee: plasma-b...@kde.org
          Reporter: akse...@akselmo.dev
                CC: k...@michael-jansen.biz
  Target Milestone: ---

SUMMARY
If the search field is modified rapidly in shortcuts view, system settings will
crash.

STEPS TO REPRODUCE
1. Open shortcuts settings
2. Type "alt" in the searchbar
3. Remove the last "t" and then immediately add it back
4. Do this until system settings crashes

OBSERVED RESULT
Searching crashes

EXPECTED RESULT
No crash :)

SOFTWARE/OS VERSIONS
Operating System: Fedora Linux 39
KDE Plasma Version: 6.0.80
KDE Frameworks Version: 6.0.0
Qt Version: 6.6.0
Kernel Version: 6.7.3-200.fc39.x86_64 (64-bit)
Graphics Platform: Wayland
Processors: 12 × AMD Ryzen 5 3600 6-Core Processor
Memory: 15.5 GiB of RAM
Graphics Processor: AMD Radeon RX 6600

ADDITIONAL INFORMATION

I have a backtrace for the crash but it's kinda weird, I couldn't get all the
symbols even I have them installed (I am using kdesrc-build plasma6 session)

Thread 1 "systemsettings" received signal SIGSEGV, Segmentation fault.
0x0000000002ab3ff0 in ?? ()
(gdb) bt
#0  0x0000000002ab3ff0 in ??? ()
#1  0x00007ffff514a0d3 in QQmlData::signalEmitted (object=0x75b2f0, index=4,
a=0x0) at
/usr/src/debug/qt6-qtdeclarative-6.6.0-1.fc39.x86_64/src/qml/qml/qqmlengine.cpp:326
#2  0x00007ffff3c01c80 in doActivate<false> (sender=0x75b2f0, signal_index=4,
argv=0x0) at
/usr/src/debug/qt6-qtbase-6.6.0-6.fc39.x86_64/src/corelib/kernel/qobject.cpp:3913
#3  0x00007ffff3bf85f7 in QMetaObject::activate (sender=sender@entry=0x75b2f0,
m=<optimized out>, local_signal_index=local_signal_index@entry=1,
argv=argv@entry=0x0)
    at
/usr/src/debug/qt6-qtbase-6.6.0-6.fc39.x86_64/src/corelib/kernel/qobject.cpp:4081
#4  0x00007ffff6440270 in QQmlDelegateModelItem::rowChanged (this=0x75b2f0)
    at
/usr/src/debug/qt6-qtdeclarative-6.6.0-1.fc39.x86_64/redhat-linux-build/src/qmlmodels/QmlModels_autogen/include/moc_qqmldelegatemodel_p_p.cpp:253
#5  QQmlDelegateModelItem::setModelIndex (this=0x75b2f0, idx=<optimized out>,
newRow=<optimized out>, newColumn=<optimized out>, alwaysEmit=false)
    at
/usr/src/debug/qt6-qtdeclarative-6.6.0-1.fc39.x86_64/src/qmlmodels/qqmldelegatemodel.cpp:2417
#6  0x00007ffff644f282 in QQmlDelegateModel::_q_itemsInserted (this=<optimized
out>, index=0, count=1)
    at
/usr/src/debug/qt6-qtdeclarative-6.6.0-1.fc39.x86_64/src/qmlmodels/qqmldelegatemodel.cpp:1574
#7  0x00007ffff6453314 in QQmlDelegateModel::setRootIndex (this=0x10aa580,
root=<optimized out>)
    at
/usr/src/debug/qt6-qtdeclarative-6.6.0-1.fc39.x86_64/src/qmlmodels/qqmldelegatemodel.cpp:530
#8  0x00007ffff64554e8 in QQmlDelegateModel::qt_metacall (this=0x10aa580,
_c=QMetaObject::WriteProperty, _id=7, _a=0x7fffffff5050)
    at
/usr/src/debug/qt6-qtdeclarative-6.6.0-1.fc39.x86_64/redhat-linux-build/src/qmlmodels/QmlModels_autogen/include/moc_qqmldelegatemodel_p.cpp:621
#9  0x00007ffff51132bd in QQmlPropertyData::doMetacall<(QMetaObject::Call)2>
(this=<optimized out>, argv=0x7fffffff5050, idx=<optimized out>,
object=0xf27640)
    at
/usr/src/debug/qt6-qtdeclarative-6.6.0-1.fc39.x86_64/redhat-linux-build/include/QtQml/6.6.0/QtQml/private/../../../../../../src/qml/qml/qqmlpropertydata_p.h:322
#10 QQmlPropertyData::doMetacall<(QMetaObject::Call)2> (this=0x7fff90513810,
argv=0x7fffffff5050, idx=<optimized out>, object=0xf27640)
    at
/usr/src/debug/qt6-qtdeclarative-6.6.0-1.fc39.x86_64/redhat-linux-build/include/QtQml/6.6.0/QtQml/private/../../../../../../src/qml/qml/qqmlpropertydata_p.h:317
#11 QQmlPropertyData::writeProperty (this=this@entry=0x7fff90513810,
target=target@entry=0x10aa580, value=value@entry=0x7fffffff53c0, flags=...,
flags@entry=...)
    at
/usr/src/debug/qt6-qtdeclarative-6.6.0-1.fc39.x86_64/redhat-linux-build/include/QtQml/6.6.0/QtQml/private/../../../../../../src/qml/qml/qqmlpropertydata_p.h:340
#12 0x00007ffff51eb99c in QQmlPropertyPrivate::write
(object=object@entry=0x10aa580, property=..., value=..., context=...,
flags=..., flags@entry=...)
    at
/usr/src/debug/qt6-qtdeclarative-6.6.0-1.fc39.x86_64/src/qml/qml/qqmlproperty.cpp:1559
#13 0x00007ffff5060c97 in QV4::QObjectWrapper::setProperty
(engine=engine@entry=0xaa83f0, object=object@entry=0x10aa580,
property=0x7fff90513810, value=...)
    at /usr/include/qt6/QtCore/qflags.h:73
#14 0x00007ffff5061666 in QV4::QObjectWrapper::setQmlProperty
(engine=engine@entry=0xaa83f0, qmlContext=..., object=0x10aa580,
name=<optimized out>, flags=flags@entry=..., value=...)
    at
/usr/src/debug/qt6-qtdeclarative-6.6.0-1.fc39.x86_64/src/qml/jsruntime/qv4qobjectwrapper.cpp:465
#15 0x00007ffff5061846 in QV4::QObjectWrapper::virtualPut (m=0x7fffc45bf598,
id=..., value=..., receiver=0x7fffc45bf598)
    at
/usr/src/debug/qt6-qtdeclarative-6.6.0-1.fc39.x86_64/src/qml/jsruntime/qv4qobjectwrapper.cpp:837
#16 0x00007ffff502dc0d in QV4::Object::put (receiver=<optimized out>, v=...,
name=<optimized out>, this=<optimized out>)
    at
/usr/src/debug/qt6-qtdeclarative-6.6.0-1.fc39.x86_64/redhat-linux-build/include/QtQml/6.6.0/QtQml/private/../../../../../../src/qml/jsruntime/qv4string_p.h:140
#17 QV4::Lookup::setterFallback (l=<optimized out>, engine=0xaa83f0,
object=<optimized out>, value=...)
    at
/usr/src/debug/qt6-qtdeclarative-6.6.0-1.fc39.x86_64/src/qml/jsruntime/qv4lookup.cpp:591
#18 0x00007fffbf42b293 in ??? ()
#19 0x0000000000000000 in ??? ()

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to