From 893ac9fad0249a9ed959e2e8e28952415291b3a2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sl=C3=A1vek=20Banko?= Date: Sat, 23 Jan 2016 04:37:47 +0100 Subject: Prefer encoded disk labels in tdehwlib because it contains unadjusted disk labels MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Slávek Banko --- tdecore/tdehw/tdehardwaredevices.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) 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 #include @@ -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")); -- cgit v1.2.1