diff --git a/interfaces/kits/js/src/mod_fs/properties/movedir.cpp b/interfaces/kits/js/src/mod_fs/properties/movedir.cpp index 5cde984d738f2de8019d1a39e7473ed2ee95fe53..c28dcf7f716fed9c85ab011f0b75d477f908ebce 100755 --- a/interfaces/kits/js/src/mod_fs/properties/movedir.cpp +++ b/interfaces/kits/js/src/mod_fs/properties/movedir.cpp @@ -67,13 +67,13 @@ static tuple, unique_ptr, int> ParseJsOperand(n return { false, nullptr, nullptr, 0 }; } auto [resGetSecondArg, dest, unused] = NVal(env, funcArg[NARG_POS::SECOND]).ToUTF8String(); - if (!resGetSecondArg || !filesystem::is_directory(filesystem::status(src.get()))) { + if (!resGetSecondArg || !filesystem::is_directory(filesystem::status(dest.get()))) { HILOGE("Invalid dest"); return { false, nullptr, nullptr, 0 }; } int mode = 0; - bool resGetThirdArg = false; if (funcArg.GetArgc() >= NARG_CNT::THREE && NVal(env, funcArg[NARG_POS::THIRD]).TypeIs(napi_number)) { + bool resGetThirdArg = false; tie(resGetThirdArg, mode) = NVal(env, funcArg[NARG_POS::THIRD]).ToInt32(); if (!resGetThirdArg || (mode < DIRMODE_MIN || mode > DIRMODE_MAX)) { HILOGE("Invalid mode"); @@ -301,12 +301,8 @@ napi_value MoveDir::Sync(napi_env env, napi_callback_info info) struct MoveDirArgs { vector errfiles; - explicit MoveDirArgs() - { - errfiles = vector(); - } + int errNo = 0; ~MoveDirArgs() = default; - int errNo; }; napi_value MoveDir::Async(napi_env env, napi_callback_info info) @@ -324,8 +320,9 @@ napi_value MoveDir::Async(napi_env env, napi_callback_info info) } auto arg = make_shared(); - if (!arg) { + if (arg == nullptr) { HILOGE("Failed to request heap memory."); + NError(ENOMEM).ThrowErr(env); return nullptr; } auto cbExec = [srcPath = string(src.get()), destPath = string(dest.get()), mode = mode, arg]() -> NError { diff --git a/interfaces/kits/js/src/mod_fs/properties/movedir.h b/interfaces/kits/js/src/mod_fs/properties/movedir.h index 6e059ffd0c7bf7e29bd46f0017108c6989749c6c..30275ef23a087b6fc91e1f40badda311c7e327ac 100755 --- a/interfaces/kits/js/src/mod_fs/properties/movedir.h +++ b/interfaces/kits/js/src/mod_fs/properties/movedir.h @@ -46,11 +46,7 @@ public: struct ErrFiles { std::string srcFiles; std::string destFiles; - ErrFiles(std::string src, std::string dest) - { - srcFiles = src; - destFiles = dest; - } + ErrFiles(const std::string& src, const std::string& dest) : srcFiles(src), destFiles(dest) {} ~ErrFiles() = default; };