summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.qmake.conf1
-rw-r--r--examples/websockets/simplechat/chatserver.cpp3
-rw-r--r--src/websockets/qwebsocket_p.cpp19
-rw-r--r--src/websockets/qwebsocket_p.h2
-rw-r--r--src/websockets/qwebsockethandshakeresponse.cpp2
-rw-r--r--tests/manual/websockets/tst_websockets.cpp5
6 files changed, 14 insertions, 18 deletions
diff --git a/.qmake.conf b/.qmake.conf
index 69f27df..d1e1c4c 100644
--- a/.qmake.conf
+++ b/.qmake.conf
@@ -1,5 +1,6 @@
load(qt_build_config)
CONFIG += warning_clean
+DEFINES += QT_NO_FOREACH
MODULE_VERSION = 5.8.0
diff --git a/examples/websockets/simplechat/chatserver.cpp b/examples/websockets/simplechat/chatserver.cpp
index 5a0c998..ae207f5 100644
--- a/examples/websockets/simplechat/chatserver.cpp
+++ b/examples/websockets/simplechat/chatserver.cpp
@@ -93,8 +93,7 @@ void ChatServer::onNewConnection()
void ChatServer::processMessage(QString message)
{
QWebSocket *pSender = qobject_cast<QWebSocket *>(sender());
- Q_FOREACH (QWebSocket *pClient, m_clients)
- {
+ for (QWebSocket *pClient : qAsConst(m_clients)) {
if (pClient != pSender) //don't echo message back to sender
{
pClient->sendTextMessage(message);
diff --git a/src/websockets/qwebsocket_p.cpp b/src/websockets/qwebsocket_p.cpp
index 3a20b09..8f55e24 100644
--- a/src/websockets/qwebsocket_p.cpp
+++ b/src/websockets/qwebsocket_p.cpp
@@ -305,11 +305,9 @@ QWebSocket *QWebSocketPrivate::upgradeFrom(QTcpSocket *pTcpSocket,
QWebSocket *pWebSocket = new QWebSocket(pTcpSocket, response.acceptedVersion(), parent);
if (Q_LIKELY(pWebSocket)) {
QNetworkRequest netRequest(request.requestUrl());
- QMapIterator<QString, QString> headerIter(request.headers());
- while (headerIter.hasNext()) {
- headerIter.next();
- netRequest.setRawHeader(headerIter.key().toLatin1(), headerIter.value().toLatin1());
- }
+ const auto headers = request.headers();
+ for (auto it = headers.begin(), end = headers.end(); it != end; ++it)
+ netRequest.setRawHeader(it.key().toLatin1(), it.value().toLatin1());
#ifndef QT_NO_SSL
if (QSslSocket *sslSock = qobject_cast<QSslSocket *>(pTcpSocket))
pWebSocket->setSslConfiguration(sslSock->sslConfiguration());
@@ -1087,7 +1085,8 @@ void QWebSocketPrivate::processStateChanged(QAbstractSocket::SocketState socketS
m_key = generateKey();
QList<QPair<QString, QString> > headers;
- foreach (const QByteArray &key, m_request.rawHeaderList())
+ const auto keys = m_request.rawHeaderList();
+ for (const QByteArray &key : keys)
headers << qMakePair(QString::fromLatin1(key),
QString::fromLatin1(m_request.rawHeader(key)));
@@ -1203,7 +1202,7 @@ QString QWebSocketPrivate::createHandShakeRequest(QString resourceName,
QString extensions,
QString protocols,
QByteArray key,
- QList<QPair<QString, QString> > headers)
+ const QList<QPair<QString, QString> > &headers)
{
QStringList handshakeRequest;
if (resourceName.contains(QStringLiteral("\r\n"))) {
@@ -1246,11 +1245,9 @@ QString QWebSocketPrivate::createHandShakeRequest(QString resourceName,
if (protocols.length() > 0)
handshakeRequest << QStringLiteral("Sec-WebSocket-Protocol: ") % protocols;
- QListIterator<QPair<QString, QString> > headerIter(headers);
- while (headerIter.hasNext()) {
- const QPair<QString,QString> &header = headerIter.next();
+ for (const auto &header : headers)
handshakeRequest << header.first % QStringLiteral(": ") % header.second;
- }
+
handshakeRequest << QStringLiteral("\r\n");
return handshakeRequest.join(QStringLiteral("\r\n"));
diff --git a/src/websockets/qwebsocket_p.h b/src/websockets/qwebsocket_p.h
index 139c7ff..4863de7 100644
--- a/src/websockets/qwebsocket_p.h
+++ b/src/websockets/qwebsocket_p.h
@@ -193,7 +193,7 @@ private:
QString extensions,
QString protocols,
QByteArray key,
- QList<QPair<QString, QString> > headers);
+ const QList<QPair<QString, QString> > &headers);
static QWebSocket *upgradeFrom(QTcpSocket *tcpSocket,
const QWebSocketHandshakeRequest &request,
diff --git a/src/websockets/qwebsockethandshakeresponse.cpp b/src/websockets/qwebsockethandshakeresponse.cpp
index b5e1052..ee57d5c 100644
--- a/src/websockets/qwebsockethandshakeresponse.cpp
+++ b/src/websockets/qwebsockethandshakeresponse.cpp
@@ -207,7 +207,7 @@ QString QWebSocketHandshakeResponse::getHandshakeResponse(
if (Q_UNLIKELY(!m_canUpgrade)) {
response << QStringLiteral("HTTP/1.1 400 Bad Request");
QStringList versions;
- Q_FOREACH (QWebSocketProtocol::Version version, supportedVersions)
+ for (QWebSocketProtocol::Version version : supportedVersions)
versions << QString::number(static_cast<int>(version));
response << QStringLiteral("Sec-WebSocket-Version: ")
% versions.join(QStringLiteral(", "));
diff --git a/tests/manual/websockets/tst_websockets.cpp b/tests/manual/websockets/tst_websockets.cpp
index 8568532..6b327aa 100644
--- a/tests/manual/websockets/tst_websockets.cpp
+++ b/tests/manual/websockets/tst_websockets.cpp
@@ -152,12 +152,11 @@ void tst_WebSocketsTest::testLocalAddress()
void tst_WebSocketsTest::testPeerAddress()
{
QHostInfo hostInfo = QHostInfo::fromName(m_url.host());
- QList<QHostAddress> addresses = hostInfo.addresses();
+ const QList<QHostAddress> addresses = hostInfo.addresses();
QVERIFY(addresses.length() > 0);
QHostAddress peer = m_pWebSocket->peerAddress();
bool found = false;
- Q_FOREACH (const QHostAddress &a, addresses)
- {
+ for (const QHostAddress &a : addresses) {
if (a == peer)
{
found = true;