[SCM] kdeconnect packaging branch, master, updated. debian/0.9g-1-1183-g9d69498

Maximiliano Curia maxy at moszumanska.debian.org
Fri Oct 14 14:28:27 UTC 2016


Gitweb-URL: http://git.debian.org/?p=pkg-kde/kde-extras/kdeconnect.git;a=commitdiff;h=9ab7e23

The following commit has been merged in the master branch:
commit 9ab7e2356e9d698a378e85b511269784c9f06828
Author: Aleix Pol <aleixpol at kde.org>
Date:   Wed Apr 1 23:38:32 2015 +0200

    Use QMetaObject for introspecting a QObject
    
    It will be faster and will provide better error messages.
    
    REVIEW: 123214
---
 core/networkpackage.cpp | 22 ++++++++++------------
 1 file changed, 10 insertions(+), 12 deletions(-)

diff --git a/core/networkpackage.cpp b/core/networkpackage.cpp
index 6f7e62e..452977e 100644
--- a/core/networkpackage.cpp
+++ b/core/networkpackage.cpp
@@ -111,18 +111,16 @@ void qvariant2qobject(const QVariantMap& variant, QObject* object)
 {
     for ( QVariantMap::const_iterator iter = variant.begin(); iter != variant.end(); ++iter )
     {
-        QVariant property = object->property( iter.key().toLatin1() );
-        Q_ASSERT( property.isValid() );
-        if ( property.isValid() )
-        {
-            QVariant value = iter.value();
-            if ( value.canConvert( property.type() ) )
-            {
-                value.convert( property.type() );
-                object->setProperty( iter.key().toLatin1(), value );
-            } else if ( QString( QLatin1String("QVariant") ).compare( QLatin1String( property.typeName() ) ) == 0) {
-                object->setProperty( iter.key().toLatin1(), value );
-            }
+        const int propertyIndex = object->metaObject()->indexOfProperty(iter.key().toLatin1());
+        if (propertyIndex < 0) {
+            qCWarning(KDECONNECT_CORE) << "missing property" << object << iter.key();
+            continue;
+        }
+
+        QMetaProperty property = object->metaObject()->property(propertyIndex);
+        bool ret = property.write(object, *iter);
+        if (!ret) {
+            qCWarning(KDECONNECT_CORE) << "couldn't set" << object << "->" << property.name() << '=' << *iter;
         }
     }
 }

-- 
kdeconnect packaging



More information about the pkg-kde-commits mailing list