[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    [kdepim-runtime/Applications/15.08] resources/dav/protocols: Don't decode URLs found in responses
From:       Grégory_Oestreicher <greg () kamago ! net>
Date:       2015-08-31 20:35:33
Message-ID: E1ZWVnh-0004IF-0f () scm ! kde ! org
[Download RAW message or body]

Git commit 09282b0489a5f84b6173e99daf24e3dc5540ae78 by Grégory Oestreicher.
Committed on 31/08/2015 at 20:35.
Pushed by goestreicher into branch 'Applications/15.08'.

Don't decode URLs found in responses

BUG: 351652
FIXED-IN: 15.08.1

M  +8    -3    resources/dav/protocols/caldavprotocol.cpp
M  +8    -3    resources/dav/protocols/carddavprotocol.cpp

http://commits.kde.org/kdepim-runtime/09282b0489a5f84b6173e99daf24e3dc5540ae78

diff --git a/resources/dav/protocols/caldavprotocol.cpp \
b/resources/dav/protocols/caldavprotocol.cpp index 8b87c79..fbdefd5 100644
--- a/resources/dav/protocols/caldavprotocol.cpp
+++ b/resources/dav/protocols/caldavprotocol.cpp
@@ -282,9 +282,14 @@ QDomDocument CaldavProtocol::itemsReportQuery(const QStringList \
&urls) const  
     foreach (const QString &url, urls) {
         QDomElement hrefElement = document.createElementNS(QStringLiteral("DAV:"), \
                QStringLiteral("href"));
-        const KUrl pathUrl(url);
-
-        const QDomText textNode = \
document.createTextNode(pathUrl.encodedPathAndQuery()); +         const QUrl pathUrl \
= QUrl::fromUserInput(url); +         QString encodedUrl = \
QString::fromAscii(pathUrl.encodedPath()); +         if ( pathUrl.hasQuery() ) {
+             encodedUrl.append(QStringLiteral("?"));
+             encodedUrl.append(QString::fromAscii(pathUrl.encodedQuery()));
+         }
+
+        const QDomText textNode = document.createTextNode(encodedUrl);
         hrefElement.appendChild(textNode);
 
         multigetElement.appendChild(hrefElement);
diff --git a/resources/dav/protocols/carddavprotocol.cpp \
b/resources/dav/protocols/carddavprotocol.cpp index 2845122..d8e7eb0 100644
--- a/resources/dav/protocols/carddavprotocol.cpp
+++ b/resources/dav/protocols/carddavprotocol.cpp
@@ -116,9 +116,14 @@ QDomDocument CarddavProtocol::itemsReportQuery(const QStringList \
&urls) const  
     foreach (const QString &url, urls) {
         QDomElement hrefElement = document.createElementNS(QStringLiteral("DAV:"), \
                QStringLiteral("href"));
-        const KUrl pathUrl(url);
-
-        const QDomText textNode = \
document.createTextNode(pathUrl.encodedPathAndQuery()); +         const QUrl pathUrl \
= QUrl::fromUserInput(url); +         QString encodedUrl = \
QString::fromAscii(pathUrl.encodedPath()); +         if ( pathUrl.hasQuery() ) {
+             encodedUrl.append(QStringLiteral("?"));
+             encodedUrl.append(QString::fromAscii(pathUrl.encodedQuery()));
+         }
+
+        const QDomText textNode = document.createTextNode(encodedUrl);
         hrefElement.appendChild(textNode);
 
         multigetElement.appendChild(hrefElement);


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic