[Libreoffice-commits] core.git: Branch 'distro/collabora/cp-6.0' - 35 commits - configmgr/source cui/source desktop/inc desktop/source download.lst external/gpgmepp external/libassuan external/libgpg-error include/sfx2 include/vcl include/xmloff lotuswordpro/qa lotuswordpro/source Makefile.in readlicense_oo/license reportdesign/source sc/qa sc/source sd/source sfx2/source solenv/bin starmath/source sw/qa sw/source sw/uiconfig tools/CppunitTest_tools_test.mk tools/qa tools/source vcl/inc vcl/opengl vcl/qa vcl/source vcl/unx writerfilter/source xmloff/source

Caolán McNamara caolanm at redhat.com
Wed May 16 07:28:34 UTC 2018


 Makefile.in                                              |    1 
 configmgr/source/dconf.cxx                               |    1 
 cui/source/options/personalization.cxx                   |    6 
 desktop/inc/app.hxx                                      |    1 
 desktop/source/app/app.cxx                               |    9 
 desktop/source/app/sofficemain.cxx                       |    4 
 download.lst                                             |    4 
 external/gpgmepp/ExternalPackage_gpgmepp.mk              |    6 
 external/gpgmepp/ExternalProject_gpgmepp.mk              |    1 
 external/gpgmepp/UnpackedTarball_gpgmepp.mk              |    1 
 external/gpgmepp/rpath.patch                             |   12 
 external/libassuan/UnpackedTarball_libassuan.mk          |    1 
 external/libassuan/rpath.patch                           |   11 
 external/libgpg-error/ExternalProject_libgpg-error.mk    |    3 
 external/libgpg-error/UnpackedTarball_libgpg-error.mk    |    1 
 external/libgpg-error/disable-rpath-option.patch         |   13 
 include/sfx2/infobar.hxx                                 |    4 
 include/sfx2/viewfrm.hxx                                 |    2 
 include/vcl/pdfextoutdevdata.hxx                         |    4 
 include/xmloff/xmltoken.hxx                              |    2 
 lotuswordpro/qa/cppunit/data/fail/recurse-5.lwp          |binary
 lotuswordpro/source/filter/lwpcelllayout.cxx             |   15 
 lotuswordpro/source/filter/lwpcelllayout.hxx             |    8 
 lotuswordpro/source/filter/lwplayout.cxx                 |  120 
 lotuswordpro/source/filter/lwplayout.hxx                 |    7 
 lotuswordpro/source/filter/lwprowlayout.cxx              |    6 
 lotuswordpro/source/filter/lwptablelayout.cxx            |    2 
 readlicense_oo/license/CREDITS.fodt                      | 9088 ++++-----------
 reportdesign/source/core/inc/FixedText.hxx               |   16 
 reportdesign/source/core/inc/FormatCondition.hxx         |   30 
 reportdesign/source/core/inc/FormattedField.hxx          |   16 
 reportdesign/source/core/inc/ReportHelperImpl.hxx        |    2 
 reportdesign/source/core/inc/Shape.hxx                   |   30 
 sc/qa/unit/data/functions/statistical/fods/countif.fods  |   22 
 sc/source/core/data/dociter.cxx                          |    2 
 sc/source/filter/oox/worksheethelper.cxx                 |    7 
 sc/source/ui/app/inputhdl.cxx                            |    6 
 sc/source/ui/app/inputwin.cxx                            |    5 
 sc/source/ui/view/editsh.cxx                             |   12 
 sc/source/ui/view/tabview5.cxx                           |    3 
 sd/source/ui/sidebar/SlideBackground.cxx                 |    1 
 sd/source/ui/slidesorter/inc/model/SlideSorterModel.hxx  |    5 
 sd/source/ui/slidesorter/model/SlideSorterModel.cxx      |   29 
 sfx2/source/dialog/infobar.cxx                           |   34 
 sfx2/source/doc/objserv.cxx                              |   33 
 sfx2/source/view/viewfrm.cxx                             |   21 
 solenv/bin/assemble-flatpak.sh                           |   13 
 starmath/source/mathtype.cxx                             |    4 
 sw/qa/core/data/ww8/pass/tdf117129_dxagoal0.doc          |binary
 sw/qa/extras/odfexport/data/sender-initials.fodt         |   71 
 sw/qa/extras/odfexport/odfexport.cxx                     |   20 
 sw/qa/extras/ooxmlexport/data/tdf116801.docx             |binary
 sw/qa/extras/ooxmlexport/ooxmlexport11.cxx               |   12 
 sw/qa/extras/rtfexport/data/tdf116841.rtf                |   16 
 sw/qa/extras/rtfexport/data/tdf117268.rtf                |   35 
 sw/qa/extras/rtfexport/rtfexport2.cxx                    |    3 
 sw/qa/extras/rtfexport/rtfexport3.cxx                    |   46 
 sw/qa/extras/rtfimport/data/tdf117246.rtf                |   11 
 sw/qa/extras/rtfimport/data/tdf117403.rtf                |   15 
 sw/qa/extras/rtfimport/rtfimport.cxx                     |   20 
 sw/source/filter/ww8/ww8graf2.cxx                        |    3 
 sw/source/filter/xml/xmltexti.cxx                        |   11 
 sw/source/uibase/docvw/SidebarTxtControl.cxx             |    7 
 sw/uiconfig/swriter/ui/envprinterpage.ui                 |    2 
 tools/CppunitTest_tools_test.mk                          |    1 
 tools/qa/cppunit/test_time.cxx                           |   41 
 tools/source/datetime/ttime.cxx                          |    2 
 vcl/inc/opengl/x11/glxtest.hxx                           |    2 
 vcl/opengl/salbmp.cxx                                    |    9 
 vcl/qa/cppunit/pdfexport/data/tdf109143.odt              |binary
 vcl/qa/cppunit/pdfexport/pdfexport.cxx                   |   42 
 vcl/source/gdi/pdfextoutdevdata.cxx                      |   12 
 vcl/unx/generic/gdi/cairotextrender.cxx                  |   22 
 vcl/unx/generic/gdi/x11cairotextrender.cxx               |   16 
 vcl/unx/glxtest.cxx                                      |   16 
 vcl/unx/gtk/gtksalframe.cxx                              |   10 
 vcl/unx/gtk3/gtk3gtkframe.cxx                            |   10 
 writerfilter/source/dmapper/DomainMapperTableHandler.cxx |   35 
 writerfilter/source/dmapper/NumberingManager.cxx         |    5 
 writerfilter/source/dmapper/StyleSheetTable.cxx          |    4 
 writerfilter/source/rtftok/rtfdispatchvalue.cxx          |    7 
 writerfilter/source/rtftok/rtfdocumentimpl.cxx           |    9 
 xmloff/source/core/xmltoken.cxx                          |    2 
 xmloff/source/draw/sdxmlexp.cxx                          |    1 
 xmloff/source/draw/ximppage.cxx                          |    6 
 xmloff/source/text/txtflde.cxx                           |    1 
 xmloff/source/text/txtfldi.cxx                           |   10 
 xmloff/source/text/txtimp.cxx                            |    1 
 88 files changed, 3543 insertions(+), 6617 deletions(-)

New commits:
commit 3a61f4c87ae271aa2cce1ec77f925a89c3fda965
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Fri May 11 11:16:54 2018 +0100

    Resolves: tdf#117475 page properties change triggers page reorder event
    
    and page reorder remove and re-inserts the slide in the slide sorter, so the
    selected page property is removed when the page doesn't really get removed. So
    then there's no selection to apply the later master page property to.
    
    Change-Id: I4a32958542da1bf2f5041dde0294a772645e30ad
    Reviewed-on: https://gerrit.libreoffice.org/54127
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Miklos Vajna <vmiklos at collabora.co.uk>
    (cherry picked from commit f2cc4285c51addcb3814222616778c18dd311fe0)

diff --git a/sd/source/ui/slidesorter/inc/model/SlideSorterModel.hxx b/sd/source/ui/slidesorter/inc/model/SlideSorterModel.hxx
index 0837c565e5a5..e5d859f743be 100644
--- a/sd/source/ui/slidesorter/inc/model/SlideSorterModel.hxx
+++ b/sd/source/ui/slidesorter/inc/model/SlideSorterModel.hxx
@@ -216,8 +216,9 @@ private:
     void AdaptSize();
 
     SdPage* GetPage (const sal_Int32 nCoreIndex) const;
-    void InsertSlide (SdPage* pPage);
-    void DeleteSlide (const SdPage* pPage);
+    void InsertSlide (SdPage* pPage, bool bMarkSelected);
+    // return if this page was marked as selected before being removed
+    bool DeleteSlide (const SdPage* pPage);
     void UpdateIndices (const sal_Int32 nFirstIndex);
 };
 
diff --git a/sd/source/ui/slidesorter/model/SlideSorterModel.cxx b/sd/source/ui/slidesorter/model/SlideSorterModel.cxx
index 0267860dfecc..44d29094fc2a 100644
--- a/sd/source/ui/slidesorter/model/SlideSorterModel.cxx
+++ b/sd/source/ui/slidesorter/model/SlideSorterModel.cxx
@@ -534,15 +534,17 @@ bool SlideSorterModel::NotifyPageEvent (const SdrPage* pSdrPage)
     //NotifyPageEvent is called for add, remove, *and* change position so for
     //the change position case we must ensure we don't end up with the slide
     //duplicated in our list
-    DeleteSlide(pPage);
+    bool bSelected = DeleteSlide(pPage);
     if (pPage->IsInserted())
-        InsertSlide(pPage);
+    {
+        InsertSlide(pPage, bSelected);
+    }
     CheckModel(*this);
 
     return true;
 }
 
-void SlideSorterModel::InsertSlide (SdPage* pPage)
+void SlideSorterModel::InsertSlide(SdPage* pPage, bool bMarkSelected)
 {
     // Find the index at which to insert the given page.
     sal_uInt16 nCoreIndex (pPage->GetPageNum());
@@ -559,19 +561,24 @@ void SlideSorterModel::InsertSlide (SdPage* pPage)
         if (GetPage(nIndex+1) != GetPageDescriptor(nIndex)->GetPage())
             return;
 
+    auto iter = maPageDescriptors.begin() + nIndex;
+
     // Insert the given page at index nIndex
-    maPageDescriptors.insert(
-        maPageDescriptors.begin()+nIndex,
+    iter = maPageDescriptors.insert(
+        iter,
         std::make_shared<PageDescriptor>(
                 Reference<drawing::XDrawPage>(mxSlides->getByIndex(nIndex),UNO_QUERY),
                 pPage,
                 nIndex));
 
+    if (bMarkSelected)
+        (*iter)->SetState(PageDescriptor::ST_Selected, true);
+
     // Update page indices.
     UpdateIndices(nIndex+1);
 }
 
-void SlideSorterModel::DeleteSlide (const SdPage* pPage)
+bool SlideSorterModel::DeleteSlide (const SdPage* pPage)
 {
     sal_Int32 nIndex(0);
 
@@ -594,15 +601,21 @@ void SlideSorterModel::DeleteSlide (const SdPage* pPage)
         }
     }
 
+    bool bMarkedSelected(false);
+
     if(nIndex >= 0 && nIndex < static_cast<sal_Int32>(maPageDescriptors.size()))
     {
         if (maPageDescriptors[nIndex])
             if (maPageDescriptors[nIndex]->GetPage() != pPage)
-                return;
+                return false;
 
-        maPageDescriptors.erase(maPageDescriptors.begin()+nIndex);
+        auto iter = maPageDescriptors.begin() + nIndex;
+        bMarkedSelected = (*iter)->HasState(PageDescriptor::ST_Selected);
+        maPageDescriptors.erase(iter);
         UpdateIndices(nIndex);
     }
+
+    return bMarkedSelected;
 }
 
 void SlideSorterModel::UpdateIndices (const sal_Int32 nFirstIndex)
commit d546b2aa245a0ead13d87b4febdbd01f9753a999
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Fri May 4 17:15:37 2018 +0100

    Resolves: tdf#117413 char doubling appearing under X with gtk3
    
    like happened on gtk2, so make the rhbz#1283420 bodge happen for XLIB surfaces,
    regardless of the backend
    
    Change-Id: Ic51679a71523e8cc76832858411b102d915638cf
    Reviewed-on: https://gerrit.libreoffice.org/53897
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Jean-Baptiste Faure <jbfaure at libreoffice.org>
    Reviewed-by: Miklos Vajna <vmiklos at collabora.co.uk>
    (cherry picked from commit 17e7bd5e17e3393c44c76b7c69d47ad112e5efa6)

diff --git a/vcl/unx/generic/gdi/cairotextrender.cxx b/vcl/unx/generic/gdi/cairotextrender.cxx
index e4314ea41243..38d9e775b89d 100644
--- a/vcl/unx/generic/gdi/cairotextrender.cxx
+++ b/vcl/unx/generic/gdi/cairotextrender.cxx
@@ -156,6 +156,26 @@ namespace
     }
 }
 
