diff options
author | Juha Vuolle <juha.vuolle@qt.io> | 2024-02-29 13:08:27 +0200 |
---|---|---|
committer | Juha Vuolle <juha.vuolle@qt.io> | 2024-03-05 08:10:14 +0200 |
commit | de37316160920f88101fbb59e32b401d139f2e80 (patch) | |
tree | 5796b2cc06df3e9a1ae3b01fcd3aca1817feec0f /src/network | |
parent | c0e4b73743b9e9e8c3e116f9db9fe37bfcd89bf5 (diff) |
DRY QHttpHeaders::combinedValue() implementation
Pick-to: 6.7
Task-number: QTBUG-122020
Change-Id: I6232ea725d47800a9236ed90b70004a915bc8b65
Reviewed-by: MÃ¥rten Nordheim <marten.nordheim@qt.io>
Diffstat (limited to 'src/network')
-rw-r--r-- | src/network/access/qhttpheaders.cpp | 34 |
1 files changed, 16 insertions, 18 deletions
diff --git a/src/network/access/qhttpheaders.cpp b/src/network/access/qhttpheaders.cpp index d0b6ed7a7a..18b76a3035 100644 --- a/src/network/access/qhttpheaders.cpp +++ b/src/network/access/qhttpheaders.cpp @@ -790,6 +790,8 @@ public: using Self = QExplicitlySharedDataPointer<QHttpHeadersPrivate>; static void removeAll(Self &d, const HeaderName &name); + void combinedValue(const HeaderName &name, QByteArray &result) const; + QList<Header> headers; }; @@ -819,6 +821,18 @@ void QHttpHeadersPrivate::removeAll(Self &d, const HeaderName &name) } } +void QHttpHeadersPrivate::combinedValue(const HeaderName &name, QByteArray &result) const +{ + const char* separator = ""; + for (const auto &h : std::as_const(headers)) { + if (h.name == name) { + result.append(separator); + result.append(h.value); + separator = ", "; + } + } +} + /*! Creates a new QHttpHeaders object. */ @@ -1365,15 +1379,7 @@ QByteArray QHttpHeaders::combinedValue(QAnyStringView name) const if (isEmpty()) return result; - const HeaderName hname(name); - const char* separator = ""; - for (const auto &h : std::as_const(d->headers)) { - if (h.name == hname) { - result.append(separator); - result.append(h.value); - separator = ", "; - } - } + d->combinedValue(HeaderName{name}, result); return result; } @@ -1386,15 +1392,7 @@ QByteArray QHttpHeaders::combinedValue(WellKnownHeader name) const if (isEmpty()) return result; - const HeaderName hname(name); - const char* separator = ""; - for (const auto &h : std::as_const(d->headers)) { - if (h.name == hname) { - result.append(separator); - result.append(h.value); - separator = ", "; - } - } + d->combinedValue(HeaderName{name}, result); return result; } |