Axivion: Propagate cancellation form future to network reply (abort it)

Change-Id: Ibcad2410276dbf752f73fbc8c9091156892670ff
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: hjk <hjk@qt.io>
This commit is contained in:
Andreas Loth
2023-09-07 11:35:25 +02:00
parent fcfe73d8f1
commit b8564b48c0

View File

@@ -81,6 +81,7 @@ QFuture<DashboardClient::RawProjectInfo> DashboardClient::fetchProjectInfo(const
request.setRawHeader(QByteArrayLiteral(u8"X-Axivion-User-Agent"), ua);
std::shared_ptr<QNetworkReply> reply{ this->m_networkAccessManager.get(request), deleteLater };
return QtFuture::connect(reply.get(), &QNetworkReply::finished)
.onCanceled(reply.get(), [reply] { reply->abort(); })
.then(RawBodyReader(reply))
.then(QtFuture::Launch::Async, &RawBodyParser<Dto::ProjectInfoDto>);
}