summaryrefslogtreecommitdiff
path: root/svl
diff options
context:
space:
mode:
Diffstat (limited to 'svl')
-rw-r--r--svl/source/svdde/ddedata.cxx15
-rw-r--r--svl/unx/source/svdde/ddedummy.cxx13
2 files changed, 24 insertions, 4 deletions
diff --git a/svl/source/svdde/ddedata.cxx b/svl/source/svdde/ddedata.cxx
index d6cd5341e64d..44817c3d03d8 100644
--- a/svl/source/svdde/ddedata.cxx
+++ b/svl/source/svdde/ddedata.cxx
@@ -57,7 +57,7 @@ DdeData::DdeData( const OUString& s )
xImp->nFmt = SotClipboardFormatId::STRING;
}
-DdeData::DdeData( const DdeData& rData )
+DdeData::DdeData(const DdeData& rData)
{
xImp.reset(new DdeDataImp);
xImp->hData = rData.xImp->hData;
@@ -67,6 +67,11 @@ DdeData::DdeData( const DdeData& rData )
Lock();
}
+DdeData::DdeData(DdeData&& rData)
+ : xImp(std::move(rData.xImp))
+{
+}
+
DdeData::~DdeData()
{
if (xImp && xImp->hData)
@@ -99,7 +104,7 @@ long DdeData::getSize() const
return xImp->nData;
}
-DdeData& DdeData::operator = ( const DdeData& rData )
+DdeData& DdeData::operator=(const DdeData& rData)
{
if ( &rData != this )
{
@@ -110,6 +115,12 @@ DdeData& DdeData::operator = ( const DdeData& rData )
return *this;
}
+DdeData& DdeData::operator=(DdeData&& rData)
+{
+ xImp = std::move(rData.xImp);
+ return *this;
+}
+
sal_uLong DdeData::GetExternalFormat(SotClipboardFormatId nFmt)
{
switch( nFmt )
diff --git a/svl/unx/source/svdde/ddedummy.cxx b/svl/unx/source/svdde/ddedummy.cxx
index 393759545a19..c8f95d7c15ce 100644
--- a/svl/unx/source/svdde/ddedummy.cxx
+++ b/svl/unx/source/svdde/ddedummy.cxx
@@ -32,7 +32,11 @@ DdeData::DdeData( const OUString& )
{
}
-DdeData::DdeData( const DdeData& )
+DdeData::DdeData(const DdeData&)
+{
+}
+
+DdeData::DdeData(DdeData&&)
{
}
@@ -53,7 +57,12 @@ SotClipboardFormatId DdeData::GetFormat() const
return SotClipboardFormatId::NONE;
}
-DdeData& DdeData::operator = ( const DdeData& )
+DdeData& DdeData::operator=(const DdeData&)
+{
+ return *this;
+}
+
+DdeData& DdeData::operator=(DdeData&&)
{
return *this;
}