[Libreoffice-commits] online.git: Branch 'distro/collabora/collabora-online-4-0' - 7 commits - bundled/include .gitreview test/data test/helpers.hpp test/httpcrashtest.cpp test/httpwstest.cpp wsd/LOOLWSD.cpp

Michael Meeks (via logerrit) logerrit at kemper.freedesktop.org
Thu Jun 13 13:24:31 UTC 2019


 .gitreview                                           |    2 
 bundled/include/LibreOfficeKit/LibreOfficeKit.h      |   27 ++++----
 bundled/include/LibreOfficeKit/LibreOfficeKit.hxx    |   59 +++++++++----------
 bundled/include/LibreOfficeKit/LibreOfficeKitEnums.h |    2 
 bundled/include/LibreOfficeKit/LibreOfficeKitInit.h  |   15 ----
 test/data/non_shape_writer_image.svg                 |    2 
 test/data/shapes_impress.svg                         |   16 ++---
 test/data/shapes_writer.svg                          |   26 ++++----
 test/helpers.hpp                                     |   24 +++++++
 test/httpcrashtest.cpp                               |    3 
 test/httpwstest.cpp                                  |   43 +++++++++++--
 wsd/LOOLWSD.cpp                                      |    4 +
 12 files changed, 141 insertions(+), 82 deletions(-)

New commits:
commit 2639dfe41e71eac49acc3a473da3b899ec27d7c0
Author:     Michael Meeks <michael.meeks at collabora.com>
AuthorDate: Thu May 2 17:03:18 2019 +0100
Commit:     Andras Timar <andras.timar at collabora.com>
CommitDate: Thu Jun 13 15:13:44 2019 +0200

    SVG: update for current core.
    
    Change-Id: Ibb5da2d71ebd68a13b8ccc2a23f891320508f0a5
    Reviewed-on: https://gerrit.libreoffice.org/71684
    Reviewed-by: Jan Holesovsky <kendy at collabora.com>
    Tested-by: Jan Holesovsky <kendy at collabora.com>

diff --git a/test/data/non_shape_writer_image.svg b/test/data/non_shape_writer_image.svg
index 771ce3c31..2f40e47c3 100644
--- a/test/data/non_shape_writer_image.svg
+++ b/test/data/non_shape_writer_image.svg
@@ -36,7 +36,7 @@
  <g class="Page">
   <g class="Graphic">
    <g>
