diff --git a/src/plugins/filemanager/dfmplugin-optical/optical.cpp b/src/plugins/filemanager/dfmplugin-optical/optical.cpp index f34c4e48f8..f4a8501ea7 100644 --- a/src/plugins/filemanager/dfmplugin-optical/optical.cpp +++ b/src/plugins/filemanager/dfmplugin-optical/optical.cpp @@ -184,7 +184,9 @@ void Optical::onDiscEjected(const QString &id) const QString &mnt { DeviceUtils::getMountInfo(devFile) }; if (!mnt.isEmpty()) { fmWarning() << "The device" << id << "has been ejected, but it's still mounted"; - DeviceManager::instance()->unmountBlockDevAsync(id); + // cannot unmount if device is busy, + // so use { "force": GLib.Variant('b', True) } + DeviceManager::instance()->unmountBlockDevAsync(id, { { "force", true } }); } } } // namespace dfmplugin_optical