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>
bb10
Marc Mutz 2021-12-13 07:08:37 +01:00
parent 81bf3e68b9
commit e14d0ff8f2
1 changed files with 1 additions and 3 deletions

View File

@ -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;
}