wasm: fix network status code propagation
Fixes: QTBUG-86620 Pick-to: 5.15 Change-Id: I911636739dc57e47bc2a07a583f4e67fc08b1b19 Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io> Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>bb10
parent
3031787485
commit
49517aad70
|
|
@ -283,6 +283,7 @@ void QNetworkReplyWasmImplPrivate::emitReplyError(QNetworkReply::NetworkError er
|
|||
|
||||
q->setError(errorCode, errorString);
|
||||
emit q->errorOccurred(errorCode);
|
||||
emit q->finished();
|
||||
}
|
||||
|
||||
void QNetworkReplyWasmImplPrivate::emitDataReadProgress(qint64 bytesReceived, qint64 bytesTotal)
|
||||
|
|
@ -315,12 +316,6 @@ void QNetworkReplyWasmImplPrivate::dataReceived(const QByteArray &buffer, int bu
|
|||
downloadBuffer.append(buffer, bufferSize);
|
||||
|
||||
emit q->readyRead();
|
||||
|
||||
if (downloadBufferCurrentSize == totalDownloadSize) {
|
||||
q->setFinished(true);
|
||||
emit q->readChannelFinished();
|
||||
emit q->finished();
|
||||
}
|
||||
}
|
||||
|
||||
//taken from qnetworkrequest.cpp
|
||||
|
|
@ -457,6 +452,10 @@ void QNetworkReplyWasmImplPrivate::downloadSucceeded(emscripten_fetch_t *fetch)
|
|||
if (reply) {
|
||||
QByteArray buffer(fetch->data, fetch->numBytes);
|
||||
reply->dataReceived(buffer, buffer.size());
|
||||
|
||||
QByteArray statusText(fetch->statusText);
|
||||
reply->setStatusCode(fetch->status, statusText);
|
||||
reply->setReplyFinished();
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -467,6 +466,14 @@ void QNetworkReplyWasmImplPrivate::setStatusCode(int status, const QByteArray &s
|
|||
q->setAttribute(QNetworkRequest::HttpReasonPhraseAttribute, statusText);
|
||||
}
|
||||
|
||||
void QNetworkReplyWasmImplPrivate::setReplyFinished()
|
||||
{
|
||||
Q_Q(QNetworkReplyWasmImpl);
|
||||
q->setFinished(true);
|
||||
emit q->readChannelFinished();
|
||||
emit q->finished();
|
||||
}
|
||||
|
||||
void QNetworkReplyWasmImplPrivate::stateChange(emscripten_fetch_t *fetch)
|
||||
{
|
||||
if (fetch->readyState == /*HEADERS_RECEIVED*/ 2) {
|
||||
|
|
|
|||
|
|
@ -147,6 +147,7 @@ public:
|
|||
static QNetworkReply::NetworkError statusCodeFromHttp(int httpStatusCode, const QUrl &url);
|
||||
|
||||
emscripten_fetch_t *m_fetch;
|
||||
void setReplyFinished();
|
||||
|
||||
Q_DECLARE_PUBLIC(QNetworkReplyWasmImpl)
|
||||
};
|
||||
|
|
|
|||
Loading…
Reference in New Issue