[Libreoffice-commits] core.git: Branch 'libreoffice-4-3' - sw/qa sw/source

Rohit Deshmukh rohit.deshmukh at synerzip.com
Wed Jun 11 03:26:05 PDT 2014


 sw/qa/extras/ooxmlexport/data/fdo79817.docx  |binary
 sw/qa/extras/ooxmlexport/ooxmlexport.cxx     |    9 +++++++++
 sw/source/filter/ww8/docxattributeoutput.cxx |    2 +-
 3 files changed, 10 insertions(+), 1 deletion(-)

New commits:
commit 73d1c167c029594eb0be8eb24c065de39b9f69ab
Author: Rohit Deshmukh <rohit.deshmukh at synerzip.com>
Date:   Mon Jun 9 15:41:57 2014 +0530

    fdo#79817:Fix for corruption having databinding have duplicates attributes
    
    File contains SDT content, in which after export databinding have duplicate attribute.
    
    Conflicts:
    	sw/qa/extras/ooxmlexport/ooxmlexport.cxx
    Reviewed on:
    	https://gerrit.libreoffice.org/9693
    
    Change-Id: Ibe828964c054bdd5a63b5c0c903bc7441d953d72
    (cherry picked from commit 88f84eb1b0eebbb7e0a072f1e7001a9207ebbe9e)
    Reviewed-on: https://gerrit.libreoffice.org/9729
    Reviewed-by: Jacobo Aragunde Pérez <jaragunde at igalia.com>
    Tested-by: Jacobo Aragunde Pérez <jaragunde at igalia.com>

diff --git a/sw/qa/extras/ooxmlexport/data/fdo79817.docx b/sw/qa/extras/ooxmlexport/data/fdo79817.docx
new file mode 100644
index 0000000..4194c43
Binary files /dev/null and b/sw/qa/extras/ooxmlexport/data/fdo79817.docx differ
diff --git a/sw/qa/extras/ooxmlexport/ooxmlexport.cxx b/sw/qa/extras/ooxmlexport/ooxmlexport.cxx
index 668caa3..9a19485 100644
--- a/sw/qa/extras/ooxmlexport/ooxmlexport.cxx
+++ b/sw/qa/extras/ooxmlexport/ooxmlexport.cxx
@@ -3489,6 +3489,15 @@ DECLARE_OOXMLEXPORT_TEST(testfdo79822, "fdo79822.docx")
         return;
 }
 
+DECLARE_OOXMLEXPORT_TEST(testfdo79817,"fdo79817.docx")
+{
+    xmlDocPtr pXmlDoc = parseExport("word/document.xml");
+    if (!pXmlDoc)
+        return;
+    assertXPath ( pXmlDoc, "/w:document/w:body/w:p[3]/w:sdt/w:sdtPr/w:dataBinding", "storeItemID","{9222E47B-A68B-4AEB-9855-21C912B9D3D2}");
+    assertXPath ( pXmlDoc, "/w:document/w:body/w:p[3]/w:sdt/w:sdtPr/w:dataBinding", "xpath","/ns0:properties[1]/documentManagement[1]/ns2:Responsible_x0020_Officer_x0020_Title[1]");
+}
+
 #endif
 
 CPPUNIT_PLUGIN_IMPLEMENT();
diff --git a/sw/source/filter/ww8/docxattributeoutput.cxx b/sw/source/filter/ww8/docxattributeoutput.cxx
index 3eba470..5cfda6e 100644
--- a/sw/source/filter/ww8/docxattributeoutput.cxx
+++ b/sw/source/filter/ww8/docxattributeoutput.cxx
@@ -7423,7 +7423,7 @@ void DocxAttributeOutput::CharGrabBag( const SfxGrabBagItem& rItem )
                                            rtl::OUStringToOString( sValue, RTL_TEXTENCODING_UTF8 ).getStr() );
                     }
                 }
-                else if (aPropertyValue.Name == "ooxml:CT_SdtPr_dataBinding")
+                else if (aPropertyValue.Name == "ooxml:CT_SdtPr_dataBinding" && m_pRunSdtPrDataBindingAttrs == NULL)
                 {
                     uno::Sequence<beans::PropertyValue> aGrabBag;
                     aPropertyValue.Value >>= aGrabBag;


More information about the Libreoffice-commits mailing list