sc/source/filter/oox/workbookhelper.cxx | 9 ++++++++- sw/source/core/docnode/ndtbl.cxx | 3 ++- 2 files changed, 10 insertions(+), 2 deletions(-)
New commits: commit d6f6bcec4dbfa30c199cb5f4db7bea88ebbeb85d Author: Caolán McNamara <[email protected]> AuthorDate: Sat Jul 22 19:55:06 2023 +0100 Commit: Caolán McNamara <[email protected]> CommitDate: Sun Jul 23 11:53:17 2023 +0200 cid#1401342 Uncaught exception Change-Id: I139c5989d243f6f8fd1b37395f1071f7cb179f5b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/154790 Tested-by: Caolán McNamara <[email protected]> Reviewed-by: Caolán McNamara <[email protected]> diff --git a/sc/source/filter/oox/workbookhelper.cxx b/sc/source/filter/oox/workbookhelper.cxx index 817340afb341..3f9e3fe7d0ec 100644 --- a/sc/source/filter/oox/workbookhelper.cxx +++ b/sc/source/filter/oox/workbookhelper.cxx @@ -226,6 +226,8 @@ private: /** Finalizes the filter process (sets some needed document properties). */ void finalize(); + void ImplDestroy(); + private: typedef ::std::unique_ptr< ScEditEngineDefaulter > EditEngineDefaulterPtr; typedef ::std::unique_ptr< FormulaBuffer > FormulaBufferPtr; @@ -308,12 +310,17 @@ WorkbookGlobals::WorkbookGlobals( ExcelFilter& rFilter ) : initialize(); } -WorkbookGlobals::~WorkbookGlobals() +void WorkbookGlobals::ImplDestroy() { finalize(); mrExcelFilter.unregisterWorkbookGlobals(); } +WorkbookGlobals::~WorkbookGlobals() +{ + suppress_fun_call_w_exception(ImplDestroy()); +} + ScDocumentImport& WorkbookGlobals::getDocImport() { return *mxDocImport; commit b6f3b76fb611a5f2c7f32296bc86316b6abb32cb Author: Caolán McNamara <[email protected]> AuthorDate: Sat Jul 22 19:52:03 2023 +0100 Commit: Caolán McNamara <[email protected]> CommitDate: Sun Jul 23 11:53:03 2023 +0200 cid#1538889 Pointer to local outside scope Change-Id: I32c6336d33b6fa7caa2a3b7861220f12096ae53b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/154767 Tested-by: Caolán McNamara <[email protected]> Reviewed-by: Caolán McNamara <[email protected]> diff --git a/sw/source/core/docnode/ndtbl.cxx b/sw/source/core/docnode/ndtbl.cxx index 42c62bc9f802..b182407db8ef 100644 --- a/sw/source/core/docnode/ndtbl.cxx +++ b/sw/source/core/docnode/ndtbl.cxx @@ -1928,7 +1928,8 @@ void SwDoc::DelTable(SwTableNode *const pTableNd) { { // tdf#156267 remove DdeBookmarks before deleting nodes - SwDataChanged aTmp(SwPaM(*pTableNd, *pTableNd->EndOfSectionNode())); + SwPaM aTmpPaM(*pTableNd, *pTableNd->EndOfSectionNode()); + SwDataChanged aTmp(aTmpPaM); } bool bNewTextNd = false;
