summaryrefslogtreecommitdiffstats
path: root/src/corelib
diff options
context:
space:
mode:
authorKent Hansen <kent.hansen@nokia.com>2012-05-31 21:49:07 +0200
committerQt by Nokia <qt-info@nokia.com>2012-06-04 01:18:52 +0200
commitff505197689062264bf2abc0661d03d371e997df (patch)
treec3c0caecf86858c8de92f51ae92895f7c4efbb07 /src/corelib
parent09163941268745bbe231d0b2c25697940aa40127 (diff)
Change testlib signal dumper hooks to use signal index range
Another step towards getting rid of the class method offset computation in QMetaObject::activate(). Since QMetaObjectPrivate::signal() is private API, this also required adding a testlib dependency on core-private (and getting rid of the duplicated QSignalSpyCallbackSet struct). Change-Id: I0d830f35392a6b44fc321c5285877ec0bf437100 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Diffstat (limited to 'src/corelib')
-rw-r--r--src/corelib/kernel/qobject.cpp8
-rw-r--r--src/corelib/kernel/qobject_p.h6
2 files changed, 6 insertions, 8 deletions
diff --git a/src/corelib/kernel/qobject.cpp b/src/corelib/kernel/qobject.cpp
index ae96fffcec..d6793e7568 100644
--- a/src/corelib/kernel/qobject.cpp
+++ b/src/corelib/kernel/qobject.cpp
@@ -3299,11 +3299,9 @@ void QMetaObject::activate(QObject *sender, int methodOffset, int signalOffset,
if (sender->d_func()->blockSig)
return;
- int signal_absolute_index = methodOffset + local_signal_index;
-
void *empty_argv[] = { 0 };
if (qt_signal_spy_callback_set.signal_begin_callback != 0) {
- qt_signal_spy_callback_set.signal_begin_callback(sender, signal_absolute_index,
+ qt_signal_spy_callback_set.signal_begin_callback(sender, signal_index,
argv ? argv : empty_argv);
}
@@ -3337,7 +3335,7 @@ void QMetaObject::activate(QObject *sender, int methodOffset, int signalOffset,
if (!connectionLists.connectionLists) {
locker.unlock();
if (qt_signal_spy_callback_set.signal_end_callback != 0)
- qt_signal_spy_callback_set.signal_end_callback(sender, signal_absolute_index);
+ qt_signal_spy_callback_set.signal_end_callback(sender, signal_index);
return;
}
@@ -3441,7 +3439,7 @@ void QMetaObject::activate(QObject *sender, int methodOffset, int signalOffset,
}
if (qt_signal_spy_callback_set.signal_end_callback != 0)
- qt_signal_spy_callback_set.signal_end_callback(sender, signal_absolute_index);
+ qt_signal_spy_callback_set.signal_end_callback(sender, signal_index);
}
diff --git a/src/corelib/kernel/qobject_p.h b/src/corelib/kernel/qobject_p.h
index 8121e74245..02c9ac61a7 100644
--- a/src/corelib/kernel/qobject_p.h
+++ b/src/corelib/kernel/qobject_p.h
@@ -69,11 +69,11 @@ class QThreadData;
class QObjectConnectionListVector;
namespace QtSharedPointer { struct ExternalRefCountData; }
-/* mirrored in QtTestLib, DON'T CHANGE without prior warning */
+/* for QtTestLib */
struct QSignalSpyCallbackSet
{
- typedef void (*BeginCallback)(QObject *caller, int method_index, void **argv);
- typedef void (*EndCallback)(QObject *caller, int method_index);
+ typedef void (*BeginCallback)(QObject *caller, int signal_or_method_index, void **argv);
+ typedef void (*EndCallback)(QObject *caller, int signal_or_method_index);
BeginCallback signal_begin_callback,
slot_begin_callback;
EndCallback signal_end_callback,