¡Hola Debian! El 2017-04-09 a las 16:45 +0200, Maximiliano Curia escribió:
I'm attaching the corresponding debdiff.
Attaching now. Happy hacking, -- "Las computadoras son inútiles, solo pueden darte respuestas." -- Pablo Picasso Saludos /\/\ /\ >< `/
diff -Nru solid-5.28.0/debian/changelog solid-5.28.0/debian/changelog --- solid-5.28.0/debian/changelog 2016-11-30 15:57:09.000000000 +0100 +++ solid-5.28.0/debian/changelog 2017-04-08 19:58:03.000000000 +0200 @@ -1,3 +1,17 @@ +solid (5.28.0-3) unstable; urgency=medium + + * Pick "Work round DBus property fetching bug" (6f1c6dc) + Workaround for a qt5 dbus property issue. + Add upstream patch as: Work-round-DBus-property-fetching-bug.patch + This fixes KDE#345871 + * Pick "[UDisks 2 Device] Add description for Floppy Disk" (d92588b) + Floppy disks now show up as "Floppy Disk" instead of "0 B Removable + Media" + Add upstream patch as: + UDisks-2-Device-Add-description-for-Floppy-Disk.patch + + -- Maximiliano Curia <m...@debian.org> Sat, 08 Apr 2017 19:58:03 +0200 + solid (5.28.0-2) unstable; urgency=medium * Add patch: fix-FTBFS-on-mipsel-and-m68k-src-solid-predicate_parser.c.patch. diff -Nru solid-5.28.0/debian/patches/series solid-5.28.0/debian/patches/series --- solid-5.28.0/debian/patches/series 2016-11-30 15:57:09.000000000 +0100 +++ solid-5.28.0/debian/patches/series 2017-04-08 19:58:03.000000000 +0200 @@ -1,2 +1,4 @@ use_shortest_filepath.diff fix-FTBFS-on-mipsel-and-m68k-src-solid-predicate_parser.c.patch +Work-round-DBus-property-fetching-bug.patch +UDisks-2-Device-Add-description-for-Floppy-Disk.patch diff -Nru solid-5.28.0/debian/patches/UDisks-2-Device-Add-description-for-Floppy-Disk.patch solid-5.28.0/debian/patches/UDisks-2-Device-Add-description-for-Floppy-Disk.patch --- solid-5.28.0/debian/patches/UDisks-2-Device-Add-description-for-Floppy-Disk.patch 1970-01-01 01:00:00.000000000 +0100 +++ solid-5.28.0/debian/patches/UDisks-2-Device-Add-description-for-Floppy-Disk.patch 2017-04-08 19:58:03.000000000 +0200 @@ -0,0 +1,26 @@ +From: Kai Uwe Broulik <k...@privat.broulik.de> +Date: Sat, 11 Feb 2017 17:06:15 +0100 +Subject: [UDisks 2 Device] Add description for Floppy Disk + +Ensures a floppy disk shows up as "Floppy Disk" instead of "0 Byte Removable Media" + +CHANGELOG: Floppy disks now show up as "Floppy Disk" instead of "0 B Removable Media" + +Differential Revision: https://phabricator.kde.org/D4570 +--- + src/solid/devices/backends/udisks2/udisksdevice.cpp | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/src/solid/devices/backends/udisks2/udisksdevice.cpp b/src/solid/devices/backends/udisks2/udisksdevice.cpp +index 5208ece..b0a6b51 100644 +--- a/src/solid/devices/backends/udisks2/udisksdevice.cpp ++++ b/src/solid/devices/backends/udisks2/udisksdevice.cpp +@@ -573,6 +573,8 @@ QString Device::volumeDescription() const + description = tr("Hard Drive"); + } + } ++ } else if (drive_type == Solid::StorageDrive::Floppy) { ++ description = tr("Floppy Disk"); + } else { + if (drive_is_removable) { + description = tr("%1 Removable Media", "%1 is the size").arg(size_str); diff -Nru solid-5.28.0/debian/patches/Work-round-DBus-property-fetching-bug.patch solid-5.28.0/debian/patches/Work-round-DBus-property-fetching-bug.patch --- solid-5.28.0/debian/patches/Work-round-DBus-property-fetching-bug.patch 1970-01-01 01:00:00.000000000 +0100 +++ solid-5.28.0/debian/patches/Work-round-DBus-property-fetching-bug.patch 2017-04-08 19:58:03.000000000 +0200 @@ -0,0 +1,68 @@ +From: David Edmundson <k...@davidedmundson.co.uk> +Date: Fri, 27 Jan 2017 09:11:17 +0000 +Subject: Work round DBus property fetching bug + +Summary: +property() works in a slightly different way to just calling Get(). +It allocates the variant of the relevant type in advance in QObject +code, and then calls +the DBus code to populate it. + +This fails for QByteArrayList, before it reaches DBus code. +I don't know why, but we need a wokraround in Solid anyway. + +>From a DBus traffic perspective this code is identical, we just avoid +going through Qt properties. + +This shouldn't introduce any new bugs, as we already use GetAll +directly, if anything this brings it more +in line. + +BUG: 345871 + +Test Plan: +Commented out the checkCache so that it always loads data. +Instead of failing, it now works. + +Subscribers: #frameworks + +Tags: #frameworks + +Differential Revision: https://phabricator.kde.org/D4305 +--- + .../backends/udisks2/udisksdevicebackend.cpp | 22 +++++++++++++--------- + 1 file changed, 13 insertions(+), 9 deletions(-) + +diff --git a/src/solid/devices/backends/udisks2/udisksdevicebackend.cpp b/src/solid/devices/backends/udisks2/udisksdevicebackend.cpp +index c49001f..eaaa307 100644 +--- a/src/solid/devices/backends/udisks2/udisksdevicebackend.cpp ++++ b/src/solid/devices/backends/udisks2/udisksdevicebackend.cpp +@@ -182,15 +182,19 @@ void DeviceBackend::checkCache(const QString &key) const + return; + } + +- QVariant reply = m_device->property(key.toUtf8()); +- m_propertyCache.insert(key, reply); +- +- if (!reply.isValid()) { +- /* Store the item in the cache anyway so next time we don't have to +- * do the DBus call to find out it does not exist but just check whether +- * prop(key).isValid() */ +-// qDebug() << m_udi << ": property" << key << "does not exist"; +- } ++ QDBusMessage call = QDBusMessage::createMethodCall(UD2_DBUS_SERVICE, m_udi, DBUS_INTERFACE_PROPS, "Get"); ++ /* ++ * Interface is set to an empty string as in this QDBusInterface is a meta-object of multiple interfaces on the same path ++ * The DBus properties also interface supports this, and will find the appropriate interface if none is explicitly set. ++ * This matches what QDBusAbstractInterface would do ++ */ ++ call.setArguments(QVariantList() << QString() << key); ++ QDBusPendingReply<QVariant> reply = QDBusConnection::systemBus().call(call); ++ ++ /* We don't check for error here and store the item in the cache anyway so next time we don't have to ++ * do the DBus call to find out it does not exist but just check whether ++ * prop(key).isValid() */ ++ m_propertyCache.insert(key, reply.value()); + } + + void DeviceBackend::slotPropertiesChanged(const QString &ifaceName, const QVariantMap &changedProps, const QStringList &invalidatedProps)
signature.asc
Description: PGP signature