From a22595a7b0f47e5ce6ccc4d49bc7b2702d0a57e8 Mon Sep 17 00:00:00 2001 From: Mikhail Pozdnyakov Date: Mon, 16 Dec 2019 16:21:02 +0200 Subject: [qt] Fix usage of QNetworkReply after deletion --- platform/qt/src/http_file_source.cpp | 6 +++--- platform/qt/src/http_file_source.hpp | 3 ++- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/platform/qt/src/http_file_source.cpp b/platform/qt/src/http_file_source.cpp index b8553a5a55..e4d89e3d64 100644 --- a/platform/qt/src/http_file_source.cpp +++ b/platform/qt/src/http_file_source.cpp @@ -20,7 +20,7 @@ void HTTPFileSource::Impl::request(HTTPRequest* req) { QUrl url = req->requestUrl(); - QPair>& data = m_pending[url]; + QPair, QVector>& data = m_pending[url]; QVector& requestsVector = data.second; requestsVector.append(req); @@ -45,7 +45,7 @@ void HTTPFileSource::Impl::cancel(HTTPRequest* req) return; } - QPair>& data = it.value(); + QPair, QVector>& data = it.value(); QNetworkReply* reply = data.first; QVector& requestsVector = data.second; @@ -58,7 +58,7 @@ void HTTPFileSource::Impl::cancel(HTTPRequest* req) if (requestsVector.empty()) { m_pending.erase(it); - reply->abort(); + if (reply) reply->abort(); } } diff --git a/platform/qt/src/http_file_source.hpp b/platform/qt/src/http_file_source.hpp index 4ba61b70da..e9c67a7fc8 100644 --- a/platform/qt/src/http_file_source.hpp +++ b/platform/qt/src/http_file_source.hpp @@ -7,6 +7,7 @@ #include #include #include +#include #include #include #include @@ -30,7 +31,7 @@ public slots: void onReplyFinished(); private: - QMap>> m_pending; + QMap, QVector>> m_pending; QNetworkAccessManager *m_manager; }; -- cgit v1.2.1