diff options
| author | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2022-11-11 09:22:37 +0100 |
|---|---|---|
| committer | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2022-11-11 15:52:56 +0100 |
| commit | 8d4312f1cc90f9c7f86f8fefb62d31a61c674fc0 (patch) | |
| tree | 04af2a1300da868be79793fa3ad1f00d2992c1a5 /sources/pyside6/libpyside/signalmanager.cpp | |
| parent | 8d5c1b048c25977dd5bd9cdc20ce984c0fe30478 (diff) | |
Fix clazy warnings
- Fix missing reference in for loop
- Fix potential memory leak on error in SignalManager
Pick-to: 6.4
Change-Id: I14819572ae250469eccac90dfbc905bf0d33c9de
Reviewed-by: Christian Tismer <tismer@stackless.com>
Diffstat (limited to 'sources/pyside6/libpyside/signalmanager.cpp')
| -rw-r--r-- | sources/pyside6/libpyside/signalmanager.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/sources/pyside6/libpyside/signalmanager.cpp b/sources/pyside6/libpyside/signalmanager.cpp index 9120db5f8..9a9d1c19b 100644 --- a/sources/pyside6/libpyside/signalmanager.cpp +++ b/sources/pyside6/libpyside/signalmanager.cpp @@ -23,6 +23,7 @@ #include <QtCore/QByteArrayView> #include <QtCore/QDebug> #include <QtCore/QHash> +#include <QtCore/QScopedPointer> #include <algorithm> #include <limits> @@ -494,11 +495,11 @@ int SignalManager::callPythonMetaMethod(const QMetaMethod &method, void **args, } if (pyArguments) { - Shiboken::Conversions::SpecificConverter *retConverter = nullptr; + QScopedPointer<Shiboken::Conversions::SpecificConverter> retConverter; const char *returnType = method.typeName(); if (returnType && std::strcmp("", returnType) && std::strcmp("void", returnType)) { - retConverter = new Shiboken::Conversions::SpecificConverter(returnType); - if (!retConverter || !*retConverter) { + retConverter.reset(new Shiboken::Conversions::SpecificConverter(returnType)); + if (!retConverter->isValid()) { PyErr_Format(PyExc_RuntimeError, "Can't find converter for '%s' to call Python meta method.", returnType); return -1; } @@ -513,7 +514,6 @@ int SignalManager::callPythonMetaMethod(const QMetaMethod &method, void **args, if (!retval.isNull() && retval != Py_None && !PyErr_Occurred() && retConverter) { retConverter->toCpp(retval, args[0]); } - delete retConverter; } return -1; |
