https://bz.apache.org/ooo/show_bug.cgi?id=118023

--- Comment #5 from [email protected] ---
Top of a rough stack trace, with some of my notes:

#0  ScFormulaCell::UpdateReference (this=0x82973c2d0, eUpdateRefMode=URM_MOVE,
r=@0x7fffffff9448, nDx=0, nDy=3, nDz=0, pUndoDoc=0x82dd5b030,
pUndoCellPos=0x7fffffff93f0)
    at cell2.cxx:743


#1  0x0000000822505435 in ScColumn::UpdateReference (this=0x821ad7010,
eUpdateRefMode=URM_MOVE, nCol1=0, nRow1=3, nTab1=0, nCol2=0, nRow2=3, nTab2=0,
nDx=0, nDy=3, nDz=0, pUndoDoc=0x82dd5b030)
    at column.cxx:1665


#2  0x00000008226cd49c in ScTable::UpdateReference (this=0x821ad7010,
eUpdateRefMode=URM_MOVE, nCol1=0, nRow1=3, nTab1=0, nCol2=0, nRow2=3, nTab2=0,
nDx=0, nDy=3, nDz=0, pUndoDoc=0x82dd5b030, bIncludeDraw=0 '\0', 
    bUpdateNoteCaptionPos=true)
    at table1.cxx:1221


#3  0x0000000822554f6a in ScDocument::UpdateReference (this=0x815dcec90,
eUpdateRefMode=URM_MOVE, nCol1=0, nRow1=3, nTab1=0, nCol2=0, nRow2=3, nTab2=0,
nDx=0, nDy=3, nDz=0, pUndoDoc=0x82dd5b030, bIncludeDraw=0 '\0', 
    bUpdateNoteCaptionPos=true)
    at documen3.cxx:929

  Formula does change after ScTable::UpdateReference()

#4  0x000000082257e369 in ScDocument::CopyBlockFromClip (this=0x815dcec90,
nCol1=0, nRow1=3, nCol2=0, nRow2=3, rMark=@0x7fffffffaac8, nDx=0, nDy=3,
pCBFCP=0x7fffffff9dc8)
    at document.cxx:1991

  Function does not pass on pCBFCP->pClipDoc further
  Formula does change after ScDocument::UpdateReference()

#5  0x000000082257fa56 in ScDocument::CopyFromClip (this=0x815dcec90,
rDestRange=@0x7fffffffa710, rMark=@0x7fffffffaac8, nInsFlag=127,
pRefUndoDoc=0x82dd5b030, pClipDoc=0x82dd58c30, bResetCut=1 '\001', bAsLink=0
'\0', 
    bIncludeFiltered=1 '\001', bSkipAttrForEmpty=0 '\0',
pDestRanges=0x7fffffff9d88)
    at document.cxx:2225

  Formula does change after ScDocument::CopyBlockFromClip()

#6  0x0000000821fc9367 in ScViewFunc::PasteFromClip (this=0x80af74890,
nFlags=255, pClipDoc=0x82dd58c30, nFunction=0, bSkipEmpty=0 '\0', bTranspose=0
'\0', bAsLink=0 '\0', eMoveMode=INS_NONE, nUndoExtraFlags=0, bAllowDialogs=1
'\001')
    at viewfun3.cxx:1380

  Function is 600 lines!!!
  2 ScDocuments: pClipDoc with data being pasted into pDoc
  Calls pDoc->CopyFromClip() passing pClipDoc

#7  0x00000008220f7d64 in ScCellShell::PasteFromClipboard
(pViewData=0x80af74898, pTabViewShell=0x80af74810, bShowDialog=true)
    at cellsh1.cxx:2193

  System vs own clipboard.
  Forcing use of the system clipboard doesn't by itself help

#8  0x00000008220f20c8 in ScCellShell::ExecuteEdit (this=0x82a1a6c20,
rReq=@0x7fffffffd310)
    at cellsh1.cxx:1179



ScDocument::CopyBlockFromClip() does not pass the source document any further
up the stack, making it impossible for functions it calls to determine whether
it's an intra-document or inter-document paste. This function also seems
critical to the paste: it has a for loop transferring data, followed by an if
statement updating references.

-- 
You are receiving this mail because:
You are on the CC list for the issue.
You are the assignee for the issue.

Reply via email to