summaryrefslogtreecommitdiff
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:31 +0000
commit0db60837932a5f2f09dc88eb977c1bbf31b911e8 (patch)
tree2a3856330f16915f52d2e3c8a74661dd16240900
parentd6063cf9fd93b630a0065dfbe51c66228a704b1f (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/10370 Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com> Tested-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
-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 cf43455cd3e4..4546a1d8bba1 100644
--- a/sc/source/filter/xcl97/XclExpChangeTrack.cxx
+++ b/sc/source/filter/xcl97/XclExpChangeTrack.cxx
@@ -1408,7 +1408,6 @@ XclExpChangeTrack::XclExpChangeTrack( const XclExpRoot& rRoot ) :
{
PushActionRecord( *pScAction );
const ScChangeAction* pPrevAction = pScAction->GetPrev();
- pTempChangeTrack->Undo( pScAction->GetActionNumber(), pScAction->GetActionNumber() );
pScAction = pPrevAction;
}