From 85411ad30d0435449da7c8def40614ef4b114c7c Mon Sep 17 00:00:00 2001 From: Nikolay Igotti Date: Tue, 14 Jan 2025 14:49:52 +0300 Subject: [PATCH] Fix Windows --- interop/src/cpp/napi/win-dynamic-node.cc | 42 ++++++++++++++++++++++-- 1 file changed, 40 insertions(+), 2 deletions(-) diff --git a/interop/src/cpp/napi/win-dynamic-node.cc b/interop/src/cpp/napi/win-dynamic-node.cc index 5a298601d..81ea1d185 100644 --- a/interop/src/cpp/napi/win-dynamic-node.cc +++ b/interop/src/cpp/napi/win-dynamic-node.cc @@ -82,7 +82,10 @@ op(napi_create_threadsafe_function) \ op(napi_acquire_threadsafe_function) \ op(napi_release_threadsafe_function) \ - op(napi_call_threadsafe_function) + op(napi_call_threadsafe_function) \ + op(napi_is_dataview) \ + op(napi_is_arraybuffer) \ + op(napi_get_dataview_info) #define DECL_NAPI_IMPL(fn_name, ...) decltype(&fn_name) p_##fn_name; @@ -91,7 +94,6 @@ NAPI_FUNCTIONS(DECL_NAPI_IMPL) bool LoadNapiFunctions() { static bool isLoaded = false; if (isLoaded) return true; - fprintf(stderr, "Init NAPI\n"); HMODULE nodeModule = GetModuleHandle(NULL); FARPROC fn_addr = GetProcAddress(nodeModule, "napi_module_register"); @@ -597,3 +599,39 @@ napi_call_threadsafe_function( LoadNapiFunctions(); return p_napi_call_threadsafe_function(func, data, is_blocking); } + +NAPI_EXTERN napi_status NAPI_CDECL +napi_is_dataview(napi_env env, + napi_value value, + bool* result) { + LoadNapiFunctions(); + return p_napi_is_dataview(env, value, result); +} + +NAPI_EXTERN napi_status NAPI_CDECL +napi_is_arraybuffer(napi_env env, + napi_value value, + bool* result) { + LoadNapiFunctions(); + return p_napi_is_arraybuffer(env, value, result); +} + +NAPI_EXTERN napi_status NAPI_CDECL +napi_get_dataview_info(napi_env env, + napi_value dataview, + size_t* bytelength, + void** data, + napi_value* arraybuffer, + size_t* byte_offset) { + LoadNapiFunctions(); + return p_napi_get_dataview_info(env, dataview, bytelength, data, arraybuffer, byte_offset); +} + +NAPI_EXTERN napi_status NAPI_CDECL +napi_set_named_property(napi_env env, + napi_value object, + const char* utf8name, + napi_value value) { + LoadNapiFunctions(); + return p_napi_set_named_property(env, object, utf8name, value); +} -- Gitee