Shouqun / node-dbus

dbus module for node
MIT License
150 stars 70 forks source link

Build broken on node <= 8.9 #207

Open Niels-Be opened 5 years ago

Niels-Be commented 5 years ago

Last Changes for Node 12 broke builds for node versions that do not support Isolates in String::Utf8Value (node <= 8.9).

../src/dbus.cc: In function 'Nan::NAN_METHOD_RETURN_TYPE node_dbus::CallMethod(Nan::NAN_METHOD_ARGS_TYPE)':
../src/dbus.cc:219:61: error: no matching function for call to 'v8::String::Utf8Value::Utf8Value(v8::Isolate*, v8::Local<v8::String>)'
                   Nan::GetCurrentContext()).ToLocalChecked()));
                                                             ^
../src/dbus.cc:219:61: note: candidate is:
In file included from /home/rpxc-user/.node-gyp/8.9.4/include/node/node.h:63:0,
                 from ../../nan/nan.h:54,
                 from ../src/dbus.cc:2:
/home/rpxc-user/.node-gyp/8.9.4/include/node/v8.h:2764:14: note: v8::String::Utf8Value::Utf8Value(v8::Local<v8::Value>)
     explicit Utf8Value(Local<v8::Value> obj);
              ^
/home/rpxc-user/.node-gyp/8.9.4/include/node/v8.h:2764:14: note:   candidate expects 1 argument, 2 provided

https://github.com/Shouqun/node-dbus/blob/636180bd7044c56906f268ffdd42eb00339af11a/src/dbus.cc#L216-L219

A possible solution would be to use Nan::Utf8String. Or at least write a note in the readme.