diff options
Diffstat (limited to 'platform/darwin/src')
-rw-r--r-- | platform/darwin/src/http_file_source.mm | 5 | ||||
-rw-r--r-- | platform/darwin/src/image.mm | 5 |
2 files changed, 5 insertions, 5 deletions
diff --git a/platform/darwin/src/http_file_source.mm b/platform/darwin/src/http_file_source.mm index 4a16ad82fb..6840740c44 100644 --- a/platform/darwin/src/http_file_source.mm +++ b/platform/darwin/src/http_file_source.mm @@ -232,8 +232,7 @@ std::unique_ptr<AsyncRequest> HTTPFileSource::request(const Resource& resource, if (error) { if (data) { - response.data = - std::make_shared<std::string>((const char*)[data bytes], [data length]); + response.data = Blob{ { (const char*)[data bytes], [data length] }, false }; } switch ([error code]) { @@ -287,7 +286,7 @@ std::unique_ptr<AsyncRequest> HTTPFileSource::request(const Resource& resource, } if (responseCode == 200) { - response.data = std::make_shared<std::string>((const char *)[data bytes], [data length]); + response.data = { { (const char *)[data bytes], [data length] }, false }; } else if (responseCode == 204 || (responseCode == 404 && resource.kind == Resource::Kind::Tile)) { response.noContent = true; } else if (responseCode == 304) { diff --git a/platform/darwin/src/image.mm b/platform/darwin/src/image.mm index 3a5adcca0a..f08fb9a25f 100644 --- a/platform/darwin/src/image.mm +++ b/platform/darwin/src/image.mm @@ -71,9 +71,10 @@ mbgl::PremultipliedImage MGLPremultipliedImageFromCGImage(CGImageRef src) { namespace mbgl { -PremultipliedImage decodeImage(const std::string& source) { +PremultipliedImage decodeImage(Blob blob) { + const auto source = blob.uncompressedData(); CFDataHandle data(CFDataCreateWithBytesNoCopy( - kCFAllocatorDefault, reinterpret_cast<const unsigned char*>(source.data()), source.size(), + kCFAllocatorDefault, reinterpret_cast<const unsigned char*>(source->data()), source->size(), kCFAllocatorNull)); if (!data) { throw std::runtime_error("CFDataCreateWithBytesNoCopy failed"); |