Hello community, here is the log from the commit of package libreoffice for openSUSE:Factory checked in at 2019-08-22 15:04:08 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/libreoffice (Old) and /work/SRC/openSUSE:Factory/.libreoffice.new.7948 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libreoffice" Thu Aug 22 15:04:08 2019 rev:185 rq:724527 version:6.3.0.4 Changes: -------- --- /work/SRC/openSUSE:Factory/libreoffice/libreoffice.changes 2019-08-10 23:45:45.895617518 +0200 +++ /work/SRC/openSUSE:Factory/.libreoffice.new.7948/libreoffice.changes 2019-08-22 15:11:39.858439665 +0200 @@ -1,0 +2,18 @@ +Fri Aug 16 11:43:53 UTC 2019 - Tomáš Chvátal <[email protected]> + +- Fix syntax for RPM on SLE12 + +------------------------------------------------------------------- +Fri Aug 16 08:31:36 UTC 2019 - Tomáš Chvátal <[email protected]> + +- Add patch to build with mdds-1.5: + * mdds-1-5.patch + +------------------------------------------------------------------- +Tue Aug 13 13:56:08 UTC 2019 - Tomáš Chvátal <[email protected]> + +- Update to 6.2.6.2 bsc#1146098 CVE-2019-9850 + bsc#1146105 CVE-2019-9851 bsc#1146107 CVE-2019-9852: + * Various bugfixes of 6.2 branch + +------------------------------------------------------------------- @@ -34,0 +53,6 @@ + +------------------------------------------------------------------- +Sat Jul 6 20:40:44 UTC 2019 - Andras Timar <[email protected]> + +- Fix bsc#1133534 LO-L3: [PPTX] SmartArt: Basic rendering of Trapezoid List + * bsc1133534.patch New: ---- mdds-1-5.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ libreoffice.spec ++++++ --- /var/tmp/diff_new_pack.WOS7ii/_old 2019-08-22 15:11:45.342438239 +0200 +++ /var/tmp/diff_new_pack.WOS7ii/_new 2019-08-22 15:11:45.342438239 +0200 @@ -101,6 +101,7 @@ Patch2: nlpsolver-no-broken-help.diff Patch3: mediawiki-no-broken-help.diff Patch4: gcc.patch +Patch5: mdds-1-5.patch # try to save space by using hardlinks Patch990: install-with-hardlinks.diff # save time by relying on rpm check rather than doing stupid find+grep @@ -120,13 +121,13 @@ BuildRequires: doxygen >= 1.8.4 # Dot is used by doxygen BuildRequires: fdupes -BuildRequires: flex +BuildRequires: flex >= 2.6.0 BuildRequires: flute BuildRequires: fontforge BuildRequires: glm-devel # Needed for tests BuildRequires: google-carlito-fonts -BuildRequires: gperf >= 3.0.0 +BuildRequires: gperf >= 3.1 BuildRequires: graphviz BuildRequires: hyphen-devel # genbrk binary is required @@ -199,7 +200,7 @@ BuildRequires: pkgconfig(libmwaw-0.3) >= 0.3.15 BuildRequires: pkgconfig(libnumbertext) >= 1.0.5 BuildRequires: pkgconfig(libodfgen-0.1) >= 0.1.4 -BuildRequires: pkgconfig(liborcus-0.14) +BuildRequires: pkgconfig(liborcus-0.15) BuildRequires: pkgconfig(libpagemaker-0.0) BuildRequires: pkgconfig(libpq) BuildRequires: pkgconfig(libqxp-0.0) @@ -213,7 +214,7 @@ BuildRequires: pkgconfig(libxml-2.0) BuildRequires: pkgconfig(libxslt) BuildRequires: pkgconfig(libzmf-0.0) -BuildRequires: pkgconfig(mdds-1.4) >= 1.4.1 +BuildRequires: pkgconfig(mdds-1.5) >= 1.5.0 BuildRequires: pkgconfig(mythes) BuildRequires: pkgconfig(nspr) >= 4.8 BuildRequires: pkgconfig(nss) >= 3.9.3 @@ -559,9 +560,12 @@ Summary: Gtk3 interface for LibreOffice Group: Productivity/Office/Suite Requires: %{name}-gnome = %{version} -Supplements: (libreoffice and gnome-session) -Supplements: (libreoffice and mate-session-manager) -Supplements: (libreoffice and xfce4-session) +Supplements: packageand(libreoffice:gnome-session) +Supplements: packageand(libreoffice:mate-session-manager) +Supplements: packageand(libreoffice:xfce4-session) +%if !%{with kdeintegration} +Supplements: packageand(libreoffice:plasma5-workspace) +%endif %description gtk3 This package contains Gtk3 interface rendering option for LibreOffice. @@ -573,11 +577,11 @@ Conflicts: %{name}-gnome < %{version} # We are default if gtk3 is not present %if !%{with gtk3} -Supplements: (libreoffice and gnome-session) -%endif -# Without kde integration we provide gtk2 interface there +Supplements: packageand(libreoffice:gnome-session) +# Without kde and gtk3 ntegration we provide gtk2 interface there %if !%{with kdeintegration} -Supplements: (libreoffice and plasma5-workspace) +Supplements: packageand(libreoffice:plasma5-workspace) +%endif %endif %description gtk2 @@ -587,7 +591,7 @@ Summary: Qt5/KDE Frameworks interface for LibreOffice Group: Productivity/Office/Suite Requires: %{name} = %{version} -Supplements: (libreoffice and plasma5-workspace) +Supplements: packageand(libreoffice:plasma5-workspace) Provides: %{name}-kde4 = %{version} Obsoletes: %{name}-kde4 < %{version} @@ -982,6 +986,7 @@ %patch2 %patch3 %patch4 -p1 +%patch5 -p1 %patch990 -p1 %patch991 -p1 ++++++ mdds-1-5.patch ++++++ >From 56ffe3c0a1261cd98a3d42b8b08d5f8eb013ead4 Mon Sep 17 00:00:00 2001 From: Kohei Yoshida <[email protected]> Date: Mon, 12 Aug 2019 13:57:34 -0400 Subject: Switch mdds to 1.5.0 and liborcus to 0.15.0. Change-Id: Ibff9a5e0f0771e4cf12b4dc3985661a01195e265 Reviewed-on: https://gerrit.libreoffice.org/77482 Tested-by: Jenkins Reviewed-by: Kohei Yoshida <[email protected]> --- RepositoryExternal.mk | 4 ++-- configure.ac | 4 ++-- download.lst | 8 +++---- .../0001-Prevent-unsigned-integer-underflow.patch | 27 ---------------------- external/liborcus/ExternalPackage_liborcus.mk | 8 +++---- external/liborcus/ExternalProject_liborcus.mk | 4 ++-- external/liborcus/Library_orcus-parser.mk | 2 ++ external/liborcus/Library_orcus.mk | 7 ++++++ external/liborcus/UnpackedTarball_liborcus.mk | 3 --- external/liborcus/version.patch.0 | 11 --------- sc/inc/mtvelements.hxx | 8 +++---- sc/inc/orcusxml.hxx | 1 + sc/qa/unit/dataproviders_test.cxx | 1 + sc/source/core/tool/scmatrix.cxx | 8 +++---- sc/source/filter/inc/orcusinterface.hxx | 2 ++ sc/source/filter/orcus/interface.cxx | 8 +++++-- sc/source/filter/orcus/orcusfiltersimpl.cxx | 4 ++-- sc/source/filter/orcus/xmlcontext.cxx | 9 +++++++- sc/source/ui/xmlsource/xmlsourcedlg.cxx | 6 +++++ svl/source/misc/gridprinter.cxx | 2 +- 20 files changed, 58 insertions(+), 69 deletions(-) delete mode 100644 external/liborcus/0001-Prevent-unsigned-integer-underflow.patch delete mode 100644 external/liborcus/version.patch.0 diff --git a/configure.ac b/configure.ac index 1510daf..d0e6759 100644 --- a/configure.ac +++ b/configure.ac @@ -9291,7 +9291,7 @@ AC_SUBST(SYSTEM_BOOST) dnl =================================================================== dnl Check for system mdds dnl =================================================================== -libo_CHECK_SYSTEM_MODULE([mdds], [MDDS], [mdds-1.4 >= 1.4.1], ["-I${WORKDIR}/UnpackedTarball/mdds/include"]) +libo_CHECK_SYSTEM_MODULE([mdds], [MDDS], [mdds-1.5 >= 1.5.0], ["-I${WORKDIR}/UnpackedTarball/mdds/include"]) dnl =================================================================== dnl Check for system glm @@ -9597,7 +9597,7 @@ AC_SUBST(ENABLE_FUZZERS) dnl =================================================================== dnl Orcus dnl =================================================================== -libo_CHECK_SYSTEM_MODULE([orcus],[ORCUS],[liborcus-0.14 >= 0.14.0]) +libo_CHECK_SYSTEM_MODULE([orcus],[ORCUS],[liborcus-0.15 >= 0.15.0]) if test "$with_system_orcus" != "yes"; then if test "$SYSTEM_BOOST" = "TRUE"; then # =========================================================== diff --git a/sc/inc/mtvelements.hxx b/sc/inc/mtvelements.hxx index 407f039..382fb4d 100644 --- a/sc/inc/mtvelements.hxx +++ b/sc/inc/mtvelements.hxx @@ -52,9 +52,9 @@ const mdds::mtv::element_t element_type_formula = mdds::mtv::element_type_user_s const mdds::mtv::element_t element_type_cellnote = mdds::mtv::element_type_user_start + 5; /// Mapped standard element types (for convenience). -const mdds::mtv::element_t element_type_numeric = mdds::mtv::element_type_numeric; +const mdds::mtv::element_t element_type_numeric = mdds::mtv::element_type_double; const mdds::mtv::element_t element_type_empty = mdds::mtv::element_type_empty; -const mdds::mtv::element_t element_type_uint16 = mdds::mtv::element_type_ushort; +const mdds::mtv::element_t element_type_uint16 = mdds::mtv::element_type_uint16; /// Custom element blocks. @@ -66,8 +66,8 @@ typedef mdds::mtv::noncopyable_managed_element_block<element_type_edittext, Edit typedef mdds::mtv::noncopyable_managed_element_block<element_type_formula, ScFormulaCell> formula_block; /// Mapped standard element blocks (for convenience). -typedef mdds::mtv::numeric_element_block numeric_block; -typedef mdds::mtv::ushort_element_block uint16_block; +typedef mdds::mtv::double_element_block numeric_block; +typedef mdds::mtv::uint16_element_block uint16_block; /// This needs to be in the same namespace as CellTextAttr. MDDS_MTV_DEFINE_ELEMENT_CALLBACKS(CellTextAttr, element_type_celltextattr, CellTextAttr(), celltextattr_block) diff --git a/sc/inc/orcusxml.hxx b/sc/inc/orcusxml.hxx index ced991e..5db292c 100644 --- a/sc/inc/orcusxml.hxx +++ b/sc/inc/orcusxml.hxx @@ -69,6 +69,7 @@ struct ScOrcusImportXMLParam { ScAddress maPos; std::vector<OString> maFieldPaths; + std::vector<OString> maRowGroups; }; typedef std::vector<CellLink> CellLinksType; diff --git a/sc/qa/unit/dataproviders_test.cxx b/sc/qa/unit/dataproviders_test.cxx index 1e9cf97..a9b6b11 100644 --- a/sc/qa/unit/dataproviders_test.cxx +++ b/sc/qa/unit/dataproviders_test.cxx @@ -156,6 +156,7 @@ void ScDataProvidersTest::testXMLImport() aRangeLink.maPos = ScAddress(0,0,0); aRangeLink.maFieldPaths.push_back("/bookstore/book/title"); aRangeLink.maFieldPaths.push_back("/bookstore/book/author"); + aRangeLink.maRowGroups.push_back("/bookstore/book"); aParam.maRangeLinks.push_back(aRangeLink); createFileURL("test1.", "xml", aFileURL); diff --git a/sc/source/core/tool/scmatrix.cxx b/sc/source/core/tool/scmatrix.cxx index 04660ab..2c03fe0 100644 --- a/sc/source/core/tool/scmatrix.cxx +++ b/sc/source/core/tool/scmatrix.cxx @@ -1935,8 +1935,8 @@ public: { case mdds::mtm::element_numeric: { - numeric_element_block::const_iterator it = numeric_element_block::begin(*node.data); - numeric_element_block::const_iterator itEnd = numeric_element_block::end(*node.data); + double_element_block::const_iterator it = double_element_block::begin(*node.data); + double_element_block::const_iterator itEnd = double_element_block::end(*node.data); for (; it != itEnd; ++it, ++miPos) *miPos = *it; } @@ -2012,8 +2012,8 @@ public: { case mdds::mtm::element_numeric: { - numeric_element_block::const_iterator it = numeric_element_block::begin(*node.data); - numeric_element_block::const_iterator itEnd = numeric_element_block::end(*node.data); + double_element_block::const_iterator it = double_element_block::begin(*node.data); + double_element_block::const_iterator itEnd = double_element_block::end(*node.data); for (; it != itEnd; ++it, ++miPos) { if (GetDoubleErrorValue(*miPos) == FormulaError::ElementNaN) diff --git a/sc/source/filter/inc/orcusinterface.hxx b/sc/source/filter/inc/orcusinterface.hxx index 9d090b7..7c7c4f2 100644 --- a/sc/source/filter/inc/orcusinterface.hxx +++ b/sc/source/filter/inc/orcusinterface.hxx @@ -332,6 +332,8 @@ public: virtual orcus::spreadsheet::range_size_t get_sheet_size() const override; + virtual void fill_down_cells(orcus::spreadsheet::row_t row, orcus::spreadsheet::col_t col, orcus::spreadsheet::row_t range_size) override; + SCTAB getIndex() const { return mnTab; } const sc::SharedFormulaGroups& getSharedFormulaGroups() const; diff --git a/sc/source/filter/orcus/interface.cxx b/sc/source/filter/orcus/interface.cxx index 833fb27..23f17a1 100644 --- a/sc/source/filter/orcus/interface.cxx +++ b/sc/source/filter/orcus/interface.cxx @@ -61,8 +61,7 @@ formula::FormulaGrammar::Grammar getCalcGrammarFromOrcus( os::formula_grammar_t case orcus::spreadsheet::formula_grammar_t::ods: eGrammar = formula::FormulaGrammar::GRAM_ODFF; break; - case orcus::spreadsheet::formula_grammar_t::xlsx_2007: - case orcus::spreadsheet::formula_grammar_t::xlsx_2010: + case orcus::spreadsheet::formula_grammar_t::xlsx: eGrammar = formula::FormulaGrammar::GRAM_OOXML; break; case orcus::spreadsheet::formula_grammar_t::gnumeric: @@ -1188,6 +1187,11 @@ orcus::spreadsheet::range_size_t ScOrcusSheet::get_sheet_size() const return ret; } +void ScOrcusSheet::fill_down_cells(os::row_t /*row*/, os::col_t /*col*/, os::row_t /*range_size*/) +{ + // TODO : implement this. +} + const sc::SharedFormulaGroups& ScOrcusSheet::getSharedFormulaGroups() const { return maFormulaGroups; diff --git a/sc/source/filter/orcus/orcusfiltersimpl.cxx b/sc/source/filter/orcus/orcusfiltersimpl.cxx index cdfb70d..8e9b0b1 100644 --- a/sc/source/filter/orcus/orcusfiltersimpl.cxx +++ b/sc/source/filter/orcus/orcusfiltersimpl.cxx @@ -139,10 +139,10 @@ bool ScOrcusFiltersImpl::importODS_Styles(ScDocument& rDoc, OUString& aPath) con try { - std::string content = orcus::load_file_content(path); + orcus::file_content content(path); ScOrcusFactory aFactory(rDoc); ScOrcusStyles aStyles(aFactory); - orcus::import_ods::read_styles(content.c_str(), content.size(), &aStyles); + orcus::import_ods::read_styles(content.data(), content.size(), &aStyles); } catch (const std::exception& e) { diff --git a/sc/source/filter/orcus/xmlcontext.cxx b/sc/source/filter/orcus/xmlcontext.cxx index 2548f5b..71c44bc 100644 --- a/sc/source/filter/orcus/xmlcontext.cxx +++ b/sc/source/filter/orcus/xmlcontext.cxx @@ -269,10 +269,17 @@ void ScOrcusXMLContextImpl::importXML(const ScOrcusImportXMLParam& rParam) std::for_each(rLink.maFieldPaths.begin(), rLink.maFieldPaths.end(), InsertFieldPath(filter)); + std::for_each(rLink.maRowGroups.begin(), rLink.maRowGroups.end(), + [&filter] (const OString& rRowGroup) + { + filter.set_range_row_group(rRowGroup.getStr()); + } + ); + filter.commit_range(); } - std::string content = orcus::load_file_content(path); + orcus::file_content content(path); filter.read_stream(content.data(), content.size()); aFactory.finalize(); diff --git a/sc/source/ui/xmlsource/xmlsourcedlg.cxx b/sc/source/ui/xmlsource/xmlsourcedlg.cxx index 95e8006..26b0cbc 100644 --- a/sc/source/ui/xmlsource/xmlsourcedlg.cxx +++ b/sc/source/ui/xmlsource/xmlsourcedlg.cxx @@ -533,6 +533,12 @@ void ScXMLSourceDlg::OkPressed() // Go through all its child elements. getFieldLinks(aRangeLink, aParam.maNamespaces, *mxLbTree, *rEntry); + // Add the anchor node as a grouping node, which will be used as a + // row position increment point. + OUString aThisEntry = getXPath(*mxLbTree, *rEntry, aParam.maNamespaces); + aRangeLink.maRowGroups.push_back( + OUStringToOString(aThisEntry, RTL_TEXTENCODING_UTF8)); + aParam.maRangeLinks.push_back(aRangeLink); } } diff --git a/svl/source/misc/gridprinter.cxx b/svl/source/misc/gridprinter.cxx index e129457..4f013d4 100644 --- a/svl/source/misc/gridprinter.cxx +++ b/svl/source/misc/gridprinter.cxx @@ -29,7 +29,7 @@ typedef mdds::mtv::default_element_block<element_type_string, OUString> string_b struct matrix_trait { typedef string_block string_element_block; - typedef mdds::mtv::ushort_element_block integer_element_block; + typedef mdds::mtv::uint16_element_block integer_element_block; typedef mdds::mtv::custom_block_func1<string_block> element_block_func; }; -- cgit v1.1
