From b60f6447d0efc622792113bc4896c0dc176e8df3 Mon Sep 17 00:00:00 2001 From: Kent Hansen Date: Thu, 31 May 2012 21:27:47 +0200 Subject: Avoid accessing QObjectPrivate::currentSender directly from QtDBus In particular, currentSender->signal is about to be changed from the method index range to the signal index range (i.e., excluding non-signal methods). The public senderSignalIndex() function will still return the index in the method range, so QtDBus will then continue to work without change. If necessary, QtDBus can afterwards be ported back to using the internal API again (including the new QMetaObjectPrivate API for working with methods in the signal range). Change-Id: I58212e859560a8e241adee99dd2da9ef009d4e5b Reviewed-by: Thiago Macieira Reviewed-by: Olivier Goffart --- src/dbus/qdbusabstractadaptor.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'src/dbus/qdbusabstractadaptor.cpp') diff --git a/src/dbus/qdbusabstractadaptor.cpp b/src/dbus/qdbusabstractadaptor.cpp index 39584c436c..0d0c09a168 100644 --- a/src/dbus/qdbusabstractadaptor.cpp +++ b/src/dbus/qdbusabstractadaptor.cpp @@ -277,8 +277,7 @@ void QDBusAdaptorConnector::polish() void QDBusAdaptorConnector::relaySlot(void **argv) { - QObjectPrivate *d = static_cast(d_ptr.data()); - relay(d->currentSender->sender, d->currentSender->signal, argv); + relay(sender(), senderSignalIndex(), argv); } void QDBusAdaptorConnector::relay(QObject *senderObj, int lastSignalIdx, void **argv) -- cgit v1.2.3