diff options
author | Pranav Kant <pranav913@gmail.com> | 2015-03-17 12:56:54 +0530 |
---|---|---|
committer | Stephan Bergmann <sbergman@redhat.com> | 2015-03-20 12:18:02 +0000 |
commit | 33de587e95dddfc8e3c89b84f90b3d1bca823dae (patch) | |
tree | c65ada218c27ae4f2e80b4e3476b67c8e4554ef8 /editeng | |
parent | 9e2e9453cbca9399e1c670b354cfc3c23d70307f (diff) |
tdf#88230: cleanup solar mutex yielding
Use SolarMutexReleaser, instead.
Change-Id: I276459c42b688813ea168d6fc80466a07a5ecba4
Signed-off-by: Stephan Bergmann <sbergman@redhat.com>
Diffstat (limited to 'editeng')
-rw-r--r-- | editeng/source/editeng/impedit.cxx | 42 |
1 files changed, 20 insertions, 22 deletions
diff --git a/editeng/source/editeng/impedit.cxx b/editeng/source/editeng/impedit.cxx index f0af59472a0a..3553707d3470 100644 --- a/editeng/source/editeng/impedit.cxx +++ b/editeng/source/editeng/impedit.cxx @@ -1313,22 +1313,23 @@ void ImpEditView::CutCopy( ::com::sun::star::uno::Reference< ::com::sun::star::d { uno::Reference<datatransfer::XTransferable> xData = pEditEngine->CreateTransferable( GetEditSelection() ); - const sal_uInt32 nRef = Application::ReleaseSolarMutex(); - - try { - rxClipboard->setContents( xData, NULL ); + SolarMutexReleaser aReleaser; - // #87756# FlushClipboard, but it would be better to become a TerminateListener to the Desktop and flush on demand... - uno::Reference< datatransfer::clipboard::XFlushableClipboard > xFlushableClipboard( rxClipboard, uno::UNO_QUERY ); - if( xFlushableClipboard.is() ) - xFlushableClipboard->flushClipboard(); - } - catch( const ::com::sun::star::uno::Exception& ) - { - } + try + { + rxClipboard->setContents( xData, NULL ); + + // #87756# FlushClipboard, but it would be better to become a TerminateListener to the Desktop and flush on demand... + uno::Reference< datatransfer::clipboard::XFlushableClipboard > xFlushableClipboard( rxClipboard, uno::UNO_QUERY ); + if( xFlushableClipboard.is() ) + xFlushableClipboard->flushClipboard(); + } + catch( const ::com::sun::star::uno::Exception& ) + { + } - Application::AcquireSolarMutex( nRef ); + } if ( bCut ) { @@ -1346,17 +1347,14 @@ void ImpEditView::Paste( ::com::sun::star::uno::Reference< ::com::sun::star::dat { uno::Reference< datatransfer::XTransferable > xDataObj; - const sal_uInt32 nRef = Application::ReleaseSolarMutex(); - try - { - xDataObj = rxClipboard->getContents(); - } + { + SolarMutexReleaser aReleaser; + xDataObj = rxClipboard->getContents(); + } catch( const ::com::sun::star::uno::Exception& ) - { - } - - Application::AcquireSolarMutex( nRef ); + { + } if ( xDataObj.is() && EditEngine::HasValidData( xDataObj ) ) { |