-    <rect class="BoundingBox" stroke="none" fill="none" x="0" y="0" width="9523" height="6031"/><desc>120</desc>
+    <rect class="BoundingBox" stroke="none" fill="none" x="0" y="0" width="9523" height="6031"/>
     <image x="0" y="0" width="9523" height="6031" preserveAspectRatio="none" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQ4AAACrCAYAAACXF3JMAAAACXBIWXMAAAsTAAALEwEAmpwYAAAS1klEQVR4nO3d51dV957H8c+hKL0X6ShKQJQiihCDREURCyhFEVSI5kJmxWTi3AfJn5Ank7lrbsnSuXZUVLooBnvXWLDGrqgxKh0VKQK/ySZmTa5jgijn/PY55/Nay6fsL6zF27053723mRACRET9YSZ7ACLSPwwHEfUbw0FE/cZwEL3i9q1bwsPTU2NpaSl7FNViOIheUVZYAM8h7mLe4qWan8keR5UYDqL/R6Du7lWcPnlcjIt+n+V4DYaD6DWSGzajcJ81PH38hJeXF+PxCoaD6DWsu58hsW4zijdbIvez5Rg8eLDskVSF4SD6HQEdN3C76QQqSwvFnPlZPOv4DYaD6A9Mbt6BtdeH48L5EBEaFs54vMRwEP0BU9GFlNo12LDDFl7ePl87Ozt/JXsmNWA4iPrg2N2IuIZyFG20+XLpp198ZWpqKnsk6RgOojcQ1nYWd+tHYt93O8TUGUlGf8nCcBC9oekNW7Gm2gd+w4NEYGCgUceD4SB6Q4NEJ5Jq16Ow2BK5y5bDxsZG9kjSMBxE/eDx4gEim/ahtMBFZC39xGhX0hkOon6KeXoQdx8E4fiRQ+L92DijLAfDQdRPGggk1edjzSFX+A4NEN7e3kYXD4aD6C3830q6BfI+/7PRraQzHERvKaDzJkY0n8T2ogKRlpltVGcdDAfRO1BW0tffCsC56rMiPGKM0cSD4SB6ByaiG8m167Ch0g7ePr5bXVxc5smeSRcYDqJ3pKykT2osx7Z86/Q/LVsOMzPD/7Uy/O+QSAdGP69GTVMI9u6qEAmz5hj8JQvDQTRAEuq3Yv
 U5L/gPDxLvBQUZdDwYDqIBoqykz6nbgG0l1vBc9gVsbW1lj6Q1DAfRABry4ieMa96Lok2OIjv3U4NdSWc4iAbY+KcHce9hII4c2CtiJ8UbZDkYDqIBppRiZv0mrDnmDv/h7wkfHx+DiwfDQaQF1j2tmFFfgCJlJf2z/4ChvRWO4SDSkmEdNxHc8stK+ryFHxnUWQfDQaRFHzbvxIY7ATh7+pQYM3acwcSD4SDSot6V9Lr1WF9lD1//oQazks5wEGmZQ1cjJjeUGdRKuv5/B0R6YFTbOdxuCMbuHWUiMTlV7y9ZGA4iHUlsLMKqC764GjhSBAUH63U8GA4iHTFXVtLrN2BLiRU8PP8d9vb2skd6awwHkQ4pK+nRLXtRvNlR5OQt09uVdIaDSMeinh7CvUeBOLRvt4ibMk0vy8FwEOnYLyvpm7H6xBD4BQQKf39/vYsHw0EkgVVPK2bX5aN0i/KUdP1bSZcSjoaGhq87Ozu/lHFsor509widHMevswbvtZzEzuItIjUrR6/OOnQeju7ubqz89u9fWonnsNB06/rwRH1y634GC9Gmk2NNaqnE2tsjUH32jIgYE6k38dB5OExNTRE7MQ7XD5Yg66e/wgQ9uh6BSDVMRRdSa9dgXaUtPL28hbu7u17EQ8qlyoTYiZo7N66Jo23TENu8S8YIRKrh0N2EhMYiFG2ygrKSbm5uLnukPkkJh/LZdUpGlmbF3+qEz/Pr8O+8LWMMItUIaruEm43V+G57iZiVMk/1Zx3SPlWxtrZGcloGygvaseThN7DqeS5rFCJVSGgsxuof/HBpRLAYNXq0quMh9ePYgIAAzajIGLH95ELMe7wSqv5JEWmZspKeUrsWmyus4O3jM8zBwUG1p+LS9zimTJuuWXPnljj9PBbjnh6WPQ6RVK5djxHdVIXiTfa3cj75TGNiYiJ7pNeSHg7lB5OSsXDqqm+bd/u03cSQroeyRyKSatyzo7hXG4SDe6vEpKnTVXk
 iLj0cCkdHxz0zklNQWtKGjx5+g8GiQ/ZIRNIopVAedLz65JDep6QPHTpUdfFQRTgUI0NCNDevRYjdL9Ixqy5f9jhEUikr6Un1G1G21RK5ny2HlZWV7JH+hWrCoUicPUez8m6NuNQagVHPq2WPQySVb2cNQpqPoHSLq1iQ8ydV3YKvqnAoiy/pWdlN6/6n1dGz8z6cuuplj0Qk1cSWKuTfH4FTJ46JqJgJqimHqsKhcHNzc/pw6gxRWtWK7Id/6V3JJTJWyi0Zc+vWY80+R/gODRBDhgxRRTxUFw7FuKgoze3rP4j97bMQ31gqexwiqWy7WzCtoQjb8i17b8EfNGiQ7JHUGQ5FclqGZsVfHwm/51cxov2q7HGIpApqv4xbzdXYVV4skn7+3ZA9j2rDYWFhgbnzM7FtQxs8Hv4XbHqeyh6JSKppTaVYfcUPFy8Ei9GhYVLjodpwKHx9fTXjJsSJ0kONyHr8D2gEb8En49W7kl63DpsrbODj6yd1JV3V4VDExk3S1Ny8IY62TcEHLbtlj0MklWtXLWKadmFbvu2tJf/2uUZ5vo0Mqg+H8tn1z5csmpV/rxP+bdfg3XlP9khEUo1tPY67dUE4sLtSTJk+S8oli+rDobC1te29Bb9sS0fvLfiWvAWfjJhSilkNBVh92hNDA0eKYcOG6TweehEOxfDhwzXBEePFzhcLkFq7SvY4RFJZ9LT13ppRutUCucu+gI2NjU6PrzfhUMQnJGpW3b4pzj6PwZhnx2WPQySV74u7CG05grKtriLzo1ydrqTrVTiUPwSlZS7OW/Vtywqv9jtw73okeyQiqWJbdveupJ88dkRET4jVWTn0KhwKJyenldNmJq8o39GOnJ/+E+biheyRiKTpXUmv34DV+53g4z9MeHl56SQeehcORVh4uOb2jStid0dq73MLiIyZspI+vbEIxQWWyF22HIMHD9b6MfUyHIpZc9I0K+7fF5dbryCk7bzscYikek9ZSW86
 g8rSQjFnfpbWzzr0NhzKLfipCxZh4+rn8H50D/bdTbJHIpJKWUlfe90fF86HiNCwcK3GQ2/DofDw8NB8MHmaKN7zBIsf/TdMBV8pScbLTHRhTt165FfYwMvb52tnZ+evtHYsbX1hXRkfHaOpuXlNHGpPxKSmCtnjEEnl0lWL2OZKFG20+XLpp198pa2VdL0Ph/LZdVLqfM2Kvz0Ufq1XMKzzluyRiKSKbD2JmoaR2PfdDjF1RpJWLln0PhwK5UGuKfOzULihHUse/wU23bwFn4zbTGUl/awH/IYHicDAwAGPh0GEQ+Hn56cZExMryo42IvPRP6CBkD0SkTTKSvrs+o0oKbJA3mfLB3wl3WDCoYibNEWz7uZ1ceJ5HGKeHJA9DpFUPp13EdFyGKUFLiJr6ScDupJuUOFQ3gqXumCRZuXfGoVv+y14dd6XPRKRVB882YNND0bg+JFD4v3YuAErh0GFQ2FnZ4ektPko3dqBpY++6T1lIzJWyiV7Ul0+Vh907n1Kure394DEw+DCoVD+GHQzNFJUdmVgbu0a2eMQSWXb8wTTGwpRvNkCeZ//eUBW0g0yHIqEmUmaf96tEedaxyG89ZTscYikeq/jCu40n8X2ogKRlpn9zmcdBhsOZfElPSs7b9W3T1Z4dtyDW9dj2SMRSRXfXIa1t/xxrvqsCI8Y807xMNhwKJRb8KMmTFxx+OCPSH38T9njEEmlrKRPqy9E4U47/ByOd/taAzSTKnV0dOD8qeOY0nJU9ihEqnDaKR5h4RHv/HUMOhzlhZvFsOYzCGy/InsUIumqrcej2SkEadNn8G8cv6f6zGnRcPsicprLZY9CJF2tmTsOOiRiaVZ23kDc+GaQ4airqzu9p7ICC+s28G33ZPS6NOYodctGfOLs3r/7DcTXNLhwdHV1YVv+msgPmyrg0lUnexwi6fY4zYHHiDBEjHm3T1J+y+DCUVVRKtyaLiC87YzsUYiku2I5GjUOkcibmzagd
 8gaVDguX7okrl88g48bi2SPQiTdE1MHVDmlIHPBIgwaNGhAv7bBhKO5uXlYZXkx5tVvwOCedtnjEEklNCYoc8tGzMTJ8PT05PM4XqenpweFG9feimreC48XD2SPQyTdEbupMPccifc/0M5LmgwiHAf3VgmrusuIfnZI9ihE0tUMGopz9rHIy8jS2msh9T4cd+7cEdUnj2BJ/Wbo/JXdRCrTZmKFCpcsJKdnwNraWmvH0etwtLa2omTLRiTVb4J1T6vscYikUh6Wud01CyGR0QgICOB7VV5HCIHSLfliVMsx+HXekT0OkXRnbWLQ5hqC+IREvsnt9yhv5267fxlxLd/JHoVIusdmQ3DYfjo+XrB4qvIITW3Ty3A8ePBAHDmwBx/Vr+99WzeRMXuhMUe5ew4SZiXD0dFxjy6OqXfhUG6VL9q8Hgn1hbDrbpE9DpF0u51T4BEYitCwMJ19PqB34dhZsk34NVcjqOMH2aMQSfeDVRjuO4xBbnKqTj9U1KtwnD9XLR7dOI+cphLZoxBJ12LqiN2Oc5ClhZXyvuhNOOrr67dW7SjDwrr1vY9AIzJmPRpTlLjlYMKkqfDw8ND5CpNehOPlrfLpE5sqe9/GTWTsDttPg41vCKJj3pey96gX4dhTuV24NF7EmOffyx6FSLo7g4bhgv0EfJK+QGsr5X1RfTiuXb0qrp47haUN22SPQiRdq6kNKlyzkDI/C1ZWVtLmUHU4WlpasL14G9Lr18NC8FZ5Mm7KSnmFSyZCx8bA399f6q1Zqg2HslJeUrBBRLYcgCdvlSfCadtYdLiNwuSpCdLv51RtOA7v3yNMHl3GhKf7ZY9CJN1jcw8ctY/HxxkLdbJS3hdVhqOmpkacPnYYS+rze9+2TWTMOk0Go8Q1BzOTU3W2Ut4X1YWjra2t91b5GQ0FsO5+JnscIumqnFPhGxyBkSEh0i9RfqWqcPzyd418EdRyAgEdN2SPQyTdZatw/OQQjtykOaqJhk
 JV4Tj9/UnRev8yUlsqZY9CJF2jqTN2OyYjOyu7ydzcXPY4/0I14Xj06JE4sLsSOfUbYCK6ZY9DJFW3xhRl7tmYOCUBbm5uTrLneZUqwtHZ2Ylt+WuR0FgMh65G2eMQSXfIcQbs/EYhany0qi5RfqWKcOwqLxZeLRcQ3H5J9ihE0t0ZHIDLdtHIS50vbaW8L9LDcfHCeXHvSjWW8O1rRHhmYoPtzplIk7xS3hep4WhoaPh61/ZSZNWtg7nolDkKkXS9K+VuixAR/QH8/PzUearxkrRwdHd3o3jz+i8nNFfBteuxrDGIVON72zi8cBuJDyfHqzoaCmnh2PfdTmFTdxFjW4/JGoFINR6Ye+OE/WTkZi7WqGGlvC9SwnH9+nVx+ewJLG0o4NvXyOh1aAaj3HURZs5Nh52dnexx3ojOw6FcolSUbINTZy2O20/R9eGJ+mTV9RRRTw/p7D6pPc4p8A0KRXBwsN78P6rzcJiamiIufjra2/l8DVKnwwf2YmRrNWx7nmj9WD9YhuJHxwjkJqXoTTQUUi5VIiMj9eqHRMbl+yP7dXKq0WjmgiqnuchZmHNG108pf1fS9ziIjJGyUl7qloMPp86Aq6vrWNnz9BfDQSTBAcdZcPAPwbioKL08+2Y4iHTspkUQrtlHIy8tQy+joWA4iHTomYktdjrPQ/r8TFhYWMge560xHEQ6IjQmKHPLRmRMLHx9ffX2bEPBcBDpyHHbOGg8ghE3aYpeR0PBcBDpwINBPjhlPwm58xeq9lb5/mA4iLSs3cQSpS6LkZyWoTcr5X1hOIi0rNIlA4GhkRgxYoT+n2q8xHAQadF5q7FodBqFlBmzDSYaCoaDSEsazFyx33EWchYsOmNmZli/aob13RCpRJfGHMVuH2Fywky9XCnvC8NBpAX7HWfDPWA0IseONahLlF8xHEQD7IZFMG7Yj0Pe3DSDjIaC4SAaQE9M7bHTOR0LMhfp9Up5XxgOogGirJSXuy1G1IQ
 4eHl5GezZhoLhIBogR+2mwNQjBLFxkww6GgqGg2gA/DjIF2ftJyJ3fqZBrJT3heEgekdtJpYoc/1lpdzW1lb2ODrBcBC9o0rXTASFR2H48OGGf6rxEsNB9A6qrcej2SkEadNnGE00FAwH0VuqNXPHQYdELM3KzlNe+2FMGA6it6CslJe6ZSM+cTacnJxWyp5H1xgOorewx2kOPEaEIWLMGKO6RPkVw0HUT1csR6PGIdKgV8r7wnAQ9cMTUwdUOaUgc8Ei6Nvb1wYSw0H0hn59Snl07CR4enoa7dmGguEgekNH7KbC3HMkJsRONOpoKBgOojdQM2goztnHIi8jyyhWyvvCcBD1oc3EChUuWUhOz4C1tbXscVSB4SD6A+Lnf9tdsxASGY2AgACearzEcBD9gbM2MWhzDUF8QiKj8RsMB9HveGw2BIftp+PjBYunmpiYyB5HVRgOotd4oTFHuXsOEmYlw9HRcY/sedSG4SB6jX1Os+EWMAqhYWG8RHkNhoPoNRrsg5Gbks5o/A6Gg+gVo0PDETQ63KhXyvvCcBC9Ij5xFs80+sBwEFG/MRxE1G8MBxH1G8NBRP3GcBBRvzEcRNRvDAcR9RvDQUT9xnAQUb8xHETUbwwHEfXb/wKI+5UEARLjxAAAAABJRU5ErkJggg=="/>
    </g>
   </g>
