configure.ac | 2 +- debian/changelog | 6 ++++++ debian/control | 2 +- loleaflet/dist/toolbar/toolbar.js | 4 +++- loleaflet/src/layer/tile/TileLayer.js | 2 ++ loolwsd.spec.in | 2 +- test/UnitWOPISaveAs.cpp | 10 ++++++---- test/WopiTestServer.hpp | 2 +- wsd/ClientSession.cpp | 14 +++++++++----- 9 files changed, 30 insertions(+), 14 deletions(-)
New commits: commit 6931f9b2771d0fd58085ddf11a5c05baa59936d5 Author: Andras Timar <[email protected]> AuthorDate: Thu Mar 28 11:13:16 2019 +0100 Commit: Andras Timar <[email protected]> CommitDate: Thu Mar 28 12:30:03 2019 +0100 Bump package version to 3.4.4-1 and updated dependencies Change-Id: I752a862aff6b6c01108b9f11b78d018a669ea293 diff --git a/configure.ac b/configure.ac index b1f54a955..6bed901c3 100644 --- a/configure.ac +++ b/configure.ac @@ -3,7 +3,7 @@ AC_PREREQ([2.63]) -AC_INIT([loolwsd], [3.4.3], [[email protected]]) +AC_INIT([loolwsd], [3.4.4], [[email protected]]) LT_INIT([shared, disable-static, dlopen]) AM_INIT_AUTOMAKE([1.10 subdir-objects tar-pax -Wno-portability]) diff --git a/debian/changelog b/debian/changelog index aad29b23a..e324af6e7 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,9 @@ +loolwsd (3.4.4-1) unstable; urgency=medium + + * see the git log: http://col.la/cool3 + + -- Andras Timar <[email protected]> Thu, 28 Mar 2019 10:30:00 +0100 + loolwsd (3.4.3-1) unstable; urgency=medium * see the git log: http://col.la/cool3 diff --git a/debian/control b/debian/control index 00c38b69d..e814c92a8 100644 --- a/debian/control +++ b/debian/control @@ -8,7 +8,7 @@ Standards-Version: 3.9.7 Package: loolwsd Section: web Architecture: any -Depends: ${shlibs:Depends}, ${misc:Depends}, libsm6, libxinerama1, libxrender1, libgl1-mesa-glx, libcups2, libxcb-render0, libxcb-shm0, locales-all, adduser, expat, fontconfig, cpio, libcap2-bin, collaboraofficebasis5.3-calc (>= 5.3.10.62), collaboraofficebasis5.3-core (>= 5.3.10.62), collaboraofficebasis5.3-graphicfilter (>= 5.3.10.62), collaboraofficebasis5.3-images (>= 5.3.10.62), collaboraofficebasis5.3-impress (>= 5.3.10.62), collaboraofficebasis5.3-ooofonts (>= 5.3.10.62), collaboraofficebasis5.3-writer (>= 5.3.10.62), collaboraoffice5.3 (>= 5.3.10.62), collaboraoffice5.3-ure (>= 5.3.10.62), collaboraofficebasis5.3-en-us (>= 5.3.10.62), collaboraofficebasis5.3-en-us-calc (>= 5.3.10.62), collaboraofficebasis5.3-en-us-res (>= 5.3.10.62), collaboraofficebasis5.3-noto-fonts (>= 5.3.10.62), collaboraofficebasis5.3-draw (>= 5.3.10.62), collaboraofficebasis5.3-extension-pdf-import (>= 5.3.10.62), collaboraofficebasis5.3-filter-data (>= 5.3.10.62), collaboraofficebasis5.3-ooolinguisti c (>= 5.3.10.62), collaboraoffice5.3-dict-en (>= 5.3.10.62) +Depends: ${shlibs:Depends}, ${misc:Depends}, libsm6, libxinerama1, libxrender1, libgl1-mesa-glx, libcups2, libxcb-render0, libxcb-shm0, locales-all, adduser, expat, fontconfig, cpio, libcap2-bin, collaboraofficebasis5.3-calc (>= 5.3.10.64), collaboraofficebasis5.3-core (>= 5.3.10.64), collaboraofficebasis5.3-graphicfilter (>= 5.3.10.64), collaboraofficebasis5.3-images (>= 5.3.10.64), collaboraofficebasis5.3-impress (>= 5.3.10.64), collaboraofficebasis5.3-ooofonts (>= 5.3.10.64), collaboraofficebasis5.3-writer (>= 5.3.10.64), collaboraoffice5.3 (>= 5.3.10.64), collaboraoffice5.3-ure (>= 5.3.10.64), collaboraofficebasis5.3-en-us (>= 5.3.10.64), collaboraofficebasis5.3-en-us-calc (>= 5.3.10.64), collaboraofficebasis5.3-en-us-res (>= 5.3.10.64), collaboraofficebasis5.3-noto-fonts (>= 5.3.10.64), collaboraofficebasis5.3-draw (>= 5.3.10.64), collaboraofficebasis5.3-extension-pdf-import (>= 5.3.10.64), collaboraofficebasis5.3-filter-data (>= 5.3.10.64), collaboraofficebasis5.3-ooolinguisti c (>= 5.3.10.64), collaboraoffice5.3-dict-en (>= 5.3.10.64) Conflicts: collaboraofficebasis5.3-gnome-integration, collaboraofficebasis5.3-kde-integration Description: LibreOffice Online WebSocket Daemon LOOLWSD is a daemon that talks to web browser clients and provides LibreOffice diff --git a/loolwsd.spec.in b/loolwsd.spec.in index a02960c11..4134620e5 100644 --- a/loolwsd.spec.in +++ b/loolwsd.spec.in @@ -38,7 +38,7 @@ BuildRequires: libcap-progs linux-glibc-devel systemd-rpm-macros BuildRequires: libcap-progs %endif -Requires: collaboraoffice5.3 >= 5.3.10.62 collaboraoffice5.3-ure >= 5.3.10.62 collaboraofficebasis5.3-core >= 5.3.10.62 collaboraofficebasis5.3-writer >= 5.3.10.62 collaboraofficebasis5.3-impress >= 5.3.10.62 collaboraofficebasis5.3-graphicfilter >= 5.3.10.62 collaboraofficebasis5.3-en-US >= 5.3.10.62 collaboraofficebasis5.3-calc >= 5.3.10.62 collaboraofficebasis5.3-en-US-res >= 5.3.10.62 collaboraofficebasis5.3-en-US-calc >= 5.3.10.62 collaboraofficebasis5.3-ooofonts >= 5.3.10.62 collaboraofficebasis5.3-images >= 5.3.10.62 collaboraofficebasis5.3-noto-fonts >= 5.3.10.62 collaboraofficebasis5.3-draw >= 5.3.10.62 collaboraofficebasis5.3-extension-pdf-import >= 5.3.10.62 collaboraofficebasis5.3-filter-data >= 5.3.10.62 collaboraofficebasis5.3-ooolinguistic >= 5.3.10.62 +Requires: collaboraoffice5.3 >= 5.3.10.64 collaboraoffice5.3-ure >= 5.3.10.64 collaboraofficebasis5.3-core >= 5.3.10.64 collaboraofficebasis5.3-writer >= 5.3.10.64 collaboraofficebasis5.3-impress >= 5.3.10.64 collaboraofficebasis5.3-graphicfilter >= 5.3.10.64 collaboraofficebasis5.3-en-US >= 5.3.10.64 collaboraofficebasis5.3-calc >= 5.3.10.64 collaboraofficebasis5.3-en-US-res >= 5.3.10.64 collaboraofficebasis5.3-en-US-calc >= 5.3.10.64 collaboraofficebasis5.3-ooofonts >= 5.3.10.64 collaboraofficebasis5.3-images >= 5.3.10.64 collaboraofficebasis5.3-noto-fonts >= 5.3.10.64 collaboraofficebasis5.3-draw >= 5.3.10.64 collaboraofficebasis5.3-extension-pdf-import >= 5.3.10.64 collaboraofficebasis5.3-filter-data >= 5.3.10.64 collaboraofficebasis5.3-ooolinguistic >= 5.3.10.64 Conflicts: collaboraofficebasis5.3-kde-integration collaboraofficebasis5.3-gnome-integration Requires(post): coreutils grep sed %if 0%{?rhel} == 6 commit ac3553ef227da8009c31a035738a2e2e167df917 Author: Szymon Kłos <[email protected]> AuthorDate: Thu Mar 28 12:29:09 2019 +0100 Commit: Andras Timar <[email protected]> CommitDate: Thu Mar 28 12:30:03 2019 +0100 Block executing JS code from links Example: hyperlink with target "javascript:alert(document.domain)" After user clicked the link alert was shown. Change-Id: Id9fe06015b45f37ae415f8e3607434d984a6074f diff --git a/loleaflet/dist/toolbar/toolbar.js b/loleaflet/dist/toolbar/toolbar.js index 48157a8f8..06cfa9dfa 100644 --- a/loleaflet/dist/toolbar/toolbar.js +++ b/loleaflet/dist/toolbar/toolbar.js @@ -1521,7 +1521,9 @@ map.on('zoomend', function () { }); map.on('hyperlinkclicked', function (e) { - window.open(e.url, '_blank'); + if (!e.url.startsWith('javascript:')) { + window.open(e.url, '_blank'); + } }); map.on('updatepermission', function (e) { commit 830e054b7cd8806321b244b73b8dcc7a8047c78b Author: Eduard Ardeleanu <[email protected]> AuthorDate: Tue Mar 19 16:00:38 2019 +0200 Commit: Andras Timar <[email protected]> CommitDate: Thu Mar 28 11:08:35 2019 +0100 fix: saveAs breaks when '%' character is used within the filename Change-Id: I2df059abd67be88acae8bd44ae2c74be7778a595 Reviewed-on: https://gerrit.libreoffice.org/69424 Reviewed-by: Jan Holesovsky <[email protected]> Tested-by: Jan Holesovsky <[email protected]> (cherry picked from commit 1926bee07e1c8c7a452fc0bd59235d6a6e540271) diff --git a/test/UnitWOPISaveAs.cpp b/test/UnitWOPISaveAs.cpp index 578ec37f8..2b1f97ea2 100644 --- a/test/UnitWOPISaveAs.cpp +++ b/test/UnitWOPISaveAs.cpp @@ -34,7 +34,7 @@ public: void assertPutRelativeFileRequest(const Poco::Net::HTTPRequest& request) override { // spec says UTF-7... - CPPUNIT_ASSERT_EQUAL(std::string("/jan/hole+AWE-ovsk+AP0-/hello world.pdf"), request.get("X-WOPI-SuggestedTarget")); + CPPUNIT_ASSERT_EQUAL(std::string("/jan/hole+AWE-ovsk+AP0-/hello world+ACU-1.pdf"), request.get("X-WOPI-SuggestedTarget")); // make sure it is a pdf - or at least that it is larger than what it // used to be @@ -43,8 +43,10 @@ public: bool filterSendMessage(const char* data, const size_t len, const WSOpCode /* code */, const bool /* flush */, int& /*unitReturn*/) override { - std::string message(data, len); - if (message == "saveas: url=" + helpers::getTestServerURI() + "/something%20wopi/files/1?access_token=anything filename=hello%20world.pdf") + const std::string message(data, len); + + const std::string expected("saveas: url=" + helpers::getTestServerURI() + "/something%20wopi/files/1?access_token=anything filename=hello%20world%251.pdf"); + if (message.find(expected) == 0) { // successfully exit the test if we also got the outgoing message // notifying about saving the file @@ -65,7 +67,7 @@ public: initWebsocket("/wopi/files/0?access_token=anything"); helpers::sendTextFrame(*_ws->getLOOLWebSocket(), "load url=" + _wopiSrc, testName); - helpers::sendTextFrame(*_ws->getLOOLWebSocket(), "saveas url=wopi:///jan/hole%C5%A1ovsk%C3%BD/hello%20world.pdf", testName); + helpers::sendTextFrame(*_ws->getLOOLWebSocket(), "saveas url=wopi:///jan/hole%C5%A1ovsk%C3%BD/hello%20world%251.pdf", testName); SocketPoll::wakeupWorld(); _phase = Phase::Polling; diff --git a/test/WopiTestServer.hpp b/test/WopiTestServer.hpp index 9cac05987..65a4fb9c1 100644 --- a/test/WopiTestServer.hpp +++ b/test/WopiTestServer.hpp @@ -167,7 +167,7 @@ protected: assertPutRelativeFileRequest(request); std::string wopiURL = helpers::getTestServerURI() + "/something wopi/files/1?access_token=anything"; - std::string content = "{ \"Name\":\"hello world.pdf\", \"Url\":\"" + wopiURL + "\" }"; + std::string content = "{ \"Name\":\"hello world%1.pdf\", \"Url\":\"" + wopiURL + "\" }"; std::ostringstream oss; oss << "HTTP/1.1 200 OK\r\n" diff --git a/wsd/ClientSession.cpp b/wsd/ClientSession.cpp index 864863288..2eee1f797 100644 --- a/wsd/ClientSession.cpp +++ b/wsd/ClientSession.cpp @@ -779,12 +779,12 @@ bool ClientSession::handleKitToClientMessage(const char* buffer, const int lengt return false; } - std::string url, wopiFilename; - Poco::URI::decode(encodedURL, url); + // Save-as completed, inform the ClientSession. + std::string wopiFilename; Poco::URI::decode(encodedWopiFilename, wopiFilename); - // Save-as completed, inform the ClientSession. - Poco::URI resultURL(url); + // URI constructor implicitly decodes when it gets std::string as param + Poco::URI resultURL(encodedURL); if (resultURL.getScheme() == "file") { std::string relative(resultURL.getPath()); @@ -795,7 +795,11 @@ bool ClientSession::handleKitToClientMessage(const char* buffer, const int lengt const Path path(docBroker->getJailRoot(), relative); if (Poco::File(path).exists()) { - resultURL.setPath(path.toString()); + // Encode path for special characters (i.e '%') since Poco::URI::setPath implicitly decodes the input param + std::string encodedPath; + Poco::URI::encode(path.toString(), "", encodedPath); + + resultURL.setPath(encodedPath); } else { commit 0050989ae4f69df82997a965a63341d8a1b69610 Author: Szymon Kłos <[email protected]> AuthorDate: Mon Mar 11 15:57:24 2019 +0100 Commit: Andras Timar <[email protected]> CommitDate: Thu Mar 28 11:05:30 2019 +0100 Always show cursor header (cherry picked from commit 6c3db87af104fda1c985d807cba1f660fa7d862f) diff --git a/loleaflet/src/layer/tile/TileLayer.js b/loleaflet/src/layer/tile/TileLayer.js index 106a16503..c0accaba8 100644 --- a/loleaflet/src/layer/tile/TileLayer.js +++ b/loleaflet/src/layer/tile/TileLayer.js @@ -1539,6 +1539,8 @@ L.TileLayer = L.GridLayer.extend({ else if (viewCursorMarker) { this._viewLayerGroup.removeLayer(viewCursorMarker); } + + this._viewCursors[viewId].marker.showCursorHeader(); }, updateAllViewCursors : function() { _______________________________________________ Libreoffice-commits mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
