diff options
author | Caolán McNamara <caolan.mcnamara@collabora.com> | 2023-07-22 19:55:06 +0100 |
---|---|---|
committer | Caolán McNamara <caolan.mcnamara@collabora.com> | 2023-07-23 11:53:17 +0200 |
commit | d6f6bcec4dbfa30c199cb5f4db7bea88ebbeb85d (patch) | |
tree | ce4e4825ba2ae1bc199ae3829ea085044539faf4 /sc/source/filter/oox | |
parent | b6f3b76fb611a5f2c7f32296bc86316b6abb32cb (diff) |
cid#1401342 Uncaught exception
Change-Id: I139c5989d243f6f8fd1b37395f1071f7cb179f5b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/154790
Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Diffstat (limited to 'sc/source/filter/oox')
-rw-r--r-- | sc/source/filter/oox/workbookhelper.cxx | 9 |
1 files changed, 8 insertions, 1 deletions
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; |