diff --git a/test/data/shape_writer.svg b/test/data/shapes_writer.svg
similarity index 67%
rename from test/data/shape_writer.svg
rename to test/data/shapes_writer.svg
index 8937cb663..ed77bdade 100644
--- a/test/data/shape_writer.svg
+++ b/test/data/shapes_writer.svg
@@ -36,19 +36,19 @@
  <g class="Page">
   <g class="com.sun.star.drawing.CustomShape">
    <g id="id1">
-    <rect class="BoundingBox" stroke="none" fill="none" x="7310" y="6216" width="3367" height="8262"/><desc>150</desc><desc>139</desc><desc>133</desc><desc>132</desc><desc>111</desc>
-    <path fill="rgb(114,159,207)" stroke="none" d="M 7311,14474 L 7311,7057 8151,6218 10673,6218 10673,13633 9832,14474 7311,14474 Z M 7311,6218 L 7311,6218 Z M 10673,14474 L 10673,14474 Z"/><desc>140</desc><desc>139</desc><desc>132</desc><desc>512: XPATHSTROKE_SEQ_BEGIN</desc><desc>132</desc><desc>133</desc><desc>109</desc>
-    <path fill="none" stroke="rgb(52,101,164)" d="M 7311,14474 L 7311,7057 8151,6218 10673,6218 10673,13633 9832,14474 7311,14474 Z"/><desc>512: XPATHSTROKE_SEQ_END</desc><desc>140</desc><desc>139</desc><desc>132</desc><desc>512: XPATHSTROKE_SEQ_BEGIN</desc><desc>132</desc><desc>133</desc><desc>109</desc>
-    <path fill="none" stroke="rgb(52,101,164)" d="M 7311,6218 L 7311,6218 Z"/><desc>512: XPATHSTROKE_SEQ_END</desc><desc>140</desc><desc>139</desc><desc>132</desc><desc>512: XPATHSTROKE_SEQ_BEGIN</desc><desc>132</desc><desc>133</desc><desc>109</desc>
-    <path fill="none" stroke="rgb(52,101,164)" d="M 10673,14474 L 10673,14474 Z"/><desc>512: XPATHSTROKE_SEQ_END</desc><desc>140</desc><desc>139</desc><desc>133</desc><desc>132</desc><desc>111</desc>
-    <path fill="rgb(139,176,217)" stroke="none" d="M 7311,7057 L 8151,6218 10673,6218 9832,7057 7311,7057 Z M 7311,6218 L 7311,6218 Z M 10673,14474 L 10673,14474 Z"/><desc>140</desc><desc>139</desc><desc>132</desc><desc>512: XPATHSTROKE_SEQ_BEGIN</desc><desc>132</desc><desc>133</desc><desc>109</desc>
-    <path fill="none" stroke="rgb(52,101,164)" d="M 7311,7057 L 8151,6218 10673,6218 9832,7057 7311,7057 Z"/><desc>512: XPATHSTROKE_SEQ_END</desc><desc>140</desc><desc>139</desc><desc>132</desc><desc>512: XPATHSTROKE_SEQ_BEGIN</desc><desc>132</desc><desc>133</desc><desc>109</desc>
-    <path fill="none" stroke="rgb(52,101,164)" d="M 7311,6218 L 7311,6218 Z"/><desc>512: XPATHSTROKE_SEQ_END</desc><desc>140</desc><desc>139</desc><desc>132</desc><desc>512: XPATHSTROKE_SEQ_BEGIN</desc><desc>132</desc><desc>133</desc><desc>109</desc>
-    <path fill="none" stroke="rgb(52,101,164)" d="M 10673,14474 L 10673,14474 Z"/><desc>512: XPATHSTROKE_SEQ_END</desc><desc>140</desc><desc>139</desc><desc>133</desc><desc>132</desc><desc>111</desc>
-    <path fill="rgb(91,127,166)" stroke="none" d="M 9832,14474 L 9832,7057 10673,6218 10673,13633 9832,14474 Z M 7311,6218 L 7311,6218 Z M 10673,14474 L 10673,14474 Z"/><desc>140</desc><desc>139</desc><desc>132</desc><desc>512: XPATHSTROKE_SEQ_BEGIN</desc><desc>132</desc><desc>133</desc><desc>109</desc>
-    <path fill="none" stroke="rgb(52,101,164)" d="M 9832,14474 L 9832,7057 10673,6218 10673,13633 9832,14474 Z"/><desc>512: XPATHSTROKE_SEQ_END</desc><desc>140</desc><desc>139</desc><desc>132</desc><desc>512: XPATHSTROKE_SEQ_BEGIN</desc><desc>132</desc><desc>133</desc><desc>109</desc>
-    <path fill="none" stroke="rgb(52,101,164)" d="M 7311,6218 L 7311,6218 Z"/><desc>512: XPATHSTROKE_SEQ_END</desc><desc>140</desc><desc>139</desc><desc>132</desc><desc>512: XPATHSTROKE_SEQ_BEGIN</desc><desc>132</desc><desc>133</desc><desc>109</desc>
-    <path fill="none" stroke="rgb(52,101,164)" d="M 10673,14474 L 10673,14474 Z"/><desc>512: XPATHSTROKE_SEQ_END</desc><desc>140</desc>
+    <rect class="BoundingBox" stroke="none" fill="none" x="7310" y="6216" width="3367" height="8262"/>
+    <path fill="rgb(114,159,207)" stroke="none" d="M 7311,14474 L 7311,7057 8151,6218 10673,6218 10673,13633 9832,14474 7311,14474 Z M 7311,6218 L 7311,6218 Z M 10673,14474 L 10673,14474 Z"/>
+    <path fill="none" stroke="rgb(52,101,164)" d="M 7311,14474 L 7311,7057 8151,6218 10673,6218 10673,13633 9832,14474 7311,14474 Z"/>
+    <path fill="none" stroke="rgb(52,101,164)" d="M 7311,6218 L 7311,6218 Z"/>
+    <path fill="none" stroke="rgb(52,101,164)" d="M 10673,14474 L 10673,14474 Z"/>
+    <path fill="rgb(139,176,217)" stroke="none" d="M 7311,7057 L 8151,6218 10673,6218 9832,7057 7311,7057 Z M 7311,6218 L 7311,6218 Z M 10673,14474 L 10673,14474 Z"/>
+    <path fill="none" stroke="rgb(52,101,164)" d="M 7311,7057 L 8151,6218 10673,6218 9832,7057 7311,7057 Z"/>
+    <path fill="none" stroke="rgb(52,101,164)" d="M 7311,6218 L 7311,6218 Z"/>
+    <path fill="none" stroke="rgb(52,101,164)" d="M 10673,14474 L 10673,14474 Z"/>
+    <path fill="rgb(91,127,166)" stroke="none" d="M 9832,14474 L 9832,7057 10673,6218 10673,13633 9832,14474 Z M 7311,6218 L 7311,6218 Z M 10673,14474 L 10673,14474 Z"/>
+    <path fill="none" stroke="rgb(52,101,164)" d="M 9832,14474 L 9832,7057 10673,6218 10673,13633 9832,14474 Z"/>
+    <path fill="none" stroke="rgb(52,101,164)" d="M 7311,6218 L 7311,6218 Z"/>
+    <path fill="none" stroke="rgb(52,101,164)" d="M 10673,14474 L 10673,14474 Z"/>
    </g>
   </g>
  </g>
