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

--- Comment #15 from ratijas <m...@ratijas.tk> ---
Git commit 6ba043519e9834202fc062cbaf1a41f76f521730 by ivan tkachenko.
Committed on 12/10/2022 at 15:20.
Pushed by ratijas into branch 'master'.

osd: Fix a crash when quitting from QML signal handler

kscreen_osd_service[9979]:
    Object 0x55a9840ff5c0 destroyed while one of its QML signal handlers is in
progress.
    Most likely the object was deleted synchronously (use
QObject::deleteLater() instead), or the application is running a nested event
loop.
    This behavior is NOT supported!
    qrc:/qml/OsdSelector.qml:102: function() { [native code] }

Call to quit() should be posted to an event loop to avoid destroying Osd
objects with their engines while a key press signal handler is still
running. Additional clean up must be performed to ensure that a map
does not contain dangling references, ans thus double call to hideOsd()
won't cause another crash either.

Also, don't bother hiding individual OSD instances if we are about to
quit anyway. That's what other code path with timer is [not] doing
already.

M  +5    -5    osd/osdmanager.cpp

https://invent.kde.org/plasma/kscreen/commit/6ba043519e9834202fc062cbaf1a41f76f521730

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

Reply via email to