diff --git a/src/corelib/statemachine/qstatemachine.cpp b/src/corelib/statemachine/qstatemachine.cpp index fffe6de567..21c3ab50b5 100644 --- a/src/corelib/statemachine/qstatemachine.cpp +++ b/src/corelib/statemachine/qstatemachine.cpp @@ -2299,16 +2299,10 @@ int QSignalEventGenerator::qt_metacall(QMetaObject::Call _c, int _id, void **_a) void QSignalEventGenerator::execute(void **_a) { -// ### in Qt 4.6 we can use QObject::senderSignalIndex() - QObjectPrivate *d = static_cast(d_ptr.data()); - int signalIndex = -1; - QObject *sender = this->sender(); - if (sender && d->currentSender) - signalIndex = d->currentSender->signal; - + int signalIndex = senderSignalIndex(); Q_ASSERT(signalIndex != -1); QStateMachine *machine = qobject_cast(parent()); - QStateMachinePrivate::get(machine)->handleTransitionSignal(sender, signalIndex, _a); + QStateMachinePrivate::get(machine)->handleTransitionSignal(sender(), signalIndex, _a); } QSignalEventGenerator::QSignalEventGenerator(QStateMachine *parent)