coverity#1371312 Missing move assignment operator
Change-Id: I4484f270e33e479c954c8421a46d52f3d81ec4dc
This commit is contained in:
@@ -283,10 +283,12 @@ public:
|
|||||||
|
|
||||||
TransferableDataHelper();
|
TransferableDataHelper();
|
||||||
TransferableDataHelper( const TransferableDataHelper& rDataHelper );
|
TransferableDataHelper( const TransferableDataHelper& rDataHelper );
|
||||||
|
TransferableDataHelper( TransferableDataHelper&& rDataHelper );
|
||||||
TransferableDataHelper( const css::uno::Reference< css::datatransfer::XTransferable >& rxTransferable );
|
TransferableDataHelper( const css::uno::Reference< css::datatransfer::XTransferable >& rxTransferable );
|
||||||
~TransferableDataHelper();
|
~TransferableDataHelper();
|
||||||
|
|
||||||
TransferableDataHelper& operator=( const TransferableDataHelper& rDataHelper );
|
TransferableDataHelper& operator=( const TransferableDataHelper& rDataHelper );
|
||||||
|
TransferableDataHelper& operator=( TransferableDataHelper&& rDataHelper );
|
||||||
|
|
||||||
const css::uno::Reference< css::datatransfer::XTransferable >& GetTransferable() const { return mxTransfer; }
|
const css::uno::Reference< css::datatransfer::XTransferable >& GetTransferable() const { return mxTransfer; }
|
||||||
css::uno::Reference< css::datatransfer::XTransferable > GetXTransferable() const;
|
css::uno::Reference< css::datatransfer::XTransferable > GetXTransferable() const;
|
||||||
|
@@ -1137,15 +1137,24 @@ TransferableDataHelper::TransferableDataHelper(const TransferableDataHelper& rDa
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
TransferableDataHelper::TransferableDataHelper(TransferableDataHelper&& rDataHelper)
|
||||||
|
: mxTransfer(std::move(rDataHelper.mxTransfer))
|
||||||
|
, mxClipboard(std::move(rDataHelper.mxClipboard))
|
||||||
|
, mxFormats(std::move(rDataHelper.mxFormats))
|
||||||
|
, mxObjDesc(std::move(rDataHelper.mxObjDesc))
|
||||||
|
, mxImpl(new TransferableDataHelper_Impl)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
TransferableDataHelper& TransferableDataHelper::operator=( const TransferableDataHelper& rDataHelper )
|
TransferableDataHelper& TransferableDataHelper::operator=( const TransferableDataHelper& rDataHelper )
|
||||||
{
|
{
|
||||||
if ( this != &rDataHelper )
|
if ( this != &rDataHelper )
|
||||||
{
|
{
|
||||||
::osl::MutexGuard aGuard(mxImpl->maMutex);
|
::osl::MutexGuard aGuard(mxImpl->maMutex);
|
||||||
|
|
||||||
bool bWasClipboardListening = (nullptr != mxImpl->mpClipboardListener);
|
const bool bWasClipboardListening = (nullptr != mxImpl->mpClipboardListener);
|
||||||
|
|
||||||
if ( bWasClipboardListening )
|
if (bWasClipboardListening)
|
||||||
StopClipboardListening();
|
StopClipboardListening();
|
||||||
|
|
||||||
mxTransfer = rDataHelper.mxTransfer;
|
mxTransfer = rDataHelper.mxTransfer;
|
||||||
@@ -1153,13 +1162,33 @@ TransferableDataHelper& TransferableDataHelper::operator=( const TransferableDat
|
|||||||
mxObjDesc.reset(new TransferableObjectDescriptor(*rDataHelper.mxObjDesc));
|
mxObjDesc.reset(new TransferableObjectDescriptor(*rDataHelper.mxObjDesc));
|
||||||
mxClipboard = rDataHelper.mxClipboard;
|
mxClipboard = rDataHelper.mxClipboard;
|
||||||
|
|
||||||
if ( bWasClipboardListening )
|
if (bWasClipboardListening)
|
||||||
StartClipboardListening();
|
StartClipboardListening();
|
||||||
}
|
}
|
||||||
|
|
||||||
return *this;
|
return *this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
TransferableDataHelper& TransferableDataHelper::operator=(TransferableDataHelper&& rDataHelper)
|
||||||
|
{
|
||||||
|
::osl::MutexGuard aGuard(mxImpl->maMutex);
|
||||||
|
|
||||||
|
const bool bWasClipboardListening = (nullptr != mxImpl->mpClipboardListener);
|
||||||
|
|
||||||
|
if (bWasClipboardListening)
|
||||||
|
StopClipboardListening();
|
||||||
|
|
||||||
|
mxTransfer = std::move(rDataHelper.mxTransfer);
|
||||||
|
mxFormats = std::move(rDataHelper.mxFormats);
|
||||||
|
mxObjDesc = std::move(rDataHelper.mxObjDesc);
|
||||||
|
mxClipboard = std::move(rDataHelper.mxClipboard);
|
||||||
|
|
||||||
|
if (bWasClipboardListening)
|
||||||
|
StartClipboardListening();
|
||||||
|
|
||||||
|
return *this;
|
||||||
|
}
|
||||||
|
|
||||||
TransferableDataHelper::~TransferableDataHelper()
|
TransferableDataHelper::~TransferableDataHelper()
|
||||||
{
|
{
|
||||||
StopClipboardListening( );
|
StopClipboardListening( );
|
||||||
|
Reference in New Issue
Block a user