From 4f86b7a86cae630c19f6f0d1b4d6672c25e2eb3c Mon Sep 17 00:00:00 2001 From: Stephan Bergmann Date: Mon, 19 Sep 2016 12:40:51 +0200 Subject: cid#1371142: Move semantics for css::uno::WeakReferenceHelper Change-Id: I442b2d8061bd7d50cbf832b345a7a63461e26224 --- cppuhelper/source/gcc3.map | 5 +++++ cppuhelper/source/weak.cxx | 10 ++++++++++ 2 files changed, 15 insertions(+) (limited to 'cppuhelper') diff --git a/cppuhelper/source/gcc3.map b/cppuhelper/source/gcc3.map index 12c29834ab16..f1537e874020 100644 --- a/cppuhelper/source/gcc3.map +++ b/cppuhelper/source/gcc3.map @@ -430,6 +430,11 @@ global: _ZN4cppu15supportsServiceEPN3com3sun4star4lang12XServiceInfoERKN3rtl8OUStringE; # cppu::supportsService(com::sun::star::lang::XServiceInfo*, rtl::OUString const&) } UDK_3.8; +LIBO_UDK_5.3 { # LibO 5.3 +global: + _ZN3com3sun4star3uno19WeakReferenceHelperaSEOS3_; # com::sun::star::uno::WeakReferenceHelper::operator=(com::sun::star::uno::WeakReferenceHelper&&) +} LIBO_UDK_3.9; + # Unique libstdc++ symbols: GLIBCXX_3.4 { global: diff --git a/cppuhelper/source/weak.cxx b/cppuhelper/source/weak.cxx index 1c9b57ccadb9..9a3a8bac1fae 100644 --- a/cppuhelper/source/weak.cxx +++ b/cppuhelper/source/weak.cxx @@ -24,7 +24,9 @@ #include #include #include + #include +#include using namespace osl; using namespace com::sun::star::uno; @@ -485,6 +487,14 @@ WeakReferenceHelper& WeakReferenceHelper::operator=(const WeakReferenceHelper& r return operator = ( xInt ); } +WeakReferenceHelper & WeakReferenceHelper::operator =( + WeakReferenceHelper && other) +{ + clear(); + std::swap(m_pImpl, other.m_pImpl); + return *this; +} + WeakReferenceHelper & SAL_CALL WeakReferenceHelper::operator= (const Reference< XInterface > & xInt) { -- cgit