summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArtem Pavlenko <artem@mapnik.org>2019-11-13 16:28:41 +0000
committerArtem Pavlenko <artem@mapnik.org>2019-11-13 16:28:41 +0000
commit8dfa3b530143ed88d5d2ec7a3c1cd2e0e3a66f09 (patch)
treeb42fc04a42e7757fe00fce0addbf560c4ec99415
parent6d0ffe5852f907b84432fafd60561484900cfa54 (diff)
downloadqtlocation-mapboxgl-8dfa3b530143ed88d5d2ec7a3c1cd2e0e3a66f09.tar.gz
Bring back original pattern of calling get() and release() after NewBuffer ctor (ref #15915)
-rw-r--r--platform/node/src/node_map.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/platform/node/src/node_map.cpp b/platform/node/src/node_map.cpp
index 531f3d7703..cb78047b6c 100644
--- a/platform/node/src/node_map.cpp
+++ b/platform/node/src/node_map.cpp
@@ -541,11 +541,14 @@ void NodeMap::renderFinished() {
} else if (img.data) {
auto image_size = img.bytes();
v8::Local<v8::Object> pixels = Nan::NewBuffer(
- reinterpret_cast<char*>(img.data.release()),
+ reinterpret_cast<char*>(img.data.get()),
image_size,
[](char* buf, void*) { delete[] buf; },
nullptr)
.ToLocalChecked();
+ if (!pixels.IsEmpty()) {
+ img.data.release();
+ }
Nan::AdjustExternalMemory(image_size);
v8::Local<v8::Value> argv[] = {
Nan::Null(),