diff options
-rw-r--r-- | src/websockets/qwebsocket_p.cpp | 2 | ||||
-rw-r--r-- | tests/auto/qwebsocket/tst_qwebsocket.cpp | 7 |
2 files changed, 6 insertions, 3 deletions
diff --git a/src/websockets/qwebsocket_p.cpp b/src/websockets/qwebsocket_p.cpp index f4f7ea4..e1a36c8 100644 --- a/src/websockets/qwebsocket_p.cpp +++ b/src/websockets/qwebsocket_p.cpp @@ -360,7 +360,7 @@ void QWebSocketPrivate::open(const QUrl &url, bool mask) if (!resourceName.endsWith(QChar::fromLatin1('?'))) { resourceName.append(QChar::fromLatin1('?')); } - resourceName.append(url.query()); + resourceName.append(url.query(QUrl::FullyEncoded)); } if (resourceName.isEmpty()) resourceName = QStringLiteral("/"); diff --git a/tests/auto/qwebsocket/tst_qwebsocket.cpp b/tests/auto/qwebsocket/tst_qwebsocket.cpp index 0d1a46d..dfca947 100644 --- a/tests/auto/qwebsocket/tst_qwebsocket.cpp +++ b/tests/auto/qwebsocket/tst_qwebsocket.cpp @@ -417,8 +417,11 @@ void tst_QWebSocket::tst_sendTextMessage() QSignalSpy binaryMessageReceived(&socket, SIGNAL(binaryMessageReceived(QByteArray))); QSignalSpy binaryFrameReceived(&socket, SIGNAL(binaryFrameReceived(QByteArray,bool))); - socket.open(QUrl(QStringLiteral("ws://") + echoServer.hostAddress().toString() + - QStringLiteral(":") + QString::number(echoServer.port()))); + QUrl url = QUrl(QStringLiteral("ws://") + echoServer.hostAddress().toString() + + QStringLiteral(":") + QString::number(echoServer.port())); + url.addQueryItem("queryitem", "with encoded characters"); + + socket.open(url); if (socketConnectedSpy.count() == 0) QVERIFY(socketConnectedSpy.wait(500)); |