diff options
Diffstat (limited to 'sc/source/filter/oox/excelfilter.cxx')
-rw-r--r-- | sc/source/filter/oox/excelfilter.cxx | 23 |
1 files changed, 17 insertions, 6 deletions
diff --git a/sc/source/filter/oox/excelfilter.cxx b/sc/source/filter/oox/excelfilter.cxx index 6c2d6bd53339..8495767efd6b 100644 --- a/sc/source/filter/oox/excelfilter.cxx +++ b/sc/source/filter/oox/excelfilter.cxx @@ -105,11 +105,7 @@ bool ExcelFilter::importDocument() throw() if( aWorkbookPath.isEmpty() ) return false; - /* Construct the WorkbookGlobals object referred to by every instance of - the class WorkbookHelper, and execute the import filter by constructing - an instance of WorkbookFragment and loading the file. */ - WorkbookGlobalsRef xBookGlob = WorkbookHelper::constructGlobals( *this ); - if ( xBookGlob.get() && importFragment( new WorkbookFragment( *xBookGlob, aWorkbookPath ) ) ) + try { try { @@ -119,8 +115,23 @@ bool ExcelFilter::importDocument() throw() { SAL_WARN("sc", "exception when importing document properties " << e.Message); } - return true; + catch( ... ) + { + SAL_WARN("sc", "exception when importing document properties"); + } + /* Construct the WorkbookGlobals object referred to by every instance of + the class WorkbookHelper, and execute the import filter by constructing + an instance of WorkbookFragment and loading the file. */ + WorkbookGlobalsRef xBookGlob(WorkbookHelper::constructGlobals(*this)); + if (xBookGlob.get() && importFragment(new WorkbookFragment(*xBookGlob, aWorkbookPath))) + { + return true; + } + } + catch (...) + { } + return false; } |