commit 69d98dacd53c7fbe5da9d7de8d6b760c52af330b
Author:     Michael Meeks <michael.meeks at collabora.com>
AuthorDate: Sat May 4 22:50:00 2019 +0100
Commit:     Andras Timar <andras.timar at collabora.com>
CommitDate: Thu Jun 13 15:11:10 2019 +0200

    test: close testCrashKit race.
    
    LOOLWSD is conservative and leaves forkit to start processes for a
    while. If we kill a kit before it has started and registered we can
    end up with LOOLWSD holding off to wait for the (now dead) kit, and
    the tearDown assertions that we have 1 kit failing.
    
    Change-Id: Id25e48bf55d1757d2223816293500fde6ff9df1b
    Reviewed-on: https://gerrit.libreoffice.org/71808
    Reviewed-by: Ashod Nakashian <ashnakash at gmail.com>
    Tested-by: Jan Holesovsky <kendy at collabora.com>

diff --git a/test/httpcrashtest.cpp b/test/httpcrashtest.cpp
index a2b1a9d2a..6fd8ee938 100644
--- a/test/httpcrashtest.cpp
+++ b/test/httpcrashtest.cpp
@@ -136,6 +136,9 @@ void HTTPCrashTest::testCrashKit()
     {
         std::shared_ptr<LOOLWebSocket> socket = loadDocAndGetSocket("empty.odt", _uri, testname);
 
+        TST_LOG("Allowing time for kits to spawn and connect to wsd to get cleanly killed");
+        std::this_thread::sleep_for(std::chrono::milliseconds(1000));
+
         TST_LOG("Killing loolkit instances.");
 
         killLoKitProcesses();
diff --git a/wsd/LOOLWSD.cpp b/wsd/LOOLWSD.cpp
index 89171b339..75ab01c48 100644
--- a/wsd/LOOLWSD.cpp
+++ b/wsd/LOOLWSD.cpp
@@ -360,6 +360,7 @@ void cleanupDocBrokers()
 /// -1 for error.
 static int forkChildren(const int number)
 {
+    LOG_TRC("Request forkit to spawn " << number << " new child(ren)");
     Util::assertIsLocked(NewChildrenMutex);
 
     if (number > 0)
@@ -1507,6 +1508,9 @@ void LOOLWSD::autoSave(const std::string& docKey)
 void PrisonerPoll::wakeupHook()
 {
 #ifndef MOBILEAPP
+    LOG_TRC("PrisonerPoll - wakes up with " << NewChildren.size() <<
+            " new children and " << DocBrokers.size() << " brokers and " <<
+            OutstandingForks << " kits forking");
     if (!LOOLWSD::checkAndRestoreForKit())
     {
         // No children have died.
commit 86f13bf07f9d6ec44e796d9afd7acd13b7ce3f1a
Author:     Miklos Vajna <vmiklos at collabora.com>
AuthorDate: Thu May 9 14:25:21 2019 +0200
Commit:     Andras Timar <andras.timar at collabora.com>
CommitDate: Thu Jun 13 14:30:01 2019 +0200

    Fix HTTPWSTest::testRenderShapeSelectionImpress() against product core
    
    This test only passed when core.git was built in a way so that '#if
    OSL_DEBUG_LEVEL > 0' was true (debug, dbgutil builds). Re-generate this
    against a product build, since 2 other tests already have references
    like that.
    
    We already have infrastructure for stripping <desc> XML elements from
    the actual result.
    
    (cherry picked from commit 1d32dc1742a2a51343af993939f0f51538de54aa)
    
    Change-Id: I9cdd53bf9625266d94313a90946270bfc266bd47
    Reviewed-on: https://gerrit.libreoffice.org/72042
    Reviewed-by: Michael Meeks <michael.meeks at collabora.com>
    Tested-by: Michael Meeks <michael.meeks at collabora.com>

diff --git a/test/data/shapes_impress.svg b/test/data/shapes_impress.svg
index 0cfac22b7..8087f20a7 100644
--- a/test/data/shapes_impress.svg
+++ b/test/data/shapes_impress.svg
@@ -36,18 +36,18 @@
  <g ooo:name="page1" class="Page">
   <g class="com.sun.star.drawing.CustomShape">
    <g id="id3">
-    <rect class="BoundingBox" stroke="none" fill="none" x="3301" y="5333" width="8385" height="6607"/><desc>150</desc><desc>139</desc><desc>133</desc><desc>132</desc><desc>111</desc>
-    <path fill="rgb(114,159,207)" stroke="none" d="M 7493,11938 L 3302,11938 3302,5334 11684,5334 11684,11938 7493,11938 Z"/><desc>140</desc><desc>139</desc><desc>132</desc><desc>512: XPATHSTROKE_SEQ_BEGIN</desc><desc>132</desc><desc>133</desc><desc>109</desc>
-    <path fill="none" stroke="rgb(52,101,164)" d="M 7493,11938 L 3302,11938 3302,5334 11684,5334 11684,11938 7493,11938 Z"/><desc>512: XPATHSTROKE_SEQ_END</desc><desc>140</desc>
+    <rect class="BoundingBox" stroke="none" fill="none" x="3301" y="5333" width="8385" height="6607"/>
+    <path fill="rgb(114,159,207)" stroke="none" d="M 7493,11938 L 3302,11938 3302,5334 11684,5334 11684,11938 7493,11938 Z"/>
+    <path fill="none" stroke="rgb(52,101,164)" d="M 7493,11938 L 3302,11938 3302,5334 11684,5334 11684,11938 7493,11938 Z"/>
    </g>
   </g>
   <g class="com.sun.star.drawing.CustomShape">
    <g id="id4">
-    <rect class="BoundingBox" stroke="none" fill="none" x="14477" y="4571" width="9656" height="8386"/><desc>150</desc><desc>139</desc><desc>133</desc><desc>132</desc><desc>111</desc>
-    <path fill="rgb(114,159,207)" stroke="none" d="M 19304,4572 C 22040,4572 24130,6387 24130,8763 24130,11139 22040,12954 19304,12954 16568,12954 14478,11139 14478,8763 14478,6387 16568,4572 19304,4572 Z M 14478,4572 L 14478,4572 Z M 24131,12955 L 24131,12955 Z"/><desc>140</desc><desc>139</desc><desc>132</desc><desc>512: XPATHSTROKE_SEQ_BEGIN</desc><desc>132</desc><desc>133</desc><desc>109</desc>
-    <path fill="none" stroke="rgb(52,101,164)" d="M 19304,4572 C 22040,4572 24130,6387 24130,8763 24130,11139 22040,12954 19304,12954 16568,12954 14478,11139 14478,8763 14478,6387 16568,4572 19304,4572 Z"/><desc>512: XPATHSTROKE_SEQ_END</desc><desc>140</desc><desc>139</desc><desc>132</desc><desc>512: XPATHSTROKE_SEQ_BEGIN</desc><desc>132</desc><desc>133</desc><desc>109</desc>
-    <path fill="none" stroke="rgb(52,101,164)" d="M 14478,4572 L 14478,4572 Z"/><desc>512: XPATHSTROKE_SEQ_END</desc><desc>140</desc><desc>139</desc><desc>132</desc><desc>512: XPATHSTROKE_SEQ_BEGIN</desc><desc>132</desc><desc>133</desc><desc>109</desc>
-    <path fill="none" stroke="rgb(52,101,164)" d="M 24131,12955 L 24131,12955 Z"/><desc>512: XPATHSTROKE_SEQ_END</desc><desc>140</desc>
+    <rect class="BoundingBox" stroke="none" fill="none" x="14477" y="4571" width="9656" height="8386"/>
+    <path fill="rgb(114,159,207)" stroke="none" d="M 19304,4572 C 22040,4572 24130,6387 24130,8763 24130,11139 22040,12954 19304,12954 16568,12954 14478,11139 14478,8763 14478,6387 16568,4572 19304,4572 Z M 14478,4572 L 14478,4572 Z M 24131,12955 L 24131,12955 Z"/>
+    <path fill="none" stroke="rgb(52,101,164)" d="M 19304,4572 C 22040,4572 24130,6387 24130,8763 24130,11139 22040,12954 19304,12954 16568,12954 14478,11139 14478,8763 14478,6387 16568,4572 19304,4572 Z"/>
+    <path fill="none" stroke="rgb(52,101,164)" d="M 14478,4572 L 14478,4572 Z"/>
+    <path fill="none" stroke="rgb(52,101,164)" d="M 24131,12955 L 24131,12955 Z"/>
    </g>
   </g>
  </g>
diff --git a/test/httpwstest.cpp b/test/httpwstest.cpp
index 8220f728c..cc8065c20 100644
--- a/test/httpwstest.cpp
+++ b/test/httpwstest.cpp
@@ -2762,6 +2762,8 @@ void HTTPWSTest::testRenderShapeSelectionImpress()
         if (it != responseSVG.end())
             responseSVG.erase(responseSVG.begin(), ++it);
 
+        stripDescriptions(responseSVG);
+
         CPPUNIT_ASSERT(svgMatch(testname, responseSVG, "shapes_impress.svg"));
     }
     catch (const Poco::Exception& exc)
commit 5ef07ad07ed89f0a14fbe139d0ec14a12b231efa
Author:     Miklos Vajna <vmiklos at collabora.com>
AuthorDate: Thu May 9 10:40:22 2019 +0200
Commit:     Andras Timar <andras.timar at collabora.com>
CommitDate: Thu Jun 13 14:29:56 2019 +0200

    test: fix HTTPWSTest::testRenderShapeSelectionWriterImage() failure with ...
    
    ... debug core.git. Same problem, need to filter out <desc> XML
    elements.
    
    (cherry picked from commit aa5b28ceb08cfc5c0e19c8cc99ae353c47f8a2c0)
    
    Change-Id: I84973b831508e6a073d9c75868307d98a2ada370
    Reviewed-on: https://gerrit.libreoffice.org/72030
    Reviewed-by: Michael Meeks <michael.meeks at collabora.com>
    Tested-by: Michael Meeks <michael.meeks at collabora.com>

diff --git a/test/httpwstest.cpp b/test/httpwstest.cpp
index 4edef325e..8220f728c 100644
--- a/test/httpwstest.cpp
+++ b/test/httpwstest.cpp
@@ -2820,6 +2820,8 @@ void HTTPWSTest::testRenderShapeSelectionWriterImage()
         if (it != responseSVG.end())
             responseSVG.erase(responseSVG.begin(), ++it);
 
+        stripDescriptions(responseSVG);
+
         CPPUNIT_ASSERT(svgMatch(testname, responseSVG, "non_shape_writer_image.svg"));
     }
     catch (const Poco::Exception& exc)
commit fbd8957f9660c7010e5d274b0c86eae676cb6276
Author:     Miklos Vajna <vmiklos at collabora.com>
AuthorDate: Thu May 9 10:30:11 2019 +0200
Commit:     Andras Timar <andras.timar at collabora.com>
CommitDate: Thu Jun 13 14:29:51 2019 +0200

    test: fix HTTPWSTest::testRenderShapeSelectionWriter() failure with ...
    
    ... debug core.git.
    
    SVGActionWriter::ImplWriteActions() in core.git writes additional <desc>
    XML elements, guarded with a '#if OSL_DEBUG_LEVEL > 0' block.
    
    Filter these out, so the reference SVG will match both product and debug
    builds.
    
    (cherry picked from commit 0fbabb7a22b1213afe7e3f1b071c4c2876b20584)
    
    Change-Id: Iba3fb25af206c70d5a4ff5801a934dcfd74704de
    Reviewed-on: https://gerrit.libreoffice.org/72029
    Reviewed-by: Michael Meeks <michael.meeks at collabora.com>
    Tested-by: Michael Meeks <michael.meeks at collabora.com>

diff --git a/.gitreview b/.gitreview
index fc87636e3..489239f60 100644
--- a/.gitreview
+++ b/.gitreview
@@ -3,5 +3,5 @@ host=logerrit
 port=29418
 project=online
 defaultremote=logerrit
-defaultbranch=master
+defaultbranch=distro/collabora/collabora-online-4
 
diff --git a/test/httpwstest.cpp b/test/httpwstest.cpp
index 0c08be604..4edef325e 100644
--- a/test/httpwstest.cpp
+++ b/test/httpwstest.cpp
@@ -52,6 +52,31 @@
 
 using namespace helpers;
 
+namespace
+{
+/**
+ * Strips <desc>...</desc> strings from an SVG, some of which are only in debug builds, so breaks
+ * comparison with a fixed reference.
+ */
+void stripDescriptions(std::vector<char>& svg)
+{
+    while (true)
+    {
+        std::string startDesc("<desc>");
+        auto itStart = std::search(svg.begin(), svg.end(), startDesc.begin(), startDesc.end());
+        if (itStart == svg.end())
+            return;
+
+        std::string endDesc("</desc>");
+        auto itEnd = std::search(svg.begin(), svg.end(), endDesc.begin(), endDesc.end());
+        if (itEnd == svg.end())
+            return;
+
+        svg.erase(itStart, itEnd + endDesc.size());
+    }
+}
+}
+
 /// Tests the HTTP WebSocket API of loolwsd. The server has to be started manually before running this test.
 class HTTPWSTest : public CPPUNIT_NS::TestFixture
 {
@@ -2765,6 +2790,8 @@ void HTTPWSTest::testRenderShapeSelectionWriter()
         if (it != responseSVG.end())
             responseSVG.erase(responseSVG.begin(), ++it);
 
+        stripDescriptions(responseSVG);
+
         CPPUNIT_ASSERT(svgMatch(testname, responseSVG, "shapes_writer.svg"));
     }
     catch (const Poco::Exception& exc)
commit 1ef4f21583300a2bdbfae1043d4e084a96f016ef
Author:     Michael Meeks <michael.meeks at collabora.com>
AuthorDate: Thu May 2 16:14:12 2019 +0100
Commit:     Andras Timar <andras.timar at collabora.com>
CommitDate: Thu Jun 13 14:29:43 2019 +0200

    tests: make SVG comparison tests much more helpful.
    
    Dump the SVG we actually get as a .new file for easy upgrade and
    comparison on mismatch.
    
    Change-Id: I607a97ff27a9bf480524efc31877e46d74c5ee3d
    Reviewed-on: https://gerrit.libreoffice.org/71680
    Reviewed-by: Jan Holesovsky <kendy at collabora.com>
    Tested-by: Jan Holesovsky <kendy at collabora.com>

diff --git a/test/helpers.hpp b/test/helpers.hpp
index 50aadada7..f5b033c04 100644
--- a/test/helpers.hpp
+++ b/test/helpers.hpp
@@ -651,6 +651,30 @@ inline void getServerVersion(std::shared_ptr<LOOLWebSocket>& socket,
 
 }
 
+inline bool svgMatch(const char *testname, const std::vector<char> &response, const char *templateFile)
+{
+    const std::vector<char> expectedSVG = helpers::readDataFromFile(templateFile);
+    if (expectedSVG != response)
+    {
+        TST_LOG_BEGIN("Svg mismatch: response is\n");
+        if(response.empty())
+            TST_LOG_APPEND("<empty>");
+        else
+            TST_LOG_APPEND(std::string(response.data(), response.size()));
+        TST_LOG_APPEND("\nvs. expected (from '" << templateFile << "' :\n");
+        TST_LOG_APPEND(std::string(expectedSVG.data(), expectedSVG.size()));
+        std::string newName = templateFile;
+        newName += ".new";
+        TST_LOG_APPEND("Updated template writing to: " << newName << "\n");
+        TST_LOG_END;
+        FILE *of = fopen(Poco::Path(TDOC, newName).toString().c_str(), "w");
+        fwrite(response.data(), response.size(), 1, of);
+        fclose(of);
+        return false;
+    }
+    return true;
+}
+
 #endif
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/test/httpwstest.cpp b/test/httpwstest.cpp
index b2ba3ed70..0c08be604 100644
--- a/test/httpwstest.cpp
+++ b/test/httpwstest.cpp
@@ -2729,6 +2729,7 @@ void HTTPWSTest::testRenderShapeSelectionImpress()
         std::shared_ptr<LOOLWebSocket> socket = loadDocAndGetSocket(_uri, documentURL, testname);
 
         sendTextFrame(socket, "uno .uno:SelectAll", testname);
+        std::this_thread::sleep_for(std::chrono::milliseconds(250));
         sendTextFrame(socket, "rendershapeselection mimetype=image/svg+xml", testname);
         std::vector<char> responseSVG = getResponseMessage(socket, "shapeselectioncontent:", testname);
         CPPUNIT_ASSERT(!responseSVG.empty());
@@ -2736,8 +2737,7 @@ void HTTPWSTest::testRenderShapeSelectionImpress()
         if (it != responseSVG.end())
             responseSVG.erase(responseSVG.begin(), ++it);
 
-        const std::vector<char> expectedSVG = helpers::readDataFromFile("shapes_impress.svg");
-        CPPUNIT_ASSERT(expectedSVG == responseSVG);
+        CPPUNIT_ASSERT(svgMatch(testname, responseSVG, "shapes_impress.svg"));
     }
     catch (const Poco::Exception& exc)
     {
@@ -2757,6 +2757,7 @@ void HTTPWSTest::testRenderShapeSelectionWriter()
 
         // Select the shape with SHIFT + F4
         sendKeyPress(socket, 0, 771 | skShift, testname);
+        std::this_thread::sleep_for(std::chrono::milliseconds(250));
         sendTextFrame(socket, "rendershapeselection mimetype=image/svg+xml", testname);
         std::vector<char> responseSVG = getResponseMessage(socket, "shapeselectioncontent:", testname);
         CPPUNIT_ASSERT(!responseSVG.empty());
@@ -2764,8 +2765,7 @@ void HTTPWSTest::testRenderShapeSelectionWriter()
         if (it != responseSVG.end())
             responseSVG.erase(responseSVG.begin(), ++it);
 
-        const std::vector<char> expectedSVG = helpers::readDataFromFile("shape_writer.svg");
-        CPPUNIT_ASSERT(expectedSVG == responseSVG);
+        CPPUNIT_ASSERT(svgMatch(testname, responseSVG, "shapes_writer.svg"));
     }
     catch (const Poco::Exception& exc)
     {
@@ -2785,6 +2785,7 @@ void HTTPWSTest::testRenderShapeSelectionWriterImage()
 
         // Select the shape with SHIFT + F4
         sendKeyPress(socket, 0, 771 | skShift, testname);
+        std::this_thread::sleep_for(std::chrono::milliseconds(250));
         sendTextFrame(socket, "rendershapeselection mimetype=image/svg+xml", testname);
         std::vector<char> responseSVG = getResponseMessage(socket, "shapeselectioncontent:", testname);
         CPPUNIT_ASSERT(!responseSVG.empty());
@@ -2792,8 +2793,7 @@ void HTTPWSTest::testRenderShapeSelectionWriterImage()
         if (it != responseSVG.end())
             responseSVG.erase(responseSVG.begin(), ++it);
 
-        const std::vector<char> expectedSVG = helpers::readDataFromFile("non_shape_writer_image.svg");
-        CPPUNIT_ASSERT(expectedSVG == responseSVG);
+        CPPUNIT_ASSERT(svgMatch(testname, responseSVG, "non_shape_writer_image.svg"));
     }
     catch (const Poco::Exception& exc)
     {
commit 589614fb57e3cdf4fd36e231a73a928ba1e369d6
Author:     Andras Timar <andras.timar at collabora.com>
AuthorDate: Thu Jun 13 14:02:33 2019 +0200
Commit:     Andras Timar <andras.timar at collabora.com>
CommitDate: Thu Jun 13 14:06:51 2019 +0200

    Sync bundled LOKit headers with core
    
    apart from typos, changes in comments ...
    1) 88014e265a91753b69b70b5f4b246921d16051de is missing from distro/collabora/cp-6.0-29
       it's just a nice to have additional check, not important
    2) #ifdef IOS parts are not important in general, because we don't build the app from
       this branch
    3) Gesture event support was missing
    
    Change-Id: I9695cbf628e88a96ce9ea78edc77220872e0ac9e

