diff --git a/include/addon-tools.hpp b/include/addon-tools.hpp index d4d6371..ece27d2 100644 --- a/include/addon-tools.hpp +++ b/include/addon-tools.hpp @@ -291,9 +291,14 @@ inline void *getData(V8_VAR_OBJ obj) { inline void consoleLog(int argc, V8_VAR_VAL *argv) { V8_VAR_STR code = JS_STR("((...args) => console.log(...args))"); - V8_VAR_FUNC log = V8_VAR_FUNC::Cast(v8::Script::Compile(code)->Run()); - Nan::Callback logCb(log); + v8::Local log = v8::Script::Compile( + Nan::GetCurrentContext(), code + ).ToLocalChecked()->Run( + Nan::GetCurrentContext() + ).ToLocalChecked(); + Nan::Callback logCb(Nan::To(log).ToLocalChecked()); + Nan::AsyncResource async("consoleLog()"); logCb.Call(argc, argv, &async); diff --git a/include/event-emitter.hpp b/include/event-emitter.hpp index 60b8825..e5a2f1a 100644 --- a/include/event-emitter.hpp +++ b/include/event-emitter.hpp @@ -333,13 +333,13 @@ private: "(new Error()).stack.split('\\n').slice(2).join('\\n')" ); - V8_VAR_STR stack = Nan::To( - v8::Script::Compile(code)->Run( - Nan::GetCurrentContext() - ).ToLocalChecked() - ); - + v8::Local stack = v8::Script::Compile( + Nan::GetCurrentContext(), code + ).ToLocalChecked()->Run( + Nan::GetCurrentContext() + ).ToLocalChecked(); Nan::Utf8String stackStr(stack); + msg += *stackStr; consoleLog(msg); @@ -441,13 +441,13 @@ private: }) )"); - V8_VAR_FUNC decor = Nan::To( - v8::Script::Compile(code)->Run( - Nan::GetCurrentContext() - ).ToLocalChecked() - ); + v8::Local decor = v8::Script::Compile( + Nan::GetCurrentContext(), code + ).ToLocalChecked()->Run( + Nan::GetCurrentContext() + ).ToLocalChecked(); + Nan::Callback decorCb(Nan::To(decor).ToLocalChecked()); - Nan::Callback decorCb(decor); V8_VAR_VAL argv[] = { info.This(), info[0], raw }; Nan::AsyncResource async("EventEmitter::js_once()"); V8_VAR_VAL wrapValue = decorCb.Call(3, argv, &async).ToLocalChecked();