Package: node-mapnik / 3.7.2+dfsg-5

new_instance.patch Patch series | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Description: Port new instance call to match latest node/nan versions
 this patch is backward compatible with previous node/nan versions.
Author: Jérémy Lal <kapouer@melix.org>
Last-Update: 2018-10-18
Forwarded: not-needed, fixed in master

--- a/src/mapnik_image.cpp
+++ b/src/mapnik_image.cpp
@@ -3220,8 +3220,9 @@ void Image::EIO_AfterFromSVGBytes(uv_wor
     {
         Image* im = new Image(closure->im);
         v8::Local<v8::Value> ext = Nan::New<v8::External>(im);
-        v8::Local<v8::Object> image_obj = Nan::New(constructor)->GetFunction()->NewInstance(1, &ext);
-        v8::Local<v8::Value> argv[2] = { Nan::Null(), image_obj };
+        Nan::MaybeLocal<v8::Object> maybe_local = Nan::NewInstance(Nan::New(constructor)->GetFunction(), 1, &ext);
+        if (maybe_local.IsEmpty()) Nan::ThrowError("Could not create new Image instance");
+        v8::Local<v8::Value> argv[2] = { Nan::Null(), maybe_local.ToLocalChecked() };
         Nan::MakeCallback(Nan::GetCurrentContext()->Global(), Nan::New(closure->cb), 2, argv);
     }
     closure->cb.Reset();