[Libreoffice-commits] core.git: dbaccess/source

Michael Stahl mstahl at redhat.com
Fri Jan 10 09:11:02 PST 2014


 dbaccess/source/core/dataaccess/databasedocument.cxx |   31 +++++++++----------
 1 file changed, 16 insertions(+), 15 deletions(-)

New commits:
commit f60b61b2cf87e89938c760877a56bc4dd5c577a9
Author: Michael Stahl <mstahl at redhat.com>
Date:   Fri Jan 10 17:59:52 2014 +0100

    dbaccess: ODF export: set "Version" property on target Storage
    
    ... like SfxObjectShell::SetupStorage() does, and not on the property
    set that is passed to the XML export filters where it probably does
    nothing.
    
    Change-Id: I21da1b92fc921eb47e492169e69ef15ac2f0e19d

diff --git a/dbaccess/source/core/dataaccess/databasedocument.cxx b/dbaccess/source/core/dataaccess/databasedocument.cxx
index 5dbf3a1..007a3b3 100644
--- a/dbaccess/source/core/dataaccess/databasedocument.cxx
+++ b/dbaccess/source/core/dataaccess/databasedocument.cxx
@@ -1615,7 +1615,6 @@ void ODatabaseDocument::impl_writeStorage_throw( const Reference< XStorage >& _r
         { OUString("BaseURI"), 0, ::getCppuType( (OUString *)0 ),beans::PropertyAttribute::MAYBEVOID, 0 },
         { OUString("StreamName"), 0, ::getCppuType( (OUString *)0 ),beans::PropertyAttribute::MAYBEVOID, 0 },
         { OUString("UsePrettyPrinting"), 0, ::getCppuType((sal_Bool*)0), beans::PropertyAttribute::MAYBEVOID, 0},
-        { OUString("Version"), 0, ::getCppuType( (OUString *)0 ),beans::PropertyAttribute::MAYBEVOID, 0 },
         { OUString(), 0, css::uno::Type(), 0, 0 }
     };
     uno::Reference< beans::XPropertySet > xInfoSet( comphelper::GenericPropertySet_CreateInstance( new comphelper::PropertySetInfo( aExportInfoMap ) ) );
@@ -1625,31 +1624,33 @@ void ODatabaseDocument::impl_writeStorage_throw( const Reference< XStorage >& _r
     if ( aSaveOpt.IsSaveRelFSys() )
         xInfoSet->setPropertyValue("BaseURI", uno::makeAny(_rMediaDescriptor.getOrDefault("URL",OUString())));
 
-    OUString aVersion;
-    SvtSaveOptions::ODFDefaultVersion nDefVersion = aSaveOpt.GetODFDefaultVersion();
+    sal_Int32 nArgsLen = aDelegatorArguments.getLength();
+    aDelegatorArguments.realloc(nArgsLen+1);
+    aDelegatorArguments[nArgsLen++] <<= xInfoSet;
 
-    // older versions can not have this property set, it exists only starting from ODF1.2
-    if ( nDefVersion >= SvtSaveOptions::ODFVER_012 )
+    Reference< XPropertySet > xProp( _rxTargetStorage, UNO_QUERY_THROW );
+    xProp->setPropertyValue( INFO_MEDIATYPE, makeAny( (OUString)MIMETYPE_OASIS_OPENDOCUMENT_DATABASE ) );
+
+    OUString aVersion;
+    SvtSaveOptions::ODFDefaultVersion const nDefVersion =
+        aSaveOpt.GetODFDefaultVersion();
+    // older versions can not have this property set,
+    // it exists only starting from ODF1.2
+    if (nDefVersion >= SvtSaveOptions::ODFVER_012)
         aVersion = ODFVER_012_TEXT;
 
-    if ( !aVersion.isEmpty() )
+    if (!aVersion.isEmpty())
     {
         try
         {
-            xInfoSet->setPropertyValue( "Version" , uno::makeAny( aVersion ) );
+            xProp->setPropertyValue("Version" , uno::makeAny(aVersion));
         }
-        catch( const uno::Exception& )
+        catch (const uno::Exception& e)
         {
+            SAL_WARN("dbaccess", "exception setting Version: " << e.Message);
         }
     }
 
-    sal_Int32 nArgsLen = aDelegatorArguments.getLength();
-    aDelegatorArguments.realloc(nArgsLen+1);
-    aDelegatorArguments[nArgsLen++] <<= xInfoSet;
-
-    Reference< XPropertySet > xProp( _rxTargetStorage, UNO_QUERY_THROW );
-    xProp->setPropertyValue( INFO_MEDIATYPE, makeAny( (OUString)MIMETYPE_OASIS_OPENDOCUMENT_DATABASE ) );
-
     Reference< XComponent > xComponent( *const_cast< ODatabaseDocument* >( this ), UNO_QUERY_THROW );
 
     Sequence< PropertyValue > aMediaDescriptor;


More information about the Libreoffice-commits mailing list