[Libreoffice-commits] core.git: 3 commits - codemaker/source forms/source package/source

Caolán McNamara caolanm at redhat.com
Sat Jul 26 07:40:08 PDT 2014


 codemaker/source/codemaker/typemanager.cxx |    2 +-
 forms/source/inc/InterfaceContainer.hxx    |    2 +-
 forms/source/misc/InterfaceContainer.cxx   |   13 ++++++++-----
 package/source/xstor/xstorage.cxx          |    2 +-
 4 files changed, 11 insertions(+), 8 deletions(-)

New commits:
commit 8ec047030f5ff5b8235b68eed06c7ed68ddeecfe
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Sat Jul 26 15:22:46 2014 +0100

    coverity#706541 Uncaught exception
    
    and
    
    coverity#706537 Uncaught exception
    
    Change-Id: I403d83bb7aa4cf82edf1b6c608f9daac31576208

diff --git a/forms/source/inc/InterfaceContainer.hxx b/forms/source/inc/InterfaceContainer.hxx
index a75f392..36a219a 100644
--- a/forms/source/inc/InterfaceContainer.hxx
+++ b/forms/source/inc/InterfaceContainer.hxx
@@ -119,7 +119,7 @@ public:
     OInterfaceContainer( ::osl::Mutex& _rMutex, const OInterfaceContainer& _cloneSource );
 
     // late constructor for cloning
-    void clonedFrom( const OInterfaceContainer& _cloneSource );
+    void clonedFrom(const OInterfaceContainer& _cloneSource) throw(css::uno::RuntimeException, std::exception);
 
 protected:
     virtual ~OInterfaceContainer();
diff --git a/forms/source/misc/InterfaceContainer.cxx b/forms/source/misc/InterfaceContainer.cxx
index 27b246d..ea989e3 100644
--- a/forms/source/misc/InterfaceContainer.cxx
+++ b/forms/source/misc/InterfaceContainer.cxx
@@ -29,6 +29,7 @@
 #include <com/sun/star/container/XNamed.hpp>
 #include <com/sun/star/io/WrongFormatException.hpp>
 #include <com/sun/star/io/XMarkableStream.hpp>
+#include <com/sun/star/lang/WrappedTargetRuntimeException.hpp>
 #include <com/sun/star/lang/XComponent.hpp>
 #include <com/sun/star/util/XCloneable.hpp>
 #include <com/sun/star/form/XForm.hpp>
@@ -199,8 +200,7 @@ OInterfaceContainer::OInterfaceContainer( ::osl::Mutex& _rMutex, const OInterfac
     impl_createEventAttacher_nothrow();
 }
 
-
-void OInterfaceContainer::clonedFrom( const OInterfaceContainer& _cloneSource )
+void OInterfaceContainer::clonedFrom(const OInterfaceContainer& _cloneSource) throw(RuntimeException, std::exception)
 {
     try
     {
@@ -213,9 +213,13 @@ void OInterfaceContainer::clonedFrom( const OInterfaceContainer& _cloneSource )
             insertByIndex( i, makeAny( xClone ) );
         }
     }
-    catch( const Exception& )
+    catch (const RuntimeException&)
+    {
+        throw;
+    }
+    catch (const Exception&)
     {
-        throw WrappedTargetException(
+        throw WrappedTargetRuntimeException(
             "Could not clone the given interface hierarchy.",
             static_cast< XIndexContainer* >( const_cast< OInterfaceContainer* >( &_cloneSource ) ),
             ::cppu::getCaughtException()
@@ -223,7 +227,6 @@ void OInterfaceContainer::clonedFrom( const OInterfaceContainer& _cloneSource )
     }
 }
 
-
 void OInterfaceContainer::impl_createEventAttacher_nothrow()
 {
     try
commit 850be5e3d14b91f1097be9ac9c12ef85c13b55f8
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Sat Jul 26 15:10:37 2014 +0100

    coverity#706577 Uncaught exception
    
    Change-Id: Ifc4c7f3e7a19bad2ae420c0ebab54cf56404de51

diff --git a/package/source/xstor/xstorage.cxx b/package/source/xstor/xstorage.cxx
index f7a8b6e..d19e9d2 100644
--- a/package/source/xstor/xstorage.cxx
+++ b/package/source/xstor/xstorage.cxx
@@ -3874,7 +3874,7 @@ void SAL_CALL OStorage::insertRawEncrStreamElement( const OUString& aStreamName,
     }
 
     if ( m_pData->m_nStorageType != embed::StorageFormats::PACKAGE )
-        throw packages::NoEncryptionException( THROW_WHERE );
+        throw embed::InvalidStorageException( THROW_WHERE );
 
     if ( aStreamName.isEmpty() || !::comphelper::OStorageHelper::IsValidZipEntryFileName( aStreamName, false ) )
         throw lang::IllegalArgumentException( THROW_WHERE "Unexpected entry name syntax.", uno::Reference< uno::XInterface >(), 1 );
commit bcba2088ab6e2b762800b8c11e0bce25185b369a
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Sat Jul 26 15:02:45 2014 +0100

    coverity#1019323 Unchecked dynamic_cast
    
    Change-Id: I3d8b598e86339fdd51af48e62393550821b6278d

diff --git a/codemaker/source/codemaker/typemanager.cxx b/codemaker/source/codemaker/typemanager.cxx
index d2e346d..3d1bd83 100644
--- a/codemaker/source/codemaker/typemanager.cxx
+++ b/codemaker/source/codemaker/typemanager.cxx
@@ -180,7 +180,7 @@ codemaker::UnoType::Sort TypeManager::decompose(
         switch (s) {
         case codemaker::UnoType::SORT_TYPEDEF:
             if (resolveTypedefs) {
-                n = dynamic_cast< unoidl::TypedefEntity * >(ent.get())->
+                n = dynamic_cast<unoidl::TypedefEntity&>(*ent.get()).
                     getType();
                 while (n.startsWith("[]")) {
                     ++k; //TODO: overflow


More information about the Libreoffice-commits mailing list