summaryrefslogtreecommitdiffstats
path: root/src/corelib/tools/qbitarray.cpp
diff options
context:
space:
mode:
authorMarc Mutz <marc.mutz@qt.io>2024-01-30 11:19:41 +0100
committerMarc Mutz <marc.mutz@qt.io>2024-02-02 15:35:51 +0100
commit0d6ca27517523e960b132bd5e51d9b48bb9a93a3 (patch)
treeb853d514eef7ae2dae54c85b885673002dbfaa7c /src/corelib/tools/qbitarray.cpp
parent9219e8ff1d13a7e9aeb595d60aa4b3767a8941fc (diff)
QBitArray: simplify (size, value) ctor
Don't do the memset() manually just to save re-writing the single leading byte. Pass the initial values to the QByteArray constructor directly. Pick-to: 6.7 Change-Id: I67daf446bebb8c8c6b05d235746ee43604f42445 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Diffstat (limited to 'src/corelib/tools/qbitarray.cpp')
-rw-r--r--src/corelib/tools/qbitarray.cpp4
1 files changed, 1 insertions, 3 deletions
diff --git a/src/corelib/tools/qbitarray.cpp b/src/corelib/tools/qbitarray.cpp
index 20fb7f5304..57e7f0ffe5 100644
--- a/src/corelib/tools/qbitarray.cpp
+++ b/src/corelib/tools/qbitarray.cpp
@@ -135,14 +135,12 @@ static void adjust_head_and_tail(char *data, qsizetype storageSize, qsizetype lo
initialized with \a value, which defaults to false (0).
*/
QBitArray::QBitArray(qsizetype size, bool value)
- : d(allocation_size(size), Qt::Uninitialized)
+ : d(allocation_size(size), value ? 0xFF : 0x00)
{
Q_ASSERT_X(size >= 0, "QBitArray::QBitArray", "Size must be greater than or equal to 0.");
if (size <= 0)
return;
- uchar *c = reinterpret_cast<uchar *>(d.data());
- memset(c + 1, value ? 0xff : 0, d.size() - 1);
adjust_head_and_tail(d.data(), d.size(), size);
}