diff options
| author | Thiago Macieira <thiago.macieira@intel.com> | 2025-08-29 08:53:45 -0700 |
|---|---|---|
| committer | Thiago Macieira <thiago.macieira@intel.com> | 2025-10-23 18:52:01 -0700 |
| commit | 06c1b4705ebccedcb2007384540826b7ddc03fee (patch) | |
| tree | ae769aa31563c6949434e7d1c5251b696abffd4f /src/corelib/kernel/qobject.cpp | |
| parent | e5cec95bffc0a621715b27e4b14966c0dc86afe6 (diff) | |
QObject: use connectWarning() more
Drive-by mark it cold, like the other error functions above it.
Pick-to: 6.10 6.9 6.8
Change-Id: I2e4b0c0cad3d04ed7597fffd9616301fc736ed2e
Reviewed-by: Ahmad Samir <a.samirh78@gmail.com>
Diffstat (limited to 'src/corelib/kernel/qobject.cpp')
| -rw-r--r-- | src/corelib/kernel/qobject.cpp | 37 |
1 files changed, 19 insertions, 18 deletions
diff --git a/src/corelib/kernel/qobject.cpp b/src/corelib/kernel/qobject.cpp index 560a8c7d789..f5e2e7d80e6 100644 --- a/src/corelib/kernel/qobject.cpp +++ b/src/corelib/kernel/qobject.cpp @@ -2715,6 +2715,20 @@ static void err_info_about_objects(const char *func, const QObject *sender, cons qCWarning(lcConnect, "QObject::%s: (receiver name: '%s')", func, b.toLocal8Bit().data()); } +Q_DECL_COLD_FUNCTION +static void connectWarning(const QObject *sender, + const QMetaObject *senderMetaObject, + const QObject *receiver, + const char *message) +{ + const char *senderString = sender ? sender->metaObject()->className() + : senderMetaObject ? senderMetaObject->className() + : "Unknown"; + const char *receiverString = receiver ? receiver->metaObject()->className() + : "Unknown"; + qCWarning(lcConnect, "QObject::connect(%s, %s): %s", senderString, receiverString, message); +} + /*! Returns a pointer to the object that sent the signal, if called in a slot activated by a signal; otherwise it returns \nullptr. The pointer @@ -4105,8 +4119,9 @@ QMetaObject::Connection QMetaObject::connectImpl(const QObject *sender, const QM { QtPrivate::SlotObjUniquePtr slotObj(slotObjRaw); + const QMetaObject *senderMetaObject = sender->metaObject(); if (!signal.isValid() || signal.methodType() != QMetaMethod::Signal) { - qCWarning(lcConnect, "QObject::connect: invalid signal parameter"); + connectWarning(sender, senderMetaObject, receiver, "invalid signal parameter"); return QMetaObject::Connection(); } @@ -4116,7 +4131,6 @@ QMetaObject::Connection QMetaObject::connectImpl(const QObject *sender, const QM QMetaObjectPrivate::memberIndexes(sender, signal, &signal_index, &dummy); } - const QMetaObject *senderMetaObject = sender->metaObject(); if (signal_index == -1) { qCWarning(lcConnect, "QObject::connect: Can't find signal %s on instance of class %s", signal.methodSignature().constData(), senderMetaObject->className()); @@ -5433,7 +5447,7 @@ QMetaObject::Connection QObject::connectImpl(const QObject *sender, void **signa { QtPrivate::SlotObjUniquePtr slotObj(slotObjRaw); if (!signal) { - qCWarning(lcConnect, "QObject::connect: invalid nullptr parameter"); + connectWarning(sender, senderMetaObject, receiver, "invalid nullptr parameter"); return QMetaObject::Connection(); } @@ -5445,26 +5459,13 @@ QMetaObject::Connection QObject::connectImpl(const QObject *sender, void **signa break; } if (!senderMetaObject) { - qCWarning(lcConnect, "QObject::connect: signal not found in %s", sender->metaObject()->className()); + connectWarning(sender, senderMetaObject, receiver, "signal not found"); return QMetaObject::Connection(nullptr); } signal_index += QMetaObjectPrivate::signalOffset(senderMetaObject); return QObjectPrivate::connectImpl(sender, signal_index, receiver, slot, slotObj.release(), type, types, senderMetaObject); } -static void connectWarning(const QObject *sender, - const QMetaObject *senderMetaObject, - const QObject *receiver, - const char *message) -{ - const char *senderString = sender ? sender->metaObject()->className() - : senderMetaObject ? senderMetaObject->className() - : "Unknown"; - const char *receiverString = receiver ? receiver->metaObject()->className() - : "Unknown"; - qCWarning(lcConnect, "QObject::connect(%s, %s): %s", senderString, receiverString, message); -} - /*! \internal @@ -5683,7 +5684,7 @@ QMetaObject::Connection QObjectPrivate::connect(const QObject *sender, int signa { QtPrivate::SlotObjUniquePtr slotObj(slotObjRaw); if (!sender) { - qCWarning(lcConnect, "QObject::connect: invalid nullptr parameter"); + connectWarning(sender, nullptr, receiver, "invalid nullptr parameter"); return QMetaObject::Connection(); } const QMetaObject *senderMetaObject = sender->metaObject(); |
