From e1b2af4d021cb6121153dabf3dc5d5e918985500 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A5rten=20Nordheim?= Date: Tue, 27 Jun 2023 17:05:49 +0200 Subject: [PATCH] invokeMethod: replace a local RAII struct with qScopeGuard Change-Id: I3991c6f212cf78ef5cbdf562168817ae87d5c703 Reviewed-by: Thiago Macieira --- src/corelib/kernel/qmetaobject.cpp | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/src/corelib/kernel/qmetaobject.cpp b/src/corelib/kernel/qmetaobject.cpp index 0ca1c67249..c26be14986 100644 --- a/src/corelib/kernel/qmetaobject.cpp +++ b/src/corelib/kernel/qmetaobject.cpp @@ -1613,11 +1613,7 @@ bool QMetaObject::invokeMethodImpl(QObject *obj, const char *member, Qt::Connect bool QMetaObject::invokeMethodImpl(QObject *object, QtPrivate::QSlotObjectBase *slot, Qt::ConnectionType type, void *ret) { - struct Holder { - QtPrivate::QSlotObjectBase *obj; - ~Holder() { obj->destroyIfLastRef(); } - } holder = { slot }; - Q_UNUSED(holder); + auto slotGuard = qScopeGuard([slot] { slot->destroyIfLastRef(); }); if (! object) return false;