summaryrefslogtreecommitdiff
path: root/sc
diff options
context:
space:
mode:
authorKohei Yoshida <kohei.yoshida@collabora.com>2014-07-17 15:52:52 -0400
committerMarkus Mohrhard <markus.mohrhard@googlemail.com>2014-07-17 21:26:50 +0000
commitc7727b1c1682a1373668c898a2de1b1627a09d8c (patch)
tree189429d0e6c36926884a5c4515b275da1678d27e /sc
parented4cbd4f6726dcae80bf8b42bee97e5bcf465502 (diff)
fdo#81470: Fix a crasher during xlsx export with revisions.
Calling Undo() here removes revision entries which also removes formula cell instances stored in the entries. The problem is that the XclExpChTrCellContent instances store pointers to these formula instances for later use, and removing the entries at this location causes deleted formula instances to get accessed which in turn causes segfault. Since all revision entries get deleted when the temp change track instance gets deleted at the end of the revision export, not deleting the entries here will not cause memory leaks. Change-Id: I85f8064945a841b684e4fc4a97c3f9bb6a2de353 (cherry picked from commit 3bce16799c34d0b28704c43eae77501c0f6aec1e) Reviewed-on: https://gerrit.libreoffice.org/10371 Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com> Tested-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
Diffstat (limited to 'sc')
-rw-r--r--sc/source/filter/xcl97/XclExpChangeTrack.cxx1
1 files changed, 0 insertions, 1 deletions
diff --git a/sc/source/filter/xcl97/XclExpChangeTrack.cxx b/sc/source/filter/xcl97/XclExpChangeTrack.cxx
index 7033b3ea121a..4589aea1d378 100644
--- a/sc/source/filter/xcl97/XclExpChangeTrack.cxx
+++ b/sc/source/filter/xcl97/XclExpChangeTrack.cxx
@@ -1443,7 +1443,6 @@ XclExpChangeTrack::XclExpChangeTrack( const XclExpRoot& rRoot ) :
{
PushActionRecord( *pScAction );
const ScChangeAction* pPrevAction = pScAction->GetPrev();
- pTempChangeTrack->Undo( pScAction->GetActionNumber(), pScAction->GetActionNumber() );
pScAction = pPrevAction;
}