----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/125248/ -----------------------------------------------------------
(Updated Сен. 16, 2015, 6:07 п.п.) Review request for Plasma and Solid. Changes ------- Make process call async. I had to make it using lambda/cloisures magic, because I want slot to be aware of list of blocking processes as well as of error from solid itself. Also I had to keep in mind that there might be different errors from different devices simultaneously, so I can't store error somewhere inside. Also "fuser" is not a desirable option here, because apparently it doesn't show when some process is blocking any subdirectory of mount point, while lsof does. static_casts when connected to lambda are needed because of signal overload (QProcess::finished), see [link](https://forum.qt.io/topic/20998/qt5-new-signals-slots-syntax-does-not-work-solved/8) for more details. If someone knows more beautiful solution, I would glad to hear :) Repository: plasma-workspace Description ------- An attempt to implement feature from [bug 96107](https://bugs.kde.org/show_bug.cgi?id=96107) (see summary). On umount/eject error it runs "lsof" executable, gets PIDs of blocking processes and obtains names of processes via KSysGuard::Process machinery. Finally it appends obtained information to error message which is shown in tooltip of Device Notifier applet. Diffs (updated) ----- dataengines/devicenotifications/ksolidnotify.cpp 35d49d6 dataengines/devicenotifications/ksolidnotify.h a471d50 dataengines/devicenotifications/CMakeLists.txt 3f7fd83 Diff: https://git.reviewboard.kde.org/r/125248/diff/ Testing ------- Tested unmount on busy device with several processes blocking it. Did not test eject, since I have no optical disc drive :( File Attachments ---------------- Applet with error message https://git.reviewboard.kde.org/media/uploaded/files/2015/09/15/3b1b64fc-abff-4633-9dca-621388edf086__snapshot11.png Thanks, Igor Poboiko
_______________________________________________ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel