diff --git a/src/env-inl.h b/src/env-inl.h index 44fa1125a3c455..de3d651fa7dd9b 100644 --- a/src/env-inl.h +++ b/src/env-inl.h @@ -513,6 +513,14 @@ inline bool Environment::abort_on_uncaught_exception() const { return options_->abort_on_uncaught_exception; } +inline void Environment::set_force_context_aware(bool value) { + options_->force_context_aware = value; +} + +inline bool Environment::force_context_aware() const { + return options_->force_context_aware; +} + inline void Environment::set_abort_on_uncaught_exception(bool value) { options_->abort_on_uncaught_exception = value; } diff --git a/src/env.h b/src/env.h index b1367c2660f4fa..16546fdd49408b 100644 --- a/src/env.h +++ b/src/env.h @@ -1068,6 +1068,9 @@ class Environment : public MemoryRetainer { void PrintSyncTrace() const; inline void set_trace_sync_io(bool value); + inline void set_force_context_aware(bool value); + inline bool force_context_aware() const; + // This stores whether the --abort-on-uncaught-exception flag was passed // to Node. inline bool abort_on_uncaught_exception() const; diff --git a/src/node_binding.cc b/src/node_binding.cc index 9890f9e7be9951..0d577a8c8e82eb 100644 --- a/src/node_binding.cc +++ b/src/node_binding.cc @@ -470,7 +470,7 @@ void DLOpen(const FunctionCallbackInfo& args) { if (mp != nullptr) { if (mp->nm_context_register_func == nullptr) { - if (env->options()->force_context_aware) { + if (env->force_context_aware()) { dlib->Close(); THROW_ERR_NON_CONTEXT_AWARE_DISABLED(env); return false;