diff --git a/bundled/include/LibreOfficeKit/LibreOfficeKit.h b/bundled/include/LibreOfficeKit/LibreOfficeKit.h
index 133f73875..7f7c0c24a 100644
--- a/bundled/include/LibreOfficeKit/LibreOfficeKit.h
+++ b/bundled/include/LibreOfficeKit/LibreOfficeKit.h
@@ -328,18 +328,6 @@ struct _LibreOfficeKitDocumentClass
                             const int width, const int height,
                             const double dpiscale);
 
-#ifdef IOS
-    /// @see lok::Document::paintTileToCGContext().
-    void (*paintTileToCGContext) (LibreOfficeKitDocument* pThis,
-                                  void* rCGContext,
-                                  const int nCanvasWidth,
-                                  const int nCanvasHeight,
-                                  const int nTilePosX,
-                                  const int nTilePosY,
-                                  const int nTileWidth,
-                                  const int nTileHeight);
-#endif // IOS
-
 // CERTIFICATE AND SIGNING
 
     /// @see lok::Document::insertCertificate().
@@ -356,6 +344,7 @@ struct _LibreOfficeKitDocumentClass
 
     /// @see lok::Document::getSignatureState().
     int (*getSignatureState) (LibreOfficeKitDocument* pThis);
+// END CERTIFICATE AND SIGNING
 
     /// @see lok::Document::renderShapeSelection
     size_t (*renderShapeSelection)(LibreOfficeKitDocument* pThis, char** pOutput);
