From 94a3f3a037a7c58a46d90eb653e027a2381c2f27 Mon Sep 17 00:00:00 2001 From: Vitaly Fanaskov Date: Mon, 12 Aug 2019 10:43:30 +0200 Subject: QSignalSpy: Extract object validation to a separate method Change-Id: I167a01257cfdb679cb81861bfae26d8fa40f8c27 Reviewed-by: Volker Hilsheimer --- src/testlib/qsignalspy.h | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) (limited to 'src/testlib') diff --git a/src/testlib/qsignalspy.h b/src/testlib/qsignalspy.h index 7a8f9efa9a..91c2d139a8 100644 --- a/src/testlib/qsignalspy.h +++ b/src/testlib/qsignalspy.h @@ -59,10 +59,8 @@ public: explicit QSignalSpy(const QObject *obj, const char *aSignal) : m_waiting(false) { - if (!obj) { - qWarning("QSignalSpy: Cannot spy on a null object"); + if (!isObjectValid(obj)) return; - } if (!aSignal) { qWarning("QSignalSpy: Null signal name is not valid"); @@ -97,10 +95,8 @@ public: QSignalSpy(const typename QtPrivate::FunctionPointer::Object *obj, Func signal0) : m_waiting(false) { - if (!obj) { - qWarning("QSignalSpy: Cannot spy on a null object"); + if (!isObjectValid(obj)) return; - } if (!signal0) { qWarning("QSignalSpy: Null signal name is not valid"); @@ -173,6 +169,16 @@ private: return valid; } + static bool isObjectValid(const QObject *object) + { + const bool valid = !!object; + + if (!valid) + qWarning("QSignalSpy: Cannot spy on a null object"); + + return valid; + } + void initArgs(const QMetaMethod &member, const QObject *obj) { args.reserve(member.parameterCount()); -- cgit v1.2.3