tdf#125755: specialize reduced decoding for mobile apps.
The WOPI multiple encoding magic is unpleasant; best not to try to
unwind it all now.
This fixes Download-As and SllideShow pieces.
cf. c806acb157fa501a8be872042b534a2f49641e62
Change-Id: Ie06ad386c7a30e0f572e299e50fc949ce41b09f5
diff --git a/wsd/DocumentBroker.cpp b/wsd/DocumentBroker.cpp
index ddfaa92..177da06 100644
--- a/wsd/DocumentBroker.cpp
+++ b/wsd/DocumentBroker.cpp
@@ -86,7 +86,13 @@ void sendLastModificationTime(const std::shared_ptr<Session>& session,
Poco::URI DocumentBroker::sanitizeURI(const std::string& uri)
{
// The URI of the document should be url-encoded.
#if !MOBILEAPP
std::string decodedUri;
Poco::URI::decode(uri, decodedUri);
Poco::URI uriPublic(decodedUri);
#else
Poco::URI uriPublic(uri);
#endif
if (uriPublic.isRelative() || uriPublic.getScheme() == "file")
{
diff --git a/wsd/LOOLWSD.cpp b/wsd/LOOLWSD.cpp
index 221d179..f76aaab 100644
--- a/wsd/LOOLWSD.cpp
+++ b/wsd/LOOLWSD.cpp
@@ -2430,8 +2430,7 @@ private:
}
LOG_TRC("Clipboard request for us: " << serverId << " with tag " << tag);
const auto uriPublic = DocumentBroker::sanitizeURI(WOPISrc);
const auto docKey = DocumentBroker::getDocKey(uriPublic);
const auto docKey = DocumentBroker::getDocKey(DocumentBroker::sanitizeURI(WOPISrc));
std::shared_ptr<DocumentBroker> docBroker;
{