Closed
Description
- Node.js Version: v8.0.0
- OS: Windows 10 x64
- Scope (install, code, runtime, meta, other?): Runtime (native/embedding)
- Module (and version) (if relevant):
I embedded successfully NodeJS v7.10.0 into my C++ project. After updating to v8.0.0, I getting Access violation reading location
on first line of stacktrace.
Stacktrace:
node.dll!v8::FunctionTemplate::SetCallHandler(void(*)(const v8::FunctionCallbackInfo<v8::Value> &) callback, v8::Local<v8::Value> data) Line 1393 C++
node.dll!v8::FunctionTemplateNew(v8::internal::Isolate * isolate, void(*)(const v8::FunctionCallbackInfo<v8::Value> &) callback, v8::Local<v8::Value> data, v8::Local<v8::Signature> signature, int length, bool do_not_cache, v8::Local<v8::Private> cached_property_name) Line 1309 C++
node.dll!v8::FunctionTemplate::New(v8::Isolate * isolate, void(*)(const v8::FunctionCallbackInfo<v8::Value> &) callback, v8::Local<v8::Value> data, v8::Local<v8::Signature> signature, int length, v8::ConstructorBehavior behavior) Line 1332 C++
nodejs-module.dll!node::gameModule::Initialize(v8::Local<v8::Object> target, v8::Local<v8::Value> unused, v8::Local<v8::Context> context) Line 176 C++
node.dll!node::Binding(const v8::FunctionCallbackInfo<v8::Value> & args) Line 2744 C++
node.dll!v8::internal::FunctionCallbackArguments::Call(void(*)(const v8::FunctionCallbackInfo<v8::Value> &) f) Line 26 C++
node.dll!v8::internal::`anonymous namespace'::HandleApiCallHelper<0>(v8::internal::Isolate * isolate, v8::internal::Handle<v8::internal::HeapObject> function, v8::internal::Handle<v8::internal::HeapObject> new_target, v8::internal::Handle<v8::internal::FunctionTemplateInfo> fun_data, v8::internal::Handle<v8::internal::Object> receiver, v8::internal::BuiltinArguments args) Line 113 C++
node.dll!v8::internal::Builtin_Impl_HandleApiCall(v8::internal::BuiltinArguments args, v8::internal::Isolate * isolate) Line 140 C++
node.dll!v8::internal::Builtin_HandleApiCall(int args_length, v8::internal::Object * * args_object, v8::internal::Isolate * isolate) Line 128 C++
Code:
void Initialize(v8::Local<v8::Object> target, v8::Local<v8::Value> unused, v8::Local<v8::Context> context)
{
Environment* env = Environment::GetCurrent(context);
env->SetMethod(target, "onResourceLoad", OnResourceLoadFunction); //Line 176 of nodejs-module
env->SetMethod(target, "onEvent", OnEventFunction);
...
NODE_MODULE_CONTEXT_AWARE_BUILTIN(gameModule, node::gameModule::Initialize);
JS:
global.gameModule = process.binding('gameModule');