@@ -363,6 +352,20 @@ struct _LibreOfficeKitDocumentClass
     /// @see lok::Document::createViewWithOptions().
     int (*createViewWithOptions) (LibreOfficeKitDocument* pThis, const char* pOptions);
 
+    /// @see lok::Document::postWindowGestureEvent().
+    void (*postWindowGestureEvent) (LibreOfficeKitDocument* pThis,
+                                  unsigned nWindowId,
+                                  const char* pType,
+                                  int nX,
+                                  int nY,
+                                  int nOffset);
+
+    /// @see lok::Document::selectPart().
+    void (*selectPart) (LibreOfficeKitDocument* pThis, int nPart, int nSelect);
+
+    /// @see lok::Document::moveSelectedParts().
+    void (*moveSelectedParts) (LibreOfficeKitDocument* pThis, int nPosition, bool bDuplicate);
+
 #endif // defined LOK_USE_UNSTABLE_API || defined LIBO_INTERNAL_ONLY
 };
 
diff --git a/bundled/include/LibreOfficeKit/LibreOfficeKit.hxx b/bundled/include/LibreOfficeKit/LibreOfficeKit.hxx
index a72275ed1..da7c65b70 100644
--- a/bundled/include/LibreOfficeKit/LibreOfficeKit.hxx
+++ b/bundled/include/LibreOfficeKit/LibreOfficeKit.hxx
@@ -561,34 +561,6 @@ public:
         mpDoc->pClass->postWindowExtTextInputEvent(mpDoc, nWindowId, nType, pText);
     }
 
