]> cloud.milkyroute.net Git - dolphin.git/commit
Do not disconnect all StorageAccess signals when unmounting
authorThomas Surrel <thomas.surrel@protonmail.com>
Tue, 13 Nov 2018 10:05:16 +0000 (11:05 +0100)
committerThomas Surrel <thomas.surrel@protonmail.com>
Sat, 17 Nov 2018 13:43:41 +0000 (14:43 +0100)
commite710a6431160aee57b1eab34b11dfe64e341898c
tree2cda6c0ea210325a3ef49bb63368e60eacb9c458
parentc900f7d255aa8fb326cf20f598a5de1a1edbcfe9
Do not disconnect all StorageAccess signals when unmounting

Summary:
The problem is caused by the fact device interfaces returned by
Solid (e.g. item->device().as<Solid::StorageAccess>()) are not
full objects, but only references/pointers to a per-device-object,
i.e. requesting the same interface for a device will return the same
address every time.

If the interface is used used in multiple places, calling disconnect
on the interface address disconnects the signals for all users.

BUG: 400992

Test Plan:
In Dolphin, mount a local partition (e.g. a Windows partition)
then unmount it (right click on it in Places, then Unmount).
Try to access it again by clicking on it in Places, we should
get access to it correctly.

Reviewers: #dolphin, #frameworks, bruns, elvisangelaccio

Reviewed By: #dolphin, elvisangelaccio

Subscribers: elvisangelaccio, kfm-devel

Tags: #dolphin

Differential Revision: https://phabricator.kde.org/D16857
src/panels/places/placesitemmodel.cpp