[Libreoffice-commits] .: 2 commits - sc/source

Markus Mohrhard mmohrhard at kemper.freedesktop.org
Sun Aug 7 09:25:10 PDT 2011


 sc/source/core/data/table2.cxx    |    4 ++++
 sc/source/filter/xml/xmlexprt.cxx |   38 ++++++++++++++++++++++----------------
 2 files changed, 26 insertions(+), 16 deletions(-)

New commits:
commit 2c0a392df1e75aa33befa2ff818171eea23d3005
Author: Markus Mohrhard <markus.mohrhard at googlemail.com>
Date:   Sat Aug 6 03:30:48 2011 +0200

    fix for fdo#39792: changes to range names invalidate stream too
    
    If we don't invalidate the table stream when we change the local range
    name, the new range name will only be written if something else has been
    changed in the sheet

diff --git a/sc/source/core/data/table2.cxx b/sc/source/core/data/table2.cxx
index b079128..5e44461 100644
--- a/sc/source/core/data/table2.cxx
+++ b/sc/source/core/data/table2.cxx
@@ -3054,6 +3054,10 @@ void ScTable::SetRangeName(ScRangeName* pNew)
 {
     delete mpRangeName;
     mpRangeName = pNew;
+
+    //fdo#39792: mark stream as invalid, otherwise new ScRangeName will not be written to file
+    if (IsStreamValid())
+        SetStreamValid(false);
 }
 
 ScRangeName* ScTable::GetRangeName() const
commit 8b8f6835e60e179de616117f59af64d6f2c34b0a
Author: Markus Mohrhard <markus.mohrhard at googlemail.com>
Date:   Sun Aug 7 18:16:19 2011 +0200

    fix for fdo#39678: don't write password algorithm in odf 1.0 and 1.1

diff --git a/sc/source/filter/xml/xmlexprt.cxx b/sc/source/filter/xml/xmlexprt.cxx
index 4bdd0e7..6541418 100644
--- a/sc/source/filter/xml/xmlexprt.cxx
+++ b/sc/source/filter/xml/xmlexprt.cxx
@@ -1524,16 +1524,19 @@ void ScXMLExport::SetBodyAttributes()
         if (aBuffer.getLength())
         {
             AddAttribute(XML_NAMESPACE_TABLE, XML_PROTECTION_KEY, aBuffer.makeStringAndClear());
-            if (eHashUsed == PASSHASH_XL)
+            if ( getDefaultVersion() >= SvtSaveOptions::ODFVER_012 )
             {
-                AddAttribute(XML_NAMESPACE_TABLE, XML_PROTECTION_KEY_DIGEST_ALGORITHM,
-                             ScPassHashHelper::getHashURI(PASSHASH_XL));
-                AddAttribute(XML_NAMESPACE_TABLE, XML_PROTECTION_KEY_DIGEST_ALGORITHM_2,
-                             ScPassHashHelper::getHashURI(PASSHASH_SHA1));
+                if (eHashUsed == PASSHASH_XL)
+                {
+                    AddAttribute(XML_NAMESPACE_TABLE, XML_PROTECTION_KEY_DIGEST_ALGORITHM,
+                                 ScPassHashHelper::getHashURI(PASSHASH_XL));
+                    AddAttribute(XML_NAMESPACE_TABLE, XML_PROTECTION_KEY_DIGEST_ALGORITHM_2,
+                                 ScPassHashHelper::getHashURI(PASSHASH_SHA1));
+                }
+                else if (eHashUsed == PASSHASH_SHA1)
+                    AddAttribute(XML_NAMESPACE_TABLE, XML_PROTECTION_KEY_DIGEST_ALGORITHM,
+                                 ScPassHashHelper::getHashURI(PASSHASH_SHA1));
             }
-            else if (eHashUsed == PASSHASH_SHA1)
-                AddAttribute(XML_NAMESPACE_TABLE, XML_PROTECTION_KEY_DIGEST_ALGORITHM,
-                             ScPassHashHelper::getHashURI(PASSHASH_SHA1));
         }
     }
 }
@@ -2694,16 +2697,19 @@ void ScXMLExport::WriteTable(sal_Int32 nTable, const Reference<sheet::XSpreadshe
                 if (aBuffer.getLength())
                 {
                     AddAttribute(XML_NAMESPACE_TABLE, XML_PROTECTION_KEY, aBuffer.makeStringAndClear());
-                    if (eHashUsed == PASSHASH_XL)
+                    if ( getDefaultVersion() >= SvtSaveOptions::ODFVER_012 )
                     {
-                        AddAttribute(XML_NAMESPACE_TABLE, XML_PROTECTION_KEY_DIGEST_ALGORITHM,
-                                     ScPassHashHelper::getHashURI(PASSHASH_XL));
-                        AddAttribute(XML_NAMESPACE_TABLE, XML_PROTECTION_KEY_DIGEST_ALGORITHM_2,
-                                     ScPassHashHelper::getHashURI(PASSHASH_SHA1));
+                        if (eHashUsed == PASSHASH_XL)
+                        {
+                            AddAttribute(XML_NAMESPACE_TABLE, XML_PROTECTION_KEY_DIGEST_ALGORITHM,
+                                         ScPassHashHelper::getHashURI(PASSHASH_XL));
+                            AddAttribute(XML_NAMESPACE_TABLE, XML_PROTECTION_KEY_DIGEST_ALGORITHM_2,
+                                         ScPassHashHelper::getHashURI(PASSHASH_SHA1));
+                        }
+                        else if (eHashUsed == PASSHASH_SHA1)
+                            AddAttribute(XML_NAMESPACE_TABLE, XML_PROTECTION_KEY_DIGEST_ALGORITHM,
+                                         ScPassHashHelper::getHashURI(PASSHASH_SHA1));
                     }
-                    else if (eHashUsed == PASSHASH_SHA1)
-                        AddAttribute(XML_NAMESPACE_TABLE, XML_PROTECTION_KEY_DIGEST_ALGORITHM,
-                                     ScPassHashHelper::getHashURI(PASSHASH_SHA1));
                 }
             }
         }


More information about the Libreoffice-commits mailing list