+namespace
+{
+    cairo_t* syncCairoContext(cairo_t* cr)
+    {
+        //rhbz#1283420 tdf#117413 bodge to force a read from the underlying surface which has
+        //the side effect of making the mysterious xrender related problem go away
+        cairo_surface_t *target = cairo_get_target(cr);
+        if (cairo_surface_get_type(target) == CAIRO_SURFACE_TYPE_XLIB)
+        {
+            cairo_surface_t *throw_away = cairo_surface_create_similar(target, cairo_surface_get_content(target), 1, 1);
+            cairo_t *force_read_cr = cairo_create(throw_away);
+            cairo_set_source_surface(force_read_cr, target, 0, 0);
+            cairo_paint(force_read_cr);
+            cairo_destroy(force_read_cr);
+            cairo_surface_destroy(throw_away);
+        }
+        return cr;
+    }
+}
+
 void CairoTextRender::DrawTextLayout(const CommonSalLayout& rLayout)
 {
     const FreetypeFont& rFont = *rLayout.getFreetypeFont();
@@ -196,7 +216,7 @@ void CairoTextRender::DrawTextLayout(const CommonSalLayout& rLayout)
      * least change the SalFrame etc impls to dtor the SalGraphics *before* the
      * destruction of the windows they reference
     */
-    cairo_t *cr = getCairoContext();
+    cairo_t *cr = syncCairoContext(getCairoContext());
     if (!cr)
     {
         SAL_WARN("vcl", "no cairo context for text");
diff --git a/vcl/unx/generic/gdi/x11cairotextrender.cxx b/vcl/unx/generic/gdi/x11cairotextrender.cxx
index 105d0a0392bd..8960bd1c6bb1 100644
--- a/vcl/unx/generic/gdi/x11cairotextrender.cxx
+++ b/vcl/unx/generic/gdi/x11cairotextrender.cxx
@@ -36,21 +36,7 @@ GlyphCache& X11CairoTextRender::getPlatformGlyphCache()
 
 cairo_t* X11CairoTextRender::getCairoContext()
 {
-    cairo_t *cr = mrParent.getCairoContext();
-
-    //rhbz#1283420 bodge to force a read from the underlying surface which has
-    //the side effect of making the mysterious xrender related problem go away
-    {
-        cairo_surface_t *target = cairo_get_target(cr);
-        cairo_surface_t *throw_away = cairo_surface_create_similar(target, cairo_surface_get_content(target), 1, 1);
-        cairo_t *force_read_cr = cairo_create(throw_away);
-        cairo_set_source_surface(force_read_cr, target, 0, 0);
-        cairo_paint(force_read_cr);
-        cairo_destroy(force_read_cr);
-        cairo_surface_destroy(throw_away);
-    }
-
-    return cr;
+    return mrParent.getCairoContext();
 }
 
 void X11CairoTextRender::getSurfaceOffset( double& nDX, double& nDY )
commit 0ce23d3f971c227b0a9e2ed9a11cc225e08bc18f
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Fri May 11 09:27:49 2018 +0100

    Related: ofz#8226 + valgrind: uninitialized value
    
    Change-Id: I63dea876dffe2d9e17b506dbd8515da2d97fbf08
    Reviewed-on: https://gerrit.libreoffice.org/54114
    Reviewed-by: Michael Stahl <Michael.Stahl at cib.de>
    Tested-by: Jenkins <ci at libreoffice.org>
    (cherry picked from commit 0ec74577a97ca51d50e0f3782c289c95c6430641)

diff --git a/starmath/source/mathtype.cxx b/starmath/source/mathtype.cxx
index 20486fc9a922..a14dd25c84c2 100644
--- a/starmath/source/mathtype.cxx
+++ b/starmath/source/mathtype.cxx
@@ -2852,7 +2852,7 @@ void MathType::HandleSetSize()
 bool MathType::HandleChar(sal_Int32 &rTextStart, int &rSetSize, int nLevel,
     sal_uInt8 nTag, sal_uInt8 nSelector, sal_uInt8 nVariation, bool bSilent)
 {
-    sal_Unicode nChar;
+    sal_Unicode nChar(0);
     bool bRet = true;
 
     if (xfAUTO(nTag))
@@ -2865,7 +2865,7 @@ bool MathType::HandleChar(sal_Int32 &rTextStart, int &rSetSize, int nLevel,
     pS->ReadUChar( nTypeFace );
     if (nVersion < 3)
     {
-        sal_uInt8 nChar8;
+        sal_uInt8 nChar8(0);
         pS->ReadUChar( nChar8 );
         nChar = nChar8;
     }
commit d2acd20d4ff29349b82c0e562139af8a14d9df42
Author: Xisco Fauli <xiscofauli at libreoffice.org>
Date:   Wed May 2 17:34:44 2018 +0200

    tdf#117355 Show color picker on the sidebar
    
    Change-Id: I3e69b4247b679e0ceb3c8cee5d6fecf82ad8c445
    Reviewed-on: https://gerrit.libreoffice.org/53746
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Xisco Faulí <xiscofauli at libreoffice.org>
    (cherry picked from commit 7237db44dfac914e5b6003f418267d3df1e7f162)
    Reviewed-on: https://gerrit.libreoffice.org/53890
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>
    Tested-by: Caolán McNamara <caolanm at redhat.com>
    (cherry picked from commit 16a357ced2f18bfd3f8bd3c64071cb5f0333d92c)

diff --git a/sd/source/ui/sidebar/SlideBackground.cxx b/sd/source/ui/sidebar/SlideBackground.cxx
index d7d93d75755b..c4f271487762 100644
--- a/sd/source/ui/sidebar/SlideBackground.cxx
+++ b/sd/source/ui/sidebar/SlideBackground.cxx
@@ -327,6 +327,7 @@ void SlideBackground::Update()
         {
             mpFillAttr->Hide();
             mpFillGrad->Hide();
+            mpFillLB->Show();
             const Color aColor = GetColorSetOrDefault();
             mpFillLB->SelectEntry(aColor);
         }
commit 0e0bdd709e744112018bd042fced01ba931cfd90
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date:   Tue May 8 09:06:26 2018 +0200

    tdf#117403 RTF import: fix lost cell border of merged cell
    
    If two source cells have different border types, then Writer takes the
    second, Word takes the first. So mimic the MSO behavior explicitly in
    dmapper.
    
    (cherry picked from commit 42b32321381126ad70700424b8970dbc45a843f5)
    
    Change-Id: I25adc62e024a929216c7b05fec44e1f602f28285
    Reviewed-on: https://gerrit.libreoffice.org/54089
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>
    Tested-by: Caolán McNamara <caolanm at redhat.com>
    (cherry picked from commit 9223a8766e5a055f77e9cc7bccbfa718e6122e28)

diff --git a/sw/qa/extras/rtfimport/data/tdf117403.rtf b/sw/qa/extras/rtfimport/data/tdf117403.rtf
new file mode 100644
index 000000000000..243fe548c246
--- /dev/null
+++ b/sw/qa/extras/rtfimport/data/tdf117403.rtf
@@ -0,0 +1,15 @@
+{\rtf\ansi\ansicpg1252\deff2
+{\fonttbl
+{\f0\fcharset238\froman Tms Rmn;}
+{\f1\fdecor Symbol;}
+{\f2\fcharset238\fswiss Helv;}
+{\f3\fcharset238\fmodern Courier New;}
+}
+\sectd
+\pgwsxn16837\pghsxn11905\marglsxn400\margrsxn400\margtsxn801\margbsxn801\lndscpsxn\plain\fs20\pard\qc
+\pard\pard
+\par
+\trowd\clmgf\clbrdrb\brdrs\brdrw1\cellx1764\clmrg\cellx2325
+\pard\intbl \qc \fs12 A1\cell
+\pard\intbl \cell
+\row \pard \par}
diff --git a/sw/qa/extras/rtfimport/rtfimport.cxx b/sw/qa/extras/rtfimport/rtfimport.cxx
index 22e037ae2235..f49ba5eece55 100644
--- a/sw/qa/extras/rtfimport/rtfimport.cxx
+++ b/sw/qa/extras/rtfimport/rtfimport.cxx
@@ -1316,6 +1316,20 @@ DECLARE_RTFIMPORT_TEST(testTdf78506, "tdf78506.rtf")
     }
 }
 
+DECLARE_RTFIMPORT_TEST(testTdf117403, "tdf117403.rtf")
+{
+    uno::Reference<text::XTextTablesSupplier> xTextTablesSupplier(mxComponent, uno::UNO_QUERY);
+    uno::Reference<container::XIndexAccess> xTables(xTextTablesSupplier->getTextTables(),
+                                                    uno::UNO_QUERY);
+    uno::Reference<text::XTextTable> xTable(xTables->getByIndex(0), uno::UNO_QUERY);
+    uno::Reference<text::XTextRange> xCell(xTable->getCellByName("A1"), uno::UNO_QUERY);
+    CPPUNIT_ASSERT(xCell.is());
+    table::BorderLine2 aExpected(static_cast<sal_Int32>(COL_BLACK), 0, 4, 0,
+                                 table::BorderLineStyle::SOLID, 4);
+    // This failed, border was not imported, OuterLineWidth was 0 instead of 4.
+    CPPUNIT_ASSERT_BORDER_EQUAL(aExpected, getProperty<table::BorderLine2>(xCell, "BottomBorder"));
+}
+
 DECLARE_RTFIMPORT_TEST(testImportHeaderFooter, "tdf108055.rtf")
 {
     // The RTF import sometimes added Header and Footer multiple Times
diff --git a/writerfilter/source/dmapper/DomainMapperTableHandler.cxx b/writerfilter/source/dmapper/DomainMapperTableHandler.cxx
index e6f993e19387..1466787b8fb5 100644
--- a/writerfilter/source/dmapper/DomainMapperTableHandler.cxx
+++ b/writerfilter/source/dmapper/DomainMapperTableHandler.cxx
@@ -1030,21 +1030,48 @@ void DomainMapperTableHandler::endTable(unsigned int nestedTableLevel, bool bTab
                 {
                     if (!aMerges.empty())
                     {
+                        static const std::vector<OUStringLiteral> aBorderNames
+                            = { "TopBorder", "LeftBorder", "BottomBorder", "RightBorder" };
+
                         // Perform horizontal merges in reverse order, so the fact that merging changes the position of cells won't cause a problem for us.
                         for (std::vector<HorizontallyMergedCell>::reverse_iterator it = aMerges.rbegin(); it != aMerges.rend(); ++it)
                         {
                             uno::Reference<table::XCellRange> xCellRange(xTable, uno::UNO_QUERY_THROW);
-                            uno::Reference<beans::XPropertySet> xCell(xCellRange->getCellByPosition(it->m_nFirstCol, it->m_nFirstRow), uno::UNO_QUERY_THROW);
-                            OUString aFirst = xCell->getPropertyValue("CellName").get<OUString>();
+                            uno::Reference<beans::XPropertySet> xFirstCell(
+                                xCellRange->getCellByPosition(it->m_nFirstCol, it->m_nFirstRow),
+                                uno::UNO_QUERY_THROW);
+                            OUString aFirst
+                                = xFirstCell->getPropertyValue("CellName").get<OUString>();
                             // tdf#105852: Only try to merge if m_nLastCol is set (i.e. there were some merge continuation cells)
                             if (it->m_nLastCol != -1)
                             {
-                                xCell.set(xCellRange->getCellByPosition(it->m_nLastCol, it->m_nLastRow), uno::UNO_QUERY_THROW);
-                                OUString aLast = xCell->getPropertyValue("CellName").get<OUString>();
+                                // Save border properties of the first cell
+                                // before merge.
+                                table::BorderLine2 aBorderValues[4];
+                                for (size_t i = 0; i < aBorderNames.size(); ++i)
+                                    xFirstCell->getPropertyValue(aBorderNames[i])
+                                        >>= aBorderValues[i];
+
+                                uno::Reference<beans::XPropertySet> xLastCell(
+                                    xCellRange->getCellByPosition(it->m_nLastCol, it->m_nLastRow),
+                                    uno::UNO_QUERY_THROW);
+                                OUString aLast
+                                    = xLastCell->getPropertyValue("CellName").get<OUString>();
 
                                 uno::Reference<text::XTextTableCursor> xCursor = xTable->createCursorByCellName(aFirst);
                                 xCursor->gotoCellByName(aLast, true);
+
                                 xCursor->mergeRange();
+
+                                // Handle conflicting properties: mergeRange()
+                                // takes the last cell, Word takes the first
+                                // cell.
+                                for (size_t i = 0; i < aBorderNames.size(); ++i)
+                                {
+                                    if (aBorderValues[i].LineStyle != table::BorderLineStyle::NONE)
+                                        xFirstCell->setPropertyValue(
+                                            aBorderNames[i], uno::makeAny(aBorderValues[i]));
+                                }
                             }
                         }
                     }
commit cf88c107abb3a77b939665baeee897f1bae4d854
Author: Winfried Donkers <winfrieddonkers at libreoffice.org>
Date:   Wed May 9 10:40:03 2018 +0200

    tdf#117433 count empty cells properly with COUNTIF.
    
    All empty columns after the first column of the range were skipped.
    When the query contains an 'cell is empty' expression, skipping is omitted.
    
    Change-Id: I0d5b0d24c2d08bad88479cd5b356529a0a709156
    Reviewed-on: https://gerrit.libreoffice.org/54021
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Eike Rathke <erack at redhat.com>
    (cherry picked from commit 1a8febcaa4f932124d417877a3b08bd059c0362d)
    Reviewed-on: https://gerrit.libreoffice.org/54037
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>
    Tested-by: Caolán McNamara <caolanm at redhat.com>
    (cherry picked from commit 9b2ebcfe80900b2f6299851d3a271bdcaa85049a)

diff --git a/sc/qa/unit/data/functions/statistical/fods/countif.fods b/sc/qa/unit/data/functions/statistical/fods/countif.fods
index 557e70b2044f..8625ebe7aeff 100644
--- a/sc/qa/unit/data/functions/statistical/fods/countif.fods
+++ b/sc/qa/unit/data/functions/statistical/fods/countif.fods
@@ -3865,10 +3865,22 @@
      <table:table-cell table:style-name="ce58"/>
     </table:table-row>
     <table:table-row table:style-name="ro6">
-     <table:table-cell table:number-columns-repeated="2"/>
-     <table:table-cell table:style-name="ce28"/>
-     <table:table-cell table:style-name="ce34"/>
-     <table:table-cell table:number-columns-repeated="2"/>
+     <table:table-cell table:formula="of:=COUNTIF([.P20:.R23];"")" office:value-type="float" office:value="12" calcext:value-type="float">
+      <text:p>12</text:p>
+     </table:table-cell>
+     <table:table-cell office:value-type="float" office:value="12" calcext:value-type="float">
+      <text:p>12</text:p>
+     </table:table-cell>
+     <table:table-cell table:style-name="ce64" table:formula="of:=ROUND([.A32];12)=ROUND([.B32];12)" office:value-type="boolean" office:boolean-value="true" calcext:value-type="boolean">
+      <text:p>TRUE</text:p>
+     </table:table-cell>
+     <table:table-cell table:style-name="ce34" table:formula="of:=FORMULA([.A32])" office:value-type="string" office:string-value="=COUNTIF(P20:R23,"")" calcext:value-type="string">
+      <text:p>=COUNTIF(P20:R23,"")</text:p>
+     </table:table-cell>
+     <table:table-cell office:value-type="string" calcext:value-type="string">
+      <text:p>tdf#117433</text:p>
+     </table:table-cell>
+     <table:table-cell/>
      <table:table-cell table:style-name="ce39"/>
      <table:table-cell/>
      <table:table-cell office:value-type="float" office:value="3" calcext:value-type="float">
@@ -4469,4 +4481,4 @@
    </table:named-expressions>
   </office:spreadsheet>
  </office:body>
-</office:document>
\ No newline at end of file
+</office:document>
diff --git a/sc/source/core/data/dociter.cxx b/sc/source/core/data/dociter.cxx
index 96af2dbc3150..689abc31d07a 100644
--- a/sc/source/core/data/dociter.cxx
+++ b/sc/source/core/data/dociter.cxx
@@ -1144,7 +1144,7 @@ bool ScQueryCellIterator::GetThis()
                 }
                 pCol = &(pDoc->maTabs[nTab])->aCol[nCol];
             }
-            while (pCol->IsEmptyData());
+            while (!rItem.mbMatchEmpty && pCol->IsEmptyData());
 
             InitPos();
 
commit 9bc29be8fb6988456ba88a719f134f6c29c604e6
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Wed May 9 14:37:21 2018 +0200

    Merge in Flatpak improvements
    
    ...from <https://github.com/flathub/org.libreoffice.LibreOffice/>:
    
    commit 945f6caad87658b1df1e8918bd5f64939058ab7f (origin/desktop-integration)
    Author: Robert McQueen <rob at endlessm.com>
    Date:   Fri Apr 27 16:54:30 2018 +0100
    
        clean up desktop integration
    
         - don't register MIME handler for text/plain (Flatpak appears first in
           XDG_DATA_DIRS so otherwise we "steal" the default text editor association)
         - copy the icons app into the theme with both their original libreoffice-*
           name as well as the org.libreoffice name needed by Flatpak, which fixes the
           window icons
         - append the appdata for the separate apps (Base, Draw, etc) to the appdata
           XML we export for Flatpak, so they are visible in software centers etc
    
    Change-Id: Ia086071671b9ff5a8b07c55a822240f9e8fbb8d3
    Reviewed-on: https://gerrit.libreoffice.org/54031
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>
    Tested-by: Caolán McNamara <caolanm at redhat.com>
    (cherry picked from commit 33af02a486ee911ba68608ec6f4f0b06dd742473)

diff --git a/solenv/bin/assemble-flatpak.sh b/solenv/bin/assemble-flatpak.sh
index b0f718a5091f..2d988084cb1c 100755
--- a/solenv/bin/assemble-flatpak.sh
+++ b/solenv/bin/assemble-flatpak.sh
@@ -26,6 +26,10 @@ done
 mv /app/share/applications/org.libreoffice.LibreOffice-startcenter.desktop \
  /app/share/applications/org.libreoffice.LibreOffice.desktop
 
+# Flatpak .desktop exports take precedence over system ones due to
+# the order of XDG_DATA_DIRS - re-associating text/plain seems a bit much
+sed -i "s/text\/plain;//" /app/share/applications/org.libreoffice.LibreOffice-writer.desktop
+
 ## icons/hicolor/*/apps/libreoffice-* ->
 ## icons/hicolor/*/apps/org.libreoffice.LibreOffice-*:
 mkdir -p /app/share/icons
@@ -34,6 +38,8 @@ do
  mkdir -p \
   "$(dirname /app/share/icons/hicolor/"${i#"${PREFIXDIR?}"/share/icons/hicolor/}")"
  cp -a "$i" \
+  "$(dirname /app/share/icons/hicolor/"${i#"${PREFIXDIR?}"/share/icons/hicolor/}")"/"$(basename "$i")"
+ cp -a "$i" \
   "$(dirname /app/share/icons/hicolor/"${i#"${PREFIXDIR?}"/share/icons/hicolor/}")"/org.libreoffice.LibreOffice-"${i##*/apps/libreoffice-}"
 done
 
@@ -133,6 +139,13 @@ cat <<EOF >/app/share/appdata/org.libreoffice.LibreOffice.appdata.xml
 </component>
 EOF
 
+# append the appdata for the different components
+for i in "${PREFIXDIR?}"/share/appdata/libreoffice-*.appdata.xml
+do
+  sed "1 d; s/<id>libreoffice/<id>org.libreoffice.LibreOffice/" "$i" \
+    >>/app/share/appdata/org.libreoffice.LibreOffice.appdata.xml
+done
+
 ## see <https://github.com/flatpak/flatpak/blob/master/app/
 ## flatpak-builtins-build-finish.c> for further places where build-finish would
 ## look for data:
commit cda11986dfb9934e49ab4fedaed0dfebbc172a2c
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Wed May 9 12:15:09 2018 +0200

    Missing template clone() in configmgr dconf mode
    
    ...that could cause infinite recursion, e.g. when an erroneously modified
    /org.openoffice.ucb.Hierarchy/Entry template (which recursively has children of
    the same template type) is later used to instantiate a new set member.
    
    Change-Id: I7b9e55fa1c92979aed98b9f23f4432600afffed4
    Reviewed-on: https://gerrit.libreoffice.org/54024
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>
    Tested-by: Caolán McNamara <caolanm at redhat.com>
    (cherry picked from commit 193d244efd0cea8011f5e6c7221dbf3b4d8459b8)

diff --git a/configmgr/source/dconf.cxx b/configmgr/source/dconf.cxx
index 22c80841addf..642e37ec0257 100644
--- a/configmgr/source/dconf.cxx
+++ b/configmgr/source/dconf.cxx
@@ -938,6 +938,7 @@ void readDir(
                                 << templ);
                         continue;
                     }
+                    member = member->clone(true);
                     break;
                 default:
                     assert(false); // cannot happen
commit ca112916f87e3012fb6fbecde8ad32ebd315610e
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Thu Feb 8 10:01:06 2018 +0000

    ofz#6104 guard against self recursive GetShadow
    
    Change-Id: If1cf0ef365f78665cc5b9f5f1ea53e82b531f9b0
    (cherry picked from commit f9826620aae0f9f9fb1dd30216e6be317ecb103b)
    
    ofz#6448 infinite-regress
    
    Change-Id: Ie0c082a4b43355e935594f2dda694edfc9cdf315
    Reviewed-on: https://gerrit.libreoffice.org/49950
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>
    Tested-by: Caolán McNamara <caolanm at redhat.com>
    (cherry picked from commit 68cebacac864da199ace7fe03db0e054e6b36966)
    
    ofz#6602 infinite recursion
    
    Change-Id: I358708f606655bcd0df948fd2e01725c706880c7
    (cherry picked from commit e07a1a5d6957dbb4dc19cb4d274406e8e075c729)
    
    ofz#6640 avoid recurse to death
    
    Change-Id: Ia798636a5b4013753a268fff68915ec56c384e5f
    (cherry picked from commit ad56a550864cbe86687abbea492af47b5ab5d7c6)
    
    ofz#7146 Infinite recurse
    
    Change-Id: I0afc3a73933e3370c5b1aeca1beabec94c56a6e6
    Reviewed-on: https://gerrit.libreoffice.org/51911
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>
    Tested-by: Caolán McNamara <caolanm at redhat.com>
    (cherry picked from commit 78a43ceeca45f42d674bbf8b5c95a108ebc6590c)
    
    ofz#8161 avoid recurse to death
    
    Change-Id: If3fc212ed0fe2b3cb3c1381198d46387861ac3dd
    Reviewed-on: https://gerrit.libreoffice.org/53974
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Michael Stahl <Michael.Stahl at cib.de>
    (cherry picked from commit 14c9ddc755f600a2ecbf0f2e715b5ff3ff3a234b)

diff --git a/lotuswordpro/source/filter/lwplayout.cxx b/lotuswordpro/source/filter/lwplayout.cxx
index 7a1dddda5954..9c27ae7e8dab 100644
--- a/lotuswordpro/source/filter/lwplayout.cxx
+++ b/lotuswordpro/source/filter/lwplayout.cxx
@@ -83,6 +83,10 @@ LwpVirtualLayout::LwpVirtualLayout(LwpObjectHeader const &objHdr, LwpSvStream* p
     , m_bGettingMarginsValue(false)
     , m_bGettingExtMarginsValue(false)
     , m_bGettingUsePrinterSettings(false)
+    , m_bGettingScaleCenter(false)
+    , m_bGettingBorderStuff(false)
+    , m_bGettingUseWhen(false)
+    , m_bGettingStyleLayout(false)
     , m_nAttributes(0)
     , m_nAttributes2(0)
     , m_nAttributes3(0)
@@ -228,6 +232,12 @@ bool LwpVirtualLayout::IsComplex()
 */
 LwpUseWhen* LwpVirtualLayout::GetUseWhen()
 {
+    if (m_bGettingUseWhen)
+        throw std::runtime_error("recursion in layout");
+    m_bGettingUseWhen= true;
+
+    LwpUseWhen* pRet = nullptr;
+
     /*
         If we have a parent, and I'm not a page layout,
         use my parents information.
@@ -237,11 +247,16 @@ LwpUseWhen* LwpVirtualLayout::GetUseWhen()
         //get parent
         rtl::Reference<LwpVirtualLayout> xParent(dynamic_cast<LwpVirtualLayout*>(GetParent().obj().get()));
         if (xParent.is() && !xParent->IsHeader() && (xParent->GetLayoutType() != LWP_PAGE_LAYOUT))
-            return xParent->GetUseWhen();
+            pRet = xParent->GetUseWhen();
 
     }
 
-    return VirtualGetUseWhen();
+    if (!pRet)
+        pRet = VirtualGetUseWhen();
+
+    m_bGettingUseWhen = false;
+
+    return pRet;
 }
 /**
  * @descr:  Whether this layout is page layout or not
@@ -353,13 +368,22 @@ bool LwpVirtualLayout::NoContentReference()
 
 bool LwpVirtualLayout::IsStyleLayout()
 {
+    if (m_bGettingStyleLayout)
+        throw std::runtime_error("recursion in layout");
+    m_bGettingStyleLayout = true;
+
+    bool bRet = false;
     if (m_nAttributes3 & STYLE3_STYLELAYOUT)
-        return true;
+        bRet = true;
+    else
+    {
+        rtl::Reference<LwpVirtualLayout> xParent(dynamic_cast<LwpVirtualLayout*>(GetParent().obj().get()));
+        if (xParent.is())
+            bRet = xParent->IsStyleLayout();
+    }
 
-    rtl::Reference<LwpVirtualLayout> xParent(dynamic_cast<LwpVirtualLayout*>(GetParent().obj().get()));
-    if (xParent.is())
-        return xParent->IsStyleLayout();
-    return false;
+    m_bGettingStyleLayout = false;
+    return bRet;
 }
 
 /**
@@ -769,20 +793,28 @@ double LwpMiddleLayout::ExtMarginsValue(sal_uInt8 nWhichSide)
 */
 LwpBorderStuff* LwpMiddleLayout::GetBorderStuff()
 {
+    if (m_bGettingBorderStuff)
+        throw std::runtime_error("recursion in layout");
+    m_bGettingBorderStuff = true;
+
+    LwpBorderStuff* pRet = nullptr;
+
     if(m_nOverrideFlag & OVER_BORDERS)
     {
         LwpLayoutBorder* pLayoutBorder = dynamic_cast<LwpLayoutBorder*>(m_LayBorderStuff.obj().get());
-        return pLayoutBorder ? &pLayoutBorder->GetBorderStuff() : nullptr;
+        pRet = pLayoutBorder ? &pLayoutBorder->GetBorderStuff() : nullptr;
     }
     else
     {
         rtl::Reference<LwpObject> xBase(GetBasedOnStyle());
         if (LwpMiddleLayout* pLay = dynamic_cast<LwpMiddleLayout*>(xBase.get()))
         {
-            return pLay->GetBorderStuff();
+            pRet = pLay->GetBorderStuff();
         }
     }
-    return nullptr;
+
+    m_bGettingBorderStuff= false;
+    return pRet;
 }
 
 /**
@@ -935,16 +967,26 @@ sal_uInt16 LwpMiddleLayout::GetScaleTile()
 
 sal_uInt16 LwpMiddleLayout::GetScaleCenter()
 {
+    if (m_bGettingScaleCenter)
+        throw std::runtime_error("recursion in layout");
+    m_bGettingScaleCenter = true;
+
+    sal_uInt16 nRet = 0;
+
     if ((m_nOverrideFlag & OVER_SCALING) && m_LayScale.obj().is() && GetLayoutScale())
     {
-        return (GetLayoutScale()->GetPlacement() & LwpLayoutScale::CENTERED)
+        nRet = (GetLayoutScale()->GetPlacement() & LwpLayoutScale::CENTERED)
             ? 1 : 0;
     }
-    rtl::Reference<LwpObject> xBase(GetBasedOnStyle());
-    if (xBase.is())
-        return dynamic_cast<LwpMiddleLayout&>(*xBase.get()).GetScaleCenter();
     else
-        return 0;
+    {
+        rtl::Reference<LwpObject> xBase(GetBasedOnStyle());
+        if (xBase.is())
+            nRet = dynamic_cast<LwpMiddleLayout&>(*xBase.get()).GetScaleCenter();
+    }
+
+    m_bGettingScaleCenter = false;
+    return nRet;
 }
 
 sal_uInt32 LwpMiddleLayout::GetScalePercentage()
@@ -1469,9 +1511,12 @@ bool LwpMiddleLayout::HasContent()
     return content.is();
 }
 
-LwpLayout::LwpLayout( LwpObjectHeader const &objHdr, LwpSvStream* pStrm ) :
-    LwpMiddleLayout(objHdr, pStrm)
-{}
+LwpLayout::LwpLayout(LwpObjectHeader const &objHdr, LwpSvStream* pStrm)
+    : LwpMiddleLayout(objHdr, pStrm)
+    , m_bGettingShadow(false)
+    , m_bGettingNumCols(false)
+{
+}
 
 LwpLayout::~LwpLayout()
 {
@@ -1518,24 +1563,24 @@ void LwpLayout::Read()
 */
 sal_uInt16 LwpLayout::GetNumCols()
 {
-    if(m_nOverrideFlag & OVER_COLUMNS)
+    if (m_bGettingNumCols)
+        throw std::runtime_error("recursion in layout");
+    m_bGettingNumCols = true;
+
+    sal_uInt16 nRet = 0;
+    LwpLayoutColumns* pLayColumns = (m_nOverrideFlag & OVER_COLUMNS) ? dynamic_cast<LwpLayoutColumns*>(m_LayColumns.obj().get()) : nullptr;
+    if (pLayColumns)
     {
-        LwpLayoutColumns* pLayColumns = dynamic_cast<LwpLayoutColumns*>(m_LayColumns.obj().get());
-        if(pLayColumns)
-        {
-            return pLayColumns->GetNumCols();
-        }
+        nRet = pLayColumns->GetNumCols();
     }
-
-    rtl::Reference<LwpObject> xBase(GetBasedOnStyle());
-    LwpVirtualLayout* pStyle = dynamic_cast<LwpVirtualLayout*>(xBase.get());
-    if (pStyle)
+    else
     {
-        return pStyle->GetNumCols();
+        rtl::Reference<LwpObject> xBase(GetBasedOnStyle());
+        LwpVirtualLayout* pStyle = dynamic_cast<LwpVirtualLayout*>(xBase.get());
+        nRet = pStyle ? pStyle->GetNumCols() : LwpVirtualLayout::GetNumCols();
     }
-
-    return LwpVirtualLayout::GetNumCols();
-
+    m_bGettingNumCols = false;
+    return nRet;
 }
 
 /**
@@ -1860,20 +1905,25 @@ bool LwpLayout::IsUseOnPage()
 */
 LwpShadow* LwpLayout::GetShadow()
 {
+    if (m_bGettingShadow)
+        throw std::runtime_error("recursion in layout");
+    m_bGettingShadow = true;
+    LwpShadow* pRet = nullptr;
     if(m_nOverrideFlag & OVER_SHADOW)
     {
         LwpLayoutShadow* pLayoutShadow = dynamic_cast<LwpLayoutShadow*>(m_LayShadow.obj().get());
-        return pLayoutShadow ? &pLayoutShadow->GetShadow() : nullptr;
+        pRet = pLayoutShadow ? &pLayoutShadow->GetShadow() : nullptr;
     }
     else
     {
         rtl::Reference<LwpObject> xBase(GetBasedOnStyle());
         if (LwpLayout* pLay = dynamic_cast<LwpLayout*>(xBase.get()))
         {
-            return pLay->GetShadow();
+            pRet = pLay->GetShadow();
         }
     }
-    return nullptr;
+    m_bGettingShadow = false;
+    return pRet;
 }
 
 /**
diff --git a/lotuswordpro/source/filter/lwplayout.hxx b/lotuswordpro/source/filter/lwplayout.hxx
index 560822c858c6..518da035ea14 100644
--- a/lotuswordpro/source/filter/lwplayout.hxx
+++ b/lotuswordpro/source/filter/lwplayout.hxx
@@ -237,6 +237,10 @@ protected:
     bool m_bGettingMarginsValue;
     bool m_bGettingExtMarginsValue;
     bool m_bGettingUsePrinterSettings;
+    bool m_bGettingScaleCenter;
+    bool m_bGettingBorderStuff;
+    bool m_bGettingUseWhen;
+    bool m_bGettingStyleLayout;
     sal_uInt32 m_nAttributes;
     sal_uInt32 m_nAttributes2;
     sal_uInt32 m_nAttributes3;
@@ -428,6 +432,9 @@ public:
 
 class LwpLayout : public LwpMiddleLayout
 {
+private:
+    bool m_bGettingShadow;
+    bool m_bGettingNumCols;
 public:
     LwpLayout( LwpObjectHeader const &objHdr, LwpSvStream* pStrm );
     virtual ~LwpLayout() override;
commit 8f941e90e65d9a60a7c1f13b1a9549ed2d4ed399
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Tue May 8 21:36:18 2018 +0100

    there are 3600000 seconds in an hour
    
    regression from...
    
    commit 9830fd36dbdb72c79703b0c61efc027fba793c5a
    Date:   Sun Mar 17 08:36:26 2013 +0100
    
        date/time IDL datatypes incompatible change
    
    Change-Id: I2f4b64a73b5529ba190acc678d907761bb568bbf
    Reviewed-on: https://gerrit.libreoffice.org/54010
    Reviewed-by: Noel Grandin <noel.grandin at collabora.co.uk>
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Michael Stahl <Michael.Stahl at cib.de>
    (cherry picked from commit 4fd9ba592c2a9a566813942b06c864ad37e96243)

diff --git a/tools/CppunitTest_tools_test.mk b/tools/CppunitTest_tools_test.mk
index 8cd8e7c3e9b3..547b7e9c16f0 100644
--- a/tools/CppunitTest_tools_test.mk
+++ b/tools/CppunitTest_tools_test.mk
@@ -16,6 +16,7 @@ $(eval $(call gb_CppunitTest_use_external,tools_test,boost_headers))
 $(eval $(call gb_CppunitTest_add_exception_objects,tools_test, \
     tools/qa/cppunit/test_bigint \
     tools/qa/cppunit/test_date \
+    tools/qa/cppunit/test_time \
     tools/qa/cppunit/test_fract \
     tools/qa/cppunit/test_inetmime \
     tools/qa/cppunit/test_pathutils \
diff --git a/tools/qa/cppunit/test_time.cxx b/tools/qa/cppunit/test_time.cxx
new file mode 100644
index 000000000000..f1915b71baa1
--- /dev/null
+++ b/tools/qa/cppunit/test_time.cxx
@@ -0,0 +1,41 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+
+#include <cppunit/TestFixture.h>
+#include <cppunit/extensions/HelperMacros.h>
+
+#include <tools/time.hxx>
+
+namespace tools
+{
+class TimeTest : public CppUnit::TestFixture
+{
+public:
+    void testTime();
+
+    CPPUNIT_TEST_SUITE(TimeTest);
+    CPPUNIT_TEST(testTime);
+    CPPUNIT_TEST_SUITE_END();
+};
+
+void TimeTest::testTime()
+{
+    Time aOrigTime(1, 56, 10);
+    auto nMS = aOrigTime.GetMSFromTime();
+
+    Time aNewTime(0);
+    aNewTime.MakeTimeFromMS(nMS);
+
+    CPPUNIT_ASSERT(bool(aOrigTime == aNewTime));
+}
+
+CPPUNIT_TEST_SUITE_REGISTRATION(TimeTest);
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab cinoptions=b1,g0,N-s cinkeys+=0=break: */
diff --git a/tools/source/datetime/ttime.cxx b/tools/source/datetime/ttime.cxx
index cf8108306e06..97d2c8a9b180 100644
--- a/tools/source/datetime/ttime.cxx
+++ b/tools/source/datetime/ttime.cxx
@@ -288,7 +288,7 @@ sal_Int32 tools::Time::GetMSFromTime() const
            ( nNanoSec/1000000 +
              nSec  * 1000 +
              nMin  * 60000 +
-             nHour * 360000 );
+             nHour * 3600000 );
 }
 
 void tools::Time::MakeTimeFromMS( sal_Int32 nMS )
commit 980dee8f8e748f84e03cf40962ed2826b9a4dc9e
Author: Michael Stahl <Michael.Stahl at cib.de>
Date:   Tue May 8 15:01:22 2018 +0200

    OFFICE-3776 xmloff: adapt ODF import to renamed text:sender-initials
    
    ODF TC decided to rename the element to meta:creator-initials, so adapt
    the import so it can read this in addition to the 2 element names
    produced by current and past LO versions.
    
    Also add a test.
    
    Unfortunately it turned out that the ODF validator had a bug in checking
    character data in foreign elements, which is triggered by the test
    document, see https://issues.apache.org/jira/browse/ODFTOOLKIT-475
    ... so update the validator jar as well.
    
    Change-Id: I1de1e8772b41f8937f043d9a0d150e169f25ffd4
    Reviewed-on: https://gerrit.libreoffice.org/53979
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Michael Stahl <Michael.Stahl at cib.de>
    (cherry picked from commit b09889a158cbc839ebc8a6061b0b261fa74930e6)
    Reviewed-on: https://gerrit.libreoffice.org/54001
    Reviewed-by: Thorsten Behrens <Thorsten.Behrens at CIB.de>
    (cherry picked from commit 1a8fcf5c1523e14a6988263a7c3827f71c0dc674)

diff --git a/download.lst b/download.lst
index 60700e7bace3..2267eb4cb8bf 100644
--- a/download.lst
+++ b/download.lst
@@ -202,8 +202,8 @@ export NSS_TARBALL := nss-3.33-with-nspr-4.17.tar.gz
 export ODFGEN_SHA256SUM := 2c7b21892f84a4c67546f84611eccdad6259875c971e98ddb027da66ea0ac9c2
 export ODFGEN_VERSION_MICRO := 6
 export ODFGEN_TARBALL := libodfgen-0.1.$(ODFGEN_VERSION_MICRO).tar.bz2
-export ODFVALIDATOR_SHA256SUM := aa8896eef3adbd6b54d4ec1817c1bc3871cce99120faf26f93502077480233cf
-export ODFVALIDATOR_JAR := odfvalidator-1.2.0-incubating-SNAPSHOT-jar-with-dependencies+ODFTOOLKIT-460+ODFTOOLKIT-461.jar
+export ODFVALIDATOR_SHA256SUM := 702413413a5d8076c17fe79c0808dfba145a7260020f6c8627ea529a0cf83769
+export ODFVALIDATOR_JAR := odfvalidator-1.2.0-incubating-SNAPSHOT-jar-with-dependencies+ODFTOOLKIT-460+ODFTOOLKIT-475.jar
 export OFFICEOTRON_SHA256SUM := f2443f27561af52324eee03a1892d9f569adc8db9e7bca55614898bc2a13a770
 export OFFICEOTRON_JAR := 8249374c274932a21846fa7629c2aa9b-officeotron-0.7.4-master.jar
 export OPENLDAP_SHA256SUM := cdd6cffdebcd95161a73305ec13fc7a78e9707b46ca9f84fb897cd5626df3824
diff --git a/include/xmloff/xmltoken.hxx b/include/xmloff/xmltoken.hxx
index 72d8d034a403..7880f2df7ece 100644
--- a/include/xmloff/xmltoken.hxx
+++ b/include/xmloff/xmltoken.hxx
@@ -3301,6 +3301,8 @@ namespace xmloff { namespace token {
         XML_ZEROS_DENOMINATOR_DIGITS,
         XML_INTEGER_FRACTION_DELIMITER,
 
+        XML_CREATOR_INITIALS,
+
         XML_TOKEN_END
     };
 
diff --git a/sw/qa/extras/odfexport/data/sender-initials.fodt b/sw/qa/extras/odfexport/data/sender-initials.fodt
new file mode 100644
index 000000000000..b8a5c1e67055
--- /dev/null
+++ b/sw/qa/extras/odfexport/data/sender-initials.fodt
@@ -0,0 +1,71 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<office:document xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0" xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0" xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0" xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0" xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0" xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0" xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0" xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0" xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0" xmlns:math="http://www.w3.org/1998/Math/MathML" xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0" xmlns:script="urn:oasis:names:tc:opendocument:xmlns:script:1.0" xmlns:config="urn:oas
 is:names:tc:opendocument:xmlns:config:1.0" xmlns:ooo="http://openoffice.org/2004/office" xmlns:ooow="http://openoffice.org/2004/writer" xmlns:oooc="http://openoffice.org/2004/calc" xmlns:dom="http://www.w3.org/2001/xml-events" xmlns:xforms="http://www.w3.org/2002/xforms" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:rpt="http://openoffice.org/2005/report" xmlns:of="urn:oasis:names:tc:opendocument:xmlns:of:1.2" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:grddl="http://www.w3.org/2003/g/data-view#" xmlns:officeooo="http://openoffice.org/2009/office" xmlns:tableooo="http://openoffice.org/2009/table" xmlns:drawooo="http://openoffice.org/2010/draw" xmlns:calcext="urn:org:documentfoundation:names:experimental:calc:xmlns:calcext:1.0" xmlns:loext="urn:org:documentfoundation:names:experimental:office:xmlns:loext:1.0" xmlns:field="urn:openoffice:names:experimental:ooo-ms-interop:xmlns:field:1.0" xmlns:formx="urn:openoffice:names:
 experimental:ooxml-odf-interop:xmlns:form:1.0" xmlns:css3t="http://www.w3.org/TR/css3-text/" office:version="1.2" office:mimetype="application/vnd.oasis.opendocument.text">
+ <office:meta><meta:initial-creator>ms </meta:initial-creator><meta:creation-date>2015-08-24T21:49:45.305718699</meta:creation-date><meta:document-statistic meta:table-count="0" meta:image-count="0" meta:object-count="0" meta:page-count="1" meta:paragraph-count="0" meta:word-count="0" meta:character-count="0" meta:non-whitespace-character-count="0"/><meta:generator>LibreOfficeDev/4.3.7.2$Linux_X86_64 LibreOffice_project/8a35821d8636a03b8bf4e15b48f59794652c68ba</meta:generator></office:meta>
+ <office:font-face-decls>
+  <style:font-face style:name="Lohit Devanagari1" svg:font-family="'Lohit Devanagari'"/>
+  <style:font-face style:name="Liberation Serif" svg:font-family="'Liberation Serif'" style:font-family-generic="roman" style:font-pitch="variable"/>
+  <style:font-face style:name="Liberation Sans" svg:font-family="'Liberation Sans'" style:font-family-generic="swiss" style:font-pitch="variable"/>
+  <style:font-face style:name="Lohit Devanagari" svg:font-family="'Lohit Devanagari'" style:font-family-generic="system" style:font-pitch="variable"/>
+  <style:font-face style:name="Source Han Sans CN Regular" svg:font-family="'Source Han Sans CN Regular'" style:font-family-generic="system" style:font-pitch="variable"/>
+ </office:font-face-decls>
+ <office:styles>
+  <style:default-style style:family="graphic">
+   <style:graphic-properties svg:stroke-color="#3465a4" draw:fill-color="#729fcf" fo:wrap-option="no-wrap" draw:shadow-offset-x="0.3cm" draw:shadow-offset-y="0.3cm" draw:start-line-spacing-horizontal="0.283cm" draw:start-line-spacing-vertical="0.283cm" draw:end-line-spacing-horizontal="0.283cm" draw:end-line-spacing-vertical="0.283cm" style:flow-with-text="false"/>
+   <style:paragraph-properties style:text-autospace="ideograph-alpha" style:line-break="strict" style:writing-mode="lr-tb" style:font-independent-line-spacing="false">
+    <style:tab-stops/>
+   </style:paragraph-properties>
+   <style:text-properties style:use-window-font-color="true" style:font-name="Liberation Serif" fo:font-size="12pt" fo:language="de" fo:country="DE" style:letter-kerning="true" style:font-name-asian="Source Han Sans CN Regular" style:font-size-asian="10.5pt" style:language-asian="zh" style:country-asian="CN" style:font-name-complex="Lohit Devanagari" style:font-size-complex="12pt" style:language-complex="hi" style:country-complex="IN"/>
+  </style:default-style>
+  <style:default-style style:family="paragraph">
+   <style:paragraph-properties fo:hyphenation-ladder-count="no-limit" style:text-autospace="ideograph-alpha" style:punctuation-wrap="hanging" style:line-break="strict" style:tab-stop-distance="1.251cm" style:writing-mode="page"/>
+   <style:text-properties style:use-window-font-color="true" style:font-name="Liberation Serif" fo:font-size="12pt" fo:language="de" fo:country="DE" style:letter-kerning="true" style:font-name-asian="Source Han Sans CN Regular" style:font-size-asian="10.5pt" style:language-asian="zh" style:country-asian="CN" style:font-name-complex="Lohit Devanagari" style:font-size-complex="12pt" style:language-complex="hi" style:country-complex="IN" fo:hyphenate="false" fo:hyphenation-remain-char-count="2" fo:hyphenation-push-char-count="2"/>
+  </style:default-style>
+  <style:default-style style:family="table">
+   <style:table-properties table:border-model="collapsing"/>
+  </style:default-style>
+  <style:default-style style:family="table-row">
+   <style:table-row-properties fo:keep-together="auto"/>
+  </style:default-style>
+  <style:style style:name="Standard" style:family="paragraph" style:class="text"/>
+ </office:styles>
+ <office:automatic-styles>
+  <style:page-layout style:name="pm1">
+   <style:page-layout-properties fo:page-width="21.001cm" fo:page-height="29.7cm" style:num-format="1" style:print-orientation="portrait" fo:margin-top="2cm" fo:margin-bottom="2cm" fo:margin-left="2cm" fo:margin-right="2cm" style:writing-mode="lr-tb" style:footnote-max-height="0cm">
+    <style:footnote-sep style:width="0.018cm" style:distance-before-sep="0.101cm" style:distance-after-sep="0.101cm" style:line-style="solid" style:adjustment="left" style:rel-width="25%" style:color="#000000"/>
+   </style:page-layout-properties>
+   <style:header-style/>
+   <style:footer-style/>
+  </style:page-layout>
+
+  <style:style style:name="P1" style:family="paragraph" style:parent-style-name="Standard">
+    <style:text-properties officeooo:rsid="000b01fe" officeooo:paragraph-rsid="000b01fe"/>
+  </style:style>
+  <style:style style:name="P2" style:family="paragraph" style:parent-style-name="Standard">
+    <style:text-properties officeooo:rsid="000b01fe" officeooo:paragraph-rsid="000b01fe"/>
+  </style:style>
+ </office:automatic-styles>
+ <office:master-styles>
+  <style:master-page style:name="Standard" style:page-layout-name="pm1"/>
+ </office:master-styles>
+ <office:body>
+  <office:text>
+
+      <!-- ODF 1.3 -->
+      <text:p text:style-name="P1"><office:annotation office:name="__Annotation__528782_647779260"><meta:creator-initials>I</meta:creator-initials><dc:date>2018-05-08T11:09:30.015915376</dc:date><text:p text:style-name="P2">bar</text:p></office:annotation>Foo<office:annotation-end office:name="__Annotation__528782_647779260"/></text:p>
+      <!-- LO extension before 2013 -->
+      <text:p text:style-name="P1"><office:annotation office:name="__Annotation__528782_647779260"><text:sender-initials>I</text:sender-initials><dc:date>2018-05-08T11:09:30.015915376</dc:date><text:p text:style-name="P2">bar</text:p></office:annotation>Foo<office:annotation-end office:name="__Annotation__528782_647779260"/></text:p>
+      <!-- LO extension since 2013 -->
+      <text:p text:style-name="P1"><office:annotation office:name="__Annotation__528782_647779260"><loext:sender-initials>I</loext:sender-initials><dc:date>2018-05-08T11:09:30.015915376</dc:date><text:p text:style-name="P2">bar</text:p></office:annotation>Foo<office:annotation-end office:name="__Annotation__528782_647779260"/></text:p>
+      <!-- ODF 1.0 -->
+      <text:p text:style-name="P1">
+        <text:sender-initials>I</text:sender-initials>
+      </text:p>
+      <!-- accidental export of loext namespace 2013-2017 -->
+      <text:p text:style-name="P1">
+        <loext:sender-initials>I</loext:sender-initials>
+      </text:p>
+
+  </office:text>
+ </office:body>
+</office:document>
diff --git a/sw/qa/extras/odfexport/odfexport.cxx b/sw/qa/extras/odfexport/odfexport.cxx
index f571551ad077..4210486da39e 100644
--- a/sw/qa/extras/odfexport/odfexport.cxx
+++ b/sw/qa/extras/odfexport/odfexport.cxx
@@ -355,6 +355,26 @@ DECLARE_ODFEXPORT_TEST(testFdo38244, "fdo38244.odt")
     CPPUNIT_ASSERT_EQUAL(OUString("M"), getProperty<OUString>(xPropertySet, "Initials"));
 }
 
+DECLARE_ODFEXPORT_TEST(testSenderInitials, "sender-initials.fodt")
+{
+    // Test sender-initial properties (both annotation metadata and text field)
+    uno::Reference<text::XTextFieldsSupplier> xTextFieldsSupplier(mxComponent, uno::UNO_QUERY);
+    uno::Reference<container::XEnumerationAccess> xFieldsAccess(xTextFieldsSupplier->getTextFields());
+    uno::Reference<container::XEnumeration> xFields(xFieldsAccess->createEnumeration());
+    // first 3 are annotations, last 2 are text fields
+    for (unsigned i = 0; i < 3; ++i)
+    {
+        uno::Reference<beans::XPropertySet> xPropertySet(xFields->nextElement(), uno::UNO_QUERY);
+        CPPUNIT_ASSERT_EQUAL(OUString("I"), getProperty<OUString>(xPropertySet, "Initials"));
+    }
+    for (unsigned i = 0; i < 2; ++i)
+    {
+        uno::Reference<beans::XPropertySet> xPropertySet(xFields->nextElement(), uno::UNO_QUERY);
+        CPPUNIT_ASSERT_EQUAL(true, getProperty<bool>(xPropertySet, "IsFixed"));
+        CPPUNIT_ASSERT_EQUAL(OUString("I"), getProperty<OUString>(xPropertySet, "Content"));
+    }
+}
+
 DECLARE_ODFEXPORT_TEST(testTdf92379, "tdf92379.fodt")
 {
     // frame style fo:background-color was not imported
diff --git a/xmloff/source/core/xmltoken.cxx b/xmloff/source/core/xmltoken.cxx
index e1e67af750b6..9b019e880219 100644
--- a/xmloff/source/core/xmltoken.cxx
+++ b/xmloff/source/core/xmltoken.cxx
@@ -3295,6 +3295,8 @@ namespace xmloff { namespace token {
         TOKEN( "zeros-denominator-digits",        XML_ZEROS_DENOMINATOR_DIGITS ),
         TOKEN( "integer-fraction-delimiter",      XML_INTEGER_FRACTION_DELIMITER ),
 
+        TOKEN( "creator-initials",                XML_CREATOR_INITIALS ),
+
 #if OSL_DEBUG_LEVEL > 0
         { 0, nullptr, nullptr,                       XML_TOKEN_END }
 #else
diff --git a/xmloff/source/draw/sdxmlexp.cxx b/xmloff/source/draw/sdxmlexp.cxx
index 53a8727fc87a..57d2558c04c1 100644
--- a/xmloff/source/draw/sdxmlexp.cxx
+++ b/xmloff/source/draw/sdxmlexp.cxx
@@ -2657,6 +2657,7 @@ void SdXMLExport::exportAnnotations( const Reference<XDrawPage>& xDrawPage )
                 OUString aInitials( xAnnotation->getInitials() );
                 if( !aInitials.isEmpty() )
                 {
+                    // TODO: see OFFICE-3776 export meta:creator-initials for ODF 1.3
                     SvXMLElementExport aInitialsElem( *this, XML_NAMESPACE_LO_EXT,
                             XML_SENDER_INITIALS, true, false );
                     Characters(aInitials);
diff --git a/xmloff/source/draw/ximppage.cxx b/xmloff/source/draw/ximppage.cxx
index ddf42faee6b8..1c518a12af78 100644
--- a/xmloff/source/draw/ximppage.cxx
+++ b/xmloff/source/draw/ximppage.cxx
@@ -143,8 +143,10 @@ SvXMLImportContextRef DrawAnnotationContext::CreateChildContext( sal_uInt16 nPre
             else if( IsXMLToken( rLocalName, XML_DATE ) )
                 xContext = new XMLStringBufferImportContext(GetImport(), nPrefix, rLocalName, maDateBuffer);
         }
-        else if( (XML_NAMESPACE_TEXT == nPrefix || XML_NAMESPACE_LO_EXT == nPrefix) &&
-                 IsXMLToken(rLocalName, XML_SENDER_INITIALS) )
+        else if (((XML_NAMESPACE_TEXT == nPrefix || XML_NAMESPACE_LO_EXT == nPrefix)
+                    && IsXMLToken(rLocalName, XML_SENDER_INITIALS))
+                 || (XML_NAMESPACE_META == nPrefix
+                     && IsXMLToken(rLocalName, XML_CREATOR_INITIALS)))
         {
             xContext = new XMLStringBufferImportContext(GetImport(), nPrefix, rLocalName, maInitialsBuffer);
         }
diff --git a/xmloff/source/text/txtflde.cxx b/xmloff/source/text/txtflde.cxx
index 620c69a6cc75..710e30e66890 100644
--- a/xmloff/source/text/txtflde.cxx
+++ b/xmloff/source/text/txtflde.cxx
@@ -1751,6 +1751,7 @@ void XMLTextFieldExport::ExportFieldHelper(
             OUString aInitials( GetStringProperty(sPropertyInitials, rPropSet) );
             if( !aInitials.isEmpty() )
             {
+                // TODO: see OFFICE-3776 export meta:creator-initials for ODF 1.3
                 SvXMLElementExport aCreatorElem( GetExport(), XML_NAMESPACE_LO_EXT,
                         XML_SENDER_INITIALS, true,
                         false );
diff --git a/xmloff/source/text/txtfldi.cxx b/xmloff/source/text/txtfldi.cxx
index d100263d2fcf..d50d4442e0de 100644
--- a/xmloff/source/text/txtfldi.cxx
+++ b/xmloff/source/text/txtfldi.cxx
@@ -3314,11 +3314,13 @@ SvXMLImportContextRef XMLAnnotationImportContext::CreateChildContext(
             pContext = new XMLStringBufferImportContext(GetImport(), nPrefix,
                                             rLocalName, aDateBuffer);
     }
-    else if( XML_NAMESPACE_TEXT == nPrefix || XML_NAMESPACE_LO_EXT == nPrefix )
+    else if (((XML_NAMESPACE_TEXT == nPrefix || XML_NAMESPACE_LO_EXT == nPrefix)
+                 && IsXMLToken(rLocalName, XML_SENDER_INITIALS))
+             || (XML_NAMESPACE_META == nPrefix
+                 && IsXMLToken(rLocalName, XML_CREATOR_INITIALS)))
     {
-        if( IsXMLToken( rLocalName, XML_SENDER_INITIALS ) )
-            pContext = new XMLStringBufferImportContext(GetImport(), nPrefix,
-                                            rLocalName, aInitialsBuffer);
+        pContext = new XMLStringBufferImportContext(GetImport(), nPrefix,
+                                        rLocalName, aInitialsBuffer);
     }
 
     if( !pContext )
diff --git a/xmloff/source/text/txtimp.cxx b/xmloff/source/text/txtimp.cxx
index 7ff3bec70784..ed05ff1aecc1 100644
--- a/xmloff/source/text/txtimp.cxx
+++ b/xmloff/source/text/txtimp.cxx
@@ -156,6 +156,7 @@ static const SvXMLTokenMapEntry aTextPElemTokenMap[] =
     // sender fields
     { XML_NAMESPACE_TEXT, XML_SENDER_FIRSTNAME,XML_TOK_TEXT_SENDER_FIRSTNAME},
     { XML_NAMESPACE_TEXT, XML_SENDER_LASTNAME, XML_TOK_TEXT_SENDER_LASTNAME },
+    // note: loext was written by accident in some LO versions, don't remove!
     { XML_NAMESPACE_LO_EXT, XML_SENDER_INITIALS, XML_TOK_TEXT_SENDER_INITIALS },
     { XML_NAMESPACE_TEXT,   XML_SENDER_INITIALS, XML_TOK_TEXT_SENDER_INITIALS },
     { XML_NAMESPACE_TEXT, XML_SENDER_TITLE, XML_TOK_TEXT_SENDER_TITLE },
commit d8f49e3ab6e631dac50c38425a2f388bc9c77aec
Author: Michael Stahl <Michael.Stahl at cib.de>
Date:   Tue May 8 17:24:15 2018 +0200

    Makefile: re-run configure when download.lst changes
    
    This can only break currently when the ODFVALIDATOR_JAR (or officeotron)
    changes, but then it does break and you get an outdated odfvalidator.sh.
    
    Change-Id: Idcdea3abe6516b71943f32c2bd412f79dc44d790
    Reviewed-on: https://gerrit.libreoffice.org/53993
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Michael Stahl <Michael.Stahl at cib.de>
    (cherry picked from commit 745cf84060184ae707c047db17ef458aa7e384a1)
    Reviewed-on: https://gerrit.libreoffice.org/54000
    Reviewed-by: Thorsten Behrens <Thorsten.Behrens at CIB.de>
    (cherry picked from commit a6f196647375fa382fe16bd0aa2c865c63420634)

diff --git a/Makefile.in b/Makefile.in
index a1d6a675d7ed..6b2d4fcc9f25 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -46,6 +46,7 @@ $(BUILDDIR)/config_host.mk : $(wildcard \
 		$(SRCDIR)/instsetoo_native/util/openoffice.lst.in \
 		$(SRCDIR)/configure.ac \
 		$(SRCDIR)/config_host/*.h.in \
+		$(SRCDIR)/download.lst \
 		$(BUILDDIR)/autogen.input \
 		$(BUILDDIR)/autogen.lastrun \
 		$(BUILDDIR)/autogen.sh \
commit d8c1e7634d157d187603227c179dc593f5bda558
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Thu May 3 15:08:17 2018 +0100

    Resolves: tdf#117005 undo/redo skips comment when switching sheets
    
    while insert comment is active
    
    regression from....
    
    commit 80509950d35cebaede89fcb52c446a1fd3e45ba3
    Author: Caolán McNamara <caolanm at redhat.com>
    Date:   Mon Jul 4 15:31:29 2016 +0100
    
        Resolves: tdf#100761 after insert note, focus cannot return to inputbar
    
    which is a suspected regression from.
    
    commit 11d605cc5a0c221d2423b6e63f502db660d085d2
    Date:   Mon Feb 1 18:39:51 2016 +0200
    
        tdf#84843 Stop using PseudoSlots for drawing slots
    
    Change-Id: Id4614624cbb85411ba0d368ae072a05f5f9e09ad
    Reviewed-on: https://gerrit.libreoffice.org/53799
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Eike Rathke <erack at redhat.com>
    (cherry picked from commit 34e5922c2dea4bb3a54c3df3822b9d843c5be277)

diff --git a/sc/source/ui/view/tabview5.cxx b/sc/source/ui/view/tabview5.cxx
index 005399636816..b36e86271764 100644
--- a/sc/source/ui/view/tabview5.cxx
+++ b/sc/source/ui/view/tabview5.cxx
@@ -372,7 +372,8 @@ void ScTabView::DrawDeselectAll()
     if (pDrawView)
     {
         ScTabViewShell* pViewSh = aViewData.GetViewShell();
-        if (pDrawActual && pViewSh->IsDrawTextShell())
+        if ( pDrawActual &&
+            ( pViewSh->IsDrawTextShell() || pDrawActual->GetSlotID() == SID_DRAW_NOTEEDIT ) )
         {
             // end text edit (as if escape pressed, in FuDraw)
             aViewData.GetDispatcher().Execute( pDrawActual->GetSlotID(),
commit 11bcc894c0550423704928b1cdff25443270189b
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Thu Mar 8 14:17:07 2018 +0100

    Related tdf#117105 fix RPATHS of gpgme and assuan
    
    libgpg-error doesn't need RPATH at all
    
    ...as it doesn't link against any of our libs
    
    Change-Id: Iaf0df9d5dc5eefb976d2041f24b2921cb3e3b1ba
    Reviewed-on: https://gerrit.libreoffice.org/50953
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Stephan Bergmann <sbergman at redhat.com>
    (cherry picked from commit 5a13e78562bdd0871ad5866676a8a50659692af9)
    
    Remove apparently unused external/libgpg-error/disable-rpath-option.patch
    
    ...which only patched configure.ac not configure, and the latter does not appear
    to be regenerated from the former in ExternalProject_libgpg-error
    
    Change-Id: Id0132ed8fd8ea3a5012e4a2bc309bd5f3983ad11
    Reviewed-on: https://gerrit.libreoffice.org/50954
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Stephan Bergmann <sbergman at redhat.com>
    (cherry picked from commit 4cb1f0a5ff1c3e74c650f17d9a164e97c34e9327)
    
    Fix external/libassuan Linux RPATH
    
    In other external projects using libtool, we fix that by patching configure,
    resetting hardcode_libdir_flag_spec[_CXX] at the end of the linux*) case block
    that sets the Linux-specific value.  But here we run autoreconf in
    ExternalProject_libassuan, so that patch in configure would be overwritten.  The
    relevant code in configure comes from autoconf boilerplate, so we cannot just do
    the same patch in configure.ac.  But we can reset hardcode_libdir_flag_spec
    sufficiently late in configure.ac so that things still work as intended.
    
    Reviewed-on: https://gerrit.libreoffice.org/50959
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Stephan Bergmann <sbergman at redhat.com>
    (cherry picked from commit 24d0704fa468b300558a3f904ae853fcb7fca312)
    
    Change-Id: Ic6c6123bcfe8bc2dac87812f919842519374abaa
    
    Improve gpgmepp -> libassuan/libgpg-error lib dependencies
    
    ...so that other executables than svidl would benefit, too
    
    Change-Id: I208ebbc04189c2f25eace19ef0875349cf63d3f0
    Reviewed-on: https://gerrit.libreoffice.org/50963
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Stephan Bergmann <sbergman at redhat.com>
    (cherry picked from commit 598cf9f76176c6bef00402755d0e941a036c6a2d)
    
    Fix external/gpgmepp Linux RPATH
    
    In other external projects using libtool, we fix that by patching configure,
    resetting hardcode_libdir_flag_spec[_CXX] at the end of the linux*) case block
    that sets the Linux-specific value.  But here we run autoreconf in
    ExternalProject_libassuan, so that patch in configure would be overwritten.  The
    relevant code in configure comes from autoconf boilerplate, so we cannot just do
    the same patch in configure.ac.  But we can reset hardcode_libdir_flag_spec
    sufficiently late in configure.ac so that things still work as intended.
    
    Disable tests that would build executabes linking against libgpgme.so, which in
    turn links against the libassuan and libgpg-error libs, which would no longer be
    found by the linker because of the dropped -rpath flags.  (Alternatives might
    be to pass in LD_LIBRARY_PATH or to link with --allow-shlib-undefined.)
    
    Reviewed-on: https://gerrit.libreoffice.org/50960
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Stephan Bergmann <sbergman at redhat.com>
    (cherry picked from commit d4347f5d585232e1b025b4199ded53e6619d6242)
    
    Change-Id: I7e37abf802d213347bd80383b7980d85cf0762d4
    Reviewed-on: https://gerrit.libreoffice.org/53789
    Reviewed-by: Stephan Bergmann <sbergman at redhat.com>
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>
    Tested-by: Caolán McNamara <caolanm at redhat.com>
    (cherry picked from commit 4f7028dd292e22f09cd505b529d93713747ebd6b)

diff --git a/external/gpgmepp/ExternalPackage_gpgmepp.mk b/external/gpgmepp/ExternalPackage_gpgmepp.mk
index 3e841b5d98df..67c3dc64ffd3 100644
--- a/external/gpgmepp/ExternalPackage_gpgmepp.mk
+++ b/external/gpgmepp/ExternalPackage_gpgmepp.mk
@@ -29,6 +29,12 @@ $(eval $(call gb_ExternalPackage_add_file,gpgmepp,$(LIBO_LIB_FOLDER)/gpgme-w32sp
 
 endif
 
+# If a tool executed during the build (like svidl) requires these gpgmepp libraries, it will also
+# require those libassuan and libgpg-error libraries that these gpgmepp libraries link against:
+$(call gb_Package_get_target_for_build,gpgmepp): \
+     $(call gb_Helper_optional,LIBASSUAN,$(call gb_Package_get_target_for_build,libassuan)) \
+     $(call gb_Helper_optional,LIBGPGERROR,$(call gb_Package_get_target_for_build,libgpg-error))
+
 endif # $(DISABLE_DYNLOADING)
 
 # vim: set noet sw=4 ts=4:
diff --git a/external/gpgmepp/ExternalProject_gpgmepp.mk b/external/gpgmepp/ExternalProject_gpgmepp.mk
index ec865fcb2ca8..c3d240f289ef 100644
--- a/external/gpgmepp/ExternalProject_gpgmepp.mk
+++ b/external/gpgmepp/ExternalProject_gpgmepp.mk
@@ -49,6 +49,7 @@ $(call gb_ExternalProject_get_state_target,gpgmepp,build):
 	$(call gb_ExternalProject_run,build,\
 		autoreconf \
 		&& ./configure \
+		   --disable-gpg-test \
 		   --enable-languages="cpp" \
 		   GPG_ERROR_CFLAGS="$(GPG_ERROR_CFLAGS)" \
 		   GPG_ERROR_LIBS="$(GPG_ERROR_LIBS)" \
diff --git a/external/gpgmepp/UnpackedTarball_gpgmepp.mk b/external/gpgmepp/UnpackedTarball_gpgmepp.mk
index df13d4976c7e..1f7496b9b043 100644
--- a/external/gpgmepp/UnpackedTarball_gpgmepp.mk
+++ b/external/gpgmepp/UnpackedTarball_gpgmepp.mk
@@ -24,5 +24,6 @@ $(eval $(call gb_UnpackedTarball_add_patches,gpgmepp, \
     $(if $(filter MSC,$(COM)),external/gpgmepp/w32-add-initializer.patch.1) \
     external/gpgmepp/w32-build-fixes-2.patch \
     $(if $(filter LINUX,$(OS)),external/gpgmepp/asan.patch) \
+    $(if $(filter LINUX,$(OS)),external/gpgmepp/rpath.patch) \
 ))
 # vim: set noet sw=4 ts=4:
diff --git a/external/gpgmepp/rpath.patch b/external/gpgmepp/rpath.patch
new file mode 100644
index 000000000000..e83dcf2762ef
--- /dev/null
+++ b/external/gpgmepp/rpath.patch
@@ -0,0 +1,12 @@
+--- configure.ac
++++ configure.ac
+@@ -176,6 +176,9 @@
+ LT_INIT([win32-dll disable-static])
+ LT_LANG([Windows Resource])
+ 
++hardcode_libdir_flag_spec=
++hardcode_libdir_flag_spec_CXX=
++
+ # For now we hardcode the use of version scripts.  It would be better
+ # to write a test for this or even implement this within libtool.
+ have_ld_version_script=no
diff --git a/external/libassuan/UnpackedTarball_libassuan.mk b/external/libassuan/UnpackedTarball_libassuan.mk
index b969fecc6097..295b87d49677 100644
--- a/external/libassuan/UnpackedTarball_libassuan.mk
+++ b/external/libassuan/UnpackedTarball_libassuan.mk
@@ -18,6 +18,7 @@ $(eval $(call gb_UnpackedTarball_add_patches,libassuan, \
     external/libassuan/fix-autoconf-macros.patch \
     $(if $(filter MSC,$(COM)),external/libassuan/w32-build-fixes.patch.1) \
     external/libassuan/w32-build-fixes-2.patch \
+    $(if $(filter LINUX,$(OS)),external/libassuan/rpath.patch) \
 ))
 
 # vim: set noet sw=4 ts=4:
diff --git a/external/libassuan/rpath.patch b/external/libassuan/rpath.patch
new file mode 100644
index 000000000000..73c10e34247c
--- /dev/null
+++ b/external/libassuan/rpath.patch
@@ -0,0 +1,11 @@
+--- configure.ac
++++ configure.ac
+@@ -127,6 +127,8 @@
+ LT_INIT([win32-dll disable-static])
+ LT_LANG([Windows Resource])
+ 
++hardcode_libdir_flag_spec=
++
+ # For now we hardcode the use of version scripts.  It would be better
+ # to write a test for this or even implement this within libtool.
+ have_ld_version_script=no
diff --git a/external/libgpg-error/ExternalProject_libgpg-error.mk b/external/libgpg-error/ExternalProject_libgpg-error.mk
index 6c437ef8c884..4bb19085e05b 100644
--- a/external/libgpg-error/ExternalProject_libgpg-error.mk
+++ b/external/libgpg-error/ExternalProject_libgpg-error.mk
@@ -38,9 +38,6 @@ $(call gb_ExternalProject_get_state_target,libgpg-error,build):
 			--disable-rpath \
 			--disable-languages \
 			--disable-doc \
-			$(if $(filter LINUX,$(OS)), \
-				'LDFLAGS=-Wl$(COMMA)-z$(COMMA)origin \
-					-Wl$(COMMA)-rpath$(COMMA)\$$$$ORIGIN') \
 			CPPFLAGS=" $(SOLARINC)" \
 			$(if $(filter MSC,$(COM)),--force_use_syscfg=true) \
 			$(if $(CROSS_COMPILING),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM)) \
diff --git a/external/libgpg-error/UnpackedTarball_libgpg-error.mk b/external/libgpg-error/UnpackedTarball_libgpg-error.mk
index dadef68689d7..822145c2f4ab 100644
--- a/external/libgpg-error/UnpackedTarball_libgpg-error.mk
+++ b/external/libgpg-error/UnpackedTarball_libgpg-error.mk
@@ -14,7 +14,6 @@ $(eval $(call gb_UnpackedTarball_set_tarball,libgpg-error,$(LIBGPGERROR_TARBALL)
 $(eval $(call gb_UnpackedTarball_set_patchlevel,libgpg-error,0))
 
 $(eval $(call gb_UnpackedTarball_add_patches,libgpg-error, \
-    external/libgpg-error/disable-rpath-option.patch \
 	$(if $(filter MSC,$(COM)),external/libgpg-error/w32-build-fixes.patch) \
 	$(if $(filter MSC,$(COM)),external/libgpg-error/w32-build-fixes-2.patch.1) \
 	$(if $(filter MSC,$(COM)),external/libgpg-error/w32-build-fixes-3.patch.1) \
diff --git a/external/libgpg-error/disable-rpath-option.patch b/external/libgpg-error/disable-rpath-option.patch
deleted file mode 100644
index b039b689e9ed..000000000000
--- a/external/libgpg-error/disable-rpath-option.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff -ur libgpg-error.org/configure.ac libgpg-error/configure.ac
---- configure.ac	2017-03-05 01:27:38.249210887 +0100
-+++ configure.ac~	2017-03-05 01:29:36.820894687 +0100
-@@ -404,6 +404,9 @@
-    CFLAGS="$CFLAGS -fvisibility=hidden"
- fi
- 
-+# permit disabling rpath
-+AC_LIB_RPATH
-+
- #
- # Check whether ld supports a version script.
- # (Actually not a check but a list of systems which are known to support it.)
commit 1a876d64cac5d6217448d745b7cdff7e2c213e9d
Author: Christian Lohmaier <lohmaier+LibreOffice at googlemail.com>
Date:   Mon May 7 18:38:25 2018 +0200

    update credits
    
    …and remove blocked wiki accounts – rdm#2585
    
    Change-Id: I4e16f0efadb27b06eb2962aa28667c91cf15adc3
    (cherry picked from commit cd1a3eb429c58e79bf427d3cbc0f74b44020d4ca)
    (cherry picked from commit 7653521c799e354091609c5769479e5dad12e2d6)

diff --git a/readlicense_oo/license/CREDITS.fodt b/readlicense_oo/license/CREDITS.fodt
index 0614bed53bb4..68f7e643bfb1 100644
--- a/readlicense_oo/license/CREDITS.fodt
+++ b/readlicense_oo/license/CREDITS.fodt
@@ -1,10 +1,10 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
 <office:document xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0" xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0" xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0" xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0" xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0" xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0" xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0" xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0" xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0" xmlns:math="http://www.w3.org/1998/Math/MathML" xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0" xmlns:script="urn:oasis:names:tc:opendocument:xmlns:script:1.0" xmlns:config="urn:oas
 is:names:tc:opendocument:xmlns:config:1.0" xmlns:ooo="http://openoffice.org/2004/office" xmlns:ooow="http://openoffice.org/2004/writer" xmlns:oooc="http://openoffice.org/2004/calc" xmlns:dom="http://www.w3.org/2001/xml-events" xmlns:xforms="http://www.w3.org/2002/xforms" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:rpt="http://openoffice.org/2005/report" xmlns:of="urn:oasis:names:tc:opendocument:xmlns:of:1.2" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:grddl="http://www.w3.org/2003/g/data-view#" xmlns:officeooo="http://openoffice.org/2009/office" xmlns:tableooo="http://openoffice.org/2009/table" xmlns:drawooo="http://openoffice.org/2010/draw" xmlns:calcext="urn:org:documentfoundation:names:experimental:calc:xmlns:calcext:1.0" xmlns:loext="urn:org:documentfoundation:names:experimental:office:xmlns:loext:1.0" xmlns:field="urn:openoffice:names:experimental:ooo-ms-interop:xmlns:field:1.0" xmlns:formx="urn:openoffice:names:
 experimental:ooxml-odf-interop:xmlns:form:1.0" xmlns:css3t="http://www.w3.org/TR/css3-text/" office:version="1.2" office:mimetype="application/vnd.oasis.opendocument.text">
- <office:meta><dc:title>Credits » LibreOffice</dc:title><meta:keyword>Credits</meta:keyword><meta:keyword>contributors</meta:keyword><meta:keyword>coders</meta:keyword><meta:keyword>developers</meta:keyword><dc:description>Credits for the LibreOffice development/coding.</dc:description><meta:generator>LibreOffice/6.0.3.2$Linux_X86_64 LibreOffice_project/8f48d515416608e3a835360314dac7e47fd0b821</meta:generator><dc:date>2012-02-20T22:17:18.060000000</dc:date><meta:editing-duration>PT14M12S</meta:editing-duration><meta:editing-cycles>3</meta:editing-cycles><meta:document-statistic meta:table-count="5" meta:image-count="1" meta:object-count="0" meta:page-count="2" meta:paragraph-count="4917" meta:word-count="15954" meta:character-count="116442" meta:non-whitespace-character-count="101900"/><meta:user-defined meta:name="google-site-verification">JUebjoxEpqXoQcpltWRTwzBZEEHtch3wApdhgiQPFiA</meta:user-defined></office:meta>
+ <office:meta><dc:title>Credits » LibreOffice</dc:title><meta:keyword>Credits</meta:keyword><meta:keyword>contributors</meta:keyword><meta:keyword>coders</meta:keyword><meta:keyword>developers</meta:keyword><dc:description>Credits for the LibreOffice development/coding.</dc:description><meta:generator>LibreOffice/6.0.3.2$Linux_X86_64 LibreOffice_project/8f48d515416608e3a835360314dac7e47fd0b821</meta:generator><dc:date>2012-02-20T22:17:18.060000000</dc:date><meta:editing-duration>PT14M12S</meta:editing-duration><meta:editing-cycles>3</meta:editing-cycles><meta:document-statistic meta:table-count="5" meta:image-count="1" meta:object-count="0" meta:page-count="2" meta:paragraph-count="3808" meta:word-count="13715" meta:character-count="98556" meta:non-whitespace-character-count="86244"/><meta:user-defined meta:name="google-site-verification">JUebjoxEpqXoQcpltWRTwzBZEEHtch3wApdhgiQPFiA</meta:user-defined></office:meta>
  <office:settings>
   <config:config-item-set config:name="ooo:view-settings">
-   <config:config-item config:name="ViewAreaTop" config:type="long">621</config:config-item>
+   <config:config-item config:name="ViewAreaTop" config:type="long">589</config:config-item>
    <config:config-item config:name="ViewAreaLeft" config:type="long">501</config:config-item>
    <config:config-item config:name="ViewAreaWidth" config:type="long">41965</config:config-item>
    <config:config-item config:name="ViewAreaHeight" config:type="long">22412</config:config-item>
@@ -16,9 +16,9 @@
      <config:config-item config:name="ViewLeft" config:type="long">3649</config:config-item>
      <config:config-item config:name="ViewTop" config:type="long">3471</config:config-item>
      <config:config-item config:name="VisibleLeft" config:type="long">501</config:config-item>
-     <config:config-item config:name="VisibleTop" config:type="long">621</config:config-item>
+     <config:config-item config:name="VisibleTop" config:type="long">589</config:config-item>
      <config:config-item config:name="VisibleRight" config:type="long">42464</config:config-item>
-     <config:config-item config:name="VisibleBottom" config:type="long">23031</config:config-item>
+     <config:config-item config:name="VisibleBottom" config:type="long">22999</config:config-item>
      <config:config-item config:name="ZoomType" config:type="short">0</config:config-item>
      <config:config-item config:name="ViewLayoutColumns" config:type="short">0</config:config-item>
      <config:config-item config:name="ViewLayoutBookMode" config:type="boolean">false</config:config-item>
@@ -72,7 +72,7 @@
    <config:config-item config:name="InvertBorderSpacing" config:type="boolean">false</config:config-item>
    <config:config-item config:name="SaveGlobalDocumentLinks" config:type="boolean">false</config:config-item>
    <config:config-item config:name="TabsRelativeToIndent" config:type="boolean">true</config:config-item>
-   <config:config-item config:name="Rsid" config:type="int">7718445</config:config-item>
+   <config:config-item config:name="Rsid" config:type="int">7759286</config:config-item>
    <config:config-item config:name="PrintProspectRTL" config:type="boolean">false</config:config-item>
    <config:config-item config:name="PrintEmptyPages" config:type="boolean">false</config:config-item>
    <config:config-item config:name="ApplyUserData" config:type="boolean">false</config:config-item>
@@ -399,24 +399,24 @@
    <style:table-cell-properties fo:padding="0.049cm" fo:border="none"/>
   </style:style>
   <style:style style:name="Tabelle5" style:family="table">
-   <style:table-properties style:width="32.154cm" table:align="left"/>
+   <style:table-properties style:width="31.678cm" table:align="left"/>
   </style:style>
   <style:style style:name="Tabelle5.A" style:family="table-column">
    <style:table-column-properties style:column-width="6.696cm"/>
   </style:style>
   <style:style style:name="Tabelle5.B" style:family="table-column">
-   <style:table-column-properties style:column-width="6.722cm"/>
+   <style:table-column-properties style:column-width="6.828cm"/>
   </style:style>
   <style:style style:name="Tabelle5.C" style:family="table-column">
    <style:table-column-properties style:column-width="11.829cm"/>
   </style:style>
   <style:style style:name="Tabelle5.D" style:family="table-column">
-   <style:table-column-properties style:column-width="6.907cm"/>
+   <style:table-column-properties style:column-width="6.325cm"/>
   </style:style>
   <style:style style:name="Tabelle5.A1" style:family="table-cell">
    <style:table-cell-properties style:vertical-align="middle" fo:padding="0.049cm" fo:border="none"/>
   </style:style>
-  <style:style style:name="Tabelle5.C884" style:family="table-cell">
+  <style:style style:name="Tabelle5.B607" style:family="table-cell">
    <style:table-cell-properties fo:padding="0.049cm" fo:border="none"/>
   </style:style>
   <style:style style:name="P1" style:family="paragraph" style:parent-style-name="Table_20_Contents">
@@ -1048,7 +1048,7 @@
        </office:binary-data>
       </draw:image>
      </draw:frame>Credits</text:p>
-    <text:p text:style-name="Text_20_body">1337 individuals contributed to OpenOffice.org (and whose contributions were imported into LibreOffice) or LibreOffice until 2018-05-04 11:21:15.</text:p>
+    <text:p text:style-name="Text_20_body">1337 individuals contributed to OpenOffice.org (and whose contributions were imported into LibreOffice) or LibreOffice until 2018-05-07 14:37:50.</text:p>
     <text:p text:style-name="Text_20_body"><text:span text:style-name="T1">*</text:span> marks developers whose first contributions happened after 2010-09-28.</text:p>
     <text:h text:style-name="Heading_20_2" text:outline-level="2">Developers committing code since 2010-09-28</text:h>
     <table:table table:name="Tabelle1" table:style-name="Tabelle1">
@@ -1075,10 +1075,10 @@
        <text:p text:style-name="Table_20_Contents">Vladimir Glazunov<text:line-break/>Commits: 25434<text:line-break/>Joined: 2000-12-04</text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
-       <text:p text:style-name="Table_20_Contents">Caolán McNamara<text:line-break/>Commits: 24112<text:line-break/>Joined: 2000-10-10</text:p>
+       <text:p text:style-name="Table_20_Contents">Caolán McNamara<text:line-break/>Commits: 24122<text:line-break/>Joined: 2000-10-10</text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
-       <text:p text:style-name="Table_20_Contents">Stephan Bergmann<text:line-break/>Commits: 16025<text:line-break/>Joined: 2000-10-04</text:p>
+       <text:p text:style-name="Table_20_Contents">Stephan Bergmann<text:line-break/>Commits: 16028<text:line-break/>Joined: 2000-10-04</text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
        <text:p text:style-name="Table_20_Contents">Ivo Hinkelmann<text:line-break/>Commits: 9480<text:line-break/>Joined: 2002-09-09</text:p>
@@ -1086,13 +1086,13 @@
      </table:table-row>
      <table:table-row>
       <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
-       <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Noel Grandin<text:line-break/>Commits: 9306<text:line-break/>Joined: <text:span text:style-name="T2">2011-12-12</text:span></text:p>
+       <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Noel Grandin<text:line-break/>Commits: 9328<text:line-break/>Joined: <text:span text:style-name="T2">2011-12-12</text:span></text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
        <text:p text:style-name="Table_20_Contents">Tor Lillqvist<text:line-break/>Commits: 8154<text:line-break/>Joined: 2010-03-23</text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
-       <text:p text:style-name="Table_20_Contents">Miklos Vajna<text:line-break/>Commits: 6924<text:line-break/>Joined: 2010-07-29</text:p>
+       <text:p text:style-name="Table_20_Contents">Miklos Vajna<text:line-break/>Commits: 6929<text:line-break/>Joined: 2010-07-29</text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
        <text:p text:style-name="Table_20_Contents">Michael Stahl<text:line-break/>Commits: 6417<text:line-break/>Joined: 2008-06-16</text:p>
@@ -1142,7 +1142,7 @@
      </table:table-row>
      <table:table-row>
       <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
-       <text:p text:style-name="Table_20_Contents">Bjoern Michaelsen<text:line-break/>Commits: 2238<text:line-break/>Joined: 2009-10-14</text:p>
+       <text:p text:style-name="Table_20_Contents">Bjoern Michaelsen<text:line-break/>Commits: 2240<text:line-break/>Joined: 2009-10-14</text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
        <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Norbert Thiebaud<text:line-break/>Commits: 2176<text:line-break/>Joined: <text:span text:style-name="T2">2010-09-29</text:span></text:p>
@@ -1156,7 +1156,7 @@
      </table:table-row>
      <table:table-row>
       <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
-       <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Tomaž Vajngerl<text:line-break/>Commits: 1859<text:line-break/>Joined: <text:span text:style-name="T2">2012-06-02</text:span></text:p>
+       <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Tomaž Vajngerl<text:line-break/>Commits: 1860<text:line-break/>Joined: <text:span text:style-name="T2">2012-06-02</text:span></text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
        <text:p text:style-name="Table_20_Contents">Christian Lippka<text:line-break/>Commits: 1805<text:line-break/>Joined: 2000-09-25</text:p>
@@ -1173,7 +1173,7 @@
        <text:p text:style-name="Table_20_Contents">Luboš Luňák<text:line-break/>Commits: 1525<text:line-break/>Joined: 2010-09-21</text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
-       <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Takeshi Abe<text:line-break/>Commits: 1411<text:line-break/>Joined: <text:span text:style-name="T2">2010-11-08</text:span></text:p>
+       <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Takeshi Abe<text:line-break/>Commits: 1412<text:line-break/>Joined: <text:span text:style-name="T2">2010-11-08</text:span></text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
        <text:p text:style-name="Table_20_Contents">Armin Le Grand<text:line-break/>Commits: 1386<text:line-break/>Joined: 2000-09-25</text:p>
@@ -1201,7 +1201,7 @@
        <text:p text:style-name="Table_20_Contents">Daniel Rentz [dr]<text:line-break/>Commits: 1206<text:line-break/>Joined: 2000-09-28</text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
-       <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Chris Sherlock<text:line-break/>Commits: 1194<text:line-break/>Joined: <text:span text:style-name="T2">2013-02-25</text:span></text:p>
+       <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Chris Sherlock<text:line-break/>Commits: 1197<text:line-break/>Joined: <text:span text:style-name="T2">2013-02-25</text:span></text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
        <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Lionel Elie Mamane<text:line-break/>Commits: 1022<text:line-break/>Joined: <text:span text:style-name="T2">2011-01-15</text:span></text:p>
@@ -1271,7 +1271,7 @@
        <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Maxim Monastirsky<text:line-break/>Commits: 673<text:line-break/>Joined: <text:span text:style-name="T2">2013-10-27</text:span></text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
-       <text:p text:style-name="Table_20_Contents">Christian Lohmaier<text:line-break/>Commits: 665<text:line-break/>Joined: 2008-06-01</text:p>
+       <text:p text:style-name="Table_20_Contents">Christian Lohmaier<text:line-break/>Commits: 666<text:line-break/>Joined: 2008-06-01</text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
        <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Joseph Powers<text:line-break/>Commits: 658<text:line-break/>Joined: <text:span text:style-name="T2">2010-10-15</text:span></text:p>
@@ -1285,18 +1285,18 @@
        <text:p text:style-name="Table_20_Contents">Ingrid Halama<text:line-break/>Commits: 639<text:line-break/>Joined: 2001-01-19</text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
-       <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Olivier Hallot<text:line-break/>Commits: 634<text:line-break/>Joined: <text:span text:style-name="T2">2010-10-25</text:span></text:p>
+       <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Olivier Hallot<text:line-break/>Commits: 637<text:line-break/>Joined: <text:span text:style-name="T2">2010-10-25</text:span></text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
        <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Rafael Dominguez<text:line-break/>Commits: 606<text:line-break/>Joined: <text:span text:style-name="T2">2011-02-13</text:span></text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
-       <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Samuel Mehrbrodt<text:line-break/>Commits: 597<text:line-break/>Joined: <text:span text:style-name="T2">2011-06-08</text:span></text:p>
+       <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Samuel Mehrbrodt<text:line-break/>Commits: 598<text:line-break/>Joined: <text:span text:style-name="T2">2011-06-08</text:span></text:p>
       </table:table-cell>
      </table:table-row>
      <table:table-row>
       <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
-       <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Andrea Gelmini<text:line-break/>Commits: 573<text:line-break/>Joined: <text:span text:style-name="T2">2014-10-30</text:span></text:p>
+       <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Andrea Gelmini<text:line-break/>Commits: 580<text:line-break/>Joined: <text:span text:style-name="T2">2014-10-30</text:span></text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
        <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Yousuf Philips<text:line-break/>Commits: 569<text:line-break/>Joined: <text:span text:style-name="T2">2014-09-21</text:span></text:p>
@@ -1313,18 +1313,18 @@
        <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Jochen Nitschke<text:line-break/>Commits: 543<text:line-break/>Joined: <text:span text:style-name="T2">2016-02-02</text:span></text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
-       <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Katarina Behrens<text:line-break/>Commits: 524<text:line-break/>Joined: <text:span text:style-name="T2">2010-10-13</text:span></text:p>
+       <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Zdeněk Crhonek<text:line-break/>Commits: 525<text:line-break/>Joined: <text:span text:style-name="T2">2016-05-19</text:span></text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
-       <text:p text:style-name="Table_20_Contents">Jürgen Schmidt<text:line-break/>Commits: 512<text:line-break/>Joined: 2000-10-09</text:p>
+       <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Katarina Behrens<text:line-break/>Commits: 524<text:line-break/>Joined: <text:span text:style-name="T2">2010-10-13</text:span></text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
-       <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Khaled Hosny<text:line-break/>Commits: 508<text:line-break/>Joined: <text:span text:style-name="T2">2011-01-28</text:span></text:p>
+       <text:p text:style-name="Table_20_Contents">Jürgen Schmidt<text:line-break/>Commits: 512<text:line-break/>Joined: 2000-10-09</text:p>
       </table:table-cell>
      </table:table-row>
      <table:table-row>
       <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
-       <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Zdeněk Crhonek<text:line-break/>Commits: 500<text:line-break/>Joined: <text:span text:style-name="T2">2016-05-19</text:span></text:p>
+       <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Khaled Hosny<text:line-break/>Commits: 508<text:line-break/>Joined: <text:span text:style-name="T2">2011-01-28</text:span></text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
        <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Peter Foley<text:line-break/>Commits: 488<text:line-break/>Joined: <text:span text:style-name="T2">2011-09-04</text:span></text:p>
@@ -1333,18 +1333,18 @@
        <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Szymon Kłos<text:line-break/>Commits: 483<text:line-break/>Joined: <text:span text:style-name="T2">2014-03-22</text:span></text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
-       <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>jan Iversen<text:line-break/>Commits: 474<text:line-break/>Joined: <text:span text:style-name="T2">2015-11-03</text:span></text:p>
+       <text:p text:style-name="Table_20_Contents">Rene Engelhard<text:line-break/>Commits: 475<text:line-break/>Joined: 2005-03-14</text:p>
       </table:table-cell>
      </table:table-row>
      <table:table-row>
       <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
-       <text:p text:style-name="Table_20_Contents">Rene Engelhard<text:line-break/>Commits: 470<text:line-break/>Joined: 2005-03-14</text:p>
+       <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Gabor Kelemen<text:line-break/>Commits: 474<text:line-break/>Joined: <text:span text:style-name="T2">2013-06-18</text:span></text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
-       <text:p text:style-name="Table_20_Contents">Andreas Bregas<text:line-break/>Commits: 470<text:line-break/>Joined: 2000-09-25</text:p>
+       <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>jan Iversen<text:line-break/>Commits: 474<text:line-break/>Joined: <text:span text:style-name="T2">2015-11-03</text:span></text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
-       <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Gabor Kelemen<text:line-break/>Commits: 465<text:line-break/>Joined: <text:span text:style-name="T2">2013-06-18</text:span></text:p>
+       <text:p text:style-name="Table_20_Contents">Andreas Bregas<text:line-break/>Commits: 470<text:line-break/>Joined: 2000-09-25</text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
        <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Mike Kaganski<text:line-break/>Commits: 461<text:line-break/>Joined: <text:span text:style-name="T2">2015-04-26</text:span></text:p>
@@ -1358,7 +1358,7 @@
        <text:p text:style-name="Table_20_Contents">Dirk Voelzke<text:line-break/>Commits: 392<text:line-break/>Joined: 2000-11-27</text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
-       <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>andreas kainz<text:line-break/>Commits: 382<text:line-break/>Joined: <text:span text:style-name="T2">2015-03-18</text:span></text:p>
+       <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>andreas kainz<text:line-break/>Commits: 383<text:line-break/>Joined: <text:span text:style-name="T2">2015-03-18</text:span></text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
        <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Ivan Timofeev<text:line-break/>Commits: 380<text:line-break/>Joined: <text:span text:style-name="T2">2011-09-16</text:span></text:p>
@@ -1439,10 +1439,10 @@
        <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Arnaud Versini<text:line-break/>Commits: 234<text:line-break/>Joined: <text:span text:style-name="T2">2010-10-05</text:span></text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
-       <text:p text:style-name="Table_20_Contents">Ingo Schmidt<text:line-break/>Commits: 202<text:line-break/>Joined: 2004-02-05</text:p>
+       <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Stanislav Horacek<text:line-break/>Commits: 202<text:line-break/>Joined: <text:span text:style-name="T2">2012-12-09</text:span></text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
-       <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Stanislav Horacek<text:line-break/>Commits: 200<text:line-break/>Joined: <text:span text:style-name="T2">2012-12-09</text:span></text:p>
+       <text:p text:style-name="Table_20_Contents">Ingo Schmidt<text:line-break/>Commits: 202<text:line-break/>Joined: 2004-02-05</text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
        <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Winfried Donkers<text:line-break/>Commits: 199<text:line-break/>Joined: <text:span text:style-name="T2">2011-11-11</text:span></text:p>
@@ -1506,7 +1506,7 @@
      </table:table-row>
      <table:table-row>
       <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
-       <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Mark Hung<text:line-break/>Commits: 137<text:line-break/>Joined: <text:span text:style-name="T2">2014-11-04</text:span></text:p>
+       <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Mark Hung<text:line-break/>Commits: 138<text:line-break/>Joined: <text:span text:style-name="T2">2014-11-04</text:span></text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
        <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Artur Dryomov<text:line-break/>Commits: 137<text:line-break/>Joined: <text:span text:style-name="T2">2013-03-14</text:span></text:p>
@@ -1548,10 +1548,10 @@
      </table:table-row>
      <table:table-row>
       <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
-       <text:p text:style-name="Table_20_Contents">Kalman Szalai - KAMI<text:line-break/>Commits: 116<text:line-break/>Joined: 2010-09-14</text:p>
+       <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Tamas Bunth<text:line-break/>Commits: 117<text:line-break/>Joined: <text:span text:style-name="T2">2016-03-08</text:span></text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
-       <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Tamas Bunth<text:line-break/>Commits: 115<text:line-break/>Joined: <text:span text:style-name="T2">2016-03-08</text:span></text:p>
+       <text:p text:style-name="Table_20_Contents">Kalman Szalai - KAMI<text:line-break/>Commits: 116<text:line-break/>Joined: 2010-09-14</text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
        <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Joren De Cuyper<text:line-break/>Commits: 114<text:line-break/>Joined: <text:span text:style-name="T2">2013-01-07</text:span></text:p>
@@ -1593,10 +1593,10 @@
        <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Krisztian Pinter<text:line-break/>Commits: 90<text:line-break/>Joined: <text:span text:style-name="T2">2013-02-18</text:span></text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
-       <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Albert Thuswaldner<text:line-break/>Commits: 89<text:line-break/>Joined: <text:span text:style-name="T2">2011-01-26</text:span></text:p>
+       <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>heiko tietze<text:line-break/>Commits: 90<text:line-break/>Joined: <text:span text:style-name="T2">2016-10-06</text:span></text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
-       <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>heiko tietze<text:line-break/>Commits: 88<text:line-break/>Joined: <text:span text:style-name="T2">2016-10-06</text:span></text:p>
+       <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Albert Thuswaldner<text:line-break/>Commits: 89<text:line-break/>Joined: <text:span text:style-name="T2">2011-01-26</text:span></text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
        <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Daniel Bankston<text:line-break/>Commits: 88<text:line-break/>Joined: <text:span text:style-name="T2">2012-04-03</text:span></text:p>
@@ -2027,16 +2027,19 @@
        <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Harri Pitkänen<text:line-break/>Commits: 29<text:line-break/>Joined: <text:span text:style-name="T2">2010-10-04</text:span></text:p>
       </table:table-cell>
       <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">

... etc. - the rest is truncated


More information about the Libreoffice-commits mailing list