-#ifdef IOS
-    /**
-     * Renders a subset of the document to a Core Graphics context.
-     *
-     * Note that the buffer size and the tile size implicitly supports
-     * rendering at different zoom levels, as the number of rendered pixels and
-     * the rendered rectangle of the document are independent.
-     *
-     * @param rCGContext the CGContextRef, cast to a void*.
-     * @param nCanvasHeight number of pixels in a column of pBuffer.
-     * @param nTilePosX logical X position of the top left corner of the rendered rectangle, in TWIPs.
-     * @param nTilePosY logical Y position of the top left corner of the rendered rectangle, in TWIPs.
-     * @param nTileWidth logical width of the rendered rectangle, in TWIPs.
-     * @param nTileHeight logical height of the rendered rectangle, in TWIPs.
-     */
-    void paintTileToCGContext(void* rCGContext,
-                              const int nCanvasWidth,
-                              const int nCanvasHeight,
-                              const int nTilePosX,
-                              const int nTilePosY,
-                              const int nTileWidth,
-                              const int nTileHeight)
-    {
-        return mpDoc->pClass->paintTileToCGContext(mpDoc, rCGContext, nCanvasWidth, nCanvasHeight,
-                                                   nTilePosX, nTilePosY, nTileWidth, nTileHeight);
-    }
-#endif // IOS
-
     /**
      *  Insert certificate (in binary form) to the certificate store.
      */
