From ce8c33e710a9003a1912ab09fc31417b50b7a4b5 Mon Sep 17 00:00:00 2001 From: Lorn Potter Date: Wed, 10 Jun 2020 13:24:51 +1000 Subject: [PATCH] wasm: fix network POST data corruption MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Emscripten does not like when the post data gets deleted in the local scope. Fixes: QTBUG-84685 Pick-to: 5.15 Change-Id: I17f9d5cc3253c26b42253daa68e2fbaccc48eaf6 Reviewed-by: Morten Johan Sørvig --- src/network/access/qnetworkreplywasmimpl.cpp | 9 ++++----- src/network/access/qnetworkreplywasmimpl_p.h | 1 + 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/network/access/qnetworkreplywasmimpl.cpp b/src/network/access/qnetworkreplywasmimpl.cpp index 7cb197c3e57..a1779146f48 100644 --- a/src/network/access/qnetworkreplywasmimpl.cpp +++ b/src/network/access/qnetworkreplywasmimpl.cpp @@ -231,11 +231,10 @@ void QNetworkReplyWasmImplPrivate::doSendRequest() if (outgoingData) { // data from post request // handle extra data - QByteArray extraData; - extraData = outgoingData->readAll(); // is there a size restriction here? - if (!extraData.isEmpty()) { - attr.requestData = extraData.constData(); - attr.requestDataSize = extraData.size(); + requestData = outgoingData->readAll(); // is there a size restriction here? + if (!requestData.isEmpty()) { + attr.requestData = requestData.data(); + attr.requestDataSize = requestData.size(); } } diff --git a/src/network/access/qnetworkreplywasmimpl_p.h b/src/network/access/qnetworkreplywasmimpl_p.h index 0a62e8ad37a..f8e532ff98c 100644 --- a/src/network/access/qnetworkreplywasmimpl_p.h +++ b/src/network/access/qnetworkreplywasmimpl_p.h @@ -135,6 +135,7 @@ public: QIODevice *outgoingData; QSharedPointer outgoingDataBuffer; + QByteArray requestData; void doAbort() const;