Backport fix for solid kde framework
This commit is contained in:
parent
11f95a4d08
commit
4d3e183ceb
3 changed files with 122 additions and 0 deletions
|
|
@ -0,0 +1,18 @@
|
|||
diff -ruN solid-5.44.0/src/solid/devices/backends/udisks2/udisksstorageaccess.cpp solid-5.44.0-fix-url-format/src/solid/devices/backends/udisks2/udisksstorageaccess.cpp
|
||||
--- solid-5.44.0/src/solid/devices/backends/udisks2/udisksstorageaccess.cpp 2020-06-26 14:03:41.000000000 -0500
|
||||
+++ solid-5.44.0-fix-url-format/src/solid/devices/backends/udisks2/udisksstorageaccess.cpp 2020-06-26 14:10:13.708453200 -0500
|
||||
@@ -122,10 +122,10 @@
|
||||
|
||||
const QString path = filePath();
|
||||
|
||||
- return !path.isEmpty()
|
||||
- && !path.startsWith(QLatin1String("/media/"))
|
||||
- && !path.startsWith(QLatin1String("/run/media/"))
|
||||
- && !path.startsWith(QDir::homePath());
|
||||
+ bool inUserPath = path.startsWith(QLatin1String("/media/")) ||
|
||||
+ path.startsWith(QLatin1String("/run/media/")) ||
|
||||
+ path.startsWith(QDir::homePath());
|
||||
+ return !inUserPath;
|
||||
}
|
||||
|
||||
bool StorageAccess::setup()
|
||||
|
|
@ -0,0 +1,69 @@
|
|||
diff -ruN solid-5.44.0-fix-url-format/src/solid/devices/backends/udisks2/udisksdevice.cpp solid-5.44.0-update-mount-point/src/solid/devices/backends/udisks2/udisksdevice.cpp
|
||||
--- solid-5.44.0-fix-url-format/src/solid/devices/backends/udisks2/udisksdevice.cpp 2020-06-26 14:07:57.083219471 -0500
|
||||
+++ solid-5.44.0-update-mount-point/src/solid/devices/backends/udisks2/udisksdevice.cpp 2020-06-26 15:41:51.879400437 -0500
|
||||
@@ -157,6 +157,13 @@
|
||||
return QStringList();
|
||||
}
|
||||
|
||||
+void Device::invalidateCache()
|
||||
+{
|
||||
+ if (m_backend) {
|
||||
+ return m_backend->invalidateProperties();
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
QObject *Device::createDeviceInterface(const Solid::DeviceInterface::Type &type)
|
||||
{
|
||||
if (!queryDeviceInterface(type)) {
|
||||
diff -ruN solid-5.44.0-fix-url-format/src/solid/devices/backends/udisks2/udisksdevice.h solid-5.44.0-update-mount-point/src/solid/devices/backends/udisks2/udisksdevice.h
|
||||
--- solid-5.44.0-fix-url-format/src/solid/devices/backends/udisks2/udisksdevice.h 2020-06-26 14:07:57.083219471 -0500
|
||||
+++ solid-5.44.0-update-mount-point/src/solid/devices/backends/udisks2/udisksdevice.h 2020-06-26 15:44:30.976790082 -0500
|
||||
@@ -61,6 +61,7 @@
|
||||
QVariant prop(const QString &key) const;
|
||||
bool propertyExists(const QString &key) const;
|
||||
QVariantMap allProperties() const;
|
||||
+ void invalidateCache();
|
||||
|
||||
bool hasInterface(const QString &name) const;
|
||||
QStringList interfaces() const;
|
||||
diff -ruN solid-5.44.0-fix-url-format/src/solid/devices/backends/udisks2/udisksstorageaccess.cpp solid-5.44.0-update-mount-point/src/solid/devices/backends/udisks2/udisksstorageaccess.cpp
|
||||
--- solid-5.44.0-fix-url-format/src/solid/devices/backends/udisks2/udisksstorageaccess.cpp 2020-06-26 14:10:13.708453200 -0500
|
||||
+++ solid-5.44.0-update-mount-point/src/solid/devices/backends/udisks2/udisksstorageaccess.cpp 2020-06-26 19:02:41.461847792 -0500
|
||||
@@ -177,6 +177,7 @@
|
||||
mount();
|
||||
} else { // Don't broadcast setupDone unless the setup is really done. (Fix kde#271156)
|
||||
m_setupInProgress = false;
|
||||
+ m_device->invalidateCache();
|
||||
m_device->broadcastActionDone("setup");
|
||||
|
||||
checkAccessibility();
|
||||
@@ -202,6 +203,7 @@
|
||||
}
|
||||
|
||||
m_teardownInProgress = false;
|
||||
+ m_device->invalidateCache();
|
||||
m_device->broadcastActionDone("teardown");
|
||||
|
||||
checkAccessibility();
|
||||
@@ -238,9 +240,8 @@
|
||||
{
|
||||
m_setupInProgress = false;
|
||||
//qDebug() << "SETUP DONE:" << m_device->udi();
|
||||
- emit setupDone(static_cast<Solid::ErrorType>(error), errorString, m_device->udi());
|
||||
-
|
||||
checkAccessibility();
|
||||
+ emit setupDone(static_cast<Solid::ErrorType>(error), errorString, m_device->udi());
|
||||
}
|
||||
|
||||
void StorageAccess::slotTeardownRequested()
|
||||
@@ -252,9 +253,8 @@
|
||||
void StorageAccess::slotTeardownDone(int error, const QString &errorString)
|
||||
{
|
||||
m_teardownInProgress = false;
|
||||
- emit teardownDone(static_cast<Solid::ErrorType>(error), errorString, m_device->udi());
|
||||
-
|
||||
checkAccessibility();
|
||||
+ emit teardownDone(static_cast<Solid::ErrorType>(error), errorString, m_device->udi());
|
||||
}
|
||||
|
||||
bool StorageAccess::mount()
|
||||
Loading…
Add table
Add a link
Reference in a new issue