[Libreoffice-commits] core.git: sw/qa sw/source
Joren De Cuyper
jorendc at libreoffice.org
Sun May 10 11:54:46 PDT 2015
sw/qa/extras/ooxmlexport/ooxmlexport5.cxx | 2 ++
sw/source/filter/ww8/docxattributeoutput.cxx | 8 ++++----
2 files changed, 6 insertions(+), 4 deletions(-)
New commits:
commit c2cc63338f3c2f38d0a4f6be822c6cdeedb8213c
Author: Joren De Cuyper <jorendc at libreoffice.org>
Date: Sun May 10 11:24:20 2015 +0200
Don't write empty vertAnchor, HorzAnchor, tblpYSpec and tblpXSpec attributes
This attributes needs a value from the enumeration.
See http://dev-builds.libreoffice.org/crashtest/6183a945de03dcd5fe0b967d5814a0add954a8c8/validation/docx/fdo43632-1.docx.log :
(word/document.xml:2 col:70,187) cvc-enumeration-valid: Value '' is not facet-valid with respect to enumeration
'[inline, top, center, bottom, inside, outside]'. It must be a value from the enumeration.
(word/document.xml:2 col:70,187) cvc-attribute.3: The value '' of attribute 'w:tblpYSpec' on element 'w:tblpPr'
is not valid with respect to its type, 'ST_YAlign'.
Change-Id: Ibe4ccdf1c273e2ede22dc8865ec91af4de162e10
Reviewed-on: https://gerrit.libreoffice.org/15693
Tested-by: Jenkins <ci at libreoffice.org>
Reviewed-by: Joren De Cuyper <jorendc at libreoffice.org>
diff --git a/sw/qa/extras/ooxmlexport/ooxmlexport5.cxx b/sw/qa/extras/ooxmlexport/ooxmlexport5.cxx
index 89a1502..07ba2ae 100644
--- a/sw/qa/extras/ooxmlexport/ooxmlexport5.cxx
+++ b/sw/qa/extras/ooxmlexport/ooxmlexport5.cxx
@@ -234,6 +234,8 @@ DECLARE_OOXMLEXPORT_TEST(testFloatingTable, "fdo77887.docx")
assertXPath(pXmlDoc, "/w:document[1]/w:body[1]/w:tbl[1]/w:tblPr[1]/w:tblpPr[1]", "tblpY", "2266");
assertXPath(pXmlDoc, "/w:document[1]/w:body[1]/w:tbl[1]/w:tblPr[1]/w:tblpPr[1]", "vertAnchor", "page");
+ //make sure not to write empty attributes which requires enumeration
+ assertXPathNoAttribute(pXmlDoc, "/w:document[1]/w:body[1]/w:tbl[1]/w:tblPr[1]/w:tblpPr[1]", "tblpYSpec");
}
DECLARE_OOXMLEXPORT_TEST(testOldComplexMergeRight, "tdf90681-1.odt")
diff --git a/sw/source/filter/ww8/docxattributeoutput.cxx b/sw/source/filter/ww8/docxattributeoutput.cxx
index abd7557..9147bfe 100644
--- a/sw/source/filter/ww8/docxattributeoutput.cxx
+++ b/sw/source/filter/ww8/docxattributeoutput.cxx
@@ -3224,22 +3224,22 @@ void DocxAttributeOutput::TableDefinition( ww8::WW8TableNodeInfoInner::Pointer_t
uno::Sequence<beans::PropertyValue> aTablePosition = aGrabBagElement->second.get<uno::Sequence<beans::PropertyValue> >();
for (sal_Int32 i = 0; i < aTablePosition.getLength(); ++i)
{
- if (aTablePosition[i].Name == "vertAnchor")
+ if (aTablePosition[i].Name == "vertAnchor" && aTablePosition[i].Value.get<OUString>() != "")
{
OString strTemp = OUStringToOString(aTablePosition[i].Value.get<OUString>(), RTL_TEXTENCODING_UTF8);
attrListTablePos->add( FSNS( XML_w, XML_vertAnchor ), strTemp.getStr() );
}
- else if (aTablePosition[i].Name == "tblpYSpec")
+ else if (aTablePosition[i].Name == "tblpYSpec" && aTablePosition[i].Value.get<OUString>() != "")
{
OString strTemp = OUStringToOString(aTablePosition[i].Value.get<OUString>(), RTL_TEXTENCODING_UTF8);
attrListTablePos->add( FSNS( XML_w, XML_tblpYSpec ), strTemp.getStr() );
}
- else if (aTablePosition[i].Name == "horzAnchor")
+ else if (aTablePosition[i].Name == "horzAnchor" && aTablePosition[i].Value.get<OUString>() != "")
{
OString strTemp = OUStringToOString(aTablePosition[i].Value.get<OUString>(), RTL_TEXTENCODING_UTF8);
attrListTablePos->add( FSNS( XML_w, XML_horzAnchor ), strTemp.getStr() );
}
- else if (aTablePosition[i].Name == "tblpXSpec")
+ else if (aTablePosition[i].Name == "tblpXSpec" && aTablePosition[i].Value.get<OUString>() != "")
{
OString strTemp = OUStringToOString(aTablePosition[i].Value.get<OUString>(), RTL_TEXTENCODING_UTF8);
attrListTablePos->add( FSNS( XML_w, XML_tblpXSpec ), strTemp.getStr() );
More information about the Libreoffice-commits
mailing list