summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArmin Le Grand <Armin.Le.Grand@cib.de>2018-07-04 09:45:45 +0200
committerCaolán McNamara <caolanm@redhat.com>2018-10-04 11:04:59 +0200
commit7239716e4307a348d818606340e34b4fc6ceb282 (patch)
tree10b6c095c6f3001cb77f2c50e019a5c2efe4ff0e
parentf19cba204552ecb11b97c8047320733c498cf518 (diff)
tdf#118199 avoid double dispose actions
Cell::dispose may be (and gets in this case) called multiple times. Do not double-cleanup stuff. Change-Id: Icb907968e8211eb4ba0bbb1c4d060eb8be9a874a Reviewed-on: https://gerrit.libreoffice.org/56924 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Jenkins Reviewed-by: Armin Le Grand <Armin.Le.Grand@cib.de> (cherry picked from commit ea39c41fdf63191579d25f327db81db14862251c) Reviewed-on: https://gerrit.libreoffice.org/61318 Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
-rw-r--r--svx/source/table/cell.cxx9
1 files changed, 7 insertions, 2 deletions
diff --git a/svx/source/table/cell.cxx b/svx/source/table/cell.cxx
index 8eadbd453804..e402c483a5ba 100644
--- a/svx/source/table/cell.cxx
+++ b/svx/source/table/cell.cxx
@@ -442,8 +442,13 @@ void Cell::dispose()
mxTable.clear();
}
- mpProperties.reset();
- SetOutlinerParaObject( nullptr );
+ // tdf#118199 avoid double dispose, detect by using mpProperties
+ // as indicator. Only use SetOutlinerParaObject once
+ if( mpProperties )
+ {
+ mpProperties.reset();
+ SetOutlinerParaObject( nullptr );
+ }
}
void Cell::merge( sal_Int32 nColumnSpan, sal_Int32 nRowSpan )