diff --git a/src/js_native_api_v8.cc b/src/js_native_api_v8.cc index 89bcd4a2dfb5aed5c303798aa3946ea4653f94a1..9bd659c493921eaa39ef48c9ab6dbc04f093ef34 100644 --- a/src/js_native_api_v8.cc +++ b/src/js_native_api_v8.cc @@ -1432,6 +1432,9 @@ OH_JSVM_CreateVM(const JSVM_CreateVMOptions* options, JSVM_VM* result) { JSVM_Status JSVM_CDECL OH_JSVM_DestroyVM(JSVM_VM vm) { + if (vm == nullptr) { + return JSVM_INVALID_ARG; + } auto isolate = reinterpret_cast(vm); auto creator = v8impl::GetIsolateSnapshotCreator(isolate); auto data = v8impl::GetIsolateData(isolate); @@ -1816,6 +1819,10 @@ OH_JSVM_CreateCodeCache(JSVM_Env env, JSVM_Script script, const uint8_t** data, size_t* length) { + CHECK_ENV(env); + CHECK_ARG(env, script); + CHECK_ARG(env, data); + CHECK_ARG(env, length); auto jsvmData = reinterpret_cast(script); auto v8script = jsvmData->ToV8Local(env->isolate); v8::ScriptCompiler::CachedData* cache;