From 268d7b202a132fe88531085682bc3b68604d7c2e Mon Sep 17 00:00:00 2001 From: Marc Mutz Date: Thu, 25 Jan 2024 18:50:19 +0100 Subject: [PATCH] QHttpHeaders: add a missing detach() Before calling a mutable member function (in this case, QList::reserve()) on one of the Private members, we need to ensure exclusive ownership of our external state, otherwise we have a Data Race, because QList::reserve() is not thread-safe (only re-entrant). Change-Id: I1249de9449865cbf6ab519b0d38b3bf4e743f16d Reviewed-by: Juha Vuolle (cherry picked from commit 119a6b51869b7ffba4fa49bc07e78a243fe4a9ba) Reviewed-by: Qt Cherry-pick Bot --- src/network/access/qhttpheaders.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/src/network/access/qhttpheaders.cpp b/src/network/access/qhttpheaders.cpp index 9bb55d9f0bc..91a92e21bb0 100644 --- a/src/network/access/qhttpheaders.cpp +++ b/src/network/access/qhttpheaders.cpp @@ -1040,6 +1040,7 @@ qsizetype QHttpHeaders::size() const noexcept */ void QHttpHeaders::reserve(qsizetype size) { + d.detach(); d->headers.reserve(size); }