未验证 提交 092c636e 编写于 作者: O openharmony_ci 提交者: Gitee

!1970 FIX:修改napi

Merge pull request !1970 from cheng_jinsong/napi
......@@ -295,8 +295,6 @@ static void GetCallbackWork(napi_env env, StorageAsyncContextPtr asyncContext)
asyncContext->status = GetParameter(asyncContext->key,
(asyncContext->valueLen == 0) ? nullptr : asyncContext->value, value.data(), MAX_VALUE_LENGTH);
asyncContext->getValue = std::string(value.begin(), value.end());
PARAM_JS_LOGV("JSApp get asyncContext status: %d, key: '%s', value: '%s', defValue: '%s'.",
asyncContext->status, asyncContext->key, asyncContext->getValue.c_str(), asyncContext->value);
},
[](napi_env env, napi_status status, void *data) {
StorageAsyncContext *asyncContext = reinterpret_cast<StorageAsyncContext *>(data);
......@@ -306,15 +304,25 @@ static void GetCallbackWork(napi_env env, StorageAsyncContextPtr asyncContext)
napi_create_string_utf8(env,
asyncContext->getValue.c_str(), strlen(asyncContext->getValue.c_str()), &result[1]);
} else {
result[0] = BusinessErrorCreate(env, asyncContext->status);
napi_get_undefined(env, &result[1]);
if (asyncContext->status == SYSPARAM_NOT_FOUND) {
napi_get_undefined(env, &result[0]);
napi_create_string_utf8(env,
asyncContext->getValue.c_str(), strlen(asyncContext->getValue.c_str()), &result[1]);
} else {
result[0] = BusinessErrorCreate(env, asyncContext->status);
napi_get_undefined(env, &result[1]);
}
}
if (asyncContext->deferred) {
if (asyncContext->status > 0) {
napi_resolve_deferred(env, asyncContext->deferred, result[1]);
} else {
napi_reject_deferred(env, asyncContext->deferred, result[0]);
if (asyncContext->status == SYSPARAM_NOT_FOUND) {
napi_resolve_deferred(env, asyncContext->deferred, result[1]);
} else {
napi_reject_deferred(env, asyncContext->deferred, result[0]);
}
}
} else {
napi_value callback = nullptr;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册