pyuno/inc/pyuno.hxx | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-)
New commits: commit c136c978751e6d3f86fd2ca6c3d468049c0d3f51 Author: Caolán McNamara <caol...@redhat.com> Date: Fri Sep 23 11:59:16 2016 +0100 coverity#1371219 Missing move assignment operator Change-Id: I72ed6082b561079b45e82d8258fa1abbe23117e2 Reviewed-on: https://gerrit.libreoffice.org/29228 Reviewed-by: Caolán McNamara <caol...@redhat.com> Tested-by: Caolán McNamara <caol...@redhat.com> diff --git a/pyuno/inc/pyuno.hxx b/pyuno/inc/pyuno.hxx index c80d9b1..bd11666 100644 --- a/pyuno/inc/pyuno.hxx +++ b/pyuno/inc/pyuno.hxx @@ -101,7 +101,8 @@ public: throw std::bad_alloc(); } - PyRef( const PyRef &r ) : m( r.get() ) { Py_XINCREF( m ); } + PyRef(const PyRef &r) : m(r.get()) { Py_XINCREF(m); } + PyRef(PyRef &&r) : m(r.get()) { r.scratch(); } ~PyRef() { Py_XDECREF( m ); } @@ -113,11 +114,20 @@ public: return m; } - PyRef & operator = ( const PyRef & r ) + PyRef& operator=(const PyRef& r) { PyObject *tmp = m; m = r.getAcquired(); - Py_XDECREF( tmp ); + Py_XDECREF(tmp); + return *this; + } + + PyRef& operator=(PyRef&& r) + { + PyObject *tmp = m; + m = r.get(); + r.scratch(); + Py_XDECREF(tmp); return *this; }
_______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits