summaryrefslogtreecommitdiffstats
path: root/src/dbus
diff options
context:
space:
mode:
authorKent Hansen <kent.hansen@nokia.com>2012-03-27 16:19:29 +0200
committerKent Hansen <kent.hansen@nokia.com>2012-03-27 19:22:48 +0200
commitd236fe2214340164bec4f34cb27dea4a634ee0de (patch)
treecda4ebbcc91717b37e5a2dbccb9ee46c2a1d3885 /src/dbus
parent2b17b0235b70f89d15d3b91a14c3297d38377f94 (diff)
parentcbc883da6910b3357a4e03d0e2dfa841da1a03e8 (diff)
Merge master into api_changes
Conflicts: src/corelib/global/qisenum.h src/dbus/qdbusconnection_p.h src/widgets/kernel/qwidget.cpp tests/auto/other/qaccessibility/tst_qaccessibility.cpp Change-Id: I85102515d5fec835832cc20ffdc5c1ba578bd01d
Diffstat (limited to 'src/dbus')
-rw-r--r--src/dbus/dbus.pro7
-rw-r--r--src/dbus/qdbusabstractadaptor.cpp2
-rw-r--r--src/dbus/qdbusconnection_p.h12
-rw-r--r--src/dbus/qdbusintegrator.cpp8
-rw-r--r--src/dbus/qdbusintegrator_p.h6
-rw-r--r--src/dbus/qdbusmisc.cpp5
-rw-r--r--src/dbus/qdbuspendingcall.cpp7
-rw-r--r--src/dbus/qdbuspendingcall_p.h4
-rw-r--r--src/dbus/qdbusxmlgenerator.cpp2
9 files changed, 25 insertions, 28 deletions
diff --git a/src/dbus/dbus.pro b/src/dbus/dbus.pro
index 6fd48de48d..100736252e 100644
--- a/src/dbus/dbus.pro
+++ b/src/dbus/dbus.pro
@@ -51,7 +51,9 @@ PUB_HEADERS = qdbusargument.h \
qdbuspendingcall.h \
qdbuspendingreply.h \
qdbuscontext.h \
- qdbusvirtualobject.h
+ qdbusvirtualobject.h \
+ qdbusservicewatcher.h \
+ qdbusunixfiledescriptor.h
HEADERS += $$PUB_HEADERS \
qdbusconnection_p.h \
qdbusmessage_p.h \
@@ -66,8 +68,7 @@ HEADERS += $$PUB_HEADERS \
qdbusintegrator_p.h \
qdbuspendingcall_p.h \
qdbus_symbols_p.h \
- qdbusservicewatcher.h \
- qdbusunixfiledescriptor.h
+ qdbusintrospection_p.h
SOURCES += qdbusconnection.cpp \
qdbusconnectioninterface.cpp \
qdbuserror.cpp \
diff --git a/src/dbus/qdbusabstractadaptor.cpp b/src/dbus/qdbusabstractadaptor.cpp
index bacf93bac8..cc2712297d 100644
--- a/src/dbus/qdbusabstractadaptor.cpp
+++ b/src/dbus/qdbusabstractadaptor.cpp
@@ -296,7 +296,7 @@ void QDBusAdaptorConnector::relay(QObject *senderObj, int lastSignalIdx, void **
realObject = realObject->parent();
// break down the parameter list
- QList<int> types;
+ QVector<int> types;
int inputCount = qDBusParametersForMethod(mm, types);
if (inputCount == -1)
// invalid signal signature
diff --git a/src/dbus/qdbusconnection_p.h b/src/dbus/qdbusconnection_p.h
index caeb116b31..fb53f3efba 100644
--- a/src/dbus/qdbusconnection_p.h
+++ b/src/dbus/qdbusconnection_p.h
@@ -126,7 +126,7 @@ public:
QString service, path, signature;
QObject* obj;
int midx;
- QList<int> params;
+ QVector<int> params;
QStringList argumentMatch;
QByteArray matchRule;
};
@@ -243,7 +243,7 @@ private:
void sendError(const QDBusMessage &msg, QDBusError::ErrorType code);
void deliverCall(QObject *object, int flags, const QDBusMessage &msg,
- const QList<int> &metaTypes, int slotIdx);
+ const QVector<int> &metaTypes, int slotIdx);
bool isServiceRegisteredByThread(const QString &serviceName) const;
@@ -311,7 +311,7 @@ public:
public:
// static methods
- static int findSlot(QObject *obj, const QByteArray &normalizedName, QList<int>& params);
+ static int findSlot(QObject *obj, const QByteArray &normalizedName, QVector<int> &params);
static bool prepareHook(QDBusConnectionPrivate::SignalHook &hook, QString &key,
const QString &service,
const QString &path, const QString &interface, const QString &name,
@@ -323,7 +323,7 @@ public:
int idx, const QList<int> &metaTypes,
const QDBusMessage &msg);
static QDBusCallDeliveryEvent *prepareReply(QDBusConnectionPrivate *target, QObject *object,
- int idx, const QList<int> &metaTypes,
+ int idx, const QVector<int> &metaTypes,
const QDBusMessage &msg);
static void processFinishedCall(QDBusPendingCallPrivate *call);
@@ -337,9 +337,9 @@ public:
};
// in qdbusmisc.cpp
-extern int qDBusParametersForMethod(const QMetaMethod &mm, QList<int>& metaTypes);
+extern int qDBusParametersForMethod(const QMetaMethod &mm, QVector<int> &metaTypes);
#endif // QT_BOOTSTRAPPED
-extern int qDBusParametersForMethod(const QList<QByteArray> &parameters, QList<int>& metaTypes);
+extern int qDBusParametersForMethod(const QList<QByteArray> &parameters, QVector<int>& metaTypes);
extern bool qDBusCheckAsyncTag(const char *tag);
#ifndef QT_BOOTSTRAPPED
extern bool qDBusInterfaceInObject(QObject *obj, const QString &interface_name);
diff --git a/src/dbus/qdbusintegrator.cpp b/src/dbus/qdbusintegrator.cpp
index c36c1efb71..5bdd0ee8d8 100644
--- a/src/dbus/qdbusintegrator.cpp
+++ b/src/dbus/qdbusintegrator.cpp
@@ -624,7 +624,7 @@ static void huntAndEmit(DBusConnection *connection, DBusMessage *msg,
}
static int findSlot(const QMetaObject *mo, const QByteArray &name, int flags,
- const QString &signature_, QList<int>& metaTypes)
+ const QString &signature_, QVector<int> &metaTypes)
{
QByteArray msgSignature = signature_.toLatin1();
@@ -722,7 +722,7 @@ static QDBusCallDeliveryEvent * const DIRECT_DELIVERY = (QDBusCallDeliveryEvent
QDBusCallDeliveryEvent* QDBusConnectionPrivate::prepareReply(QDBusConnectionPrivate *target,
QObject *object, int idx,
- const QList<int> &metaTypes,
+ const QVector<int> &metaTypes,
const QDBusMessage &msg)
{
Q_ASSERT(object);
@@ -860,7 +860,7 @@ bool QDBusConnectionPrivate::activateCall(QObject* object, int flags, const QDBu
}
void QDBusConnectionPrivate::deliverCall(QObject *object, int /*flags*/, const QDBusMessage &msg,
- const QList<int> &metaTypes, int slotIdx)
+ const QVector<int> &metaTypes, int slotIdx)
{
Q_ASSERT_X(!object || QThread::currentThread() == object->thread(),
"QDBusConnection: internal threading error",
@@ -1235,7 +1235,7 @@ void QDBusConnectionPrivate::serviceOwnerChangedNoLock(const QString &name,
}
int QDBusConnectionPrivate::findSlot(QObject* obj, const QByteArray &normalizedName,
- QList<int> &params)
+ QVector<int> &params)
{
int midx = obj->metaObject()->indexOfMethod(normalizedName);
if (midx == -1)
diff --git a/src/dbus/qdbusintegrator_p.h b/src/dbus/qdbusintegrator_p.h
index c9a2efc57d..f910d2d009 100644
--- a/src/dbus/qdbusintegrator_p.h
+++ b/src/dbus/qdbusintegrator_p.h
@@ -84,7 +84,7 @@ struct QDBusSlotCache
{
int flags;
int slotIdx;
- QList<int> metaTypes;
+ QVector<int> metaTypes;
};
typedef QMultiHash<QString, Data> Hash;
Hash hash;
@@ -94,7 +94,7 @@ class QDBusCallDeliveryEvent: public QMetaCallEvent
{
public:
QDBusCallDeliveryEvent(const QDBusConnection &c, int id, QObject *sender,
- const QDBusMessage &msg, const QList<int> &types, int f = 0)
+ const QDBusMessage &msg, const QVector<int> &types, int f = 0)
: QMetaCallEvent(0, id, 0, sender, -1), connection(c), message(msg), metaTypes(types), flags(f)
{ }
@@ -106,7 +106,7 @@ public:
private:
QDBusConnection connection; // just for refcounting
QDBusMessage message;
- QList<int> metaTypes;
+ QVector<int> metaTypes;
int flags;
};
diff --git a/src/dbus/qdbusmisc.cpp b/src/dbus/qdbusmisc.cpp
index fa9b74199e..30f2adc8b3 100644
--- a/src/dbus/qdbusmisc.cpp
+++ b/src/dbus/qdbusmisc.cpp
@@ -50,6 +50,7 @@
#include "qdbusconnection_p.h"
#include "qdbusabstractadaptor_p.h" // for QCLASSINFO_DBUS_*
#endif
+#include <QtCore/qvector.h>
#include "qdbusmetatype_p.h"
#ifndef QT_NO_DBUS
@@ -130,14 +131,14 @@ bool qDBusInterfaceInObject(QObject *obj, const QString &interface_name)
// metaTypes.count() >= retval + 1 in all cases
//
// sig must be the normalised signature for the method
-int qDBusParametersForMethod(const QMetaMethod &mm, QList<int>& metaTypes)
+int qDBusParametersForMethod(const QMetaMethod &mm, QVector<int> &metaTypes)
{
return qDBusParametersForMethod(mm.parameterTypes(), metaTypes);
}
#endif // QT_BOOTSTRAPPED
-int qDBusParametersForMethod(const QList<QByteArray> &parameterTypes, QList<int>& metaTypes)
+int qDBusParametersForMethod(const QList<QByteArray> &parameterTypes, QVector<int>& metaTypes)
{
QDBusMetaTypeId::init();
metaTypes.clear();
diff --git a/src/dbus/qdbuspendingcall.cpp b/src/dbus/qdbuspendingcall.cpp
index bb1bb76801..9659afa2e5 100644
--- a/src/dbus/qdbuspendingcall.cpp
+++ b/src/dbus/qdbuspendingcall.cpp
@@ -180,12 +180,7 @@ bool QDBusPendingCallPrivate::setReplyCallback(QObject *target, const char *memb
if (metaTypes.at(count) == QDBusMetaTypeId::message)
--count;
- if (count == 0) {
- setMetaTypes(count, 0);
- } else {
- QVector<int> types = QVector<int>::fromList(metaTypes);
- setMetaTypes(count, types.constData() + 1);
- }
+ setMetaTypes(count, count ? metaTypes.constData() + 1 : 0);
return true;
}
diff --git a/src/dbus/qdbuspendingcall_p.h b/src/dbus/qdbuspendingcall_p.h
index eb0d9b6a11..20e8b15660 100644
--- a/src/dbus/qdbuspendingcall_p.h
+++ b/src/dbus/qdbuspendingcall_p.h
@@ -56,7 +56,7 @@
#include <qshareddata.h>
#include <qpointer.h>
-#include <qlist.h>
+#include <qvector.h>
#include <qmutex.h>
#include <qwaitcondition.h>
@@ -82,7 +82,7 @@ public:
// for the callback mechanism (see setReplyCallback and QDBusConnectionPrivate::sendWithReplyAsync)
QPointer<QObject> receiver;
- QList<int> metaTypes;
+ QVector<int> metaTypes;
int methodIdx;
bool autoDelete;
diff --git a/src/dbus/qdbusxmlgenerator.cpp b/src/dbus/qdbusxmlgenerator.cpp
index a158600f42..d97258d514 100644
--- a/src/dbus/qdbusxmlgenerator.cpp
+++ b/src/dbus/qdbusxmlgenerator.cpp
@@ -166,7 +166,7 @@ static QString generateInterfaceXml(const QMetaObject *mo, int flags, int method
continue; // wasn't a valid type
QList<QByteArray> names = mm.parameterNames();
- QList<int> types;
+ QVector<int> types;
int inputCount = qDBusParametersForMethod(mm, types);
if (inputCount == -1)
continue; // invalid form