summaryrefslogtreecommitdiff
path: root/platform/default/http_request_curl.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'platform/default/http_request_curl.cpp')
-rw-r--r--platform/default/http_request_curl.cpp21
1 files changed, 11 insertions, 10 deletions
diff --git a/platform/default/http_request_curl.cpp b/platform/default/http_request_curl.cpp
index f7fb27afc5..58c574fee1 100644
--- a/platform/default/http_request_curl.cpp
+++ b/platform/default/http_request_curl.cpp
@@ -509,19 +509,16 @@ void HTTPCURLRequest::handleResult(CURLcode code) {
long responseCode = 0;
curl_easy_getinfo(handle, CURLINFO_RESPONSE_CODE, &responseCode);
- // Move over any data we got. We're storing this in a separate object because the Response
- // object defines it as const.
- if (data) {
- response->data = std::move(data);
- } else {
- response->data = std::make_shared<std::string>();
- }
-
if (responseCode == 200) {
- // Nothing to do; this is what we want.
+ if (data) {
+ response->data = std::move(data);
+ } else {
+ response->data = std::make_shared<std::string>();
+ }
+ } else if (responseCode == 204 || (responseCode == 404 && resource.kind == Resource::Kind::Tile)) {
+ response->noContent = true;
} else if (responseCode == 304) {
response->notModified = true;
- response->data.reset();
} else if (responseCode == 404) {
response->error =
std::make_unique<Error>(Error::Reason::NotFound, "HTTP status code 404");
@@ -545,4 +542,8 @@ std::unique_ptr<HTTPContextBase> HTTPContextBase::createContext() {
return std::make_unique<HTTPCURLContext>();
}
+uint32_t HTTPContextBase::maximumConcurrentRequests() {
+ return 20;
+}
+
} // namespace mbgl