summaryrefslogtreecommitdiff
path: root/sc/source/ui/view/gridwin.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'sc/source/ui/view/gridwin.cxx')
-rw-r--r--sc/source/ui/view/gridwin.cxx13
1 files changed, 5 insertions, 8 deletions
diff --git a/sc/source/ui/view/gridwin.cxx b/sc/source/ui/view/gridwin.cxx
index 9255837a9e3f..95ffc0e67ba5 100644
--- a/sc/source/ui/view/gridwin.cxx
+++ b/sc/source/ui/view/gridwin.cxx
@@ -4333,21 +4333,18 @@ void ScGridWindow::PasteSelection( const Point& rPosPixel )
{
// within Calc
- ScTransferObj* pCellTransfer = pOwnSelection->GetCellData();
+ // keep a reference to the data in case the selection is changed during paste
+ rtl::Reference<ScTransferObj> pCellTransfer = pOwnSelection->GetCellData();
if ( pCellTransfer )
{
- // keep a reference to the data in case the selection is changed during paste
- uno::Reference<datatransfer::XTransferable> xRef( pCellTransfer );
- DropTransferObj( pCellTransfer, nPosX, nPosY, aLogicPos, DND_ACTION_COPY );
+ DropTransferObj( pCellTransfer.get(), nPosX, nPosY, aLogicPos, DND_ACTION_COPY );
}
else
{
- ScDrawTransferObj* pDrawTransfer = pOwnSelection->GetDrawData();
+ // keep a reference to the data in case the selection is changed during paste
+ rtl::Reference<ScDrawTransferObj> pDrawTransfer = pOwnSelection->GetDrawData();
if ( pDrawTransfer )
{
- // keep a reference to the data in case the selection is changed during paste
- uno::Reference<datatransfer::XTransferable> xRef( pDrawTransfer );
-
// bSameDocClipboard argument for PasteDraw is needed
// because only DragData is checked directly inside PasteDraw
pViewData->GetView()->PasteDraw(