X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=recipes-qt%2Fqt%2Fqtbase%2F0001-Force-qdbus-to-make-introspect-for-every-findMetaObj.patch;fp=recipes-qt%2Fqt%2Fqtbase%2F0001-Force-qdbus-to-make-introspect-for-every-findMetaObj.patch;h=10a1ddd882ead0bbe1ca9822c0b903a3bc488849;hb=41591d4f8c586aa801220fac0924556f406c58bd;hp=0000000000000000000000000000000000000000;hpb=4830bcef14e7f49cdc851c646a69c9bb9bd92e82;p=AGL%2Fmeta-agl-demo.git diff --git a/recipes-qt/qt/qtbase/0001-Force-qdbus-to-make-introspect-for-every-findMetaObj.patch b/recipes-qt/qt/qtbase/0001-Force-qdbus-to-make-introspect-for-every-findMetaObj.patch new file mode 100644 index 000000000..10a1ddd88 --- /dev/null +++ b/recipes-qt/qt/qtbase/0001-Force-qdbus-to-make-introspect-for-every-findMetaObj.patch @@ -0,0 +1,30 @@ +From a4943bb5c7fdf5eb297223d2c3bb02d2271bea48 Mon Sep 17 00:00:00 2001 +From: Risto Avila +Date: Thu, 17 Dec 2015 04:22:53 +0200 +Subject: [PATCH] Force qdbus to make introspect for every findMetaObject + +--- + src/dbus/qdbusintegrator.cpp | 7 +++++-- + 1 file changed, 5 insertions(+), 2 deletions(-) + +diff --git a/src/dbus/qdbusintegrator.cpp b/src/dbus/qdbusintegrator.cpp +index cce8b9c..ae2a9dc 100644 +--- a/src/dbus/qdbusintegrator.cpp ++++ b/src/dbus/qdbusintegrator.cpp +@@ -2512,8 +2512,11 @@ QDBusConnectionPrivate::findMetaObject(const QString &service, const QString &pa + if (!interface.isEmpty()) { + QDBusReadLocker locker(FindMetaObject1Action, this); + QDBusMetaObject *mo = cachedMetaObjects.value(interface, 0); +- if (mo) +- return mo; ++ if (mo) { ++ // service is not unique. Remove cached object to force introspect ++ cachedMetaObjects.remove(interface); ++ delete mo; ++ } + } + + // introspect the target object +-- +1.9.1 +