Bug 346215 - Cannot remove user account picture
Summary: Cannot remove user account picture
Alias: None
Product: user-manager
Classification: Plasma
Component: kcontrol module (show other bugs)
Version: 5.2.2
Platform: Arch Linux Linux
: NOR minor
Target Milestone: ---
Assignee: Alex Fiestas
Depends on:
Reported: 2015-04-15 11:51 UTC by Nils
Modified: 2016-02-08 15:13 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:

could not delete user account picture (42.60 KB, image/png)
2015-04-15 11:56 UTC, Nils
no user account and password app in settings (84.23 KB, image/png)
2015-10-05 19:11 UTC, Nils

Note You need to log in before you can comment on or make changes to this bug.
Description Nils 2015-04-15 11:51:58 UTC
When you set your own avatar for your account through system settings > Password and User Account, and then you try to remove the picture you get an error from the system manager:
"Could not delete file /home/user/.face.icon."
When you then click on "Ok"', you get a crash on systemsettings process with a segmentation fault.

Reproducible: Always

Steps to Reproduce:
1. Use a default image as your own avatar and applyExecutable: systemsettings5 PID: 8367 Signal: Segmentation fault (11) Time: 15/04/2015 13:51:14
2. Remove It
3. Apply!

Actual Results:  
The image is not removed from your user account. 

Expected Results:  
The image would be no more used as your avatar for your account. 

Thread 1 (Thread 0x7f5d87395780 (LWP 8367)):
[KCrash Handler]
#5  0x0000000000000000 in ?? ()
#6  0x00007f5d8436f6ff in QMetaObject::invokeMethod(QObject*, char const*, Qt::ConnectionType, QGenericReturnArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument) () from /usr/lib/libQt5Core.so.5
#7  0x00007f5d7ede02ca in KDialogJobUiDelegate::Private::next() () from /usr/lib/libKF5JobWidgets.so.5
#8  0x00007f5d8439212a in QObject::event(QEvent*) () from /usr/lib/libQt5Core.so.5
#9  0x00007f5d85808acc in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#10 0x00007f5d8580df10 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#11 0x00007f5d84360dbb in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/libQt5Core.so.5
#12 0x00007f5d84362dfb in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib/libQt5Core.so.5
#13 0x00007f5d843b8dc3 in ?? () from /usr/lib/libQt5Core.so.5
#14 0x00007f5d812069fd in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#15 0x00007f5d81206ce0 in ?? () from /usr/lib/libglib-2.0.so.0
#16 0x00007f5d81206d8c in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#17 0x00007f5d843b91b7 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#18 0x00007f5d8435e852 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#19 0x00007f5d8436622c in QCoreApplication::exec() () from /usr/lib/libQt5Core.so.5
#20 0x000000000040ed8c in main ()
Comment 1 Nils 2015-04-15 11:56:40 UTC
Created attachment 92056 [details]
could not delete user account picture
Comment 2 Nils 2015-04-15 11:57:36 UTC
However, you have as work-around the possibility to manually delete the file ".face.icon".
Comment 3 Luca Giambonini 2015-09-23 21:09:28 UTC
I can not reproduce here on kf5 5.14 and plasma 5.4.1, the user icon ".face.icon" is removed correctly
Comment 4 Nils 2015-10-05 19:08:43 UTC
I wanted to test it again but I have no more the application allowing me to edit my profile in the system settings... I do not know how to find it again. :)
The only thing I find relevant is the Online Accounts, but it is not working at all... And I do not know if it is the new version of the user account manager or another thing...
Comment 5 Nils 2015-10-05 19:11:24 UTC
Created attachment 94859 [details]
no user account and password app in settings
Comment 6 Luca Giambonini 2015-10-06 18:03:46 UTC
you have to install the accountsservice application in order to see the user account settings.
Comment 7 Nils 2016-02-03 23:03:45 UTC
Hu... Sorry, I didn't see your answer at that time. 
So, I have installed accountsservice:

➜  ~  sudo pacman -S accountsservice 
warning: accountsservice-0.6.40-1 is up to date -- reinstalling
Packages (1) accountsservice-0.6.40-1
Total Installed Size:  0.84 MiB
Net Upgrade Size:      0.00 MiB
(1/1) reinstalling accountsservice                                              [##############################################] 100%

But still no user account & password app in the settings.
Comment 8 David Edmundson 2016-02-08 15:13:12 UTC
Git commit e984dab0a6cd9541ae178c104f0228ae264284a6 by David Edmundson.
Committed on 08/02/2016 at 15:13.
Pushed by davidedmundson into branch 'master'.

Fix crash in KJob dialogs.

Guard "this" being deleted whilst running new eventloop

KMessageBox spawns a new event loop, during which the parent kjob can be
completed and deleted, deleting the UIDelegate with it.
Related: bug 356321, bug 356964, bug 355052, bug 355525, bug 353462, bug 358954
REVIEW: 126999

M  +9    -0    src/kdialogjobuidelegate.cpp