summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarc Mutz <marc.mutz@qt.io>2021-12-13 07:08:37 +0100
committerMarc Mutz <marc.mutz@qt.io>2021-12-16 00:01:41 +0100
commite14d0ff8f213e53e5838bb550b5ee148837736cc (patch)
tree6f52ce0f391da0273d64ccf57a6dcdd44362a77a
parent81bf3e68b9edb6fc8635ab5520f86df9c8d6ef04 (diff)
QRingBuffer: simplify QRingChunk::detach()
Just use the QByteArray(ptr, n) ctor instead of the (n, Qt::Uninitialized) one + memcpy() + std::move(). Pick-to: 6.3 Change-Id: I127219c21556e683d15136f7e6f7b3576b7b2444 Reviewed-by: MÃ¥rten Nordheim <marten.nordheim@qt.io>
-rw-r--r--src/corelib/tools/qringbuffer.cpp4
1 files changed, 1 insertions, 3 deletions
diff --git a/src/corelib/tools/qringbuffer.cpp b/src/corelib/tools/qringbuffer.cpp
index d46dcdffdf..f59dcc39c4 100644
--- a/src/corelib/tools/qringbuffer.cpp
+++ b/src/corelib/tools/qringbuffer.cpp
@@ -57,9 +57,7 @@ void QRingChunk::detach()
Q_ASSERT(isShared());
const qsizetype chunkSize = size();
- QByteArray x(chunkSize, Qt::Uninitialized);
- ::memcpy(x.data(), chunk.constData() + headOffset, chunkSize);
- chunk = std::move(x);
+ chunk = QByteArray(std::as_const(*this).data(), chunkSize);
headOffset = 0;
tailOffset = chunkSize;
}