diff options
| author | Anton Kudryavtsev <[email protected]> | 2023-09-01 11:59:07 +0300 |
|---|---|---|
| committer | Anton Kudryavtsev <[email protected]> | 2023-09-04 18:16:00 +0300 |
| commit | d9620f0660a2bd35be14fac66d3e88feb0d4b916 (patch) | |
| tree | d9bb11d2f87435f27adb9403bdb01f830fd01079 /src/network/access/qnetworkcookie.cpp | |
| parent | 4ee081c2f70d0f37dfcc71f717bca25c132db4fc (diff) | |
qnetworkcookie: reduce allocations
Use CaseInsensitive compare more.
While touching code, replcace QBA literal with QBAV
Change-Id: Iecd2740c995f1e24b4285440b9440e4745f93208
Reviewed-by: Thiago Macieira <[email protected]>
Reviewed-by: MÃ¥rten Nordheim <[email protected]>
Diffstat (limited to 'src/network/access/qnetworkcookie.cpp')
| -rw-r--r-- | src/network/access/qnetworkcookie.cpp | 24 |
1 files changed, 14 insertions, 10 deletions
diff --git a/src/network/access/qnetworkcookie.cpp b/src/network/access/qnetworkcookie.cpp index fab8c98ed2e..b565e964d8a 100644 --- a/src/network/access/qnetworkcookie.cpp +++ b/src/network/access/qnetworkcookie.cpp @@ -443,29 +443,33 @@ static QPair<QByteArray, QByteArray> nextField(QByteArrayView text, int &positio */ namespace { -QByteArray sameSiteToRawString(QNetworkCookie::SameSite samesite) + +constexpr QByteArrayView sameSiteNone() noexcept { return "None"; } +constexpr QByteArrayView sameSiteLax() noexcept { return "Lax"; } +constexpr QByteArrayView sameSiteStrict() noexcept { return "Strict"; } + +QByteArrayView sameSiteToRawString(QNetworkCookie::SameSite samesite) noexcept { switch (samesite) { case QNetworkCookie::SameSite::None: - return QByteArrayLiteral("None"); + return sameSiteNone(); case QNetworkCookie::SameSite::Lax: - return QByteArrayLiteral("Lax"); + return sameSiteLax(); case QNetworkCookie::SameSite::Strict: - return QByteArrayLiteral("Strict"); + return sameSiteStrict(); case QNetworkCookie::SameSite::Default: break; } - return QByteArray(); + return QByteArrayView(); } -QNetworkCookie::SameSite sameSiteFromRawString(QByteArray str) +QNetworkCookie::SameSite sameSiteFromRawString(QByteArrayView str) noexcept { - str = str.toLower(); - if (str == QByteArrayLiteral("none")) + if (str.compare(sameSiteNone(), Qt::CaseInsensitive) == 0) return QNetworkCookie::SameSite::None; - if (str == QByteArrayLiteral("lax")) + if (str.compare(sameSiteLax(), Qt::CaseInsensitive) == 0) return QNetworkCookie::SameSite::Lax; - if (str == QByteArrayLiteral("strict")) + if (str.compare(sameSiteStrict(), Qt::CaseInsensitive) == 0) return QNetworkCookie::SameSite::Strict; return QNetworkCookie::SameSite::Default; } |
