Fix crash in QTest's signal dumper
It Q_ASSERTs that argv is not a nullptr, so it would fail when an unconnected signal with 0 arguments was emitted. Change-Id: I5dd810fbeea5b6b511eff4705efdaa6a55739604 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
This commit is contained in:
parent
d15b02ff29
commit
2ec47d6cb5
@ -3593,6 +3593,10 @@ void doActivate(QObject *sender, int signal_index, void **argv)
|
|||||||
|
|
||||||
const QSignalSpyCallbackSet *signal_spy_set = callbacks_enabled ? qt_signal_spy_callback_set.load() : nullptr;
|
const QSignalSpyCallbackSet *signal_spy_set = callbacks_enabled ? qt_signal_spy_callback_set.load() : nullptr;
|
||||||
|
|
||||||
|
void *empty_argv[] = { nullptr };
|
||||||
|
if (!argv)
|
||||||
|
argv = empty_argv;
|
||||||
|
|
||||||
if (!sp->isSignalConnected(signal_index, false)) {
|
if (!sp->isSignalConnected(signal_index, false)) {
|
||||||
// The possible declarative connection is done, and nothing else is connected
|
// The possible declarative connection is done, and nothing else is connected
|
||||||
if (callbacks_enabled && signal_spy_set->signal_begin_callback != nullptr)
|
if (callbacks_enabled && signal_spy_set->signal_begin_callback != nullptr)
|
||||||
@ -3604,10 +3608,6 @@ void doActivate(QObject *sender, int signal_index, void **argv)
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
void *empty_argv[] = { nullptr };
|
|
||||||
if (!argv)
|
|
||||||
argv = empty_argv;
|
|
||||||
|
|
||||||
if (callbacks_enabled && signal_spy_set->signal_begin_callback != nullptr)
|
if (callbacks_enabled && signal_spy_set->signal_begin_callback != nullptr)
|
||||||
signal_spy_set->signal_begin_callback(sender, signal_index, argv);
|
signal_spy_set->signal_begin_callback(sender, signal_index, argv);
|
||||||
Q_TRACE(QMetaObject_activate_begin_signal, sender, signal_index);
|
Q_TRACE(QMetaObject_activate_begin_signal, sender, signal_index);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user