diff options
-rw-r--r-- | src/dbus/qdbusdemarshaller.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/dbus/qdbusdemarshaller.cpp b/src/dbus/qdbusdemarshaller.cpp index cf631baa4f..3852e53d57 100644 --- a/src/dbus/qdbusdemarshaller.cpp +++ b/src/dbus/qdbusdemarshaller.cpp @@ -33,6 +33,9 @@ #include "qdbusargument_p.h" #include "qdbusconnection.h" + +#include <qscopedpointer.h> + #include <stdlib.h> QT_BEGIN_NAMESPACE @@ -417,12 +420,12 @@ QDBusDemarshaller *QDBusDemarshaller::endCommon() QDBusArgument QDBusDemarshaller::duplicate() { - QDBusDemarshaller *d = new QDBusDemarshaller(capabilities); + QScopedPointer<QDBusDemarshaller> d(new QDBusDemarshaller(capabilities)); d->iterator = iterator; d->message = q_dbus_message_ref(message); q_dbus_message_iter_next(&iterator); - return QDBusArgumentPrivate::create(d); + return QDBusArgumentPrivate::create(d.take()); } QT_END_NAMESPACE |