From 495599a2414bc4083fe6d45c0f1dc4ec05b41985 Mon Sep 17 00:00:00 2001 From: Ivailo Monev Date: Sat, 12 Jun 2021 13:45:42 +0300 Subject: [PATCH] solid: bring back UdevQt::Device::alternateDeviceSymlinks() to use it in storage access Signed-off-by: Ivailo Monev --- solid/solid/backends/shared/udevqt.h | 1 + solid/solid/backends/shared/udevqtdevice.cpp | 8 ++++++++ solid/solid/backends/udev/udevstorageaccess.cpp | 2 +- 3 files changed, 10 insertions(+), 1 deletion(-) diff --git a/solid/solid/backends/shared/udevqt.h b/solid/solid/backends/shared/udevqt.h index eede3df4..497e003e 100644 --- a/solid/solid/backends/shared/udevqt.h +++ b/solid/solid/backends/shared/udevqt.h @@ -47,6 +47,7 @@ class Device int sysfsNumber() const; QString driver() const; QString primaryDeviceFile() const; + QStringList alternateDeviceSymlinks() const; QStringList deviceProperties() const; Device parent() const; diff --git a/solid/solid/backends/shared/udevqtdevice.cpp b/solid/solid/backends/shared/udevqtdevice.cpp index a6ab2849..f2671775 100644 --- a/solid/solid/backends/shared/udevqtdevice.cpp +++ b/solid/solid/backends/shared/udevqtdevice.cpp @@ -151,6 +151,14 @@ QString Device::primaryDeviceFile() const return QString::fromLatin1(udev_device_get_devnode(d->udev)); } +QStringList Device::alternateDeviceSymlinks() const +{ + if (!d) + return QStringList(); + + return listFromListEntry(udev_device_get_devlinks_list_entry(d->udev)); +} + QStringList Device::deviceProperties() const { if (!d) diff --git a/solid/solid/backends/udev/udevstorageaccess.cpp b/solid/solid/backends/udev/udevstorageaccess.cpp index db1267a8..391617de 100644 --- a/solid/solid/backends/udev/udevstorageaccess.cpp +++ b/solid/solid/backends/udev/udevstorageaccess.cpp @@ -62,7 +62,7 @@ QString StorageAccess::filePath() const } } - const QStringList devlinks = m_device->property("DEVLINKS").toString().split(" "); + const QStringList devlinks = m_device->udevDevice().alternateDeviceSymlinks(); foreach (const QString &link, devlinks) { foreach (const KMountPoint::Ptr mountpoint, mountpoints) { if (mountpoint->mountedFrom() == link || mountpoint->realDeviceName() == link) {