And do the same for QByteArray.
Instantiating the default constructor uses QArrayData::sharedNull() for
the d-pointer which is the cheapest constructor in memory and
instructions.
Change-Id: I1ceaafbc0c0cb1ccc5690edba89ea1100f30b3cd
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
}
const QString acceptKey = headers.value(QStringLiteral("Sec-WebSocket-Accept"),
- QStringLiteral(""));
- const QString upgrade = headers.value(QStringLiteral("Upgrade"), QStringLiteral(""));
- const QString connection = headers.value(QStringLiteral("Connection"), QStringLiteral(""));
+ QString());
+ const QString upgrade = headers.value(QStringLiteral("Upgrade"), QString());
+ const QString connection = headers.value(QStringLiteral("Connection"), QString());
// unused for the moment
// const QString extensions = headers.value(QStringLiteral("Sec-WebSocket-Extensions"),
-// QStringLiteral(""));
+// QString());
// const QString protocol = headers.value(QStringLiteral("Sec-WebSocket-Protocol"),
-// QStringLiteral(""));
+// QString());
const QString version = headers.value(QStringLiteral("Sec-WebSocket-Version"),
- QStringLiteral(""));
+ QString());
if (Q_LIKELY(httpStatusCode == 101)) {
//HTTP/x.y 101 Switching Protocols
% QStringLiteral(":")
% QString::number(m_requestUrl.port(80)),
origin(),
- QStringLiteral(""),
- QStringLiteral(""),
+ QString(),
+ QString(),
m_key);
m_pSocket->write(handshake.toLatin1());
}
headerLine = textStream.readLine();
}
- const QString host = m_headers.value(QStringLiteral("Host"), QStringLiteral(""));
+ const QString host = m_headers.value(QStringLiteral("Host"), QString());
m_requestUrl = QUrl::fromEncoded(resourceName.toLatin1());
if (m_requestUrl.isRelative())
m_requestUrl.setHost(host);
}
//sort in descending order
std::sort(m_versions.begin(), m_versions.end(), std::greater<QWebSocketProtocol::Version>());
- m_key = m_headers.value(QStringLiteral("Sec-WebSocket-Key"), QStringLiteral(""));
+ m_key = m_headers.value(QStringLiteral("Sec-WebSocket-Key"), QString());
//must contain "Upgrade", case-insensitive
- const QString upgrade = m_headers.value(QStringLiteral("Upgrade"), QStringLiteral(""));
+ const QString upgrade = m_headers.value(QStringLiteral("Upgrade"), QString());
//must be equal to "websocket", case-insensitive
- const QString connection = m_headers.value(QStringLiteral("Connection"), QStringLiteral(""));
+ const QString connection = m_headers.value(QStringLiteral("Connection"), QString());
const QStringList connectionLine = connection.split(QStringLiteral(","),
QString::SkipEmptyParts);
QStringList connectionValues;
connectionValues << (*c).trimmed();
//optional headers
- m_origin = m_headers.value(QStringLiteral("Sec-WebSocket-Origin"), QStringLiteral(""));
+ m_origin = m_headers.value(QStringLiteral("Sec-WebSocket-Origin"), QString());
const QStringList protocolLines = m_headers.values(QStringLiteral("Sec-WebSocket-Protocol"));
for (QStringList::const_iterator pl = protocolLines.begin(); pl != protocolLines.end(); ++pl) {
QStringList protocols = (*pl).split(QStringLiteral(","), QString::SkipEmptyParts);
void tst_WebSocketCorsAuthenticator::tst_initialization()
{
{
- QWebSocketCorsAuthenticator authenticator(QStringLiteral(""));
+ QWebSocketCorsAuthenticator authenticator((QString()));
QCOMPARE(authenticator.allowed(), true);
QCOMPARE(authenticator.origin(), QString());
QTest::newRow("Non masked final text frame with no payload")
<< 0 << 0 << 0
<< 0U << QWebSocketProtocol::OC_TEXT
- << true << QByteArrayLiteral("")
+ << true << QByteArray()
<< false << true << false;
QTest::newRow("Non masked final binary frame with no payload")
<< 0 << 0 << 0
<< 0U << QWebSocketProtocol::OC_BINARY
- << true << QByteArrayLiteral("")
+ << true << QByteArray()
<< false << true << false;
QTest::newRow("Non masked final close frame with small payload")
QTest::newRow("Non masked final close frame with no payload")
<< 0 << 0 << 0
<< 0U << QWebSocketProtocol::OC_CLOSE
- << true << QByteArrayLiteral("")
+ << true << QByteArray()
<< true << false << false;
QTest::newRow("Non masked final ping frame with small payload")
<< 0 << 0 << 0
QTest::newRow("Non masked final pong frame with no payload")
<< 0 << 0 << 0
<< 0U << QWebSocketProtocol::OC_PONG
- << true << QByteArrayLiteral("")
+ << true << QByteArray()
<< true << false << false;
QTest::newRow("Non masked final continuation frame with small payload")
QTest::addColumn<QString>("inputdata");
QTest::addColumn<QByteArray>("result");
- QTest::newRow("Empty payload") << 0x12345678u << QStringLiteral("") << QByteArrayLiteral("");
+ QTest::newRow("Empty payload") << 0x12345678u << QString() << QByteArray();
QTest::newRow("ASCII payload of 8 characters") << 0x12345678u << QStringLiteral("abcdefgh") << QByteArrayLiteral("\x73\x56\x35\x1C\x77\x52\x31\x10");
QTest::newRow("ASCII payload of 9 characters") << 0x12345678u << QStringLiteral("abcdefghi") << QByteArrayLiteral("\x73\x56\x35\x1C\x77\x52\x31\x10\x7B");
//MSVC doesn't like UTF-8 in source code; the following text is represented in the string below: ∫∂ƒ©øØ