summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorLuca Niccoli <lultimouomo@gmail.com>2015-03-09 18:48:31 +0100
committerLiang Qi <liang.qi@theqtcompany.com>2015-04-09 08:14:10 +0000
commit48418a2e16b6dede3bc002dda5a3cb277fd3e802 (patch)
tree030f396ecea97278ef8b4957922abac93c751dee /src
parenteb197b8f22e90acb2ee6d9699cce04a402d16538 (diff)
downloadqtwebsockets-48418a2e16b6dede3bc002dda5a3cb277fd3e802.tar.gz
Do not decode the HTTP resource name
The resource needs to be sent encoded in the HTTP request. Task-number: QTBUG-44889 Change-Id: I3c6c56f5fea1553f3b5751de7da0cfc76150f4b9 Reviewed-by: Liang Qi <liang.qi@theqtcompany.com>
Diffstat (limited to 'src')
-rw-r--r--src/websockets/qwebsocket_p.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/websockets/qwebsocket_p.cpp b/src/websockets/qwebsocket_p.cpp
index 8aa2fe1..3280377 100644
--- a/src/websockets/qwebsocket_p.cpp
+++ b/src/websockets/qwebsocket_p.cpp
@@ -353,8 +353,9 @@ void QWebSocketPrivate::open(const QUrl &url, bool mask)
m_isClosingHandshakeSent = false;
setRequestUrl(url);
- QString resourceName = url.path();
- if (resourceName.contains(QStringLiteral("\r\n"))) {
+ QString resourceName = url.path(QUrl::FullyEncoded);
+ // Check for encoded \r\n
+ if (resourceName.contains(QStringLiteral("%0D%0A"))) {
setRequestUrl(QUrl()); //clear requestUrl
setErrorString(QWebSocket::tr("Invalid resource name."));
Q_EMIT q->error(QAbstractSocket::ConnectionRefusedError);