diff options
Diffstat (limited to 'platform/qt/src/http_request.cpp')
-rw-r--r-- | platform/qt/src/http_request.cpp | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/platform/qt/src/http_request.cpp b/platform/qt/src/http_request.cpp index 6141216c65..386a2d9ef4 100644 --- a/platform/qt/src/http_request.cpp +++ b/platform/qt/src/http_request.cpp @@ -6,6 +6,7 @@ #include <mbgl/util/optional.hpp> #include <mbgl/util/http_header.hpp> #include <mbgl/util/string.hpp> +#include <mbgl/util/version.hpp> #include <QByteArray> #include <QNetworkReply> @@ -37,7 +38,9 @@ QNetworkRequest HTTPRequest::networkRequest() const { QNetworkRequest req = QNetworkRequest(requestUrl()); req.setAttribute(QNetworkRequest::CacheLoadControlAttribute, QNetworkRequest::PreferCache); - req.setRawHeader("User-Agent", "MapboxGL/1.0 [Qt]"); + + static const QByteArray agent = QString("MapboxGL/%1 (Qt %2)").arg(version::revision).arg(QT_VERSION_STR).toLatin1(); + req.setRawHeader("User-Agent", agent); if (m_resource.priorEtag) { const auto etag = m_resource.priorEtag; @@ -79,7 +82,9 @@ void HTTPRequest::handleNetworkReply(QNetworkReply *reply) } else if (header == "etag") { response.etag = std::string(line.second.constData(), line.second.size()); } else if (header == "cache-control") { - response.expires = http::CacheControl::parse(line.second.constData()).toTimePoint(); + const auto cc = http::CacheControl::parse(line.second.constData()); + response.expires = cc.toTimePoint(); + response.mustRevalidate = cc.mustRevalidate; } else if (header == "expires") { response.expires = util::parseTimestamp(line.second.constData()); } else if (header == "retry-after") { |