@@ -44,21 +44,22 @@ static napi_value New(napi_env env, napi_callback_info info) {
4444
4545static void NoopDeleter (napi_env env , void * data , void * hint ) {}
4646
47- static void DeleteImmediately (napi_env env , napi_callback_info info ) {
47+ static napi_value DeleteImmediately (napi_env env , napi_callback_info info ) {
4848 size_t argc = 1 ;
4949 napi_value js_obj ;
5050 napi_ref ref ;
51+ napi_valuetype type ;
5152
52- NODE_API_CALL_RETURN_VOID (env ,
53- napi_get_cb_info (env , info , & argc , & js_obj , NULL , NULL ));
53+ NODE_API_CALL (env , napi_get_cb_info (env , info , & argc , & js_obj , NULL , NULL ));
5454
55- napi_valuetype type ;
56- NODE_API_CALL_RETURN_VOID (env , napi_typeof (env , js_obj , & type ));
55+ NODE_API_CALL (env , napi_typeof (env , js_obj , & type ));
56+ NODE_API_ASSERT (env , type == napi_object , "Expected object parameter" );
57+
58+ NODE_API_CALL (env , napi_wrap (env , js_obj , NULL , NoopDeleter , NULL , & ref ));
59+ NODE_API_CALL (env , napi_delete_reference (env , ref ));
60+ NODE_API_CALL (env , napi_remove_wrap (env , js_obj , NULL ));
5761
58- NODE_API_CALL_RETURN_VOID (env ,
59- napi_wrap (env , js_obj , NULL , NoopDeleter , NULL , & ref ));
60- NODE_API_CALL_RETURN_VOID (env , napi_delete_reference (env , ref ));
61- NODE_API_CALL_RETURN_VOID (env , napi_remove_wrap (env , js_obj , NULL ));
62+ return NULL ;
6263}
6364
6465EXTERN_C_START
0 commit comments