Skip to content

Commit 7507d1e

Browse files
Gabriel SchulhofMylesBorins
Gabriel Schulhof
authored andcommittedApr 16, 2018
n-api: remove unnecessary try-catch bracket from certain APIs
These APIs do not need a try-catch around their body, because no exceptions are thrown in their implementation: - `napi_is_array()` - `napi_get_value_string_latin1()` - `napi_get_value_string_utf8()` - `napi_get_value_string_utf16()` - `napi_get_value_external()` - `napi_is_buffer()` - `napi_is_arraybuffer()` - `napi_get_arraybuffer_info()` - `napi_is_typedarray()` - `napi_get_typedarray_info()` Fixes: nodejs/abi-stable-node#238 Backport-PR-URL: #19447 PR-URL: #12705 Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Jason Ginchereau <jasongin@microsoft.com> Reviewed-By: Anna Henningsen <anna@addaleax.net>
1 parent b2bf6c8 commit 7507d1e

File tree

1 file changed

+21
-21
lines changed

1 file changed

+21
-21
lines changed
 

‎src/node_api.cc

+21-21
Original file line numberDiff line numberDiff line change
@@ -1209,14 +1209,14 @@ napi_status napi_define_properties(napi_env env,
12091209
}
12101210

12111211
napi_status napi_is_array(napi_env env, napi_value value, bool* result) {
1212-
NAPI_PREAMBLE(env);
1212+
CHECK_ENV(env);
12131213
CHECK_ARG(env, value);
12141214
CHECK_ARG(env, result);
12151215

12161216
v8::Local<v8::Value> val = v8impl::V8LocalValueFromJsValue(value);
12171217

12181218
*result = val->IsArray();
1219-
return GET_RETURN_STATUS(env);
1219+
return napi_clear_last_error(env);
12201220
}
12211221

12221222
napi_status napi_get_array_length(napi_env env,
@@ -1777,7 +1777,7 @@ napi_status napi_get_value_string_latin1(napi_env env,
17771777
char* buf,
17781778
size_t bufsize,
17791779
size_t* result) {
1780-
NAPI_PREAMBLE(env);
1780+
CHECK_ENV(env);
17811781
CHECK_ARG(env, value);
17821782

17831783
v8::Local<v8::Value> val = v8impl::V8LocalValueFromJsValue(value);
@@ -1797,7 +1797,7 @@ napi_status napi_get_value_string_latin1(napi_env env,
17971797
}
17981798
}
17991799

1800-
return GET_RETURN_STATUS(env);
1800+
return napi_clear_last_error(env);
18011801
}
18021802

18031803
// Copies a JavaScript string into a UTF-8 string buffer. The result is the
@@ -1813,7 +1813,7 @@ napi_status napi_get_value_string_utf8(napi_env env,
18131813
char* buf,
18141814
size_t bufsize,
18151815
size_t* result) {
1816-
NAPI_PREAMBLE(env);
1816+
CHECK_ENV(env);
18171817
CHECK_ARG(env, value);
18181818

18191819
v8::Local<v8::Value> val = v8impl::V8LocalValueFromJsValue(value);
@@ -1833,7 +1833,7 @@ napi_status napi_get_value_string_utf8(napi_env env,
18331833
}
18341834
}
18351835

1836-
return GET_RETURN_STATUS(env);
1836+
return napi_clear_last_error(env);
18371837
}
18381838

18391839
// Copies a JavaScript string into a UTF-16 string buffer. The result is the
@@ -1849,7 +1849,7 @@ napi_status napi_get_value_string_utf16(napi_env env,
18491849
char16_t* buf,
18501850
size_t bufsize,
18511851
size_t* result) {
1852-
NAPI_PREAMBLE(env);
1852+
CHECK_ENV(env);
18531853
CHECK_ARG(env, value);
18541854

18551855
v8::Local<v8::Value> val = v8impl::V8LocalValueFromJsValue(value);
@@ -1870,7 +1870,7 @@ napi_status napi_get_value_string_utf16(napi_env env,
18701870
}
18711871
}
18721872

1873-
return GET_RETURN_STATUS(env);
1873+
return napi_clear_last_error(env);
18741874
}
18751875

