• Thomas Surrel's avatar
    Do not disconnect all StorageAccess signals when unmounting · e710a643
    Thomas Surrel authored
    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
    e710a643