[SCM] solid packaging branch, master, updated. debian/5.21.0-1-4-g899f931
Maximiliano Curia
maxy at moszumanska.debian.org
Wed May 18 22:07:14 UTC 2016
Gitweb-URL: http://git.debian.org/?p=pkg-kde/frameworks/solid.git;a=commitdiff;h=cab3714
The following commit has been merged in the master branch:
commit cab37146897f37557d360d35f21d47c4c76b3b11
Author: Maximiliano Curia <maxy at gnuservers.com.ar>
Date: Sat May 14 13:38:13 2016 +0200
Add new patch: use_shortest_filepath.diff
---
debian/patches/series | 1 +
debian/patches/use_shortest_filepath.diff | 52 +++++++++++++++++++++++++++++++
2 files changed, 53 insertions(+)
diff --git a/debian/patches/series b/debian/patches/series
new file mode 100644
index 0000000..32c8131
--- /dev/null
+++ b/debian/patches/series
@@ -0,0 +1 @@
+use_shortest_filepath.diff
diff --git a/debian/patches/use_shortest_filepath.diff b/debian/patches/use_shortest_filepath.diff
new file mode 100644
index 0000000..e702522
--- /dev/null
+++ b/debian/patches/use_shortest_filepath.diff
@@ -0,0 +1,52 @@
+--- a/src/solid/devices/backends/udisks2/udisksstorageaccess.cpp
++++ b/src/solid/devices/backends/udisks2/udisksstorageaccess.cpp
+@@ -75,6 +75,24 @@
+ return m_device->isMounted();
+ }
+
++static inline QString get_shortest(ByteArrayList& mntPoints)
++{
++ // We return the shortest filePath to avoid errors like:
++ // https://bugs.debian.org/762950
++
++ if (mntPoints.isEmpty()) {
++ return QString();
++ }
++ QString shortest = QFile::decodeName(mntPoints.first());
++ for (int i = 1; i < mntPoints.count(); i++) {
++ QString current = QFile::decodeName(mntPoints.at(i));
++ if (shortest.length() > current.length()) {
++ shortest = current;
++ }
++ }
++ return shortest;
++}
++
+ QString StorageAccess::filePath() const
+ {
+ ByteArrayList mntPoints;
+@@ -86,20 +104,13 @@
+ }
+ Device holderDevice(path);
+ mntPoints = qdbus_cast<ByteArrayList>(holderDevice.prop("MountPoints"));
+- if (!mntPoints.isEmpty()) {
+- return QFile::decodeName(mntPoints.first()); // FIXME Solid doesn't support multiple mount points
+- } else {
+- return QString();
+- }
++ // FIXME Solid doesn't support multiple mount points
++ return get_shortest(mntPoints);
+ }
+
+ mntPoints = qdbus_cast<ByteArrayList>(m_device->prop("MountPoints"));
+-
+- if (!mntPoints.isEmpty()) {
+- return QFile::decodeName(mntPoints.first()); // FIXME Solid doesn't support multiple mount points
+- } else {
+- return QString();
+- }
++ // FIXME Solid doesn't support multiple mount points
++ return get_shortest(mntPoints);
+ }
+
+ bool StorageAccess::isIgnored() const
--
solid packaging
More information about the pkg-kde-commits
mailing list