From 399c44a133b8a2a409e30c271be74c93c42d992b Mon Sep 17 00:00:00 2001 From: Thiago Macieira Date: Mon, 10 Apr 2006 10:49:36 +0000 Subject: Merge from Subversion: * qt/qt-dbus.qdocconf: Update Trolltech's webpage link to something that exists (r526315) * qt/qdbusinternalfilters.cpp: Correctly detect non-scriptable slots/signals (r526316) * qt/qdbusinternalfilters.cpp: Fix the setProperty call and also return an unknown-method error if the parameters don't match for org.freedesktop.DBus.Properties. (r526842) * qt/examples/dbus.cpp: Allow passing of QVariants (r526843) * qt/qdbusintegrator.cpp: Restore the proper order of delivery: don't make method returns be delivered on priority (r528150) --- qt/qdbusinternalfilters.cpp | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'qt/qdbusinternalfilters.cpp') diff --git a/qt/qdbusinternalfilters.cpp b/qt/qdbusinternalfilters.cpp index e5a7fc92..7e938402 100644 --- a/qt/qdbusinternalfilters.cpp +++ b/qt/qdbusinternalfilters.cpp @@ -152,9 +152,13 @@ static QString generateInterfaceXml(const QMetaObject *mo, int flags, int method .arg(isOutput ? QLatin1String("out") : QLatin1String("in")); } - if (!isScriptable && - !(flags & (QDBusConnection::ExportAllSlots | QDBusConnection::ExportAllSignals))) - continue; + if (!isScriptable) { + // check if this was added by other means + if (isSignal && (flags & QDBusConnection::ExportAllSignals) != QDBusConnection::ExportAllSignals) + continue; + if (!isSignal && (flags & QDBusConnection::ExportAllSlots) != QDBusConnection::ExportAllSlots) + continue; + } if (qDBusCheckAsyncTag(mm.tag())) // add the no-reply annotation @@ -359,7 +363,7 @@ void qDBusPropertySet(const QDBusConnectionPrivate::ObjectTreeNode *node, const } } - if (!value.isValid() && node->flags & QDBusConnection::ExportProperties) { + if (node->flags & QDBusConnection::ExportProperties) { // try the object itself int pidx = node->obj->metaObject()->indexOfProperty(property_name); if (pidx != -1) { -- cgit