diff options
| author | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2025-05-13 10:14:40 +0200 |
|---|---|---|
| committer | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2025-05-13 22:30:29 +0200 |
| commit | aecf087dead4855c09c3fe5aedcabc9678fdd2e6 (patch) | |
| tree | 8a2c4c4629cf4bd748793512b07a34568ed12dc5 /sources/pyside6/libpyside/signalmanager.cpp | |
| parent | 0acf51e178db93a235be6cfb0f08c1c3138e924d (diff) | |
libpyside: Make PyObjectWrapper movable
This is required by today's QVariant conversion code.
Task-number: PYSIDE-2193
Pick-to: 6.9
Change-Id: I66efcfb797653fe1d617f1f0027fd60ec95e8a79
Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
Diffstat (limited to 'sources/pyside6/libpyside/signalmanager.cpp')
| -rw-r--r-- | sources/pyside6/libpyside/signalmanager.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/sources/pyside6/libpyside/signalmanager.cpp b/sources/pyside6/libpyside/signalmanager.cpp index 933edd318..e5f069c86 100644 --- a/sources/pyside6/libpyside/signalmanager.cpp +++ b/sources/pyside6/libpyside/signalmanager.cpp @@ -27,6 +27,7 @@ #include <QtCore/qscopedpointer.h> #include <memory> +#include <utility> using namespace Qt::StringLiterals; @@ -125,6 +126,17 @@ PyObjectWrapper::PyObjectWrapper(const PyObjectWrapper &other) Py_XINCREF(m_me); } +PyObjectWrapper::PyObjectWrapper(PyObjectWrapper &&other) noexcept + : m_me{std::exchange(other.m_me, nullptr)} +{ +} + +PyObjectWrapper &PyObjectWrapper::operator=(PyObjectWrapper &&other) noexcept +{ + m_me = std::exchange(other.m_me, nullptr); + return *this; +} + PyObjectWrapper::~PyObjectWrapper() { // Check that Python is still initialized as sometimes this is called by a static destructor |
