configure.ac | 2 +- download.lst | 4 ++-- external/libpng/configs/pnglibconf.h | 16 ++++++++-------- oox/source/drawingml/shape.cxx | 13 +++++++++++-- svx/source/fmcomp/fmgridif.cxx | 2 ++ sw/qa/extras/ooxmlimport/data/tdf85232.docx |binary sw/qa/extras/ooxmlimport/ooxmlimport.cxx | 11 +++++++++++ sw/qa/extras/ww8import/data/tdf95321.doc |binary sw/qa/extras/ww8import/ww8import.cxx | 10 ++++++++++ sw/source/filter/ww8/ww8par.cxx | 2 +- 10 files changed, 46 insertions(+), 14 deletions(-)
New commits: commit 4158227dae901a16c9fb3af541ee8f8cef6a100f Author: Andras Timar <[email protected]> Date: Mon Nov 16 19:08:18 2015 +0100 Bump version to 5.0-10 Change-Id: I9f0e693aa48ed6a1ace8b9cdfd1b1db2f3379215 diff --git a/configure.ac b/configure.ac index af48c21..afb93ce 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],[5.0.10.9],[],[],[https://CollaboraOffice.com/]) +AC_INIT([Collabora Office],[5.0.10.10],[],[],[https://CollaboraOffice.com/]) AC_PREREQ([2.59]) commit 0d77e2faa95e440e5bde96432ade122e1804a0cc Author: Caolán McNamara <[email protected]> Date: Mon Nov 16 11:23:40 2015 +0000 bump png to 1.5.24 CVE-2015-7981 + CVE-2015-8126 Change-Id: Ice54f6c89eb2a2492d2b55a3f4edb13df4192446 Reviewed-on: https://gerrit.libreoffice.org/19985 Tested-by: Jenkins <[email protected]> Reviewed-by: Michael Stahl <[email protected]> (cherry picked from commit 055c248e1573cc7cd7988b28f8bb0bf64bf0d6c8) diff --git a/download.lst b/download.lst index 015e7b7..53f13e8 100644 --- a/download.lst +++ b/download.lst @@ -117,8 +117,8 @@ export OWNCLOUD_ANDROID_LIB_TARBALL := owncloud-android-library-0.9.4-no-binary- export PAGEMAKER_MD5SUM := 795cc7a59ace4db2b12586971d668671 export PAGEMAKER_TARBALL := libpagemaker-0.0.2.tar.bz2 export PIXMAN_TARBALL := c63f411b3ad147db2bcce1bf262a0e02-pixman-0.24.4.tar.bz2 -export PNG_MD5SUM := 5266905cef49d1224437465ad4d67fd9 -export PNG_TARBALL := libpng-1.5.18.tar.gz +export PNG_MD5SUM := 6652e428d1d3fc3c6cb1362159b1cf3b +export PNG_TARBALL := libpng-1.5.24.tar.gz export POPPLER_MD5SUM := 35c0660065d023365e9854c13e289d12 export POPPLER_TARBALL := poppler-0.26.4.tar.gz export POSTGRESQL_TARBALL := c0b4799ea9850eae3ead14f0a60e9418-postgresql-9.2.1.tar.bz2 diff --git a/external/libpng/configs/pnglibconf.h b/external/libpng/configs/pnglibconf.h index 9e97d1e..8149f59 100644 --- a/external/libpng/configs/pnglibconf.h +++ b/external/libpng/configs/pnglibconf.h @@ -1,9 +1,9 @@ -/* 1.5.18 STANDARD API DEFINITION */ +/* 1.5.24 STANDARD API DEFINITION */ /* pnglibconf.h - library build configuration */ -/* libpng version 1.5.18 - February 6, 2014 */ +/* libpng version 1.5.24 - November 12, 2015 */ -/* Copyright (c) 1998-2013 Glenn Randers-Pehrson */ +/* Copyright (c) 1998-2015 Glenn Randers-Pehrson */ /* This code is released under the libpng license. */ /* For conditions of distribution and use, see the disclaimer */ @@ -95,8 +95,6 @@ #define PNG_SAVE_INT_32_SUPPORTED #define PNG_SEQUENTIAL_READ_SUPPORTED #define PNG_SETJMP_SUPPORTED -#define PNG_SET_CHUNK_CACHE_LIMIT_SUPPORTED -#define PNG_SET_CHUNK_MALLOC_LIMIT_SUPPORTED /*#undef PNG_SET_OPTION_SUPPORTED*/ #define PNG_SET_USER_LIMITS_SUPPORTED #define PNG_STDIO_SUPPORTED @@ -114,6 +112,7 @@ #define PNG_WRITE_BGR_SUPPORTED #define PNG_WRITE_CHECK_FOR_INVALID_INDEX_SUPPORTED #define PNG_WRITE_COMPRESSED_TEXT_SUPPORTED +#define PNG_WRITE_CUSTOMIZE_COMPRESSION_SUPPORTED #define PNG_WRITE_CUSTOMIZE_ZTXT_COMPRESSION_SUPPORTED #define PNG_WRITE_FILLER_SUPPORTED #define PNG_WRITE_FILTER_SUPPORTED @@ -172,15 +171,16 @@ /* end of options */ /* settings */ #define PNG_API_RULE 0 -#define PNG_CALLOC_SUPPORTED -#define PNG_COST_SHIFT 3 #define PNG_DEFAULT_READ_MACROS 1 #define PNG_GAMMA_THRESHOLD_FIXED 5000 #define PNG_MAX_GAMMA_8 11 #define PNG_QUANTIZE_BLUE_BITS 5 #define PNG_QUANTIZE_GREEN_BITS 5 #define PNG_QUANTIZE_RED_BITS 5 -#define PNG_WEIGHT_SHIFT 8 +#define PNG_USER_CHUNK_CACHE_MAX 1000 +#define PNG_USER_CHUNK_MALLOC_MAX 8000000 +#define PNG_USER_HEIGHT_MAX 1000000 +#define PNG_USER_WIDTH_MAX 1000000 #define PNG_ZBUF_SIZE 8192 #define PNG_sCAL_PRECISION 5 /* end of settings */ commit 7c7acde337bbd31809ff07d51d82f51e91708325 Author: Caolán McNamara <[email protected]> Date: Tue Nov 10 20:37:00 2015 +0000 Resolves: tdf#94069 call setVisible when setDesignMode is called void UnoControl::setDesignMode calls setVisible on the XWindow so it seems sensible that FmXGridPeer::setDesignMode should also do so. The desirable side effect is that moving the window in design mode then is moving a un-shown window so nothing is invalidated so the paint loop doesn't happen. Change-Id: Ic5a4ba62590372bec15a29b993b73d6dfb94a8a9 (cherry picked from commit a7816853bad55ada597092c16ba9a0a761e067d0) Reviewed-on: https://gerrit.libreoffice.org/19906 Reviewed-by: Lionel Elie Mamane <[email protected]> Tested-by: Jenkins <[email protected]> (cherry picked from commit a08a5ff76b78f828367467a0a1610d2f7e63ad75) diff --git a/svx/source/fmcomp/fmgridif.cxx b/svx/source/fmcomp/fmgridif.cxx index 85f8513..d3555b9 100644 --- a/svx/source/fmcomp/fmgridif.cxx +++ b/svx/source/fmcomp/fmgridif.cxx @@ -1693,6 +1693,8 @@ void FmXGridPeer::setDesignMode(sal_Bool bOn) throw( RuntimeException, std::exce static_cast<FmGridControl*>(pWin)->SetDesignMode(bOn); } + setVisible(!bOn); + if (bOn) DisConnectFromDispatcher(); else commit 27c521e5448809889cc8211ba503b69585c0a4be Author: Caolán McNamara <[email protected]> Date: Wed Nov 11 12:34:01 2015 +0000 Resolves: tdf#95321 tables in headers/footers with wrong content Change-Id: I937ed893dfd9919bf48b8fd38a1b83c524200532 (cherry picked from commit 6128c10f550924c2b75f18b6c6220cc1770adba4) Reviewed-on: https://gerrit.libreoffice.org/19911 Tested-by: Jenkins <[email protected]> Reviewed-by: Michael Stahl <[email protected]> (cherry picked from commit 82c0f2eb67f8fda9981fe83ebab3d658b6ec85fd) diff --git a/sw/qa/extras/ww8import/data/tdf95321.doc b/sw/qa/extras/ww8import/data/tdf95321.doc new file mode 100644 index 0000000..8b85472 Binary files /dev/null and b/sw/qa/extras/ww8import/data/tdf95321.doc differ diff --git a/sw/qa/extras/ww8import/ww8import.cxx b/sw/qa/extras/ww8import/ww8import.cxx index 87fde37..3a0860d 100644 --- a/sw/qa/extras/ww8import/ww8import.cxx +++ b/sw/qa/extras/ww8import/ww8import.cxx @@ -419,6 +419,16 @@ DECLARE_WW8IMPORT_TEST(testBnc863018, "bnc863018.doc") CPPUNIT_ASSERT_EQUAL(sal_Int32(5002), getProperty<sal_Int32>(xTable, "TopMargin")); } +DECLARE_WW8IMPORT_TEST(testTdf95321, "tdf95321.doc") +{ + // The problem was that there should be content in the second cell + // but there wasn't. + uno::Reference<text::XTextTablesSupplier> xTextTablesSupplier(mxComponent, uno::UNO_QUERY); + uno::Reference<container::XIndexAccess> xIndexAccess(xTextTablesSupplier->getTextTables(), uno::UNO_QUERY); + uno::Reference<text::XTextTable> xTable(xIndexAccess->getByIndex(0), uno::UNO_QUERY); + CPPUNIT_ASSERT_EQUAL(OUString("Second Column"), uno::Reference<text::XTextRange>(xTable->getCellByName("B1"), uno::UNO_QUERY)->getString()); +} + DECLARE_WW8IMPORT_TEST(testBnc875715, "bnc875715.doc") { uno::Reference<text::XTextSectionsSupplier> xTextSectionsSupplier(mxComponent, uno::UNO_QUERY); diff --git a/sw/source/filter/ww8/ww8par.cxx b/sw/source/filter/ww8/ww8par.cxx index 1fecce8..f431305 100644 --- a/sw/source/filter/ww8/ww8par.cxx +++ b/sw/source/filter/ww8/ww8par.cxx @@ -3544,7 +3544,7 @@ bool SwWW8ImplReader::ReadChar(long nPosCp, long nCpOfs) // //So the 0x7 should be right at the end of the previous //range to be a real cell-end. - if (pPap->nOrigStartPos == nCpOfs+nPosCp+1 || + if (pPap->nOrigStartPos == nPosCp+1 || pPap->nOrigStartPos == WW8_CP_MAX) { TabCellEnd(); // Table cell/row end commit a4a68c2a7df5ea120f0bc4c13195e310462584db Author: Miklos Vajna <[email protected]> Date: Wed Nov 11 08:57:31 2015 +0100 tdf#85232 WPG import: fix handling of line shapes The missing convertMm100ToTwip() calls mispositioned the line shapes inside the groupshape in case of using drawingML inside DOCX files. (cherry picked from commit 11129d89b152db54c86bb2bda58c24b8abb6c5a8) Conflicts: sw/qa/extras/ooxmlimport/ooxmlimport.cxx Change-Id: I0c9d652de43d779f9073a8bfe22866ce4f31d0fa Reviewed-on: https://gerrit.libreoffice.org/19946 Reviewed-by: Caolán McNamara <[email protected]> Tested-by: Caolán McNamara <[email protected]> (cherry picked from commit ca8cdb9afc886f3013a7c1d8707d4c5bef70a1c5) diff --git a/oox/source/drawingml/shape.cxx b/oox/source/drawingml/shape.cxx index 1f10a74..d7247be 100644 --- a/oox/source/drawingml/shape.cxx +++ b/oox/source/drawingml/shape.cxx @@ -480,10 +480,11 @@ Reference< XShape > Shape::createAndInsert( aTransformation.translate( aCenter.getX(), aCenter.getY() ); } + bool bInGroup = !aParentTransformation.isIdentity(); if( maPosition.X != 0 || maPosition.Y != 0) { // if global position is used, add it to transformation - if (mbWps && aParentTransformation.isIdentity()) + if (mbWps && !bInGroup) aTransformation.translate( maPosition.X * EMU_PER_HMM, maPosition.Y * EMU_PER_HMM); else aTransformation.translate( maPosition.X, maPosition.Y ); @@ -505,10 +506,18 @@ Reference< XShape > Shape::createAndInsert( sal_Int32 i, nNumPoints = aPoly.count(); uno::Sequence< awt::Point > aPointSequence( nNumPoints ); awt::Point* pPoints = aPointSequence.getArray(); + uno::Reference<lang::XServiceInfo> xModelInfo(rFilterBase.getModel(), uno::UNO_QUERY); + bool bIsWriter = xModelInfo->supportsService("com.sun.star.text.TextDocument"); for( i = 0; i < nNumPoints; ++i ) { const ::basegfx::B2DPoint aPoint( aPoly.getB2DPoint( i ) ); - pPoints[ i ] = awt::Point( static_cast< sal_Int32 >( aPoint.getX() ), static_cast< sal_Int32 >( aPoint.getY() ) ); + if (bIsWriter && bInGroup) + // Writer's draw page is in twips, and these points get passed + // to core without any unit conversion when Writer + // postprocesses only the group shape itself. + pPoints[i] = awt::Point(static_cast<sal_Int32>(convertMm100ToTwip(aPoint.getX())), static_cast<sal_Int32>(convertMm100ToTwip(aPoint.getY()))); + else + pPoints[i] = awt::Point(static_cast<sal_Int32>(aPoint.getX()), static_cast<sal_Int32>(aPoint.getY())); } uno::Sequence< uno::Sequence< awt::Point > > aPolyPolySequence( 1 ); aPolyPolySequence.getArray()[ 0 ] = aPointSequence; diff --git a/sw/qa/extras/ooxmlimport/data/tdf85232.docx b/sw/qa/extras/ooxmlimport/data/tdf85232.docx new file mode 100644 index 0000000..35e8a88 Binary files /dev/null and b/sw/qa/extras/ooxmlimport/data/tdf85232.docx differ diff --git a/sw/qa/extras/ooxmlimport/ooxmlimport.cxx b/sw/qa/extras/ooxmlimport/ooxmlimport.cxx index 42dc736..d463bf4 100644 --- a/sw/qa/extras/ooxmlimport/ooxmlimport.cxx +++ b/sw/qa/extras/ooxmlimport/ooxmlimport.cxx @@ -2836,6 +2836,17 @@ DECLARE_OOXMLIMPORT_TEST(testTdf94374, "hello.docx") CPPUNIT_ASSERT(paste("tdf94374.docx", xEnd)); } +DECLARE_OOXMLIMPORT_TEST(testTdf85232, "tdf85232.docx") +{ + uno::Reference<drawing::XShapes> xShapes(getShapeByName("Group 219"), uno::UNO_QUERY); + uno::Reference<drawing::XShape> xShape(xShapes->getByIndex(1), uno::UNO_QUERY); + uno::Reference<drawing::XShapeDescriptor> xShapeDescriptor(xShape, uno::UNO_QUERY); + // Make sure we're not testing the ellipse child. + CPPUNIT_ASSERT_EQUAL(OUString("com.sun.star.drawing.LineShape"), xShapeDescriptor->getShapeType()); + // This was 2900: horizontal position of the line was incorrect, the 3 children were not connected visually. + CPPUNIT_ASSERT_EQUAL(static_cast<sal_Int32>(2267), xShape->getPosition().X); +} + #endif CPPUNIT_PLUGIN_IMPLEMENT();
_______________________________________________ Libreoffice-commits mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