@@ -633,6 +605,37 @@ public:
         return mpDoc->pClass->renderShapeSelection(mpDoc, pOutput);
     }
 
+    /**
+     * Posts a gesture event to the window with given id.
+     *
+     * @param nWindowId
+     * @param pType Event type, like panStart, panEnd, panUpdate.
+     * @param nX horizontal position in document coordinates
+     * @param nY vertical position in document coordinates
+     * @param nOffset difference value from when the gesture started to current value
+     */
+    void postWindowGestureEvent(unsigned nWindowId,
+                              const char* pType,
+                              int nX, int nY, int nOffset)
+    {
+        return mpDoc->pClass->postWindowGestureEvent(mpDoc, nWindowId, pType, nX, nY, nOffset);
+    }
+
+    /// Set a part's selection mode.
+    /// nSelect is 0 to deselect, 1 to select, and 2 to toggle.
+    void selectPart(int nPart, int nSelect)
+    {
+        mpDoc->pClass->selectPart(mpDoc, nPart, nSelect);
+    }
+
+    /// Moves the selected pages/slides to a new position.
+    /// nPosition is the new position where the selection
+    /// should go. bDuplicate when true will copy instead of move.
+    void moveSelectedParts(int nPosition, bool bDuplicate)
+    {
+        mpDoc->pClass->moveSelectedParts(mpDoc, nPosition, bDuplicate);
+    }
+
 #endif // defined LOK_USE_UNSTABLE_API || defined LIBO_INTERNAL_ONLY
 };
 
diff --git a/bundled/include/LibreOfficeKit/LibreOfficeKitEnums.h b/bundled/include/LibreOfficeKit/LibreOfficeKitEnums.h
index 33d235af8..850e544c6 100644
--- a/bundled/include/LibreOfficeKit/LibreOfficeKitEnums.h
+++ b/bundled/include/LibreOfficeKit/LibreOfficeKitEnums.h
@@ -352,7 +352,7 @@ typedef enum
 
     /**
      * The size and/or the position of the view cursor changed. A view cursor
-     * is a cursor of another view, the current view can't change it.
+     * is a cursor of an other view, the current view can't change it.
      *
      * The payload format:
      *
diff --git a/bundled/include/LibreOfficeKit/LibreOfficeKitInit.h b/bundled/include/LibreOfficeKit/LibreOfficeKitInit.h
index 6667d2b92..5c600b502 100644
--- a/bundled/include/LibreOfficeKit/LibreOfficeKitInit.h
+++ b/bundled/include/LibreOfficeKit/LibreOfficeKitInit.h
@@ -287,22 +287,13 @@ static LibreOfficeKit *lok_init_2( const char *install_path,  const char *user_p
         }
         free( imp_lib );
         // dlhandle is "leaked"
-        // coverity[leaked_storage] - on purpose
+        // coverity[leaked_storage]
         return pSym( install_path );
     }
 
-    if (user_profile_url != NULL && user_profile_url[0] == '/')
-    {
-        // It should be either a file: URL or a vnd.sun.star.pathname: URL.
-        fprintf( stderr, "second parameter to lok_init_2 '%s' should be a URL, not a pathname\n", user_profile_url );
-        lok_dlclose( dlhandle );
-        free( imp_lib );
-        return NULL;
-    }
-
     free( imp_lib );
     // dlhandle is "leaked"
-    // coverity[leaked_storage] - on purpose
+    // coverity[leaked_storage]
     return pSym2( install_path, user_profile_url );
 #else
     return libreofficekit_hook_2( install_path, user_profile_url );
@@ -339,7 +330,7 @@ int lok_preinit( const char *install_path,  const char *user_profile_url )
     free( imp_lib );
 
     // dlhandle is "leaked"
-    // coverity[leaked_storage] - on purpose
+    // coverity[leaked_storage]
     return pSym( install_path, user_profile_url );
 }
 #endif


More information about the Libreoffice-commits mailing list