diff options
author | Bartek IwaĆczuk <biwanczuk@gmail.com> | 2024-05-06 20:22:50 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-05-06 21:22:50 +0200 |
commit | f698bc70e2f1d4cd58d17544258cf1b19726b66a (patch) | |
tree | 7c2ae51caae1b9f832c59a8bf0a0c2300672d68d /cli/napi/js_native_api.rs | |
parent | a635abbf2136f5512543551af6a6c37b5e9aa4ba (diff) |
fix(ext/node): napi_get_element and napi_set_element work with objects (#23713)
This change makes DuckDB example work:
https://github.com/denoland/deno/issues/23656.
Diffstat (limited to 'cli/napi/js_native_api.rs')
-rw-r--r-- | cli/napi/js_native_api.rs | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/cli/napi/js_native_api.rs b/cli/napi/js_native_api.rs index 126f2109c..428c4a04a 100644 --- a/cli/napi/js_native_api.rs +++ b/cli/napi/js_native_api.rs @@ -1855,11 +1855,11 @@ fn napi_get_element( check_env!(env); let env = unsafe { &mut *env }; let object = napi_value_unchecked(object); - let Ok(array) = v8::Local::<v8::Array>::try_from(object) else { + let Ok(object) = v8::Local::<v8::Object>::try_from(object) else { return napi_invalid_arg; }; let value: v8::Local<v8::Value> = - array.get_index(&mut env.scope(), index).unwrap(); + object.get_index(&mut env.scope(), index).unwrap(); *result = value.into(); napi_ok } @@ -2521,11 +2521,11 @@ fn napi_set_element( check_env!(env); let env = unsafe { &mut *env }; let object = napi_value_unchecked(object); - let Ok(array) = v8::Local::<v8::Array>::try_from(object) else { + let Ok(object) = v8::Local::<v8::Object>::try_from(object) else { return napi_invalid_arg; }; let value = napi_value_unchecked(value); - array.set_index(&mut env.scope(), index, value).unwrap(); + object.set_index(&mut env.scope(), index, value).unwrap(); napi_ok } |