Summary: | Change done in Users kcm is applied despite the password dialog being canceled | ||
---|---|---|---|
Product: | [Applications] systemsettings | Reporter: | Patrick Silva <bugseforuns> |
Component: | kcm_users | Assignee: | Janet Blackquill <uhhadd> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | nate, plasma-bugs |
Priority: | VHI | Keywords: | regression |
Version: | 5.19.90 | ||
Target Milestone: | --- | ||
Platform: | Neon | ||
OS: | Linux | ||
Latest Commit: | https://invent.kde.org/plasma/plasma-desktop/commit/82b404b624d32cc3ed0bb03936455eb26b99c11d | Version Fixed In: | 5.21 |
Sentry Crash Report: |
Description
Patrick Silva
2020-08-05 10:48:16 UTC
Also reproducible if I change the user avatar in the step 3. A possibly relevant merge request was started @ https://invent.kde.org/plasma/plasma-desktop/-/merge_requests/95 A possibly relevant merge request was started @ https://invent.kde.org/plasma/plasma-desktop/-/merge_requests/163 Git commit 05768142c17600c8d4583f171d08157ecc337390 by David Redondo. Committed on 05/10/2020 at 13:19. Pushed by davidre into branch 'master'. Add some rudimentary error handling to users kcm Don't fail silently when an error occurs otherwise the kcm just looks broken. Show at least an inline message so the user knows that something went wrong. The comment was wrong. We can distinguish why an error occured. Furthermore, even if it is a permission denied error we do not know if the user canceled the action or if it failed for some other reason so also treat that as an error. Related: bug 426932 FIXED-IN:5.20 CCMAIL:uhhadd@gmail.com M +17 -1 kcms/users/package/contents/ui/UserDetailsPage.qml M +13 -0 kcms/users/src/CMakeLists.txt M +36 -4 kcms/users/src/user.cpp M +12 -1 kcms/users/src/user.h M +2 -2 kcms/users/src/usermodel.cpp https://invent.kde.org/plasma/plasma-desktop/commit/05768142c17600c8d4583f171d08157ecc337390 Git commit 8500046453ae90862f72049e1a24ec804ce85cff by David Redondo. Committed on 05/10/2020 at 13:20. Pushed by davidre into branch 'cherry-pick-05768142'. Add some rudimentary error handling to users kcm Don't fail silently when an error occurs otherwise the kcm just looks broken. Show at least an inline message so the user knows that something went wrong. The comment was wrong. We can distinguish why an error occured. Furthermore, even if it is a permission denied error we do not know if the user canceled the action or if it failed for some other reason so also treat that as an error. Related: bug 426932 FIXED-IN:5.20 CCMAIL:uhhadd@gmail.com (cherry picked from commit 05768142c17600c8d4583f171d08157ecc337390) M +17 -1 kcms/users/package/contents/ui/UserDetailsPage.qml M +13 -0 kcms/users/src/CMakeLists.txt M +36 -4 kcms/users/src/user.cpp M +12 -1 kcms/users/src/user.h M +2 -2 kcms/users/src/usermodel.cpp https://invent.kde.org/plasma/plasma-desktop/commit/8500046453ae90862f72049e1a24ec804ce85cff it's still reproducible on neon unstable. Operating System: KDE neon Unstable Edition KDE Plasma Version: 5.20.80 KDE Frameworks Version: 5.75.0 Qt Version: 5.15.0 Can confirm. We now get an error message, but the change is still applied anyway, somehow. A possibly relevant merge request was started @ https://invent.kde.org/plasma/plasma-desktop/-/merge_requests/298 Git commit 82b404b624d32cc3ed0bb03936455eb26b99c11d by Nate Graham, on behalf of Nicolas Fella. Committed on 15/01/2021 at 20:44. Pushed by ngraham into branch 'master'. [kcm/users] Avoid half transactions when user cancels auth dialog Not all calls to accountsservice require authentication and once we hit one that does and the user cancels the prompt then there might be some fields written already. This is unexpected for the user since they expect the whole transaction to be cancelled. To avoid this move the call to SetAccountType to the front since that will always trigger a prompt. It's arguably a workaround for the lack of a transaction concept in AccountsService, but I don't see a better short-term solution. M +65 -56 kcms/users/src/user.cpp M +2 -0 kcms/users/src/user.h https://invent.kde.org/plasma/plasma-desktop/commit/82b404b624d32cc3ed0bb03936455eb26b99c11d |