summaryrefslogtreecommitdiffstats
path: root/qt/qdbusinternalfilters.cpp
diff options
context:
space:
mode:
authorThiago Macieira <thiago@kde.org>2006-04-10 10:49:36 +0000
committerThiago Macieira <thiago@kde.org>2006-04-10 10:49:36 +0000
commit399c44a133b8a2a409e30c271be74c93c42d992b (patch)
treec4c83254c434deb8c6e6f857cb2d1bbf60366b88 /qt/qdbusinternalfilters.cpp
parent68b0f5235909a25a7cc4f679592fc7765e845cbf (diff)
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)
Diffstat (limited to 'qt/qdbusinternalfilters.cpp')
-rw-r--r--qt/qdbusinternalfilters.cpp12
1 files changed, 8 insertions, 4 deletions
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) {