diff options
-rw-r--r-- | offapi/com/sun/star/packages/zip/ZipFileAccess.idl | 8 | ||||
-rw-r--r-- | package/source/zippackage/zipfileaccess.cxx | 2 | ||||
-rw-r--r-- | vcl/source/gdi/impimagetree.cxx | 4 |
3 files changed, 12 insertions, 2 deletions
diff --git a/offapi/com/sun/star/packages/zip/ZipFileAccess.idl b/offapi/com/sun/star/packages/zip/ZipFileAccess.idl index a53362bc6e1f..6d54509b5670 100644 --- a/offapi/com/sun/star/packages/zip/ZipFileAccess.idl +++ b/offapi/com/sun/star/packages/zip/ZipFileAccess.idl @@ -20,6 +20,8 @@ #define __com_sun_star_packages_zip_ZipFileAccess_idl__ #include <com/sun/star/packages/zip/XZipFileAccess2.idl> +#include <com/sun/star/packages/zip/ZipException.idl> +#include <com/sun/star/ucb/ContentCreationException.idl> #include <com/sun/star/ucb/InteractiveIOException.idl> @@ -31,7 +33,11 @@ module com { module sun { module star { module packages { module zip { */ service ZipFileAccess : XZipFileAccess2 { - createWithURL([in] string URL) raises ( com::sun::star::io::IOException, com::sun::star::ucb::InteractiveIOException ); + createWithURL([in] string URL) + raises ( com::sun::star::io::IOException, + com::sun::star::ucb::ContentCreationException, + com::sun::star::ucb::InteractiveIOException, + com::sun::star::packages::zip::ZipException ); }; diff --git a/package/source/zippackage/zipfileaccess.cxx b/package/source/zippackage/zipfileaccess.cxx index 4365482808c0..5f30ee9b7233 100644 --- a/package/source/zippackage/zipfileaccess.cxx +++ b/package/source/zippackage/zipfileaccess.cxx @@ -172,7 +172,7 @@ void SAL_CALL OZipFileAccess::initialize( const uno::Sequence< uno::Any >& aArgu throw lang::DisposedException(OSL_LOG_PREFIX, uno::Reference< uno::XInterface >() ); if ( m_pZipFile ) - throw uno::Exception(OSL_LOG_PREFIX, uno::Reference< uno::XInterface >() ); // initialization is allowed only one time + throw uno::RuntimeException(OSL_LOG_PREFIX, uno::Reference< uno::XInterface >() ); // initialization is allowed only one time if ( !aArguments.getLength() ) throw lang::IllegalArgumentException(OSL_LOG_PREFIX, uno::Reference< uno::XInterface >(), 1 ); diff --git a/vcl/source/gdi/impimagetree.cxx b/vcl/source/gdi/impimagetree.cxx index 426738bef45e..1ab5e23bf911 100644 --- a/vcl/source/gdi/impimagetree.cxx +++ b/vcl/source/gdi/impimagetree.cxx @@ -301,6 +301,8 @@ bool ImplImageTree::find( if (!m_path.second.is()) { try { m_path.second = css::packages::zip::ZipFileAccess::createWithURL(comphelper::getProcessComponentContext(), m_path.first + ".zip"); + } catch (const css::uno::RuntimeException &) { + throw; } catch (const css::uno::Exception & e) { SAL_INFO("vcl", "ImplImageTree::find exception " << e.Message << " for " << m_path.first); @@ -341,6 +343,8 @@ void ImplImageTree::loadImageLinks() try { m_path.second = css::packages::zip::ZipFileAccess::createWithURL(comphelper::getProcessComponentContext(), m_path.first + ".zip"); + } catch (const css::uno::RuntimeException &) { + throw; } catch (const css::uno::Exception & e) { |