18761876
napi_status napi_coerce_to_object(napi_env env,
@@ -2024,13 +2024,13 @@ napi_status napi_create_external(napi_env env,
20242024

20252025
*result = v8impl::JsValueFromV8LocalValue(external_value);
20262026

2027-
return GET_RETURN_STATUS(env);
2027+
return napi_clear_last_error(env);
20282028
}
20292029

20302030
napi_status napi_get_value_external(napi_env env,
20312031
napi_value value,
20322032
void** result) {
2033-
NAPI_PREAMBLE(env);
2033+
CHECK_ENV(env);
20342034
CHECK_ARG(env, value);
20352035
CHECK_ARG(env, result);
20362036

@@ -2040,7 +2040,7 @@ napi_status napi_get_value_external(napi_env env,
20402040
v8::Local<v8::External> external_value = val.As<v8::External>();
20412041
*result = external_value->Value();
20422042

2043-
return GET_RETURN_STATUS(env);
2043+
return napi_clear_last_error(env);
20442044
}
20452045

20462046
// Set initial_refcount to 0 for a weak reference, >0 for a strong reference.
@@ -2481,12 +2481,12 @@ napi_status napi_create_buffer_copy(napi_env env,
24812481
}
24822482

24832483
napi_status napi_is_buffer(napi_env env, napi_value value, bool* result) {
2484-
NAPI_PREAMBLE(env);
2484+
CHECK_ENV(env);
24852485
CHECK_ARG(env, value);
24862486
CHECK_ARG(env, result);
24872487

24882488
*result = node::Buffer::HasInstance(v8impl::V8LocalValueFromJsValue(value));
2489-
return GET_RETURN_STATUS(env);
2489+
return napi_clear_last_error(env);
24902490
}
24912491

24922492
napi_status napi_get_buffer_info(napi_env env,
@@ -2510,14 +2510,14 @@ napi_status napi_get_buffer_info(napi_env env,
25102510
}
25112511

25122512
napi_status napi_is_arraybuffer(napi_env env, napi_value value, bool* result) {
2513-
NAPI_PREAMBLE(env);
2513+
CHECK_ENV(env);
25142514
CHECK_ARG(env, value);
25152515
CHECK_ARG(env, result);
25162516

25172517
v8::Local<v8::Value> val = v8impl::V8LocalValueFromJsValue(value);
25182518
*result = val->IsArrayBuffer();
25192519

2520-
return GET_RETURN_STATUS(env);
2520+
return napi_clear_last_error(env);
25212521
}
25222522

25232523
napi_status napi_create_arraybuffer(napi_env env,
@@ -2574,7 +2574,7 @@ napi_status napi_get_arraybuffer_info(napi_env env,
25742574
napi_value arraybuffer,
25752575
void** data,
25762576
size_t* byte_length) {
2577-
NAPI_PREAMBLE(env);
2577+
CHECK_ENV(env);
25782578
CHECK_ARG(env, arraybuffer);
25792579

25802580
v8::Local<v8::Value> value = v8impl::V8LocalValueFromJsValue(arraybuffer);
@@ -2591,18 +2591,18 @@ napi_status napi_get_arraybuffer_info(napi_env env,
25912591
*byte_length = contents.ByteLength();
25922592
}
25932593

2594-
return GET_RETURN_STATUS(env);
2594+
return napi_clear_last_error(env);
25952595
}
25962596

25972597
napi_status napi_is_typedarray(napi_env env, napi_value value, bool* result) {
2598-
NAPI_PREAMBLE(env);
2598+
CHECK_ENV(env);
25992599
CHECK_ARG(env, value);
26002600
CHECK_ARG(env, result);
26012601

26022602
v8::Local<v8::Value> val = v8impl::V8LocalValueFromJsValue(value);
26032603
*result = val->IsTypedArray();
26042604

2605-
return GET_RETURN_STATUS(env);
2605+
return napi_clear_last_error(env);
26062606
}
26072607

26082608
napi_status napi_create_typedarray(napi_env env,
@@ -2664,7 +2664,7 @@ napi_status napi_get_typedarray_info(napi_env env,
26642664
void** data,
26652665
napi_value* arraybuffer,
26662666
size_t* byte_offset) {
2667-
NAPI_PREAMBLE(env);
2667+
CHECK_ENV(env);
26682668
CHECK_ARG(env, typedarray);
26692669

26702670
v8::Local<v8::Value> value = v8impl::V8LocalValueFromJsValue(typedarray);
@@ -2712,7 +2712,7 @@ napi_status napi_get_typedarray_info(napi_env env,
27122712
*byte_offset = array->ByteOffset();
27132713
}
27142714

2715-
return GET_RETURN_STATUS(env);
2715+
return napi_clear_last_error(env);
27162716
}
27172717

27182718
namespace uvimpl {

0 commit comments

Comments
 (0)
Please sign in to comment.