dictionaries | 2 +- sc/source/core/tool/rangeutl.cxx | 2 +- sc/source/filter/xml/xmlexprt.cxx | 8 ++++---- sc/source/filter/xml/xmlimprt.cxx | 3 +++ sc/source/filter/xml/xmlimprt.hxx | 5 ++++- sc/source/filter/xml/xmltabi.cxx | 3 +++ 6 files changed, 16 insertions(+), 7 deletions(-)
New commits: commit 393a9d4151ae79c0ad5bf16fb161c0c7ced7ce53 Author: Markus Mohrhard <markus.mohrh...@googlemail.com> Date: Sat Dec 28 12:44:02 2013 +0100 don't write new elements/attribs to ODF namespaces Related to validation errors with fdo#31296 Change-Id: I1b76e05a9996b1123db164629475a3f7b07dda69 diff --git a/sc/source/filter/xml/xmlexprt.cxx b/sc/source/filter/xml/xmlexprt.cxx index a0bc807..0520e7c 100644 --- a/sc/source/filter/xml/xmlexprt.cxx +++ b/sc/source/filter/xml/xmlexprt.cxx @@ -2886,12 +2886,12 @@ void ScXMLExport::WriteTable(sal_Int32 nTable, const Reference<sheet::XSpreadshe if (pProtect && pProtect->isProtected() && getDefaultVersion() > SvtSaveOptions::ODFVER_012) { if (pProtect->isOptionEnabled(ScTableProtection::SELECT_LOCKED_CELLS)) - AddAttribute(XML_NAMESPACE_TABLE, XML_SELECT_PROTECTED_CELLS, XML_TRUE); + AddAttribute(XML_NAMESPACE_OFFICE_EXT, XML_SELECT_PROTECTED_CELLS, XML_TRUE); if (pProtect->isOptionEnabled(ScTableProtection::SELECT_UNLOCKED_CELLS)) - AddAttribute(XML_NAMESPACE_TABLE, XML_SELECT_UNPROTECTED_CELLS, XML_TRUE); + AddAttribute(XML_NAMESPACE_OFFICE_EXT, XML_SELECT_UNPROTECTED_CELLS, XML_TRUE); OUString aElemName = GetNamespaceMap().GetQNameByKey( - XML_NAMESPACE_TABLE, GetXMLToken(XML_TABLE_PROTECTION)); + XML_NAMESPACE_OFFICE_EXT, GetXMLToken(XML_TABLE_PROTECTION)); SvXMLElementExport aElemProtected(*this, aElemName, true, true); } diff --git a/sc/source/filter/xml/xmlimprt.cxx b/sc/source/filter/xml/xmlimprt.cxx index 69f46b0..1f02083 100644 --- a/sc/source/filter/xml/xmlimprt.cxx +++ b/sc/source/filter/xml/xmlimprt.cxx @@ -829,6 +829,7 @@ const SvXMLTokenMap& ScXMLImport::GetTableElemTokenMap() { XML_NAMESPACE_TABLE, XML_TABLE_COLUMNS, XML_TOK_TABLE_COLS }, { XML_NAMESPACE_TABLE, XML_TABLE_COLUMN, XML_TOK_TABLE_COL }, { XML_NAMESPACE_TABLE, XML_TABLE_PROTECTION, XML_TOK_TABLE_PROTECTION }, + { XML_NAMESPACE_OFFICE_EXT, XML_TABLE_PROTECTION, XML_TOK_TABLE_PROTECTION_EXT }, { XML_NAMESPACE_TABLE, XML_TABLE_ROW_GROUP, XML_TOK_TABLE_ROW_GROUP }, { XML_NAMESPACE_TABLE, XML_TABLE_HEADER_ROWS, XML_TOK_TABLE_HEADER_ROWS }, { XML_NAMESPACE_TABLE, XML_TABLE_ROWS, XML_TOK_TABLE_ROWS }, @@ -857,6 +858,8 @@ const SvXMLTokenMap& ScXMLImport::GetTableProtectionAttrTokenMap() { { XML_NAMESPACE_TABLE, XML_SELECT_PROTECTED_CELLS, XML_TOK_TABLE_SELECT_PROTECTED_CELLS }, { XML_NAMESPACE_TABLE, XML_SELECT_UNPROTECTED_CELLS, XML_TOK_TABLE_SELECT_UNPROTECTED_CELLS }, + { XML_NAMESPACE_OFFICE_EXT, XML_SELECT_PROTECTED_CELLS, XML_TOK_TABLE_SELECT_PROTECTED_CELLS_EXT }, + { XML_NAMESPACE_OFFICE_EXT, XML_SELECT_UNPROTECTED_CELLS, XML_TOK_TABLE_SELECT_UNPROTECTED_CELLS_EXT }, XML_TOKEN_MAP_END }; pTableProtectionElemTokenMap = new SvXMLTokenMap(aTableProtectionTokenMap); diff --git a/sc/source/filter/xml/xmlimprt.hxx b/sc/source/filter/xml/xmlimprt.hxx index f3dba75..bf2d9ae 100644 --- a/sc/source/filter/xml/xmlimprt.hxx +++ b/sc/source/filter/xml/xmlimprt.hxx @@ -247,6 +247,7 @@ enum ScXMLTableTokens XML_TOK_TABLE_ROW_GROUP, XML_TOK_TABLE_HEADER_ROWS, XML_TOK_TABLE_PROTECTION, + XML_TOK_TABLE_PROTECTION_EXT, XML_TOK_TABLE_ROWS, XML_TOK_TABLE_ROW, XML_TOK_TABLE_SOURCE, @@ -261,7 +262,9 @@ enum ScXMLTableTokens enum ScXMLTokenProtectionTokens { XML_TOK_TABLE_SELECT_PROTECTED_CELLS, - XML_TOK_TABLE_SELECT_UNPROTECTED_CELLS + XML_TOK_TABLE_SELECT_UNPROTECTED_CELLS, + XML_TOK_TABLE_SELECT_PROTECTED_CELLS_EXT, + XML_TOK_TABLE_SELECT_UNPROTECTED_CELLS_EXT }; enum ScXMLTableRowsTokens diff --git a/sc/source/filter/xml/xmltabi.cxx b/sc/source/filter/xml/xmltabi.cxx index 1701529..fc23c22 100644 --- a/sc/source/filter/xml/xmltabi.cxx +++ b/sc/source/filter/xml/xmltabi.cxx @@ -286,6 +286,7 @@ SvXMLImportContext *ScXMLTableContext::CreateChildContext( sal_uInt16 nPrefix, rLName, xAttrList ); break; case XML_TOK_TABLE_PROTECTION: + case XML_TOK_TABLE_PROTECTION_EXT: pContext = new ScXMLTableProtectionContext( GetScImport(), nPrefix, rLName, xAttrList ); break; case XML_TOK_TABLE_ROW_GROUP: @@ -454,9 +455,11 @@ ScXMLTableProtectionContext::ScXMLTableProtectionContext( switch (rAttrTokenMap.Get(nLocalPrefix, aLocalName)) { case XML_TOK_TABLE_SELECT_PROTECTED_CELLS: + case XML_TOK_TABLE_SELECT_PROTECTED_CELLS_EXT: bSelectProtectedCells = IsXMLToken(aValue, XML_TRUE); break; case XML_TOK_TABLE_SELECT_UNPROTECTED_CELLS: + case XML_TOK_TABLE_SELECT_UNPROTECTED_CELLS_EXT: bSelectUnprotectedCells = IsXMLToken(aValue, XML_TRUE); break; default: commit ff74eafbe6aae254e49abb4a0b93160825e4a9d7 Author: Markus Mohrhard <markus.mohrh...@googlemail.com> Date: Sat Dec 28 08:13:12 2013 +0100 only write new element and attributes in ODF 1.2 extended Change-Id: I038f200f500ef1c6a0815b6332fb17bb2f62282a diff --git a/dictionaries b/dictionaries index 569915c..f1a4eca 160000 --- a/dictionaries +++ b/dictionaries @@ -1 +1 @@ -Subproject commit 569915c40dc4b3df1f75abe9e1202e0d66f03281 +Subproject commit f1a4ecab4b10fe7e5daadd6529516d5ffeba0fda diff --git a/sc/source/filter/xml/xmlexprt.cxx b/sc/source/filter/xml/xmlexprt.cxx index 8defd8a..a0bc807 100644 --- a/sc/source/filter/xml/xmlexprt.cxx +++ b/sc/source/filter/xml/xmlexprt.cxx @@ -2883,7 +2883,7 @@ void ScXMLExport::WriteTable(sal_Int32 nTable, const Reference<sheet::XSpreadshe AddAttribute( XML_NAMESPACE_TABLE, XML_PRINT, XML_FALSE); SvXMLElementExport aElemT(*this, sElemTab, true, true); - if (pProtect && pProtect->isProtected()) + if (pProtect && pProtect->isProtected() && getDefaultVersion() > SvtSaveOptions::ODFVER_012) { if (pProtect->isOptionEnabled(ScTableProtection::SELECT_LOCKED_CELLS)) AddAttribute(XML_NAMESPACE_TABLE, XML_SELECT_PROTECTED_CELLS, XML_TRUE); commit 4ecac870f1fd9172782b49c570c9e800f69da53f Author: Markus Mohrhard <markus.mohrh...@googlemail.com> Date: Thu Dec 19 04:36:55 2013 +0100 fix invalid string access in OUString::copy Change-Id: Idccec35f2838b54a7915aa4a0aeb229c69bae74d diff --git a/sc/source/core/tool/rangeutl.cxx b/sc/source/core/tool/rangeutl.cxx index 9e2ce6b..10fdf13 100644 --- a/sc/source/core/tool/rangeutl.cxx +++ b/sc/source/core/tool/rangeutl.cxx @@ -396,7 +396,7 @@ void ScRangeStringConverter::GetTokenByOffset( sal_Unicode cQuote) { sal_Int32 nLength = rString.getLength(); - if( nOffset >= nLength ) + if( nOffset == -1 || nOffset >= nLength ) { rToken = OUString(); nOffset = -1; _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits