basic/source/sbx/sbxarray.cxx | 6 chart2/qa/extras/chart2import.cxx | 16 chart2/qa/extras/data/pptx/tdf121205.pptx |binary chart2/source/view/axes/DateHelper.cxx | 3 chart2/source/view/charttypes/AreaChart.cxx | 5 chart2/source/view/charttypes/VSeriesPlotter.cxx | 7 configure.ac | 2 cui/source/customize/SvxMenuConfigPage.cxx | 6 cui/source/customize/SvxToolbarConfigPage.cxx | 17 cui/source/customize/cfg.cxx | 12 cui/source/options/optgdlg.cxx | 2 cui/source/tabpages/tparea.cxx | 2 dbaccess/source/ui/control/dbtreelistbox.cxx | 24 - dbaccess/source/ui/inc/dbtreelistbox.hxx | 3 desktop/source/deployment/gui/dp_gui_theextmgr.cxx | 1 download.lst | 20 - external/lcms2/0001-Added-an-extra-check-to-MLU-bounds.patch.1 | 25 - external/lcms2/0017-Upgrade-Visual-studio-2017-15.8.patch.1 | 172 ++++++++++ external/lcms2/UnpackedTarball_lcms2.mk | 2 external/libxml2/libxml2-android.patch | 12 external/libxml2/libxml2-global-symbols.patch | 4 external/poppler/StaticLibrary_poppler.mk | 6 external/poppler/UnpackedTarball_poppler.mk | 11 external/poppler/poppler-c++11.patch.1 | 31 + external/poppler/poppler-config.patch.1 | 12 external/python3/0001-3.6-bpo-17239-Disable-external-entities-in-SAX-parse.patch.1 | 59 +++ external/python3/UnpackedTarball_python3.mk | 1 filter/source/msfilter/svdfppt.cxx | 5 officecfg/registry/data/org/openoffice/Office/UI/GenericCommands.xcu | 5 officecfg/registry/data/org/openoffice/VCL.xcu | 3 oox/inc/drawingml/textrun.hxx | 1 oox/source/drawingml/chart/seriesconverter.cxx | 14 oox/source/drawingml/chart/titleconverter.cxx | 2 oox/source/drawingml/textcharacterpropertiescontext.cxx | 11 sc/inc/dpglobal.hxx | 2 sc/qa/unit/data/ods/tdf121612.ods |binary sc/qa/unit/subsequent_export-test.cxx | 20 + sc/source/core/data/dpgroup.cxx | 6 sc/source/filter/excel/xepivotxml.cxx | 11 sc/source/filter/oox/chartsheetfragment.cxx | 10 sc/source/filter/oox/sheetdatacontext.cxx | 2 sc/source/filter/xml/XMLExportDataPilot.cxx | 1 sc/source/filter/xml/XMLExportIterator.hxx | 2 sc/source/ui/StatisticsDialogs/AnalysisOfVarianceDialog.cxx | 2 sc/source/ui/StatisticsDialogs/TableFillingAndNavigationTools.cxx | 4 sc/source/ui/inc/TableFillingAndNavigationTools.hxx | 2 sc/source/ui/pagedlg/scuitphfedit.cxx | 4 sc/source/ui/unoobj/chart2uno.cxx | 2 sd/source/ui/slidesorter/controller/SlsInsertionIndicatorHandler.cxx | 2 sd/uiconfig/simpress/menubar/menubar.xml | 1 sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx | 38 +- sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.hxx | 49 +- sdext/source/pdfimport/xpdfwrapper/pnghelper.cxx | 6 sdext/source/pdfimport/xpdfwrapper/wrapper_gpl.cxx | 10 sfx2/source/dialog/dinfdlg.cxx | 17 slideshow/source/engine/animationnodes/animationcommandnode.cxx | 24 + slideshow/source/engine/animationnodes/animationcommandnode.hxx | 2 svl/source/items/itempool.cxx | 11 svx/source/tbxctrls/tbcontrl.cxx | 17 svx/source/toolbars/fontworkbar.cxx | 5 sw/qa/core/data/ww8/fail/forcepoint-44.doc |binary sw/qa/extras/odfexport/data/tdf118393.odt |binary sw/qa/extras/odfexport/odfexport.cxx | 50 ++ sw/qa/extras/ooxmlexport/data/tdf118393.odt |binary sw/qa/extras/ooxmlexport/ooxmlexport.cxx | 51 ++ sw/source/core/access/acccell.cxx | 2 sw/source/core/access/accframebase.cxx | 2 sw/source/core/inc/frame.hxx | 2 sw/source/core/inc/ftnfrm.hxx | 1 sw/source/core/layout/calcmove.cxx | 1 sw/source/core/layout/ftnfrm.cxx | 29 + sw/source/core/layout/pagechg.cxx | 2 sw/source/core/layout/tabfrm.cxx | 5 sw/source/filter/ww8/wrtw8sty.cxx | 7 sw/source/filter/ww8/wrtww8.cxx | 1 sw/source/filter/ww8/wrtww8.hxx | 1 sw/source/filter/ww8/ww8atr.cxx | 29 + sw/source/uibase/uno/unotxdoc.cxx | 5 sw/source/uibase/utlui/content.cxx | 5 sw/source/uibase/wrtsh/wrtundo.cxx | 3 toolkit/source/awt/vclxwindow.cxx | 2 vcl/osx/a11ywrapper.mm | 2 vcl/quartz/salvd.cxx | 9 vcl/source/window/menufloatingwindow.cxx | 12 vcl/source/window/menufloatingwindow.hxx | 2 vcl/unx/gtk/gtksalframe.cxx | 7 vcl/unx/gtk/gtksalmenu.cxx | 14 vcl/unx/gtk3/gtk3gtkframe.cxx | 7 xmloff/source/chart/SchXMLExport.cxx | 2 xmloff/source/draw/shapeexport.cxx | 5 xmlsecurity/source/xmlsec/xmlstreamio.cxx | 6 91 files changed, 832 insertions(+), 184 deletions(-)
New commits: commit 78abe68267637013b9729a0d56b3a9b23122f8da Author: Andras Timar <andras.ti...@collabora.com> AuthorDate: Thu Jan 17 15:04:38 2019 +0100 Commit: Andras Timar <andras.ti...@collabora.com> CommitDate: Thu Jan 17 15:04:38 2019 +0100 Bump version to 6.0-20 Change-Id: Ie7ac2cab8e87aaf0da38668f762c2a8d27faf9d6 diff --git a/configure.ac b/configure.ac index 95159102b6b4..745d5219c3ec 100644 --- a/configure.ac +++ b/configure.ac @@ -9,7 +9,7 @@ dnl in order to create a configure script. # several non-alphanumeric characters, those are split off and used only for the # ABOUTBOXPRODUCTVERSIONSUFFIX in openoffice.lst. Why that is necessary, no idea. -AC_INIT([Collabora Office],[6.0.10.19],[],[],[https://collaboraoffice.com/]) +AC_INIT([Collabora Office],[6.0.10.20],[],[],[https://collaboraoffice.com/]) AC_PREREQ([2.59]) commit 5283b0587c52995d3fd9df0b0534b6473835db77 Author: Michael Stahl <michael.st...@cib.de> AuthorDate: Mon Jan 14 15:12:24 2019 +0100 Commit: Andras Timar <andras.ti...@collabora.com> CommitDate: Thu Jan 17 15:01:27 2019 +0100 poppler: upgrade to release 0.73.0 Reviewed-on: https://gerrit.libreoffice.org/66306 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.st...@cib.de> (cherry picked from commit 0609ea4fc27f34367716bf41c0cdaa7785aed9da) Reviewed-on: https://gerrit.libreoffice.org/66369 Reviewed-by: Christian Lohmaier <lohmaier+libreoff...@googlemail.com> (cherry picked from commit 033ff5b3eb90deaf6fd5eb8a74100233aa5fe772) Change-Id: If20998f8565b5534a96b3f29ccec572273edca1d diff --git a/download.lst b/download.lst index 27b384a35195..facec0895fcc 100644 --- a/download.lst +++ b/download.lst @@ -220,8 +220,8 @@ export PIXMAN_SHA256SUM := 21b6b249b51c6800dc9553b65106e1e37d0e25df942c90531d4c3 export PIXMAN_TARBALL := e80ebae4da01e77f68744319f01d52a3-pixman-0.34.0.tar.gz export LIBPNG_SHA256SUM := 2f1e960d92ce3b3abd03d06dfec9637dfbd22febf107a536b44f7a47c60659f6 export LIBPNG_TARBALL := libpng-1.6.34.tar.xz -export POPPLER_SHA256SUM := 2c096431adfb74bc2f53be466889b7646e1b599f28fa036094f3f7235cc9eae7 -export POPPLER_TARBALL := poppler-0.66.0.tar.xz +export POPPLER_SHA256SUM := e44b5543903128884ba4538c2a97d3bcc8889e97ffacc4636112101f0238db03 +export POPPLER_TARBALL := poppler-0.73.0.tar.xz export POSTGRESQL_SHA256SUM := db61d498105a7d5fe46185e67ac830c878cdd7dc1f82a87f06b842217924c461 export POSTGRESQL_TARBALL := c0b4799ea9850eae3ead14f0a60e9418-postgresql-9.2.1.tar.bz2 export PYTHON_SHA256SUM := 063d2c3b0402d6191b90731e0f735c64830e7522348aeb7ed382a83165d45009 diff --git a/external/poppler/StaticLibrary_poppler.mk b/external/poppler/StaticLibrary_poppler.mk index f145b7ae9c39..aa5ed693eb22 100644 --- a/external/poppler/StaticLibrary_poppler.mk +++ b/external/poppler/StaticLibrary_poppler.mk @@ -53,11 +53,8 @@ $(eval $(call gb_StaticLibrary_set_generated_cxx_suffix,poppler,cc)) $(eval $(call gb_StaticLibrary_add_generated_exception_objects,poppler,\ UnpackedTarball/poppler/goo/gfile \ - UnpackedTarball/poppler/goo/gmempp \ - UnpackedTarball/poppler/goo/GooList \ UnpackedTarball/poppler/goo/GooTimer \ UnpackedTarball/poppler/goo/GooString \ - UnpackedTarball/poppler/goo/gmem \ UnpackedTarball/poppler/goo/FixedPoint \ UnpackedTarball/poppler/goo/NetPBMWriter \ UnpackedTarball/poppler/goo/PNGWriter \ @@ -80,6 +77,7 @@ $(eval $(call gb_StaticLibrary_add_generated_exception_objects,poppler,\ UnpackedTarball/poppler/poppler/BuiltinFontTables \ UnpackedTarball/poppler/poppler/CachedFile \ UnpackedTarball/poppler/poppler/Catalog \ + UnpackedTarball/poppler/poppler/CertificateInfo \ UnpackedTarball/poppler/poppler/CharCodeToUnicode \ UnpackedTarball/poppler/poppler/CMap \ UnpackedTarball/poppler/poppler/DateInfo \ @@ -114,7 +112,6 @@ $(eval $(call gb_StaticLibrary_add_generated_exception_objects,poppler,\ UnpackedTarball/poppler/poppler/PDFDoc \ UnpackedTarball/poppler/poppler/PDFDocEncoding \ UnpackedTarball/poppler/poppler/PDFDocFactory \ - UnpackedTarball/poppler/poppler/PopplerCache \ UnpackedTarball/poppler/poppler/ProfileData \ UnpackedTarball/poppler/poppler/PreScanOutputDev \ UnpackedTarball/poppler/poppler/PSTokenizer \ @@ -135,7 +132,6 @@ $(eval $(call gb_StaticLibrary_add_generated_exception_objects,poppler,\ UnpackedTarball/poppler/poppler/StdinPDFDocBuilder \ UnpackedTarball/poppler/poppler/Sound \ UnpackedTarball/poppler/poppler/ViewerPreferences \ - UnpackedTarball/poppler/poppler/XpdfPluginAPI \ UnpackedTarball/poppler/poppler/Movie \ UnpackedTarball/poppler/poppler/Rendition \ UnpackedTarball/poppler/poppler/DCTStream \ diff --git a/external/poppler/UnpackedTarball_poppler.mk b/external/poppler/UnpackedTarball_poppler.mk index 68fd06d9403b..5b91e1628ba6 100644 --- a/external/poppler/UnpackedTarball_poppler.mk +++ b/external/poppler/UnpackedTarball_poppler.mk @@ -13,6 +13,17 @@ $(eval $(call gb_UnpackedTarball_set_tarball,poppler,$(POPPLER_TARBALL),,poppler $(eval $(call gb_UnpackedTarball_add_patches,poppler,\ external/poppler/poppler-config.patch.1 \ + external/poppler/poppler-c++11.patch.1 \ )) +# std::make_unique is only available in C++14 +# use "env -i" to avoid Cygwin "environment is too large for exec" +# Mac OS X sed says "sed: RE error: illegal byte sequence"; Apple clang should +# be happy with std::make_unique so just skip it +ifneq ($(OS_FOR_BUILD),MACOSX) +$(eval $(call gb_UnpackedTarball_set_post_action,poppler,\ + env -i PATH="$(PATH)" $(FIND) . -name '*.cc' -exec sed -i -e 's/std::make_unique/o3tl::make_unique/' {} \\; \ +)) +endif + # vim: set noet sw=4 ts=4: diff --git a/external/poppler/poppler-c++11.patch.1 b/external/poppler/poppler-c++11.patch.1 new file mode 100644 index 000000000000..5a4d1a24e2e2 --- /dev/null +++ b/external/poppler/poppler-c++11.patch.1 @@ -0,0 +1,31 @@ +remove usage of newfangled C++ that baseline toolchains don't support + +--- poppler/goo/gfile.cc.orig 2019-01-16 11:02:21.112911552 +0100 ++++ poppler/goo/gfile.cc 2019-01-16 11:01:33.125975178 +0100 +@@ -67,7 +67,7 @@ + + #ifndef _WIN32 + +-using namespace std::string_literals; ++//using namespace std::string_literals; + + namespace { + +@@ -366,7 +366,7 @@ + } + #else + // First try to atomically open the file with CLOEXEC +- const std::string modeStr = mode + "e"s; ++ const std::string modeStr = mode + std::string("e"); + FILE *file = fopen(path, modeStr.c_str()); + if (file != nullptr) + return file; +--- poppler/goo/gmem.h.orig 2019-01-16 11:25:28.161920038 +0100 ++++ poppler/goo/gmem.h 2019-01-16 11:25:53.756882295 +0100 +@@ -177,4 +177,6 @@ + return std::strncpy(r, s, n); + } + ++#include <o3tl/make_unique.hxx> ++ + #endif // GMEM_H diff --git a/external/poppler/poppler-config.patch.1 b/external/poppler/poppler-config.patch.1 index 5328e680e2f2..e312573f1ff3 100644 --- a/external/poppler/poppler-config.patch.1 +++ b/external/poppler/poppler-config.patch.1 @@ -195,7 +195,7 @@ index 0fbd336a..451213f8 100644 +#define PACKAGE_NAME "poppler" + +/* Define to the full name and version of this package. */ -+#define PACKAGE_STRING "poppler 0.66.0" ++#define PACKAGE_STRING "poppler 0.73.0" + +/* Define to the one symbol short name of this package. */ +#define PACKAGE_TARNAME "poppler" @@ -204,7 +204,7 @@ index 0fbd336a..451213f8 100644 +#define PACKAGE_URL "" + +/* Define to the version of this package. */ -+#define PACKAGE_VERSION "0.66.0" ++#define PACKAGE_VERSION "0.73.0" + +/* Poppler data dir */ +#define POPPLER_DATADIR "/usr/local/share/poppler" @@ -228,7 +228,7 @@ index 0fbd336a..451213f8 100644 +/* #undef USE_FLOAT */ + +/* Version number of package */ -+#define VERSION "0.66.0" ++#define VERSION "0.73.0" + +#if defined(__APPLE__) +#elif defined (_WIN32) @@ -304,7 +304,7 @@ index 0fbd336a..451213f8 100644 + +/* Defines the poppler version. */ +#ifndef POPPLER_VERSION -+#define POPPLER_VERSION "0.66.0" ++#define POPPLER_VERSION "0.73.0" +#endif + +/* Enable multithreading support. */ @@ -466,9 +466,9 @@ index 0fbd336a..451213f8 100644 + +#include "poppler-global.h" + -+#define POPPLER_VERSION "0.66.0" ++#define POPPLER_VERSION "0.73.0" +#define POPPLER_VERSION_MAJOR 0 -+#define POPPLER_VERSION_MINOR 66 ++#define POPPLER_VERSION_MINOR 73 +#define POPPLER_VERSION_MICRO 0 + +namespace poppler diff --git a/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.hxx b/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.hxx index 95d8befdc55b..ced1a653a494 100644 --- a/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.hxx +++ b/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.hxx @@ -28,7 +28,9 @@ # pragma GCC diagnostic ignored "-Wundef" # pragma GCC diagnostic ignored "-Wunused-parameter" #elif defined _MSC_VER -#pragma warning(push, 1) +#pragma warning(push) +#pragma warning(disable : 4100) // unreferenced formal parameter +#pragma warning(disable : 4310) // cast truncates constant value #endif #include <GfxState.h> commit 4811e562c20cc13194035271ccaa58bdfc358d26 Author: Miklos Vajna <vmik...@collabora.com> AuthorDate: Mon Dec 17 21:13:00 2018 +0100 Commit: Andras Timar <andras.ti...@collabora.com> CommitDate: Thu Jan 17 14:58:25 2019 +0100 tdf#121804 DOCX import: handle sub/superscript inside group shapes Regression from commit d5c934d150cb6cea5f96cbbee4fb5e8312bf027e (n#792778 DOCX import: parse group shapes in oox only, 2012-12-14), where where manual wordprocessingML -> drawingML translation did not handle this character property. Reviewed-on: https://gerrit.libreoffice.org/65289 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmik...@collabora.com> (cherry picked from commit dafbc86037d63e938967c0f501bdfe3ae19fa992) Reviewed-on: https://gerrit.libreoffice.org/65414 Tested-by: Xisco Faulí <xiscofa...@libreoffice.org> Reviewed-by: Michael Stahl <michael.st...@cib.de> (cherry picked from commit ba7435e5914a713730265c3378ce616de543667f) Change-Id: I87481bc9c26651fd15dd39a58a92f467e8311256 diff --git a/oox/source/drawingml/textcharacterpropertiescontext.cxx b/oox/source/drawingml/textcharacterpropertiescontext.cxx index 8ab160755531..8c3ec28eefa3 100644 --- a/oox/source/drawingml/textcharacterpropertiescontext.cxx +++ b/oox/source/drawingml/textcharacterpropertiescontext.cxx @@ -203,6 +203,17 @@ ContextHandlerRef TextCharacterPropertiesContext::onCreateContext( sal_Int32 aEl mrTextCharacterProperties.moCaseMap = XML_none; } break; + case W_TOKEN(vertAlign): + { + // Map wordprocessingML <w:vertAlign w:val="..."/> to drawingML + // <a:rPr baseline="...">. + sal_Int32 nVal = rAttribs.getToken(W_TOKEN(val), 0); + if (nVal == XML_superscript) + mrTextCharacterProperties.moBaseline = 30000; + else if (nVal == XML_subscript) + mrTextCharacterProperties.moBaseline = -25000; + break; + } case OOX_TOKEN(w14, glow): case OOX_TOKEN(w14, shadow): case OOX_TOKEN(w14, reflection): commit 1822bb92ca3e48f2397e80cf06327944557d13cb Author: Michael Stahl <michael.st...@cib.de> AuthorDate: Tue Jan 15 17:05:00 2019 +0100 Commit: Andras Timar <andras.ti...@collabora.com> CommitDate: Thu Jan 17 14:55:37 2019 +0100 lcms2: upgrade to release 2.9 ... at least, that's the plan - this is harder than it appears, as the upstream maintainer appears to have released version 2.9 at least 3 times: - Fedora has a file evidently downloaded before Nov. 17 with SHA512 of e30ad5a9a1ab9e7aaace9431434caa19a5ff6143db46644aba971a5ee37a265b26bf738e886d766405a7eb45a9d620d67c7ab3684ace86a107cf5a76642c04a5 - Gentoo has a file evidently downloaded before Nov. 19 with SHA256 of d4ad6f8718f7f9dc8b2a3276c9f237aa3f5eccdcf98b86dedc4262d8a1e7f009 - Debian has a file evidently downloaded before Dec. 17 with SHA256 of 48c6fdf98396fa245ed86e622028caf49b96fa22f3e5734f853f806fbc8e7d20 The lcms2-2.9.tar.gz available from sourceforge currently matches the one Debian has, so let's use it. * 0017-Upgrade-Visual-studio-2017-15.8.patch added (fixing CVE-2018-16435) * 0001-Added-an-extra-check-to-MLU-bounds.patch.1 removed (fixed upstream) Reviewed-on: https://gerrit.libreoffice.org/66400 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.st...@cib.de> (cherry picked from commit 99b20e589e64fbcf374d84ae68911ef2a96e537c) Reviewed-on: https://gerrit.libreoffice.org/66428 Reviewed-by: Caolán McNamara <caol...@redhat.com> Tested-by: Caolán McNamara <caol...@redhat.com> (cherry picked from commit 5d6a91c4df0ea51bb32794ff6068fa19bda44307) Change-Id: Iab8dada8f6d77d5b2da8560993380b3332bc02f6 diff --git a/download.lst b/download.lst index 2a867282ae0c..27b384a35195 100644 --- a/download.lst +++ b/download.lst @@ -154,8 +154,8 @@ export LANGTAGREG_SHA256SUM := b7ad618b7db518155f00490a11b861496864f18b23b4b537e export LANGTAGREG_TARBALL := language-subtag-registry-2018-03-30.tar.bz2 export LANGUAGETOOL_SHA256SUM := 48c87e41636783bba438b65fd895821e369ed139e1465fac654323ad93c5a82d export LANGUAGETOOL_TARBALL := b63e6340a02ff1cacfeadb2c42286161-JLanguageTool-1.7.0.tar.bz2 -export LCMS2_SHA256SUM := 66d02b229d2ea9474e62c2b6cd6720fde946155cd1d0d2bffdab829790a0fb22 -export LCMS2_TARBALL := lcms2-2.8.tar.gz +export LCMS2_SHA256SUM := 48c6fdf98396fa245ed86e622028caf49b96fa22f3e5734f853f806fbc8e7d20 +export LCMS2_TARBALL := lcms2-2.9.tar.gz export LIBASSUAN_SHA256SUM := 22843a3bdb256f59be49842abf24da76700354293a066d82ade8134bb5aa2b71 export LIBASSUAN_TARBALL := libassuan-2.4.3.tar.bz2 export LIBATOMIC_OPS_SHA256SUM := cf5c52f08a2067ae4fe7c8919e3c1ccf3ee917f1749e0bcc7efffff59c68d9ad diff --git a/external/lcms2/0001-Added-an-extra-check-to-MLU-bounds.patch.1 b/external/lcms2/0001-Added-an-extra-check-to-MLU-bounds.patch.1 deleted file mode 100644 index 913f82887cb2..000000000000 --- a/external/lcms2/0001-Added-an-extra-check-to-MLU-bounds.patch.1 +++ /dev/null @@ -1,25 +0,0 @@ -From 5ca71a7bc18b6897ab21d815d15e218e204581e2 Mon Sep 17 00:00:00 2001 -From: Marti <marti.ma...@tktbrainpower.com> -Date: Mon, 15 Aug 2016 23:31:39 +0200 -Subject: [PATCH] Added an extra check to MLU bounds - -Thanks to Ibrahim el-sayed for spotting the bug ---- - src/cmstypes.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/src/cmstypes.c b/src/cmstypes.c -index cb61860..c7328b9 100644 ---- a/src/cmstypes.c -+++ b/src/cmstypes.c -@@ -1460,6 +1460,7 @@ void *Type_MLU_Read(struct _cms_typehandler_struct* self, cmsIOHANDLER* io, cmsU - - // Check for overflow - if (Offset < (SizeOfHeader + 8)) goto Error; -+ if ((Offset + Len) > SizeOfTag + 8) goto Error; - - // True begin of the string - BeginOfThisString = Offset - SizeOfHeader - 8; --- -2.7.4 - diff --git a/external/lcms2/0017-Upgrade-Visual-studio-2017-15.8.patch.1 b/external/lcms2/0017-Upgrade-Visual-studio-2017-15.8.patch.1 new file mode 100644 index 000000000000..f616e6d38239 --- /dev/null +++ b/external/lcms2/0017-Upgrade-Visual-studio-2017-15.8.patch.1 @@ -0,0 +1,172 @@ +From 768f70ca405cd3159d990e962d54456773bb8cf8 Mon Sep 17 00:00:00 2001 +From: Marti Maria <i...@littlecms.com> +Date: Wed, 15 Aug 2018 20:07:56 +0200 +Subject: [PATCH 17/18] Upgrade Visual studio 2017 15.8 + +- Upgrade to 15.8 +- Add check on CGATS memory allocation (thanks to Quang Nguyen for +pointing out this) +--- + Projects/VC2017/jpegicc/jpegicc.vcxproj | 1 + + Projects/VC2017/lcms2_DLL/lcms2_DLL.vcxproj | 2 +- + Projects/VC2017/lcms2_static/lcms2_static.vcxproj | 2 +- + Projects/VC2017/linkicc/linkicc.vcxproj | 2 +- + Projects/VC2017/psicc/psicc.vcxproj | 2 +- + Projects/VC2017/testbed/testbed.vcxproj | 2 +- + Projects/VC2017/tiffdiff/tiffdiff.vcxproj | 2 +- + Projects/VC2017/tifficc/tifficc.vcxproj | 2 +- + Projects/VC2017/transicc/transicc.vcxproj | 1 + + src/cmscgats.c | 14 ++++++++++---- + 10 files changed, 19 insertions(+), 11 deletions(-) + +diff --git a/Projects/VC2017/jpegicc/jpegicc.vcxproj b/Projects/VC2017/jpegicc/jpegicc.vcxproj +index ab26a53..39cfd00 100644 +--- a/Projects/VC2017/jpegicc/jpegicc.vcxproj ++++ b/Projects/VC2017/jpegicc/jpegicc.vcxproj +@@ -22,6 +22,7 @@ + <ProjectGuid>{62812507-F926-4968-96A9-17678460AD90}</ProjectGuid> + <RootNamespace>jpegicc</RootNamespace> + <Keyword>Win32Proj</Keyword> ++ <WindowsTargetPlatformVersion>10.0.17134.0</WindowsTargetPlatformVersion> + </PropertyGroup> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration"> +diff --git a/Projects/VC2017/lcms2_DLL/lcms2_DLL.vcxproj b/Projects/VC2017/lcms2_DLL/lcms2_DLL.vcxproj +index 4c8aa3f..d1bf3eb 100644 +--- a/Projects/VC2017/lcms2_DLL/lcms2_DLL.vcxproj ++++ b/Projects/VC2017/lcms2_DLL/lcms2_DLL.vcxproj +@@ -22,7 +22,7 @@ + <ProjectGuid>{8C51BE48-ADB8-4089-A9EC-F6BF993A0548}</ProjectGuid> + <RootNamespace>lcms2_DLL</RootNamespace> + <Keyword>Win32Proj</Keyword> +- <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion> ++ <WindowsTargetPlatformVersion>10.0.17134.0</WindowsTargetPlatformVersion> + </PropertyGroup> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration"> +diff --git a/Projects/VC2017/lcms2_static/lcms2_static.vcxproj b/Projects/VC2017/lcms2_static/lcms2_static.vcxproj +index 2a9988a..9fc05ce 100644 +--- a/Projects/VC2017/lcms2_static/lcms2_static.vcxproj ++++ b/Projects/VC2017/lcms2_static/lcms2_static.vcxproj +@@ -22,7 +22,7 @@ + <ProjectGuid>{71DEDE59-3F1E-486B-A899-4283000F76B5}</ProjectGuid> + <RootNamespace>lcms2_static</RootNamespace> + <Keyword>Win32Proj</Keyword> +- <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion> ++ <WindowsTargetPlatformVersion>10.0.17134.0</WindowsTargetPlatformVersion> + </PropertyGroup> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration"> +diff --git a/Projects/VC2017/linkicc/linkicc.vcxproj b/Projects/VC2017/linkicc/linkicc.vcxproj +index 30c2b4e..51586dd 100644 +--- a/Projects/VC2017/linkicc/linkicc.vcxproj ++++ b/Projects/VC2017/linkicc/linkicc.vcxproj +@@ -22,7 +22,7 @@ + <ProjectGuid>{FBFBE1DC-DB84-4BA1-9552-B4780F457849}</ProjectGuid> + <RootNamespace>linkicc</RootNamespace> + <Keyword>Win32Proj</Keyword> +- <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion> ++ <WindowsTargetPlatformVersion>10.0.17134.0</WindowsTargetPlatformVersion> + </PropertyGroup> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration"> +diff --git a/Projects/VC2017/psicc/psicc.vcxproj b/Projects/VC2017/psicc/psicc.vcxproj +index 9dcf89a..8f26e12 100644 +--- a/Projects/VC2017/psicc/psicc.vcxproj ++++ b/Projects/VC2017/psicc/psicc.vcxproj +@@ -22,7 +22,7 @@ + <ProjectGuid>{EF6A8851-65FE-46F5-B9EF-14F0B671F693}</ProjectGuid> + <RootNamespace>psicc</RootNamespace> + <Keyword>Win32Proj</Keyword> +- <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion> ++ <WindowsTargetPlatformVersion>10.0.17134.0</WindowsTargetPlatformVersion> + </PropertyGroup> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration"> +diff --git a/Projects/VC2017/testbed/testbed.vcxproj b/Projects/VC2017/testbed/testbed.vcxproj +index 0af3762..3f6aea3 100644 +--- a/Projects/VC2017/testbed/testbed.vcxproj ++++ b/Projects/VC2017/testbed/testbed.vcxproj +@@ -22,7 +22,7 @@ + <ProjectGuid>{928A3A2B-46EF-4279-959C-513B3652FF0E}</ProjectGuid> + <RootNamespace>testbed</RootNamespace> + <Keyword>Win32Proj</Keyword> +- <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion> ++ <WindowsTargetPlatformVersion>10.0.17134.0</WindowsTargetPlatformVersion> + </PropertyGroup> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration"> +diff --git a/Projects/VC2017/tiffdiff/tiffdiff.vcxproj b/Projects/VC2017/tiffdiff/tiffdiff.vcxproj +index 7edfe28..3a6d837 100644 +--- a/Projects/VC2017/tiffdiff/tiffdiff.vcxproj ++++ b/Projects/VC2017/tiffdiff/tiffdiff.vcxproj +@@ -22,7 +22,7 @@ + <ProjectGuid>{75B91835-CCD7-48BE-A606-A9C997D5DBEE}</ProjectGuid> + <RootNamespace>tiffdiff</RootNamespace> + <Keyword>Win32Proj</Keyword> +- <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion> ++ <WindowsTargetPlatformVersion>10.0.17134.0</WindowsTargetPlatformVersion> + </PropertyGroup> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration"> +diff --git a/Projects/VC2017/tifficc/tifficc.vcxproj b/Projects/VC2017/tifficc/tifficc.vcxproj +index cd9f04c..5ef954f 100644 +--- a/Projects/VC2017/tifficc/tifficc.vcxproj ++++ b/Projects/VC2017/tifficc/tifficc.vcxproj +@@ -22,7 +22,7 @@ + <ProjectGuid>{2256DE16-ED92-4A6F-9C54-F65BB61E64A2}</ProjectGuid> + <RootNamespace>tifficc</RootNamespace> + <Keyword>Win32Proj</Keyword> +- <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion> ++ <WindowsTargetPlatformVersion>10.0.17134.0</WindowsTargetPlatformVersion> + </PropertyGroup> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration"> +diff --git a/Projects/VC2017/transicc/transicc.vcxproj b/Projects/VC2017/transicc/transicc.vcxproj +index d9b77c6..b3173d8 100644 +--- a/Projects/VC2017/transicc/transicc.vcxproj ++++ b/Projects/VC2017/transicc/transicc.vcxproj +@@ -22,6 +22,7 @@ + <ProjectGuid>{9EE22D66-C849-474C-9ED5-C3E141DAB160}</ProjectGuid> + <RootNamespace>transicc</RootNamespace> + <Keyword>Win32Proj</Keyword> ++ <WindowsTargetPlatformVersion>10.0.17134.0</WindowsTargetPlatformVersion> + </PropertyGroup> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration"> +diff --git a/src/cmscgats.c b/src/cmscgats.c +index 1a87613..8c3e96d 100644 +--- a/src/cmscgats.c ++++ b/src/cmscgats.c +@@ -1,7 +1,7 @@ + //--------------------------------------------------------------------------------- + // + // Little Color Management System +-// Copyright (c) 1998-2017 Marti Maria Saguer ++// Copyright (c) 1998-2018 Marti Maria Saguer + // + // Permission is hereby granted, free of charge, to any person obtaining + // a copy of this software and associated documentation files (the "Software"), +@@ -1506,10 +1506,16 @@ void AllocateDataSet(cmsIT8* it8) + t-> nSamples = atoi(cmsIT8GetProperty(it8, "NUMBER_OF_FIELDS")); + t-> nPatches = atoi(cmsIT8GetProperty(it8, "NUMBER_OF_SETS")); + +- t-> Data = (char**)AllocChunk (it8, ((cmsUInt32Number) t->nSamples + 1) * ((cmsUInt32Number) t->nPatches + 1) *sizeof (char*)); +- if (t->Data == NULL) { ++ if (t -> nSamples < 0 || t->nSamples > 0x7ffe || t->nPatches < 0 || t->nPatches > 0x7ffe) ++ { ++ SynError(it8, "AllocateDataSet: too much data"); ++ } ++ else { ++ t->Data = (char**)AllocChunk(it8, ((cmsUInt32Number)t->nSamples + 1) * ((cmsUInt32Number)t->nPatches + 1) * sizeof(char*)); ++ if (t->Data == NULL) { + +- SynError(it8, "AllocateDataSet: Unable to allocate data array"); ++ SynError(it8, "AllocateDataSet: Unable to allocate data array"); ++ } + } + + } +-- +2.17.1 + diff --git a/external/lcms2/UnpackedTarball_lcms2.mk b/external/lcms2/UnpackedTarball_lcms2.mk index 01d04802c739..c5e1839cfccc 100644 --- a/external/lcms2/UnpackedTarball_lcms2.mk +++ b/external/lcms2/UnpackedTarball_lcms2.mk @@ -16,9 +16,9 @@ $(eval $(call gb_UnpackedTarball_update_autoconf_configs,lcms2)) $(eval $(call gb_UnpackedTarball_set_patchlevel,lcms2,3)) $(eval $(call gb_UnpackedTarball_add_patches,lcms2,\ + external/lcms2/0017-Upgrade-Visual-studio-2017-15.8.patch.1 \ external/lcms2/lcms2-2.4-windows.patch \ external/lcms2/lcms2-msvc-disable-sse2.patch.1 \ - external/lcms2/0001-Added-an-extra-check-to-MLU-bounds.patch.1 \ external/lcms2/c++17.patch.0 \ )) commit ae44bd39c74e90a664886fb0c2544fa58c3e0fea Author: Michael Stahl <michael.st...@cib.de> AuthorDate: Mon Jan 14 15:08:42 2019 +0100 Commit: Andras Timar <andras.ti...@collabora.com> CommitDate: Thu Jan 17 14:54:00 2019 +0100 sdext: fix build with poppler 0.73 ... which has removed Guchar, Gushort, Guint, Gulong... Change-Id: Ia54ad378031f167f6779f6ffe574b85c1e72f26d Reviewed-on: https://gerrit.libreoffice.org/66305 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.st...@cib.de> (cherry picked from commit 50d371ae08c66648d9f32f633b2245e1746e2bb6) Reviewed-on: https://gerrit.libreoffice.org/66363 Reviewed-by: Caolán McNamara <caol...@redhat.com> Tested-by: Caolán McNamara <caol...@redhat.com> (cherry picked from commit b5698ac28a8a79105edf28ffc1db19bbcbecda3a) diff --git a/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx b/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx index eb6815399f42..cd6a5b65e30a 100644 --- a/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx +++ b/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx @@ -310,7 +310,7 @@ void writePpm_( OutputBuffer& o_rOutputBuf, o_rOutputBuf.resize(header_size); // initialize stream - Guchar *p; + unsigned char *p; GfxRGB rgb; std::unique_ptr<ImageStream> imgStr( new ImageStream(str, @@ -415,7 +415,7 @@ void writeImage_( OutputBuffer& o_rOutputBuf, oneColor = { byteToCol( 0xff ), byteToCol( 0xff ), byteToCol( 0xff ) }; if( colorMap->getColorSpace()->getMode() == csIndexed || colorMap->getColorSpace()->getMode() == csDeviceGray ) { - Guchar nIndex = 0; + unsigned char nIndex = 0; colorMap->getRGB( &nIndex, &zeroColor ); nIndex = 1; colorMap->getRGB( &nIndex, &oneColor ); diff --git a/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.hxx b/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.hxx index 4e2d303b943b..95d8befdc55b 100644 --- a/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.hxx +++ b/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.hxx @@ -289,9 +289,13 @@ extern FILE* g_binary_out; // note: if you ever change Output_t, please keep in mind that the current code // relies on it being of 8 bit size -typedef Guchar Output_t; +typedef unsigned char Output_t; typedef std::vector< Output_t > OutputBuffer; +#if !POPPLER_CHECK_VERSION(0, 73, 0) +static_assert(std::is_same<Guchar, unsigned char>::value, "unexpected typedef"); +#endif + #endif // INCLUDED_SDEXT_SOURCE_PDFIMPORT_XPDFWRAPPER_PDFIOUTDEV_GPL_HXX /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/sdext/source/pdfimport/xpdfwrapper/pnghelper.cxx b/sdext/source/pdfimport/xpdfwrapper/pnghelper.cxx index 3caed120648e..be778708a54f 100644 --- a/sdext/source/pdfimport/xpdfwrapper/pnghelper.cxx +++ b/sdext/source/pdfimport/xpdfwrapper/pnghelper.cxx @@ -242,7 +242,7 @@ void PngHelper::createPng( OutputBuffer& o_rOutputBuf, appendIHDR( o_rOutputBuf, width, height, 8, 6 ); // RGBA image // initialize stream - Guchar *p, *pm; + unsigned char *p, *pm; GfxRGB rgb; GfxGray alpha; ImageStream* imgStr = @@ -328,7 +328,7 @@ void PngHelper::createPng( OutputBuffer& o_rOutputBuf, appendIHDR( o_rOutputBuf, width, height, 8, 6 ); // RGBA image // initialize stream - Guchar *p; + unsigned char *p; GfxRGB rgb; ImageStream* imgStr = new ImageStream(str, @@ -374,7 +374,7 @@ void PngHelper::createPng( OutputBuffer& o_rOutputBuf, { for( int x = 0; x < maskWidth; ++x ) { - Guchar aPixel = 0; + unsigned char aPixel = 0; imgStrMask->getPixel( &aPixel ); int nIndex = (y*height/maskHeight) * (width*4+1) + // mapped line (x*width/maskWidth)*4 + 1 + 3 // mapped column commit 6f7b16d57d4101fa7d6731234cff206e7b587dd0 Author: Andreas Sturmlechner <ast...@gentoo.org> AuthorDate: Tue Jan 8 11:24:40 2019 +0100 Commit: Andras Timar <andras.ti...@collabora.com> CommitDate: Thu Jan 17 14:53:38 2019 +0100 Fix build with poppler-0.72 Change-Id: I0664d1b39e97b7555c0a3cba442db52b84f37134 Reviewed-on: https://gerrit.libreoffice.org/65960 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.st...@cib.de> (cherry picked from commit 65a6c9ae4791188ffcecf489073cf38873ce5e17) Reviewed-on: https://gerrit.libreoffice.org/66376 Reviewed-by: Caolán McNamara <caol...@redhat.com> Tested-by: Caolán McNamara <caol...@redhat.com> (cherry picked from commit a5a188d5bbb99f6e305dad6f81b9e3760aa32676) diff --git a/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx b/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx index e7c021e2ed49..eb6815399f42 100644 --- a/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx +++ b/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx @@ -569,7 +569,11 @@ void PDFOutDev::processLink(Link* link, Catalog*) LinkAction* pAction = link->getAction(); if (pAction && pAction->getKind() == actionURI) { +#if POPPLER_CHECK_VERSION(0, 72, 0) + const char* pURI = static_cast<LinkURI*>(pAction)->getURI()->c_str(); +#else const char* pURI = static_cast<LinkURI*>(pAction)->getURI()->getCString(); +#endif std::vector<char> aEsc( lcl_escapeLineFeeds(pURI) ); @@ -771,7 +775,11 @@ void PDFOutDev::updateFont(GfxState *state) aFont = it->second; +#if POPPLER_CHECK_VERSION(0, 72, 0) + std::vector<char> aEsc( lcl_escapeLineFeeds(aFont.familyName.c_str()) ); +#else std::vector<char> aEsc( lcl_escapeLineFeeds(aFont.familyName.getCString()) ); +#endif printf( " %d %d %d %d %f %d %s", aFont.isEmbedded, aFont.isBold, commit 8968694ab8e6db0f4df92bb1be0f3fb030f0f772 Author: Aleksei Nikiforov <darktemp...@basealt.ru> AuthorDate: Thu Nov 22 17:54:00 2018 +0300 Commit: Andras Timar <andras.ti...@collabora.com> CommitDate: Thu Jan 17 14:53:22 2019 +0100 Fix build with poppler 0.71 Change-Id: I470ece9dc4766e10e1ccb5e99b25a8d8cc4cbf38 Reviewed-on: https://gerrit.libreoffice.org/63860 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sberg...@redhat.com> (cherry picked from commit 8ff41a26caf51544699863c89598d37d93dc1b21) Reviewed-on: https://gerrit.libreoffice.org/66375 Reviewed-by: Aleksei Nikiforov <darktemp...@basealt.ru> Reviewed-by: Michael Stahl <michael.st...@cib.de> Reviewed-by: Caolán McNamara <caol...@redhat.com> Tested-by: Caolán McNamara <caol...@redhat.com> (cherry picked from commit 704ff8be10ecfb39be064bd08b2f9c11312e3428) diff --git a/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx b/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx index abde6a8c9936..e7c021e2ed49 100644 --- a/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx +++ b/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx @@ -592,7 +592,11 @@ void PDFOutDev::restoreState(GfxState*) printf( "restoreState\n" ); } +#if POPPLER_CHECK_VERSION(0, 71, 0) +void PDFOutDev::setDefaultCTM(const double *pMat) +#else void PDFOutDev::setDefaultCTM(double *pMat) +#endif { assert(pMat); diff --git a/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.hxx b/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.hxx index 97c602dafc7c..4e2d303b943b 100644 --- a/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.hxx +++ b/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.hxx @@ -172,7 +172,11 @@ namespace pdfi //----- initialization and control // Set default transform matrix. +#if POPPLER_CHECK_VERSION(0, 71, 0) + virtual void setDefaultCTM(const double *ctm) override; +#else virtual void setDefaultCTM(double *ctm) override; +#endif // Start a page. virtual void startPage(int pageNum, GfxState *state diff --git a/sdext/source/pdfimport/xpdfwrapper/wrapper_gpl.cxx b/sdext/source/pdfimport/xpdfwrapper/wrapper_gpl.cxx index b536a710e832..f2049a6a6e48 100644 --- a/sdext/source/pdfimport/xpdfwrapper/wrapper_gpl.cxx +++ b/sdext/source/pdfimport/xpdfwrapper/wrapper_gpl.cxx @@ -69,7 +69,7 @@ int main(int argc, char **argv) // read config file globalParams = new GlobalParams(); - globalParams->setErrQuiet(gTrue); + globalParams->setErrQuiet(true); #if defined(_MSC_VER) globalParams->setupBaseFonts(nullptr); #endif @@ -145,7 +145,7 @@ int main(int argc, char **argv) i, PDFI_OUTDEV_RESOLUTION, PDFI_OUTDEV_RESOLUTION, - 0, gTrue, gTrue, gTrue); + 0, true, true, true); rDoc.processLinks(&aOutDev, i); } commit a92c6735023adbaa32ccdb31d06662353ccdc70a Author: Mike Kaganski <mike.kagan...@collabora.com> AuthorDate: Tue Nov 20 08:45:38 2018 +0100 Commit: Andras Timar <andras.ti...@collabora.com> CommitDate: Thu Jan 17 14:52:46 2019 +0100 poppler dropped GBool since 0.71 See https://lists.freedesktop.org/archives/libreoffice/2018-November/081410.html Change-Id: I258e08894486a925bed50a3a4232b6e805af6784 Reviewed-on: https://gerrit.libreoffice.org/63625 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sberg...@redhat.com> (cherry picked from commit 5e8bdd9203dd642111c62a6668ee665a20d4ba19) Reviewed-on: https://gerrit.libreoffice.org/66374 Reviewed-by: Caolán McNamara <caol...@redhat.com> Tested-by: Caolán McNamara <caol...@redhat.com> (cherry picked from commit c85bd2c443b9a509b028a90ee9e766929e63089f) diff --git a/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx b/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx index 9618e5b2a28f..abde6a8c9936 100644 --- a/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx +++ b/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx @@ -528,7 +528,7 @@ void PDFOutDev::printPath( GfxPath* pPath ) PDFOutDev::PDFOutDev( PDFDoc* pDoc ) : m_pDoc( pDoc ), m_aFontMap(), - m_pUtf8Map( new UnicodeMap("UTF-8", gTrue, &mapUTF8) ), + m_pUtf8Map( new UnicodeMap("UTF-8", true, &mapUTF8) ), m_bSkipImages(false) { } @@ -953,11 +953,11 @@ void PDFOutDev::endTextObject(GfxState*) } void PDFOutDev::drawImageMask(GfxState* pState, Object*, Stream* str, - int width, int height, GBool invert, + int width, int height, poppler_bool invert, #if POPPLER_CHECK_VERSION(0, 12, 0) - GBool /*interpolate*/, + poppler_bool /*interpolate*/, #endif - GBool /*inlineImg*/ ) + poppler_bool /*inlineImg*/ ) { if (m_bSkipImages) return; @@ -986,9 +986,9 @@ void PDFOutDev::drawImageMask(GfxState* pState, Object*, Stream* str, void PDFOutDev::drawImage(GfxState*, Object*, Stream* str, int width, int height, GfxImageColorMap* colorMap, #if POPPLER_CHECK_VERSION(0, 12, 0) - GBool /*interpolate*/, + poppler_bool /*interpolate*/, #endif - int* maskColors, GBool /*inlineImg*/ ) + int* maskColors, poppler_bool /*inlineImg*/ ) { if (m_bSkipImages) return; @@ -1037,13 +1037,13 @@ void PDFOutDev::drawMaskedImage(GfxState*, Object*, Stream* str, int width, int height, GfxImageColorMap* colorMap, #if POPPLER_CHECK_VERSION(0, 12, 0) - GBool /*interpolate*/, + poppler_bool /*interpolate*/, #endif Stream* maskStr, int maskWidth, int maskHeight, - GBool maskInvert + poppler_bool maskInvert #if POPPLER_CHECK_VERSION(0, 12, 0) - , GBool /*maskInterpolate*/ + , poppler_bool /*maskInterpolate*/ #endif ) { @@ -1059,13 +1059,13 @@ void PDFOutDev::drawSoftMaskedImage(GfxState*, Object*, Stream* str, int width, int height, GfxImageColorMap* colorMap, #if POPPLER_CHECK_VERSION(0, 12, 0) - GBool /*interpolate*/, + poppler_bool /*interpolate*/, #endif Stream* maskStr, int maskWidth, int maskHeight, GfxImageColorMap* maskColorMap #if POPPLER_CHECK_VERSION(0, 12, 0) - , GBool /*maskInterpolate*/ + , poppler_bool /*maskInterpolate*/ #endif ) { diff --git a/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.hxx b/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.hxx index 2a6268c0ba1d..97c602dafc7c 100644 --- a/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.hxx +++ b/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.hxx @@ -129,6 +129,13 @@ namespace pdfi { return const_cast<GooString &>(familyName); } }; + // Versions before 0.15 defined GBool as int; 0.15 redefined it as bool; 0.71 dropped GBool +#if POPPLER_VERSION_MAJOR == 0 && POPPLER_VERSION_MINOR < 71 + typedef GBool poppler_bool; +#else + typedef bool poppler_bool; +#endif + class PDFOutDev : public OutputDev { // not owned by this class @@ -150,17 +157,17 @@ namespace pdfi // Does this device use upside-down coordinates? // (Upside-down means (0,0) is the top left corner of the page.) - virtual GBool upsideDown() override { return gTrue; } + virtual poppler_bool upsideDown() override { return true; } // Does this device use drawChar() or drawString()? - virtual GBool useDrawChar() override { return gTrue; } + virtual poppler_bool useDrawChar() override { return true; } // Does this device use beginType3Char/endType3Char? Otherwise, // text in Type 3 fonts will be drawn with drawChar/drawString. - virtual GBool interpretType3Chars() override { return gFalse; } + virtual poppler_bool interpretType3Chars() override { return false; } // Does this device need non-text content? - virtual GBool needNonText() override { return gTrue; } + virtual poppler_bool needNonText() override { return true; } //----- initialization and control @@ -232,40 +239,40 @@ namespace pdfi //----- image drawing virtual void drawImageMask(GfxState *state, Object *ref, Stream *str, - int width, int height, GBool invert, + int width, int height, poppler_bool invert, #if POPPLER_CHECK_VERSION(0, 12, 0) - GBool interpolate, + poppler_bool interpolate, #endif - GBool inlineImg) override; + poppler_bool inlineImg) override; virtual void drawImage(GfxState *state, Object *ref, Stream *str, int width, int height, GfxImageColorMap *colorMap, #if POPPLER_CHECK_VERSION(0, 12, 0) - GBool interpolate, + poppler_bool interpolate, #endif - int *maskColors, GBool inlineImg) override; + int *maskColors, poppler_bool inlineImg) override; virtual void drawMaskedImage(GfxState *state, Object *ref, Stream *str, int width, int height, GfxImageColorMap *colorMap, #if POPPLER_CHECK_VERSION(0, 12, 0) - GBool interpolate, + poppler_bool interpolate, #endif Stream *maskStr, int maskWidth, int maskHeight, - GBool maskInvert + poppler_bool maskInvert #if POPPLER_CHECK_VERSION(0, 12, 0) - , GBool maskInterpolate + , poppler_bool maskInterpolate #endif ) override; virtual void drawSoftMaskedImage(GfxState *state, Object *ref, Stream *str, int width, int height, GfxImageColorMap *colorMap, #if POPPLER_CHECK_VERSION(0, 12, 0) - GBool interpolate, + poppler_bool interpolate, #endif Stream *maskStr, int maskWidth, int maskHeight, GfxImageColorMap *maskColorMap #if POPPLER_CHECK_VERSION(0, 12, 0) - , GBool maskInterpolate + , poppler_bool maskInterpolate #endif ) override; commit a2a5b29c2180f3128c20bf77eb3d9c7840c61551 Author: Caolán McNamara <caol...@redhat.com> AuthorDate: Mon Jan 14 09:48:43 2019 +0000 Commit: Andras Timar <andras.ti...@collabora.com> CommitDate: Thu Jan 17 14:52:12 2019 +0100 Resolves: tdf#122701 opengl settings don't affect gtk3 Change-Id: Iffcf9b6ea8d191a509c2ca451f2ce4a249fde922 Reviewed-on: https://gerrit.libreoffice.org/66292 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kagan...@collabora.com> (cherry picked from commit aa15463a2f303ab75679eefa4d8241f2b700684e) Reviewed-on: https://gerrit.libreoffice.org/66389 Reviewed-by: Adolfo Jayme Barrientos <fit...@ubuntu.com> (cherry picked from commit 390ad702841fd247061377c044df446a7b2c587d) diff --git a/cui/source/options/optgdlg.cxx b/cui/source/options/optgdlg.cxx index 38acc1d22b4f..2a11f9501bbc 100644 --- a/cui/source/options/optgdlg.cxx +++ b/cui/source/options/optgdlg.cxx @@ -521,7 +521,7 @@ CanvasSettings::CanvasSettings() : bool CanvasSettings::IsHardwareAccelerationAvailable() const { #if HAVE_FEATURE_OPENGL - if( OpenGLWrapper::isVCLOpenGLEnabled() ) + if (OpenGLWrapper::isVCLOpenGLEnabled() && Application::GetToolkitName() != "gtk3") mbHWAccelAvailable = false; else commit 4a328036a8153922988cc1a730534c1a2c1542a8 Author: Julien Nabet <serval2...@yahoo.fr> AuthorDate: Sun Dec 30 13:10:30 2018 +0100 Commit: Andras Timar <andras.ti...@collabora.com> CommitDate: Thu Jan 17 14:50:48 2019 +0100 tdf#112782: data-pilot-source is invalid in odf1.2 strict Change-Id: Ie24c416cb9ba8de904bf6e725a60b62ce7787596 Reviewed-on: https://gerrit.libreoffice.org/65742 (cherry picked from commit 18b9f23f13fd503e94d669ab80b5d2354d1817a1) Reviewed-on: https://gerrit.libreoffice.org/65885 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.st...@cib.de> (cherry picked from commit 6aa9f0980612d5c7dcc02cfe11babb73605be4ca) diff --git a/xmloff/source/chart/SchXMLExport.cxx b/xmloff/source/chart/SchXMLExport.cxx index 29ef4d2a431b..3d493c45c531 100644 --- a/xmloff/source/chart/SchXMLExport.cxx +++ b/xmloff/source/chart/SchXMLExport.cxx @@ -1203,7 +1203,7 @@ void SchXMLExportHelper_Impl::parseDocument( Reference< chart::XChartDocument > } Reference<chart2::data::XPivotTableDataProvider> xPivotTableDataProvider(xNewDoc->getDataProvider(), uno::UNO_QUERY); - if (xPivotTableDataProvider.is()) + if (xPivotTableDataProvider.is() && nCurrentODFVersion > SvtSaveOptions::ODFVER_012) { OUString sPivotTableName = xPivotTableDataProvider->getPivotTableName(); mrExport.AddAttribute(XML_NAMESPACE_LO_EXT, XML_DATA_PILOT_SOURCE, sPivotTableName); commit 42b6b9a5934dbf55d963dc6a3d9afdd4c202da19 Author: Caolán McNamara <caol...@redhat.com> AuthorDate: Wed Dec 5 13:22:44 2018 +0000 Commit: Andras Timar <andras.ti...@collabora.com> CommitDate: Thu Jan 17 14:50:02 2019 +0100 tdf#119126 forcepoint#76 avoid deleting footnote that would delete ... ... undeletable page (cherry picked from commit 0005b330eaed0b5559042d2597fb45e0c9125d7e) Conflicts: sw/qa/extras/layout/layout.cxx Reviewed-on: https://gerrit.libreoffice.org/66393 Tested-by: Xisco Faulí <xiscofa...@libreoffice.org> Reviewed-by: Miklos Vajna <vmik...@collabora.com> (cherry picked from commit 558f01a29cb640760e73724f6efdc0a1be20c8e3) Change-Id: I4622569eb9c757c6dcbdda32081ddc94e53db919 diff --git a/sw/source/core/inc/frame.hxx b/sw/source/core/inc/frame.hxx index 5d84ca5198a4..0e1f1fd7ae84 100644 --- a/sw/source/core/inc/frame.hxx +++ b/sw/source/core/inc/frame.hxx @@ -841,7 +841,7 @@ public: bool IsProtected() const; bool IsColLocked() const { return mbColLocked; } - bool IsDeleteForbidden() const { return mbForbidDelete; } + virtual bool IsDeleteForbidden() const { return mbForbidDelete; } /// this is the only way to delete a SwFrame instance static void DestroyFrame(SwFrame *const pFrame); diff --git a/sw/source/core/inc/ftnfrm.hxx b/sw/source/core/inc/ftnfrm.hxx index 3d3fbb38171b..9186a89737f2 100644 --- a/sw/source/core/inc/ftnfrm.hxx +++ b/sw/source/core/inc/ftnfrm.hxx @@ -68,6 +68,7 @@ class SwFootnoteFrame: public SwLayoutFrame public: SwFootnoteFrame( SwFrameFormat*, SwFrame*, SwContentFrame*, SwTextFootnote* ); + virtual bool IsDeleteForbidden() const override; virtual void Cut() override; virtual void Paste( SwFrame* pParent, SwFrame* pSibling = nullptr ) override; diff --git a/sw/source/core/layout/calcmove.cxx b/sw/source/core/layout/calcmove.cxx index de694019e1bd..03303872835b 100644 --- a/sw/source/core/layout/calcmove.cxx +++ b/sw/source/core/layout/calcmove.cxx @@ -245,6 +245,7 @@ void SwFrame::PrepareMake(vcl::RenderContext* pRenderContext) StackHack aHack; if ( GetUpper() ) { + SwFrameDeleteGuard aDeleteGuard(this); if ( lcl_IsCalcUpperAllowed( *this ) ) GetUpper()->Calc(pRenderContext); OSL_ENSURE( GetUpper(), ":-( Layout unstable (Upper gone)." ); diff --git a/sw/source/core/layout/ftnfrm.cxx b/sw/source/core/layout/ftnfrm.cxx index d49eac75c66c..7d463eb1e9b8 100644 --- a/sw/source/core/layout/ftnfrm.cxx +++ b/sw/source/core/layout/ftnfrm.cxx @@ -471,6 +471,27 @@ void SwFootnoteFrame::InvalidateNxtFootnoteCnts( SwPageFrame const *pPage ) } } +bool SwFootnoteFrame::IsDeleteForbidden() const +{ + if (SwLayoutFrame::IsDeleteForbidden()) + return true; + // needs to be in sync with the ::Cut logic + const SwLayoutFrame *pUp = GetUpper(); + if (pUp) + { + if (GetPrev()) + return false; + + // The last footnote takes its container along if it + // is deleted. Cut would put pUp->Lower() to the value + // of GetNext(), so if there is no GetNext then + // Cut would delete pUp. If that condition is true + // here then check if the container is delete-forbidden + return !GetNext() && pUp->IsDeleteForbidden(); + } + return false; +} + void SwFootnoteFrame::Cut() { if ( GetNext() ) @@ -496,7 +517,7 @@ void SwFootnoteFrame::Cut() if ( pUp ) { // The last footnote takes its container along - if ( !pUp->Lower() ) + if (!pUp->Lower()) { SwPageFrame *pPage = pUp->FindPageFrame(); if ( pPage ) @@ -1587,7 +1608,8 @@ void SwFootnoteBossFrame::AppendFootnote( SwContentFrame *pRef, SwTextFootnote * pNew->Calc(getRootFrame()->GetCurrShell()->GetOut()); // #i57914# - adjust fix #i49383# if ( !bOldFootnoteFrameLocked && !pNew->GetLower() && - !pNew->IsColLocked() && !pNew->IsBackMoveLocked() ) + !pNew->IsColLocked() && !pNew->IsBackMoveLocked() && + !pNew->IsDeleteForbidden() ) { pNew->Cut(); SwFrame::DestroyFrame(pNew); @@ -2192,7 +2214,8 @@ void SwFootnoteBossFrame::RearrangeFootnotes( const SwTwips nDeadLine, const boo if ( !bLock && bUnlockLastFootnoteFrame && !pLastFootnoteFrame->GetLower() && !pLastFootnoteFrame->IsColLocked() && - !pLastFootnoteFrame->IsBackMoveLocked() ) + !pLastFootnoteFrame->IsBackMoveLocked() && + !pLastFootnoteFrame->IsDeleteForbidden() ) { pLastFootnoteFrame->Cut(); SwFrame::DestroyFrame(pLastFootnoteFrame); diff --git a/sw/source/core/layout/tabfrm.cxx b/sw/source/core/layout/tabfrm.cxx index 71d83da9ff82..921659f032b7 100755 --- a/sw/source/core/layout/tabfrm.cxx +++ b/sw/source/core/layout/tabfrm.cxx @@ -861,6 +861,11 @@ bool SwTabFrame::RemoveFollowFlowLine() // #140081# Make code robust. if ( !pFollowFlowLine || !pLastLine ) return true; + if (pFollowFlowLine->IsDeleteForbidden()) + { + SAL_WARN("sw.layout", "Cannot remove in-use Follow Flow Line"); + return true; + } // Move content lcl_MoveRowContent( *pFollowFlowLine, *static_cast<SwRowFrame*>(pLastLine) ); commit 70e2ca96778af1b7734aa9dde9627567cd210bc4 Author: Michael Stahl <michael.st...@cib.de> AuthorDate: Mon Jan 14 15:52:00 2019 +0100 Commit: Andras Timar <andras.ti...@collabora.com> CommitDate: Thu Jan 17 14:46:07 2019 +0100 libxslt: upgrade to release 1.1.33 Change-Id: Ifc64dae74df341e107857e43223ead04b9c1061e Reviewed-on: https://gerrit.libreoffice.org/66309 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.st...@cib.de> (cherry picked from commit 3f720ac5ff65ddb2c0a06e48d0e2e9bec29f3a43) Reviewed-on: https://gerrit.libreoffice.org/66364 Reviewed-by: Caolán McNamara <caol...@redhat.com> Tested-by: Caolán McNamara <caol...@redhat.com> (cherry picked from commit efe7b735104343e5e0182e1b004aca9c7b79a901) diff --git a/download.lst b/download.lst index 9177faaeac8c..2a867282ae0c 100644 --- a/download.lst +++ b/download.lst @@ -175,8 +175,8 @@ export XMLSEC_TARBALL := xmlsec1-1.2.25.tar.gz export LIBXML_SHA256SUM := 94fb70890143e3c6549f265cee93ec064c80a84c42ad0f23e85ee1fd6540a871 export LIBXML_VERSION_MICRO := 9 export LIBXML_TARBALL := libxml2-2.9.$(LIBXML_VERSION_MICRO).tar.gz -export LIBXSLT_SHA256SUM := 526ecd0abaf4a7789041622c3950c0e7f2c4c8835471515fd77eec684a355460 -export LIBXSLT_VERSION_MICRO := 32 +export LIBXSLT_SHA256SUM := 8e36605144409df979cab43d835002f63988f3dc94d5d3537c12796db90e38c8 +export LIBXSLT_VERSION_MICRO := 33 export LIBXSLT_TARBALL := libxslt-1.1.$(LIBXSLT_VERSION_MICRO).tar.gz export LPSOLVE_SHA256SUM := 171816288f14215c69e730f7a4f1c325739873e21f946ff83884b350574e6695 export LPSOLVE_TARBALL := 26b3e95ddf3d9c077c480ea45874b3b8-lp_solve_5.5.tar.gz commit 8d4ddc38ed9b057a1d725dd26934521e76693068 Author: Michael Stahl <michael.st...@cib.de> AuthorDate: Mon Jan 14 17:33:37 2019 +0100 Commit: Andras Timar <andras.ti...@collabora.com> CommitDate: Thu Jan 17 14:45:34 2019 +0100 python3: add patch bpo-17239: Disable external entities in SAX parser Change-Id: I44e969d8d3a8fe6b6426d61a1cbe83154c8518dd Reviewed-on: https://gerrit.libreoffice.org/66329 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.st...@cib.de> (cherry picked from commit a57dd8eba9c0799dd42eb547a37622bce8fdb0b3) Reviewed-on: https://gerrit.libreoffice.org/66370 Reviewed-by: Caolán McNamara <caol...@redhat.com> Tested-by: Caolán McNamara <caol...@redhat.com> (cherry picked from commit 66b3860fd1772284dc12d0d2d2c76ac59b16883e) diff --git a/external/python3/0001-3.6-bpo-17239-Disable-external-entities-in-SAX-parse.patch.1 b/external/python3/0001-3.6-bpo-17239-Disable-external-entities-in-SAX-parse.patch.1 new file mode 100644 index 000000000000..489e5d0e89ee --- /dev/null +++ b/external/python3/0001-3.6-bpo-17239-Disable-external-entities-in-SAX-parse.patch.1 @@ -0,0 +1,59 @@ +From 582d188e6e3487180891f1fc457a80dec8be26a8 Mon Sep 17 00:00:00 2001 +From: Christian Heimes <christ...@python.org> +Date: Mon, 24 Sep 2018 14:38:31 +0200 +Subject: [PATCH] [3.6] bpo-17239: Disable external entities in SAX parser + (GH-9217) (GH-9512) + +The SAX parser no longer processes general external entities by default +to increase security. Before, the parser created network connections +to fetch remote files or loaded local files from the file system for DTD +and entities. + +Signed-off-by: Christian Heimes <christ...@python.org> + +https://bugs.python.org/issue17239. +(cherry picked from commit 17b1d5d4e36aa57a9b25a0e694affbd1ee637e45) + +Co-authored-by: Christian Heimes <christ...@python.org> + + + +https://bugs.python.org/issue17239 +--- + Doc/library/xml.dom.pulldom.rst | 14 +++++ + Doc/library/xml.rst | 6 +- + Doc/library/xml.sax.rst | 8 +++ + Doc/whatsnew/3.6.rst | 18 +++++- + Lib/test/test_pulldom.py | 7 +++ + Lib/test/test_sax.py | 60 ++++++++++++++++++- + Lib/test/test_xml_etree.py | 13 ++++ + Lib/xml/sax/expatreader.py | 2 +- + .../2018-09-11-18-30-55.bpo-17239.kOpwK2.rst | 3 + + 9 files changed, 125 insertions(+), 6 deletions(-) + create mode 100644 Misc/NEWS.d/next/Security/2018-09-11-18-30-55.bpo-17239.kOpwK2.rst + +diff --git a/Lib/xml/sax/expatreader.py b/Lib/xml/sax/expatreader.py +index 421358fa5b..5066ffc2fa 100644 +--- a/Lib/xml/sax/expatreader.py ++++ b/Lib/xml/sax/expatreader.py +@@ -95,7 +95,7 @@ class ExpatParser(xmlreader.IncrementalParser, xmlreader.Locator): + self._lex_handler_prop = None + self._parsing = 0 + self._entity_stack = [] +- self._external_ges = 1 ++ self._external_ges = 0 + self._interning = None + + # XMLReader methods +diff --git a/Misc/NEWS.d/next/Security/2018-09-11-18-30-55.bpo-17239.kOpwK2.rst b/Misc/NEWS.d/next/Security/2018-09-11-18-30-55.bpo-17239.kOpwK2.rst +new file mode 100644 +index 0000000000..8dd0fe8c1b +--- /dev/null ++++ b/Misc/NEWS.d/next/Security/2018-09-11-18-30-55.bpo-17239.kOpwK2.rst +@@ -0,0 +1,3 @@ ++The xml.sax and xml.dom.minidom parsers no longer processes external ++entities by default. External DTD and ENTITY declarations no longer ++load files or create network connections. +-- +2.20.1 + diff --git a/external/python3/UnpackedTarball_python3.mk b/external/python3/UnpackedTarball_python3.mk index 35d6e643a1b0..ec1bdabe4fdd 100644 --- a/external/python3/UnpackedTarball_python3.mk +++ b/external/python3/UnpackedTarball_python3.mk @@ -26,6 +26,7 @@ $(eval $(call gb_UnpackedTarball_add_patches,python3,\ external/python3/python-3.3.5-pyexpat-symbols.patch.1 \ external/python3/ubsan.patch.0 \ external/python3/python-3.5.tweak.strip.soabi.patch \ + external/python3/0001-3.6-bpo-17239-Disable-external-entities-in-SAX-parse.patch.1 \ )) ifneq ($(filter DRAGONFLY FREEBSD LINUX NETBSD OPENBSD SOLARIS,$(OS)),) commit 5e9116596198f460db14d7d50bfd2f38a99fff59 Author: Michael Stahl <michael.st...@cib.de> AuthorDate: Mon Jan 14 15:44:35 2019 +0100 Commit: Andras Timar <andras.ti...@collabora.com> CommitDate: Thu Jan 17 14:44:56 2019 +0100 libxml2: upgrade to release 2.9.9 * fixes CVE-2018-14404 * drop one hunk from libxml2-android.patch that was added in commit 6a17d2f2ba7acfec277314b97b50e41532d6b44d; presumably nan() exists now given that other code is calling it. Change-Id: I696cc4e1da55536ea1c89a6e0446ce5bc8398ba4 Reviewed-on: https://gerrit.libreoffice.org/66308 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.st...@cib.de> (cherry picked from commit beea5852720b22043aefcd1e6b7243c202b40601) Reviewed-on: https://gerrit.libreoffice.org/66367 Reviewed-by: Caolán McNamara <caol...@redhat.com> Tested-by: Caolán McNamara <caol...@redhat.com> (cherry picked from commit 69b5995ed815bea4d21080f64a4232f44131696f) diff --git a/download.lst b/download.lst index 11dc0e31da7b..9177faaeac8c 100644 --- a/download.lst +++ b/download.lst @@ -172,8 +172,8 @@ export LIBTOMMATH_SHA256SUM := 083daa92d8ee6f4af96a6143b12d7fc8fe1a547e14f862304 export LIBTOMMATH_TARBALL := ltm-1.0.zip export XMLSEC_SHA256SUM := 967ca83edf25ccb5b48a3c4a09ad3405a63365576503bf34290a42de1b92fcd2 export XMLSEC_TARBALL := xmlsec1-1.2.25.tar.gz -export LIBXML_SHA256SUM := 0b74e51595654f958148759cfef0993114ddccccbb6f31aee018f3558e8e2732 -export LIBXML_VERSION_MICRO := 8 +export LIBXML_SHA256SUM := 94fb70890143e3c6549f265cee93ec064c80a84c42ad0f23e85ee1fd6540a871 +export LIBXML_VERSION_MICRO := 9 export LIBXML_TARBALL := libxml2-2.9.$(LIBXML_VERSION_MICRO).tar.gz export LIBXSLT_SHA256SUM := 526ecd0abaf4a7789041622c3950c0e7f2c4c8835471515fd77eec684a355460 export LIBXSLT_VERSION_MICRO := 32 diff --git a/external/libxml2/libxml2-android.patch b/external/libxml2/libxml2-android.patch index bd7e15b5d39e..714de61068fb 100644 --- a/external/libxml2/libxml2-android.patch +++ b/external/libxml2/libxml2-android.patch @@ -1,15 +1,3 @@ ---- misc/libxml2-2.7.6/trionan.c -+++ misc/build/libxml2-2.7.6/trionan.c -@@ -327,7 +327,7 @@ - - if (result == 0.0) { - --#if defined(TRIO_COMPILER_SUPPORTS_C99) -+#if defined(TRIO_COMPILER_SUPPORTS_C99) && !(defined(__ANDROID__) && defined(__clang__)) - result = nan(""); - - #elif defined(NAN) && defined(__STDC_IEC_559__) - --- misc/libxml2-2.7.6/Makefile.in +++ misc/build/libxml2-2.7.6/Makefile.in @@ -1635,7 +1635,7 @@ diff --git a/external/libxml2/libxml2-global-symbols.patch b/external/libxml2/libxml2-global-symbols.patch index ba34ac9cc0c6..49ee73731562 100644 --- a/external/libxml2/libxml2-global-symbols.patch +++ b/external/libxml2/libxml2-global-symbols.patch @@ -14,8 +14,8 @@ LIBXML2_2.6.32 { @@ -2231,3 +2231,43 @@ - xmlXPathSetContextNode; - } LIBXML2_2.9.0; + xmlHashDefaultDeallocator; + } LIBXML2_2.9.1; +# HACK: export global variable accessor functions (globals.h) +LIBXML2_GLOBAL_VARIABLES { commit fc3e410a047778068e8eb21c15e73764d160a335 Author: Michael Stahl <michael.st...@cib.de> AuthorDate: Mon Jan 14 16:19:58 2019 +0100 Commit: Andras Timar <andras.ti...@collabora.com> CommitDate: Thu Jan 17 14:44:17 2019 +0100 curl: upgrade to release 7.63.0 fixes CVE-2018-16840 Change-Id: Ica995a28a71eb5d5277d045d57fee9ba0f88883f Reviewed-on: https://gerrit.libreoffice.org/66328 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.st...@cib.de> (cherry picked from commit 5e96a5c664aea950111199e56bda412512a849b0) Reviewed-on: https://gerrit.libreoffice.org/66365 Reviewed-by: Caolán McNamara <caol...@redhat.com> Tested-by: Caolán McNamara <caol...@redhat.com> (cherry picked from commit 091451beafb1248e5ff55e4b54b5fda199287f5d) diff --git a/download.lst b/download.lst index 307d12adcb19..11dc0e31da7b 100644 --- a/download.lst +++ b/download.lst @@ -29,8 +29,8 @@ export CPPUNIT_SHA256SUM := 3d569869d27b48860210c758c4f313082103a5e58219a7669b52 export CPPUNIT_TARBALL := cppunit-1.14.0.tar.gz export CT2N_SHA256SUM := 71b238efd2734be9800af07566daea8d6685aeed28db5eb5fa0e6453f4d85de3 export CT2N_TARBALL := 1f467e5bb703f12cbbb09d5cf67ecf4a-converttexttonumber-1-5-0.oxt -export CURL_SHA256SUM := eaa812e9a871ea10dbe8e1d3f8f12a64a8e3e62aeab18cb23742e2f1727458ae -export CURL_TARBALL := curl-7.61.1.tar.gz +export CURL_SHA256SUM := d483b89062832e211c887d7cf1b65c902d591b48c11fe7d174af781681580b41 +export CURL_TARBALL := curl-7.63.0.tar.gz export EBOOK_SHA256SUM := 7e8d8ff34f27831aca3bc6f9cc532c2f90d2057c778963b884ff3d1e34dfe1f9 export EBOOK_TARBALL := libe-book-0.1.3.tar.xz export EPOXY_SHA256SUM := 1d8668b0a259c709899e1c4bab62d756d9002d546ce4f59c9665e2fc5f001a64 commit 13f8f38d9d6a102cbd53bdf56229324ee9dc7923 Author: Noel Grandin <noel.gran...@collabora.co.uk> AuthorDate: Mon Jan 14 13:19:32 2019 +0200 Commit: Andras Timar <andras.ti...@collabora.com> CommitDate: Thu Jan 17 14:43:41 2019 +0100 tdf#122250 Crash when running extension as a consequence of commit 4e07987ce8134312920682e3481c3f8e3d7b66c3 Date: Thu Aug 25 15:08:55 2016 +0200 cid#1371154 Missing move assignment operator this extensions appears to pass bogus data into VCLXWindow::setProperty, so I had to workaround that when debugging Change-Id: Ib6728c0a990bd7cfbfed43d79b7560bd2f7f5a67 Reviewed-on: https://gerrit.libreoffice.org/66297 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.gran...@collabora.co.uk> (cherry picked from commit b2fa854e81d329c9ed49bd10944cea1a430ecf7e) diff --git a/basic/source/sbx/sbxarray.cxx b/basic/source/sbx/sbxarray.cxx index 911a692c1def..99acf3325918 100644 --- a/basic/source/sbx/sbxarray.cxx +++ b/basic/source/sbx/sbxarray.cxx @@ -203,10 +203,14 @@ void SbxArray::Put( SbxVariable* pVar, sal_uInt16 nIdx ) if( eType != SbxOBJECT || pVar->GetClass() != SbxClassType::Object ) pVar->Convert( eType ); SbxVariableRef& rRef = GetRef( nIdx ); + // tdf#122250. It is possible that I hold the last reference to myself, so check, otherwise I might + // call SetFlag on myself after I have died. + bool removingMyself = rRef.get() && rRef->GetParameters() == this && GetRefCount() == 1; if(rRef.get() != pVar ) { rRef = pVar; - SetFlag( SbxFlagBits::Modified ); + if (!removingMyself) + SetFlag( SbxFlagBits::Modified ); } } } diff --git a/toolkit/source/awt/vclxwindow.cxx b/toolkit/source/awt/vclxwindow.cxx index f0a3cd605588..341679e1cd3e 100644 --- a/toolkit/source/awt/vclxwindow.cxx +++ b/toolkit/source/awt/vclxwindow.cxx @@ -1700,6 +1700,8 @@ void VCLXWindow::setProperty( const OUString& PropertyName, const css::uno::Any& WinBits nStyle = pWindow->GetStyle(); sal_uInt16 nTmp = 0; Value >>= nTmp; + // clear any dodgy bits passed in, can come from dodgy extensions + nTmp &= o3tl::typed_flags<WindowBorderStyle>::mask; WindowBorderStyle nBorder = static_cast<WindowBorderStyle>(nTmp); if ( !bool(nBorder) ) { commit 6de3c4450e8a3d34633ca0865f7186622f14f206 Author: Caolán McNamara <caol...@redhat.com> AuthorDate: Fri Dec 21 13:16:14 2018 +0000 Commit: Andras Timar <andras.ti...@collabora.com> CommitDate: Thu Jan 17 14:34:31 2019 +0100 Resolves: tdf#120885 Crash on choosing 'more styles' switching to the sidebar destroys the control currently active, just post the event to happen on the next event loop Change-Id: I3e9b629821fa43d8f29e419e72f66ed46d72fdbb Reviewed-on: https://gerrit.libreoffice.org/65543 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.st...@cib.de> (cherry picked from commit 93f26a66a4f6a13beb053edbdba9f906370bf968) diff --git a/svx/source/tbxctrls/tbcontrl.cxx b/svx/source/tbxctrls/tbcontrl.cxx index c5c19346ce3f..a0da3f0d05ec 100644 --- a/svx/source/tbxctrls/tbcontrl.cxx +++ b/svx/source/tbxctrls/tbcontrl.cxx @@ -176,6 +176,7 @@ private: static bool AdjustFontForItemHeight(OutputDevice* pDevice, tools::Rectangle& rTextRect, long nHeight); void SetOptimalSize(); DECL_LINK( MenuSelectHdl, Menu *, bool ); + DECL_STATIC_LINK(SvxStyleBox_Impl, ShowMoreHdl, void*, void); }; class SvxFontNameBox_Impl : public FontNameBox @@ -428,6 +429,16 @@ IMPL_LINK( SvxStyleBox_Impl, MenuSelectHdl, Menu*, pMenu, bool) return false; } +IMPL_STATIC_LINK_NOARG(SvxStyleBox_Impl, ShowMoreHdl, void*, void) +{ + SfxViewFrame* pViewFrm = SfxViewFrame::Current(); + DBG_ASSERT( pViewFrm, "SvxStyleBox_Impl::Select(): no viewframe" ); + if (!pViewFrm) + return; + pViewFrm->ShowChildWindow(SID_SIDEBAR); + ::sfx2::sidebar::Sidebar::ShowPanel("StyleListPanel", pViewFrm->GetFrame().GetFrameInterface()); +} + void SvxStyleBox_Impl::Select() { // Tell base class about selection so that AT get informed about it. @@ -451,11 +462,7 @@ void SvxStyleBox_Impl::Select() } else if( aSearchEntry == aMoreKey && GetSelectedEntryPos() == ( GetEntryCount() - 1 ) ) { - SfxViewFrame* pViewFrm = SfxViewFrame::Current(); - DBG_ASSERT( pViewFrm, "SvxStyleBox_Impl::Select(): no viewframe" ); - pViewFrm->ShowChildWindow( SID_SIDEBAR ); - ::sfx2::sidebar::Sidebar::ShowPanel("StyleListPanel", - pViewFrm->GetFrame().GetFrameInterface()); + Application::PostUserEvent(LINK(nullptr, SvxStyleBox_Impl, ShowMoreHdl)); //tdf#113214 change text back to previous entry SetText(GetSavedValue()); bDoIt = false; commit e591386ef5afad1229628401b44c4fd3c78bdfd8 Author: Gabor Kelemen <kelem...@ubuntu.com> AuthorDate: Wed Jan 9 07:28:28 2019 +0100 Commit: Andras Timar <andras.ti...@collabora.com> CommitDate: Thu Jan 17 14:26:10 2019 +0100 tdf#107416 Revert "tdf#103703 Turn on single print jobs for collated prints" Turns out this was a wrong solution to the problem, also causing printout mixups on busy printers for the users This reverts commit 37c3e57c788fb5ad931126ea233093d87ac3dbc3. Change-Id: I8a456f4c90f48854c1f5e92dc39ed4ec8a17cf75 Reviewed-on: https://gerrit.libreoffice.org/65993 Tested-by: Jenkins Reviewed-by: László Németh <nem...@numbertext.org> (cherry picked from commit 2117257eafac507b6af0be86ae62261fd192089a) Reviewed-on: https://gerrit.libreoffice.org/66152 Reviewed-by: Xisco Faulí <xiscofa...@libreoffice.org> (cherry picked from commit d8d148c96d7cdd96948240ac30b3aeacfb5aa7ca) diff --git a/officecfg/registry/data/org/openoffice/VCL.xcu b/officecfg/registry/data/org/openoffice/VCL.xcu index 762f35d75c62..f65c21e847eb 100644 --- a/officecfg/registry/data/org/openoffice/VCL.xcu +++ b/officecfg/registry/data/org/openoffice/VCL.xcu @@ -47,9 +47,6 @@ <prop oor:name="CollateBox" oor:op="replace" oor:type="xs:string"> <value>Default</value> </prop> - <prop oor:name="CollateSingleJobs" oor:op="replace" oor:type="xs:string"> - <value>true</value> - </prop> </node> <node oor:name="WM" oor:op="replace"> <prop oor:name="ShouldSwitchWorkspace" oor:op="replace" oor:type="xs:string"> commit ad92853904bef1b1f2c4ba362d2a57a53176b560 Author: Caolán McNamara <caol...@redhat.com> AuthorDate: Thu Jan 10 14:26:43 2019 +0000 Commit: Andras Timar <andras.ti...@collabora.com> CommitDate: Thu Jan 17 14:25:30 2019 +0100 Resolves: tdf#120632 consider submenus on restoring focus from menu additionally to the menu having focus, if a submenu of that menu has focus, then restore the focus when the whole hierarchy execution ends return focus to the toplevel menu's saved focus widget Change-Id: Iefd467fb1ba67ffd0a303505a893d2453e0ffbb3 Reviewed-on: https://gerrit.libreoffice.org/66132 Tested-by: Xisco Faulí <xiscofa...@libreoffice.org> Reviewed-by: Caolán McNamara <caol...@redhat.com> Tested-by: Caolán McNamara <caol...@redhat.com> (cherry picked from commit 74f07d85d37b9a90b625f33bbf4dbd268f78b2a4) diff --git a/vcl/source/window/menufloatingwindow.cxx b/vcl/source/window/menufloatingwindow.cxx index 7a6730c3ef49..3085dd477889 100644 --- a/vcl/source/window/menufloatingwindow.cxx +++ b/vcl/source/window/menufloatingwindow.cxx @@ -417,6 +417,16 @@ void MenuFloatingWindow::Start() GetParent()->ImplIncModalCount(); } +bool MenuFloatingWindow::MenuInHierarchyHasFocus() const +{ + if (HasChildPathFocus()) + return true; + PopupMenu* pSub = GetActivePopup(); + if (!pSub) + return false; + return pSub->ImplGetFloatingWindow()->HasChildPathFocus(); +} + void MenuFloatingWindow::End() { if (!bInExecute) @@ -428,7 +438,7 @@ void MenuFloatingWindow::End() // restore focus to previous window if we still have the focus VclPtr<vcl::Window> xFocusId(xSaveFocusId); xSaveFocusId = nullptr; - if (HasChildPathFocus() && xFocusId != nullptr) + if (xFocusId != nullptr && MenuInHierarchyHasFocus()) { ImplGetSVData()->maWinData.mbNoDeactivate = false; Window::EndSaveFocus(xFocusId); diff --git a/vcl/source/window/menufloatingwindow.hxx b/vcl/source/window/menufloatingwindow.hxx index 9888cd220687..c091b46add4f 100644 --- a/vcl/source/window/menufloatingwindow.hxx +++ b/vcl/source/window/menufloatingwindow.hxx @@ -121,6 +121,8 @@ public: void SetPosInParent( sal_uInt16 nPos ) { nPosInParent = nPos; } + bool MenuInHierarchyHasFocus() const; + virtual css::uno::Reference<css::accessibility::XAccessible> CreateAccessible() override; }; commit 3cd6e73a36cae1ac4d5cf0701c1229d590c92208 Author: Caolán McNamara <caol...@redhat.com> AuthorDate: Thu Dec 20 21:29:27 2018 +0000 Commit: Andras Timar <andras.ti...@collabora.com> CommitDate: Thu Jan 17 14:24:15 2019 +0100 tdf#122020 crash in SvTreeList::InvalidateEntry a PostUserEvent of DBTreeListBox::OnResetEntry with a SvTreeListEntry* pEntry as payload, then the DBTreeListBox is disposed and then the UserEvent arrives and the, by now deleted, pEntry is processed by the disposed DBTreeListBox Change-Id: I951639eb633920aa3536cd44320f36f6b2e910aa Reviewed-on: https://gerrit.libreoffice.org/65514 Tested-by: Jenkins Tested-by: Xisco Faulí <xiscofa...@libreoffice.org> Reviewed-by: Caolán McNamara <caol...@redhat.com> Tested-by: Caolán McNamara <caol...@redhat.com> (cherry picked from commit e9febe48283bf376ecf06cd688e8cef087a41a35) diff --git a/dbaccess/source/ui/control/dbtreelistbox.cxx b/dbaccess/source/ui/control/dbtreelistbox.cxx index a8efa986d117..ec7a8b185197 100644 --- a/dbaccess/source/ui/control/dbtreelistbox.cxx +++ b/dbaccess/source/ui/control/dbtreelistbox.cxx @@ -58,7 +58,8 @@ DBTreeListBox::DBTreeListBox( vcl::Window* pParent, WinBits nWinStyle ) :SvTreeListBox(pParent,nWinStyle) ,m_pDragedEntry(nullptr) ,m_pActionListener(nullptr) - ,m_pContextMenuProvider( nullptr ) + ,m_pContextMenuProvider(nullptr) + ,m_pResetEvent(nullptr) { init(); } @@ -88,6 +89,11 @@ DBTreeListBox::~DBTreeListBox() void DBTreeListBox::dispose() { + if (m_pResetEvent) + { + RemoveUserEvent(m_pResetEvent); + m_pResetEvent = nullptr; + } implStopSelectionTimer(); SvTreeListBox::dispose(); } @@ -118,11 +124,6 @@ SvTreeListEntry* DBTreeListBox::GetEntryPosByName( const OUString& aName, SvTree return pEntry; } -void DBTreeListBox::EnableExpandHandler(SvTreeListEntry* _pEntry) -{ - LINK(this, DBTreeListBox, OnResetEntry).Call(_pEntry); -} - void DBTreeListBox::RequestingChildren( SvTreeListEntry* pParent ) { if (m_aPreExpandHandler.IsSet() && !m_aPreExpandHandler.Call(pParent)) @@ -130,7 +131,7 @@ void DBTreeListBox::RequestingChildren( SvTreeListEntry* pParent ) // an error occurred. The method calling us will reset the entry flags, so it can't be expanded again. // But we want that the user may do a second try (i.e. because he mistypes a password in this try), so // we have to reset these flags controlling the expand ability - PostUserEvent(LINK(this, DBTreeListBox, OnResetEntry), pParent, true); + m_pResetEvent = PostUserEvent(LINK(this, DBTreeListBox, OnResetEntryHdl), pParent, true); } } @@ -176,15 +177,20 @@ void DBTreeListBox::MouseButtonDown( const MouseEvent& rMEvt ) SvTreeListBox::MouseButtonDown(rMEvt); } -IMPL_LINK(DBTreeListBox, OnResetEntry, void*, p, void) +void DBTreeListBox::EnableExpandHandler(SvTreeListEntry* pEntry) { - SvTreeListEntry* pEntry = static_cast<SvTreeListEntry*>(p); // set the flag which allows if the entry can be expanded pEntry->SetFlags( (pEntry->GetFlags() & ~SvTLEntryFlags(SvTLEntryFlags::NO_NODEBMP | SvTLEntryFlags::HAD_CHILDREN)) | SvTLEntryFlags::CHILDREN_ON_DEMAND ); // redraw the entry GetModel()->InvalidateEntry( pEntry ); } +IMPL_LINK(DBTreeListBox, OnResetEntryHdl, void*, p, void) +{ + m_pResetEvent = nullptr; + EnableExpandHandler(static_cast<SvTreeListEntry*>(p)); +} + void DBTreeListBox::ModelHasEntryInvalidated( SvTreeListEntry* _pEntry ) { SvTreeListBox::ModelHasEntryInvalidated( _pEntry ); diff --git a/dbaccess/source/ui/inc/dbtreelistbox.hxx b/dbaccess/source/ui/inc/dbtreelistbox.hxx index 73ea220af664..dc1cbc5892ea 100644 --- a/dbaccess/source/ui/inc/dbtreelistbox.hxx +++ b/dbaccess/source/ui/inc/dbtreelistbox.hxx @@ -58,6 +58,7 @@ namespace dbaui SvTreeListEntry* m_pDragedEntry; IControlActionListener* m_pActionListener; IContextMenuProvider* m_pContextMenuProvider; + ImplSVEvent* m_pResetEvent; css::uno::Reference<css::frame::XPopupMenuController> m_xMenuController; Link<SvTreeListEntry*,bool> m_aPreExpandHandler; // handler to be called before a node is expanded @@ -70,7 +71,7 @@ namespace dbaui private: void init(); DECL_LINK( OnTimeOut, Timer*, void ); - DECL_LINK( OnResetEntry, void*, void ); + DECL_LINK( OnResetEntryHdl, void*, void ); DECL_LINK( ScrollUpHdl, LinkParamNone*, void ); DECL_LINK( ScrollDownHdl, LinkParamNone*, void ); DECL_LINK( MenuEventListener, VclMenuEvent&, void ); commit 6b70761cab8efcdd1b613e6665b2ea6c7944d7dd Author: Caolán McNamara <caol...@redhat.com> AuthorDate: Tue Jan 8 13:46:53 2019 +0000 Commit: Andras Timar <andras.ti...@collabora.com> CommitDate: Thu Jan 17 14:23:38 2019 +0100 Resolves: tdf#121940 mnemonic ends up in tooltip text Change-Id: Ic698f23e71dbc613db2acf884fdefdeab06fde0f Reviewed-on: https://gerrit.libreoffice.org/65970 Tested-by: Jenkins Reviewed-by: Adolfo Jayme Barrientos <fit...@ubuntu.com> (cherry picked from commit fd373f5f584d9de82cce76b98bd21f7dfe38844c) diff --git a/sw/source/uibase/wrtsh/wrtundo.cxx b/sw/source/uibase/wrtsh/wrtundo.cxx index 27c7f0e34ed6..293b130405e4 100644 --- a/sw/source/uibase/wrtsh/wrtundo.cxx +++ b/sw/source/uibase/wrtsh/wrtundo.cxx @@ -25,6 +25,7 @@ #include <swdtflvr.hxx> #include <svtools/svtresid.hxx> #include <svtools/strings.hrc> +#include <vcl/mnemonic.hxx> // Undo ends all modes. If a selection is emerged by the Undo, // this must be considered for further action. @@ -108,7 +109,7 @@ OUString SwWrtShell::GetDoString( DoType eDoType ) const default:;//prevent warning } - return SvtResId(pResStr) + aUndoStr; + return MnemonicGenerator::EraseAllMnemonicChars(SvtResId(pResStr)) + aUndoStr; } void SwWrtShell::GetDoStrings( DoType eDoType, SfxStringListItem& rStrs ) const commit 6a06ef42968ae1db639eb482a114d8a2bfff5839 Author: Caolán McNamara <caol...@redhat.com> AuthorDate: Thu Dec 20 16:52:11 2018 +0000 Commit: Andras Timar <andras.ti...@collabora.com> CommitDate: Thu Jan 17 14:22:46 2019 +0100 Resolves: tdf#114695 limit width of this combo Change-Id: I3bcb880d05b9b2b6a7faf7b3646b169f3b11a46b Reviewed-on: https://gerrit.libreoffice.org/65509 Tested-by: Jenkins Reviewed-by: Adolfo Jayme Barrientos <fit...@ubuntu.com> (cherry picked from commit a1f3bcc6312a599996fee9825703394fe5b3a20a) diff --git a/sc/source/ui/pagedlg/scuitphfedit.cxx b/sc/source/ui/pagedlg/scuitphfedit.cxx index 5ac92feac1db..877a0ed97b19 100644 --- a/sc/source/ui/pagedlg/scuitphfedit.cxx +++ b/sc/source/ui/pagedlg/scuitphfedit.cxx @@ -67,6 +67,10 @@ ScHFEditPage::ScHFEditPage( vcl::Window* pParent, m_pWndRight->SetLocation(Right); get(m_pLbDefined,"comboLB_DEFINED"); + // tdf#114695 override natural size with a small value + // we expect this to get stretched to some larger but + // limited size based on surrounding widgets + m_pLbDefined->set_width_request(m_pLbDefined->approximate_digit_width() * 20); get(m_pBtnText,"buttonBTN_TEXT"); get(m_pBtnTable,"buttonBTN_TABLE"); commit 7216f56cc36eac449e3bb9e2a4ee90ef9540b9cf Author: Muhammet Kara <muhammet.k...@collabora.com> AuthorDate: Wed Jan 2 01:24:20 2019 +0300 Commit: Andras Timar <andras.ti...@collabora.com> CommitDate: Thu Jan 17 14:07:37 2019 +0100 Resolves tdf#122383 and tdf#122410 Add some null pointer checks Reviewed-on: https://gerrit.libreoffice.org/65789 Tested-by: Jenkins Reviewed-by: Muhammet Kara <muhammet.k...@collabora.com> (cherry picked from commit be8897d9c63a77b223a9c0aed1d2eb689e0e0082) Reviewed-on: https://gerrit.libreoffice.org/65799 (cherry picked from commit 808cc4d5fd87e6e6719a4a16f815e5897608bd2d) Change-Id: I905c6dd46a5019e66d9c2e59374cc7d1ce83397b diff --git a/cui/source/customize/SvxMenuConfigPage.cxx b/cui/source/customize/SvxMenuConfigPage.cxx index aa885a206609..3a5bace9c406 100644 --- a/cui/source/customize/SvxMenuConfigPage.cxx +++ b/cui/source/customize/SvxMenuConfigPage.cxx @@ -450,6 +450,12 @@ IMPL_LINK_NOARG( SvxMenuConfigPage, ResetMenuHdl, Button *, void ) { SvxConfigEntry* pMenuData = GetTopLevelSelection(); + if (pMenuData == nullptr) + { + SAL_WARN("cui.customize", "RHB top level selection is null. A menu must be selected to reset!"); + return; + } + ScopedVclPtrInstance<MessageDialog> qbox(this, CuiResId(RID_SVXSTR_CONFIRM_RESTORE_DEFAULT_MENU), VclMessageType::Question, VclButtonsType::YesNo); diff --git a/cui/source/customize/SvxToolbarConfigPage.cxx b/cui/source/customize/SvxToolbarConfigPage.cxx index 72e4675b0336..21909025e4fe 100644 --- a/cui/source/customize/SvxToolbarConfigPage.cxx +++ b/cui/source/customize/SvxToolbarConfigPage.cxx @@ -462,9 +462,14 @@ IMPL_LINK( SvxToolbarConfigPage, ModifyItemHdl, MenuButton *, pButton, void ) // get currently selected toolbar SvxConfigEntry* pToolbar = GetTopLevelSelection(); - OString sIdent = pButton->GetCurItemIdent(); + if (sIdent.isEmpty() || pToolbar == nullptr) + { + SAL_WARN("cui.customize", "No toolbar selected, or empty sIdent!"); + return; + } + if (sIdent == "renameItem") { SvTreeListEntry* pActEntry = m_pContentsListBox->GetCurEntry(); @@ -781,10 +786,18 @@ IMPL_LINK_NOARG( SvxToolbarConfigPage, SelectToolbar, ListBox&, void ) void SvxToolbarConfigPage::AddFunction( SvTreeListEntry* pTarget, bool bFront ) { + SvxConfigEntry* pToolbar = GetTopLevelSelection(); + + if (pToolbar == nullptr) + return; + // Add the command to the contents listbox of the selected toolbar SvTreeListEntry* pNewLBEntry = SvxConfigPage::AddFunction( pTarget, bFront, true/*bAllowDuplicates*/ ); + if (pNewLBEntry == nullptr) + return; + SvxConfigEntry* pEntry = static_cast<SvxConfigEntry*>(pNewLBEntry->GetUserData()); if ( pEntry->IsBinding() ) @@ -803,8 +816,6 @@ void SvxToolbarConfigPage::AddFunction( // TODO: Figure out a way to show the changes on the toolbar, but revert if // the dialog is closed by pressing "Cancel" // get currently selected toolbar and apply change - SvxConfigEntry* pToolbar = GetTopLevelSelection(); - if ( pToolbar != nullptr ) { static_cast<ToolbarSaveInData*>( GetSaveInData() )->ApplyToolbar( pToolbar ); diff --git a/cui/source/customize/cfg.cxx b/cui/source/customize/cfg.cxx index be2f26044a59..7cb1d3623a46 100644 --- a/cui/source/customize/cfg.cxx +++ b/cui/source/customize/cfg.cxx @@ -1626,8 +1626,9 @@ SvTreeListEntry* SvxConfigPage::AddFunction( SvTreeListEntry* pTarget, bool bFront, bool bAllowDuplicates ) { OUString aURL = GetScriptURL(); + SvxConfigEntry* pParent = GetTopLevelSelection(); - if ( aURL.isEmpty() ) + if ( aURL.isEmpty() || pParent == nullptr ) { return nullptr; } @@ -1650,8 +1651,6 @@ SvTreeListEntry* SvxConfigPage::AddFunction( pNewEntryData->SetName( GetSelectedDisplayName() ); // check that this function is not already in the menu - SvxConfigEntry* pParent = GetTopLevelSelection(); - if ( !bAllowDuplicates ) { for (SvxEntries::const_iterator iter(pParent->GetEntries()->begin()), end(pParent->GetEntries()->end()); @@ -1678,8 +1677,13 @@ SvTreeListEntry* SvxConfigPage::InsertEntry( SvTreeListEntry* pTarget, bool bFront ) { + SvxConfigEntry* pTopLevelSelection = GetTopLevelSelection(); + + if (pTopLevelSelection == nullptr) + return nullptr; + // Grab the entries list for the currently selected menu - SvxEntries* pEntries = GetTopLevelSelection()->GetEntries(); + SvxEntries* pEntries = pTopLevelSelection->GetEntries(); SvTreeListEntry* pNewEntry = nullptr; SvTreeListEntry* pCurEntry = commit 5d638550eaf9343a56bee9fa0fe8295f37bd3565 Author: Caolán McNamara <caol...@redhat.com> AuthorDate: Tue Dec 4 15:27:54 2018 +0000 Commit: Andras Timar <andras.ti...@collabora.com> CommitDate: Thu Jan 17 14:03:35 2019 +0100 Resolves: tdf#121641 properties invisible after 'reset' Change-Id: Iedb2b11be0e008501273925d6ae7137b28c3b912 Reviewed-on: https://gerrit.libreoffice.org/64539 Tested-by: Jenkins Tested-by: Xisco Faulí <xiscofa...@libreoffice.org> Reviewed-by: Markus Mohrhard <markus.mohrh...@googlemail.com> (cherry picked from commit 01e263bad891abea9bc671a29c95ea8a8b5fb842) diff --git a/sfx2/source/dialog/dinfdlg.cxx b/sfx2/source/dialog/dinfdlg.cxx index 2631e379393c..9dfe5d15c239 100644 --- a/sfx2/source/dialog/dinfdlg.cxx +++ b/sfx2/source/dialog/dinfdlg.cxx @@ -1553,7 +1553,14 @@ void CustomPropertiesWindow::dispose() { m_aEditLoseFocusIdle.Stop(); m_aBoxLoseFocusIdle.Stop(); - ClearAllLines(); + + for (CustomPropertyLine* pLine : m_aCustomPropertiesLines) + { + delete pLine; + } + m_pCurrentLine = nullptr; + m_aCustomPropertiesLines.clear(); + m_pHeaderBar.clear(); m_pScrollBar.clear(); m_pHeaderAccName.clear(); @@ -1786,15 +1793,11 @@ bool CustomPropertiesWindow::AreAllLinesValid() const void CustomPropertiesWindow::ClearAllLines() { - std::vector< CustomPropertyLine* >::iterator pIter; - for ( pIter = m_aCustomPropertiesLines.begin(); - pIter != m_aCustomPropertiesLines.end(); ++pIter ) + for (CustomPropertyLine* pLine : m_aCustomPropertiesLines) { - CustomPropertyLine* pLine = *pIter; - delete pLine; + pLine->Clear(); } m_aCustomProperties.clear(); - m_aCustomPropertiesLines.clear(); m_nScrollPos = 0; } commit b5f3ad23f6c3d5ac56b45c034cc650061788db1c Author: Caolán McNamara <caol...@redhat.com> AuthorDate: Tue Dec 4 13:01:14 2018 +0000 Commit: Andras Timar <andras.ti...@collabora.com> CommitDate: Thu Jan 17 14:02:47 2019 +0100 tdf#121855 like osx case don't search near-infinite calc grid for focus Change-Id: Ie6bccd2781fbbdc5f4d5dc2eb6903191aafe8265 Reviewed-on: https://gerrit.libreoffice.org/64521 Tested-by: Jenkins Reviewed-by: Markus Mohrhard <markus.mohrh...@googlemail.com> (cherry picked from commit 78c52b1ab97397f99af279df78df798efde91136) diff --git a/vcl/osx/a11ywrapper.mm b/vcl/osx/a11ywrapper.mm index 37ad10c3242a..e17dd216c5a6 100644 --- a/vcl/osx/a11ywrapper.mm +++ b/vcl/osx/a11ywrapper.mm @@ -992,7 +992,7 @@ Reference < XAccessibleContext > hitTestRunner ( css::awt::Point point, bool bSafeToIterate = true; sal_Int32 nCount = rxAccessibleContext -> getAccessibleChildCount(); - if ( nCount < 0 || nCount > SAL_MAX_UINT16 /* slow enough for anyone */ ) + if (nCount < 0 || nCount > SAL_MAX_UINT16 /* slow enough for anyone */) bSafeToIterate = false; else { // manages descendants is an horror from the a11y standards guys. Reference< XAccessibleStateSet > xStateSet; diff --git a/vcl/unx/gtk/gtksalframe.cxx b/vcl/unx/gtk/gtksalframe.cxx index 235c29e6e4b8..4d14ea2bb824 100644 --- a/vcl/unx/gtk/gtksalframe.cxx +++ b/vcl/unx/gtk/gtksalframe.cxx @@ -3757,6 +3757,13 @@ uno::Reference<accessibility::XAccessibleEditableText> } } + bool bSafeToIterate = true; + sal_Int32 nCount = xContext->getAccessibleChildCount(); + if (nCount < 0 || nCount > SAL_MAX_UINT16 /* slow enough for anyone */) + bSafeToIterate = false; + if (!bSafeToIterate) + return uno::Reference< accessibility::XAccessibleEditableText >(); + for (sal_Int32 i = 0; i < xContext->getAccessibleChildCount(); ++i) { uno::Reference< accessibility::XAccessible > xChild = xContext->getAccessibleChild(i); diff --git a/vcl/unx/gtk3/gtk3gtkframe.cxx b/vcl/unx/gtk3/gtk3gtkframe.cxx index 4ee63a98da95..245df77f1a21 100644 --- a/vcl/unx/gtk3/gtk3gtkframe.cxx +++ b/vcl/unx/gtk3/gtk3gtkframe.cxx @@ -4153,6 +4153,13 @@ uno::Reference<accessibility::XAccessibleEditableText> } } + bool bSafeToIterate = true; + sal_Int32 nCount = xContext->getAccessibleChildCount(); + if (nCount < 0 || nCount > SAL_MAX_UINT16 /* slow enough for anyone */) + bSafeToIterate = false; + if (!bSafeToIterate) + return uno::Reference< accessibility::XAccessibleEditableText >(); + for (sal_Int32 i = 0; i < xContext->getAccessibleChildCount(); ++i) { uno::Reference< accessibility::XAccessible > xChild = xContext->getAccessibleChild(i); commit 6594e0bb887581041d08f61b0d8d4466b169851f Author: Julien Nabet <serval2...@yahoo.fr> AuthorDate: Wed Dec 26 18:13:58 2018 +0100 Commit: Andras Timar <andras.ti...@collabora.com> CommitDate: Thu Jan 17 14:01:25 2019 +0100 tdf#122335: sub-view-size can only be used with ODF ver > 1.2 Change-Id: I7dd767fddd11319017a215c240684dcc17238c4e Reviewed-on: https://gerrit.libreoffice.org/65627 Tested-by: Jenkins Reviewed-by: Markus Mohrhard <markus.mohrh...@googlemail.com> (cherry picked from commit 26ad33a6f1e894d7352fb3d175c8d15dd28673b2) diff --git a/xmloff/source/draw/shapeexport.cxx b/xmloff/source/draw/shapeexport.cxx index 887f5ecfd372..b5f54a2da06f 100644 --- a/xmloff/source/draw/shapeexport.cxx +++ b/xmloff/source/draw/shapeexport.cxx @@ -4536,6 +4536,11 @@ void ImpExportEnhancedGeometry( SvXMLExport& rExport, const uno::Reference< bean { case EAS_SubViewSize: { + // export draw:sub-view-size (do not export in ODF 1.2 or older) + if (rExport.getDefaultVersion() <= SvtSaveOptions::ODFVER_012) + { + continue; + } uno::Sequence< awt::Size > aSubViewSizes; rProp.Value >>= aSubViewSizes; commit 812b23421e064dc7a211f8e61e14b3c6be5f1ddd Author: Julien Nabet <serval2...@yahoo.fr> AuthorDate: Sun Dec 30 12:51:25 2018 +0100 Commit: Andras Timar <andras.ti...@collabora.com> CommitDate: Thu Jan 17 14:01:00 2019 +0100 tdf#112484: repeat-item-labels is invalid in odf1.2 strict Change-Id: I23d204ef3d4e466876bb3416d616dc1f3682ad4c Reviewed-on: https://gerrit.libreoffice.org/65740 Tested-by: Jenkins (cherry picked from commit 40a7e9c93855ac6cceb4c4189587998e21581de5) Reviewed-on: https://gerrit.libreoffice.org/65749 Reviewed-by: Markus Mohrhard <markus.mohrh...@googlemail.com> (cherry picked from commit c64564c6b520f4dbadb689e958dafa1591b3711d) diff --git a/sc/source/filter/xml/XMLExportDataPilot.cxx b/sc/source/filter/xml/XMLExportDataPilot.cxx index fc8e2d537dc3..c6a43445c149 100644 --- a/sc/source/filter/xml/XMLExportDataPilot.cxx +++ b/sc/source/filter/xml/XMLExportDataPilot.cxx @@ -492,6 +492,7 @@ void ScXMLExportDataPilot::WriteLevels(const ScDPSaveDimension* pDim) ::sax::Converter::convertBool(sBuffer, pDim->GetShowEmpty()); rExport.AddAttribute(XML_NAMESPACE_TABLE, XML_SHOW_EMPTY, sBuffer.makeStringAndClear()); } + if (rExport.getDefaultVersion() > SvtSaveOptions::ODFVER_012) { OUStringBuffer sBuffer; ::sax::Converter::convertBool(sBuffer, pDim->GetRepeatItemLabels()); commit 39f2e4490a1f4ac7706724adb789cc460bd86300 Author: Caolán McNamara <caol...@redhat.com> AuthorDate: Sun Dec 23 20:05:14 2018 +0000 Commit: Andras Timar <andras.ti...@collabora.com> CommitDate: Thu Jan 17 14:00:06 2019 +0100 tdf#122269 don't prompt to restart if we're exiting the application anyway Change-Id: I6272ae92b7e948680fb7241c387eb205adbbea01 Reviewed-on: https://gerrit.libreoffice.org/65596 Tested-by: Jenkins Reviewed-by: Adolfo Jayme Barrientos <fit...@ubuntu.com> (cherry picked from commit a93713359265a9a1403c744e467eb5faa09cc747) diff --git a/desktop/source/deployment/gui/dp_gui_theextmgr.cxx b/desktop/source/deployment/gui/dp_gui_theextmgr.cxx index b9dd8cd947f5..221d5b5f7906 100644 --- a/desktop/source/deployment/gui/dp_gui_theextmgr.cxx +++ b/desktop/source/deployment/gui/dp_gui_theextmgr.cxx @@ -449,6 +449,7 @@ void TheExtensionManager::queryTermination( ::lang::EventObject const & ) } else { + clearModified(); if ( m_pExtMgrDialog ) m_pExtMgrDialog->Close(); if ( m_pUpdReqDialog ) commit 49a4214ccad0415951908fd5814617410845c57b Author: Caolán McNamara <caol...@redhat.com> AuthorDate: Wed Dec 19 16:23:06 2018 +0000 Commit: Andras Timar <andras.ti...@collabora.com> CommitDate: Thu Jan 17 13:57:04 2019 +0100 Resolves: tdf#121555 sometime crash on menu hierarchy change seems menubar gets set to dirty due to some menu activity that needs a refresh, but then the hierarchy changes and as its already dirty the maUpdateMenuBarIdle doesn't get launched the placement of the mbMenuBar test inside the loop through parents shows some confusion as to what which mbMenuBar might be met, the one belonging to this, or that of the parent being traversed, but it does seem to be the one belonging to this. Change-Id: I0b9dceadf64f7adf18eb1aa2dbda9bbfbcb66e0a Reviewed-on: https://gerrit.libreoffice.org/65465 Tested-by: Jenkins Tested-by: Xisco Faulí <xiscofa...@libreoffice.org> Reviewed-by: Caolán McNamara <caol...@redhat.com> Tested-by: Caolán McNamara <caol...@redhat.com> (cherry picked from commit c72ddb5e185d33e17762bc96207b86948950e173) diff --git a/vcl/unx/gtk/gtksalmenu.cxx b/vcl/unx/gtk/gtksalmenu.cxx index 6f16984ba6d0..996672d880cf 100644 --- a/vcl/unx/gtk/gtksalmenu.cxx +++ b/vcl/unx/gtk/gtksalmenu.cxx @@ -225,8 +225,12 @@ void GtkSalMenu::ImplUpdate(bool bRecurse, bool bRemoveDisabledEntries) if (mbNeedsUpdate) { mbNeedsUpdate = false; - if (mbMenuBar) + if (mbMenuBar && maUpdateMenuBarIdle.IsActive()) + { maUpdateMenuBarIdle.Stop(); + maUpdateMenuBarIdle.Invoke(); + return; + } } Menu* pVCLMenu = mpVCLMenu; @@ -519,13 +523,17 @@ IMPL_LINK_NOARG(GtkSalMenu, MenuBarHierarchyChangeHandler, Timer *, void) void GtkSalMenu::SetNeedsUpdate() { GtkSalMenu* pMenu = this; + // start that the menu and its parents are in need of an update + // on the next activation while (pMenu && !pMenu->mbNeedsUpdate) { pMenu->mbNeedsUpdate = true; - if (mbMenuBar) - maUpdateMenuBarIdle.Start(); pMenu = pMenu->mpParentSalMenu; } + // only if a menubar is directly updated do we force in a full + // structure update + if (mbMenuBar && !maUpdateMenuBarIdle.IsActive()) + maUpdateMenuBarIdle.Start(); } void GtkSalMenu::SetMenuModel(GMenuModel* pMenuModel) commit be34549050209424c095dd00eb7ddf96fd60a493 Author: Caolán McNamara <caol...@redhat.com> AuthorDate: Tue Dec 18 12:44:37 2018 +0000 Commit: Andras Timar <andras.ti...@collabora.com> CommitDate: Thu Jan 17 13:53:45 2019 +0100 Related: tdf#103884 remove dangling menubar command since... commit 08a43cc97ccf88faa9d3a04afc3aacd2c885a2d1 Date: Sat Oct 28 02:28:18 2017 +0200 related: tdf#103884 remove gltf/collada feature Change-Id: I7671746f2b33f8d4eae207448267d0284a3f9804 Reviewed-on: https://gerrit.libreoffice.org/65338 Tested-by: Jenkins Reviewed-by: Adolfo Jayme Barrientos <fit...@ubuntu.com> (cherry picked from commit c1bff09047624898320767921f3bf01d95b8e0e2) diff --git a/officecfg/registry/data/org/openoffice/Office/UI/GenericCommands.xcu b/officecfg/registry/data/org/openoffice/Office/UI/GenericCommands.xcu index 91524e64f654..17fba1909d22 100644 --- a/officecfg/registry/data/org/openoffice/Office/UI/GenericCommands.xcu +++ b/officecfg/registry/data/org/openoffice/Office/UI/GenericCommands.xcu @@ -6494,11 +6494,6 @@ <value xml:lang="en-US">Edit with External Tool</value> </prop> </node> - <node oor:name=".uno:Insert3DModel" oor:op="replace"> - <prop oor:name="Label" oor:type="xs:string"> - <value xml:lang="en-US">3D Model...</value> - </prop> - </node> <node oor:name=".uno:ClassificationApply" oor:op="replace"> <prop oor:name="Label" oor:type="xs:string"> <value xml:lang="en-US">Apply Document Classification</value> diff --git a/sd/uiconfig/simpress/menubar/menubar.xml b/sd/uiconfig/simpress/menubar/menubar.xml index 186a16f906ba..656843353af8 100644 --- a/sd/uiconfig/simpress/menubar/menubar.xml +++ b/sd/uiconfig/simpress/menubar/menubar.xml @@ -191,7 +191,6 @@ <menu:menu menu:id=".uno:ObjectMenu"> <menu:menupopup> <menu:menuitem menu:id=".uno:InsertMath"/> - <menu:menuitem menu:id=".uno:Insert3DModel"/> <menu:menuitem menu:id=".uno:InsertObject"/> </menu:menupopup> </menu:menu> commit b8dbf81b6a8752048aca8312f190842426385ce5 Author: Samuel Mehrbrodt <samuel.mehrbr...@cib.de> AuthorDate: Thu Dec 13 19:58:36 2018 +0100 Commit: Andras Timar <andras.ti...@collabora.com> CommitDate: Thu Jan 17 13:53:05 2019 +0100 tdf#121962 Update fields after layout has been calculated Change-Id: Ic4a49494652dab416ddb1545da02eb8a7f533828 Reviewed-on: https://gerrit.libreoffice.org/65126 Tested-by: Jenkins Reviewed-by: Samuel Mehrbrodt <samuel.mehrbr...@cib.de> (cherry picked from commit 2bc1d00af6863d5c92389f1f4a99d2ab9bb73f81) Reviewed-on: https://gerrit.libreoffice.org/65201 Reviewed-by: Thorsten Behrens <thorsten.behr...@cib.de> (cherry picked from commit d9f02548f29678b8b7fc3a6c714ab144bd728005) diff --git a/sw/source/uibase/uno/unotxdoc.cxx b/sw/source/uibase/uno/unotxdoc.cxx index 2620335d2ee2..ff57d4dfd850 100644 --- a/sw/source/uibase/uno/unotxdoc.cxx +++ b/sw/source/uibase/uno/unotxdoc.cxx @@ -2627,8 +2627,6 @@ sal_Int32 SAL_CALL SwXTextDocument::getRendererCount( bStateChanged = true; } - // #122919# Force field update before PDF export - pViewShell->SwViewShell::UpdateFields(true); if( bStateChanged ) pRenderDocShell->EnableSetModified(); @@ -2638,6 +2636,9 @@ sal_Int32 SAL_CALL SwXTextDocument::getRendererCount( pViewShell->CalcLayout(); pViewShell->CalcPagesForPrint( pViewShell->GetPageCount() ); + // #122919# Force field update before PDF export, but after layout init (tdf#121962) + pViewShell->SwViewShell::UpdateFields(true); + pViewShell->SetPDFExportOption( false ); // enable view again commit 0fc5010d39930837d8fccc70b1a63bbaebca8172 Author: Xisco Fauli <xiscofa...@libreoffice.org> AuthorDate: Thu Dec 13 17:10:29 2018 +0100 Commit: Andras Timar <andras.ti...@collabora.com> CommitDate: Thu Jan 17 13:52:24 2019 +0100 tdf#120750: Revert "tdf#96248 delete SfxPoolItems with Which Id >= 4000" This reverts commit c9493b344a9bd104d0a882f5e9407880c0c63c20. According to https://bugs.documentfoundation.org/show_bug.cgi?id=96248#c15 the asert was gone even before the patch... Anyway, better to have an assert than a crash Change-Id: I84389bf2e8e604f6967923c0eedaae3aec3455e6 Reviewed-on: https://gerrit.libreoffice.org/65115 Tested-by: Jenkins Reviewed-by: Jochen Nitschke <j.nitschke+loger...@ok.de> Reviewed-by: Xisco Faulí <xiscofa...@libreoffice.org> (cherry picked from commit c5d0d424bd7e78455cb6f9578cf2425ac0787004) Reviewed-on: https://gerrit.libreoffice.org/65159 (cherry picked from commit 73c3c3deff69ccd6a2f55952a911738496fb3c32) diff --git a/svl/source/items/itempool.cxx b/svl/source/items/itempool.cxx index 4357342dd499..17b41740e96b 100644 --- a/svl/source/items/itempool.cxx +++ b/svl/source/items/itempool.cxx @@ -762,9 +762,16 @@ void SfxItemPool::Remove( const SfxPoolItem& rItem ) SfxPoolItem*& p = (*pItemArr)[nIdx]; assert(p == &rItem); - assert(p->GetRefCount() && "removing Item without ref"); + if ( p->GetRefCount() ) //! + ReleaseRef( *p ); + else + { + assert(false && "removing Item without ref"); + } - if (0 == ReleaseRef(*p)) + // FIXME: Hack, for as long as we have problems with the Outliner + // See other MI-REF + if ( 0 == p->GetRefCount() && nWhich < 4000 ) { DELETEZ(p); commit 3f9049a2363fd870c81c0fb63393994f3bfecba8 Author: Caolán McNamara <caol...@redhat.com> AuthorDate: Thu Nov 8 10:58:00 2018 +0000 Commit: Andras Timar <andras.ti...@collabora.com> CommitDate: Thu Jan 17 13:50:59 2019 +0100 ... etc. - the rest is truncated _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits