From 5f032cdeff5fc51b209a8058e48aa5d83637b2df Mon Sep 17 00:00:00 2001 From: Anton Kudryavtsev Date: Fri, 1 Sep 2023 14:18:27 +0300 Subject: [PATCH] QDecompressHelper: port some methods to QBAV MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I907019f19cbf4f6086fd6480ea9e01f5ab63b004 Reviewed-by: MÃ¥rten Nordheim --- src/network/access/qdecompresshelper.cpp | 14 +++++++------- src/network/access/qdecompresshelper_p.h | 4 ++-- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/src/network/access/qdecompresshelper.cpp b/src/network/access/qdecompresshelper.cpp index 98c9860450..0efdec3102 100644 --- a/src/network/access/qdecompresshelper.cpp +++ b/src/network/access/qdecompresshelper.cpp @@ -24,7 +24,7 @@ QT_BEGIN_NAMESPACE namespace { struct ContentEncodingMapping { - char name[8]; + QByteArrayView name; QDecompressHelper::ContentEncoding encoding; }; @@ -39,10 +39,10 @@ constexpr ContentEncodingMapping contentEncodingMapping[] { { "deflate", QDecompressHelper::Deflate }, }; -QDecompressHelper::ContentEncoding encodingFromByteArray(const QByteArray &ce) noexcept +QDecompressHelper::ContentEncoding encodingFromByteArray(QByteArrayView ce) noexcept { for (const auto &mapping : contentEncodingMapping) { - if (ce.compare(QByteArrayView(mapping.name, strlen(mapping.name)), Qt::CaseInsensitive) == 0) + if (ce.compare(mapping.name, Qt::CaseInsensitive) == 0) return mapping.encoding; } return QDecompressHelper::None; @@ -68,7 +68,7 @@ ZSTD_DStream *toZstandardPointer(void *ptr) #endif } -bool QDecompressHelper::isSupportedEncoding(const QByteArray &encoding) +bool QDecompressHelper::isSupportedEncoding(QByteArrayView encoding) { return encodingFromByteArray(encoding) != QDecompressHelper::None; } @@ -77,9 +77,9 @@ QByteArrayList QDecompressHelper::acceptedEncoding() { static QByteArrayList accepted = []() { QByteArrayList list; - list.reserve(sizeof(contentEncodingMapping) / sizeof(contentEncodingMapping[0])); + list.reserve(std::size(contentEncodingMapping)); for (const auto &mapping : contentEncodingMapping) { - list << QByteArray(mapping.name); + list << mapping.name.toByteArray(); } return list; }(); @@ -91,7 +91,7 @@ QDecompressHelper::~QDecompressHelper() clear(); } -bool QDecompressHelper::setEncoding(const QByteArray &encoding) +bool QDecompressHelper::setEncoding(QByteArrayView encoding) { Q_ASSERT(contentEncoding == QDecompressHelper::None); if (contentEncoding != QDecompressHelper::None) { diff --git a/src/network/access/qdecompresshelper_p.h b/src/network/access/qdecompresshelper_p.h index 54a9fe92c8..c837c14521 100644 --- a/src/network/access/qdecompresshelper_p.h +++ b/src/network/access/qdecompresshelper_p.h @@ -37,7 +37,7 @@ public: QDecompressHelper() = default; ~QDecompressHelper(); - bool setEncoding(const QByteArray &contentEncoding); + bool setEncoding(QByteArrayView contentEncoding); bool isCountingBytes() const; void setCountingBytesEnabled(bool shouldCount); @@ -57,7 +57,7 @@ public: void setDecompressedSafetyCheckThreshold(qint64 threshold); - static bool isSupportedEncoding(const QByteArray &encoding); + static bool isSupportedEncoding(QByteArrayView encoding); static QByteArrayList acceptedEncoding(); QString errorString() const;