summaryrefslogtreecommitdiffstats
path: root/tdecore
diff options
context:
space:
mode:
authorSlávek Banko <slavek.banko@axis.cz>2016-01-23 04:37:47 +0100
committerSlávek Banko <slavek.banko@axis.cz>2016-01-23 04:37:47 +0100
commit893ac9fad0249a9ed959e2e8e28952415291b3a2 (patch)
treebc1404da0b60f96018b7d98fa712cea975318c9f /tdecore
parentba2a3bc188922722090b4afd1623451886b1520c (diff)
downloadtdelibs-893ac9fad0249a9ed959e2e8e28952415291b3a2.tar.gz
tdelibs-893ac9fad0249a9ed959e2e8e28952415291b3a2.zip
Prefer encoded disk labels in tdehwlib
because it contains unadjusted disk labels Signed-off-by: Slávek Banko <slavek.banko@axis.cz>
Diffstat (limited to 'tdecore')
-rw-r--r--tdecore/tdehw/tdehardwaredevices.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/tdecore/tdehw/tdehardwaredevices.cpp b/tdecore/tdehw/tdehardwaredevices.cpp
index a1eef5060..533f212e0 100644
--- a/tdecore/tdehw/tdehardwaredevices.cpp
+++ b/tdecore/tdehw/tdehardwaredevices.cpp
@@ -116,6 +116,9 @@ unsigned int reverse_bits(register unsigned int x)
return((x >> 16) | (x << 16));
}
+// Helper function implemented in tdestoragedevice.cpp
+TQString decodeHexEncoding(TQString str);
+
#if defined(WITH_TDEHWLIB_DAEMONS) || defined(WITH_UDISKS) || defined(WITH_UDISKS2) || defined(WITH_NETWORK_MANAGER_BACKEND)
#include <tqdbusvariant.h>
#include <tqdbusdata.h>
@@ -2570,7 +2573,10 @@ void TDEHardwareDevices::updateExistingDeviceInformation(TDEGenericDevice* exist
TQString devicebus(udev_device_get_property_value(dev, "ID_BUS"));
// Get disk specific info
- TQString disklabel(TQString::fromLocal8Bit(udev_device_get_property_value(dev, "ID_FS_LABEL")));
+ TQString disklabel(decodeHexEncoding(TQString::fromLocal8Bit(udev_device_get_property_value(dev, "ID_FS_LABEL_ENC"))));
+ if (disklabel == "") {
+ disklabel = TQString::fromLocal8Bit(udev_device_get_property_value(dev, "ID_FS_LABEL"));
+ }
TQString diskuuid(udev_device_get_property_value(dev, "ID_FS_UUID"));
TQString filesystemtype(udev_device_get_property_value(dev, "ID_FS_TYPE"));
TQString filesystemusage(udev_device_get_property_value(dev, "ID_FS_USAGE"));