https://bugs.kde.org/show_bug.cgi?id=515299
Robert Hensing <[email protected]> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |[email protected] --- Comment #4 from Robert Hensing <[email protected]> --- I have found a way to reproduce this issue. 1. Lock the screen 2. Enter a wrong password, press Enter, press Escape within a second 3. The screen turns off 4. Enter any password, submit 5. The UI does not respond to Enter or the submit button I've identified two flaws that cause this. 1. The plasma-desktop QML triggers startAuthenticating() on every onUiVisibleChanged, including the transition to invisible. In my reproduction, this causes a rapid reattempt, which is then handled incorrectly. The graceLockTimer makes it impossible to trigger this with normal password submissions. This is good UX, but makes it hard to reproduce the bug. 2. The rapid reattempt is not handled correctly. The recently introduced return in PamWorker::authenticate() causes the flow to terminate without emitting any signal. PamAuthenticators has already transitioned to the Authenticating state, and only returns to Idle when it receives a failed() or succeeded() signal. Since neither is emitted, the state is permanently stuck at Authenticating, causing startAuthenticating() to silently reject all subsequent attempts. I have reproduced this with a single monitor. A multi-monitor setup could trigger the same issue, because onExited also sets uiVisible = false, triggering startAuthenticating() via onUiVisibleChanged. References: Newly introduced return: kscreenlocker, greeter/pamauthenticator.cpp:169, https://github.com/KDE/kscreenlocker/commit/5c2e6e1e877c1a0ecd915d4b91773cf9c56734e6#diff-bc041436d9ffc2f07acb68b28c8f7aaf0dadc9fefd37ab085116d83fd699991dR169 Unconditional startAuthenticating(): plasma-desktop, desktoppackage/contents/lockscreen/LockScreenUi.qml:136, https://github.com/KDE/plasma-desktop/blob/v6.6.0/desktoppackage/contents/lockscreen/LockScreenUi.qml#L136 onExited sets uiVisible = false: plasma-desktop, desktoppackage/contents/lockscreen/LockScreenUi.qml:146-147, https://github.com/KDE/plasma-desktop/blob/v6.6.0/desktoppackage/contents/lockscreen/LockScreenUi.qml#L146-L147 -- You are receiving this mail because: You are watching all bug changes.
