From fc1a5417b968ae8f03198008b2dc77fcd1832b80 Mon Sep 17 00:00:00 2001 From: sunxuhui Date: Mon, 31 Oct 2022 00:56:22 -0700 Subject: [PATCH 01/12] something Signed-off-by: sunxuhui --- .../js/src/mod_fileio/class_dir/dir_n_exporter.cpp | 13 +++++++++++++ .../randomaccessfile_n_exporter.cpp | 4 ++++ .../mod_fileio/class_stream/stream_n_exporter.cpp | 11 +++++++++-- .../kits/js/src/mod_fileio/properties/close.cpp | 12 ++++++++++-- 4 files changed, 36 insertions(+), 4 deletions(-) diff --git a/interfaces/kits/js/src/mod_fileio/class_dir/dir_n_exporter.cpp b/interfaces/kits/js/src/mod_fileio/class_dir/dir_n_exporter.cpp index 43bae0a64..519a1ef3c 100644 --- a/interfaces/kits/js/src/mod_fileio/class_dir/dir_n_exporter.cpp +++ b/interfaces/kits/js/src/mod_fileio/class_dir/dir_n_exporter.cpp @@ -54,6 +54,12 @@ static DirEntity *GetDirEntity(napi_env env, napi_callback_info info) napi_value DirNExporter::CloseSync(napi_env env, napi_callback_info info) { + NFuncArg funcArg(env, info); + if (!funcArg.InitArgs(NARG_CNT::ONE)) { + UniError(EINVAL).ThrowErr(env, "Number of arguments unmatched"); + return nullptr; + } + DirEntity *dirEntity = GetDirEntity(env, info); if (!dirEntity || !dirEntity->dir_) { UniError(EBADF).ThrowErr(env, "Dir has been closed yet"); @@ -61,6 +67,13 @@ napi_value DirNExporter::CloseSync(napi_env env, napi_callback_info info) } dirEntity->dir_.reset(); + + void *pdata = nullptr; + NAPI_CALL(env, napi_remove_wrap(env, funcArg.GetThisVar(), &pdata)); + + void *pdata = nullptr; + NAPI_CALL(env, napi_remove_wrap(env, funcArg.GetThisVar(), &pdata)); + return nullptr; } diff --git a/interfaces/kits/js/src/mod_fileio/class_randomaccessfile/randomaccessfile_n_exporter.cpp b/interfaces/kits/js/src/mod_fileio/class_randomaccessfile/randomaccessfile_n_exporter.cpp index f3f513c05..38f000ead 100644 --- a/interfaces/kits/js/src/mod_fileio/class_randomaccessfile/randomaccessfile_n_exporter.cpp +++ b/interfaces/kits/js/src/mod_fileio/class_randomaccessfile/randomaccessfile_n_exporter.cpp @@ -369,6 +369,10 @@ napi_value RandomAccessFileNExporter::Constructor(napi_env env, napi_callback_in UniError(EIO).ThrowErr(env, "INNER BUG. Failed to wrap entity for obj RandomAccessFile"); return nullptr; } + + void *pdata = nullptr; + NAPI_CALL(env, napi_remove_wrap(env, funcArg.GetThisVar(), &pdata)); + return funcArg.GetThisVar(); } diff --git a/interfaces/kits/js/src/mod_fileio/class_stream/stream_n_exporter.cpp b/interfaces/kits/js/src/mod_fileio/class_stream/stream_n_exporter.cpp index f9d6960b8..a61c81aa7 100644 --- a/interfaces/kits/js/src/mod_fileio/class_stream/stream_n_exporter.cpp +++ b/interfaces/kits/js/src/mod_fileio/class_stream/stream_n_exporter.cpp @@ -96,6 +96,10 @@ napi_value StreamNExporter::CloseSync(napi_env env, napi_callback_info info) return nullptr; } streamEntity->fp.reset(); + + void *pdata = nullptr; + NAPI_CALL(env, napi_remove_wrap(env, funcArg.GetThisVar(), &pdata)); + return NVal::CreateUndefined(env).val_; } @@ -330,12 +334,15 @@ napi_value StreamNExporter::Close(napi_env env, napi_callback_info info) string procedureName = "FileIOStreamClose"; NVal thisVar(env, funcArg.GetThisVar()); if (funcArg.GetArgc() == NARG_CNT::ZERO) { - return NAsyncWorkPromise(env, thisVar).Schedule(procedureName, cbExec, cbCompl).val_; + NAsyncWorkPromise(env, thisVar).Schedule(procedureName, cbExec, cbCompl); } else { NVal cb(env, funcArg[NARG_POS::FIRST]); - return NAsyncWorkCallback(env, thisVar, cb).Schedule(procedureName, cbExec, cbCompl).val_; + NAsyncWorkCallback(env, thisVar, cb).Schedule(procedureName, cbExec, cbCompl); } + void *pdata = nullptr; + NAPI_CALL(env, napi_remove_wrap(env, funcArg.GetThisVar(), &pdata)); + return NVal::CreateUndefined(env).val_; } diff --git a/interfaces/kits/js/src/mod_fileio/properties/close.cpp b/interfaces/kits/js/src/mod_fileio/properties/close.cpp index 202ad04bc..54fb0e7c0 100644 --- a/interfaces/kits/js/src/mod_fileio/properties/close.cpp +++ b/interfaces/kits/js/src/mod_fileio/properties/close.cpp @@ -46,6 +46,9 @@ napi_value Close::Sync(napi_env env, napi_callback_info info) return nullptr; } + void *pdata = nullptr; + NAPI_CALL(env, napi_remove_wrap(env, funcArg.GetThisVar(), &pdata)); + return NVal::CreateUndefined(env).val_; } @@ -84,11 +87,16 @@ napi_value Close::Async(napi_env env, napi_callback_info info) size_t argc = funcArg.GetArgc(); NVal thisVar(env, funcArg.GetThisVar()); if (argc == NARG_CNT::ONE) { - return NAsyncWorkPromise(env, thisVar).Schedule(procedureName, cbExec, cbComplete).val_; + NAsyncWorkPromise(env, thisVar).Schedule(procedureName, cbExec, cbComplete); } else { NVal cb(env, funcArg[NARG_POS::SECOND]); - return NAsyncWorkCallback(env, thisVar, cb).Schedule(procedureName, cbExec, cbComplete).val_; + NAsyncWorkCallback(env, thisVar, cb).Schedule(procedureName, cbExec, cbComplete); } + + void *pdata = nullptr; + NAPI_CALL(env, napi_remove_wrap(env, funcArg.GetThisVar(), &pdata)); + + return NVal::CreateUndefined(env).val_; } } // namespace ModuleFileIO } // namespace DistributedFS -- Gitee From 19528ed9a8562e792d5e334a88376a7e6ce09114 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AD=99=E6=97=AD=E8=BE=89?= Date: Mon, 31 Oct 2022 07:59:30 +0000 Subject: [PATCH 02/12] update interfaces/kits/js/src/mod_fileio/class_dir/dir_n_exporter.cpp. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 孙旭辉 --- interfaces/kits/js/src/mod_fileio/class_dir/dir_n_exporter.cpp | 3 --- 1 file changed, 3 deletions(-) diff --git a/interfaces/kits/js/src/mod_fileio/class_dir/dir_n_exporter.cpp b/interfaces/kits/js/src/mod_fileio/class_dir/dir_n_exporter.cpp index 519a1ef3c..c89a3a989 100644 --- a/interfaces/kits/js/src/mod_fileio/class_dir/dir_n_exporter.cpp +++ b/interfaces/kits/js/src/mod_fileio/class_dir/dir_n_exporter.cpp @@ -68,9 +68,6 @@ napi_value DirNExporter::CloseSync(napi_env env, napi_callback_info info) dirEntity->dir_.reset(); - void *pdata = nullptr; - NAPI_CALL(env, napi_remove_wrap(env, funcArg.GetThisVar(), &pdata)); - void *pdata = nullptr; NAPI_CALL(env, napi_remove_wrap(env, funcArg.GetThisVar(), &pdata)); -- Gitee From 2980f1e33097cad940d096b1c1f4d776022462da Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AD=99=E6=97=AD=E8=BE=89?= Date: Mon, 31 Oct 2022 08:06:50 +0000 Subject: [PATCH 03/12] update interfaces/kits/js/src/mod_fileio/class_dir/dir_n_exporter.cpp. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 孙旭辉 --- .../mod_fileio/class_dir/dir_n_exporter.cpp | 24 +++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/interfaces/kits/js/src/mod_fileio/class_dir/dir_n_exporter.cpp b/interfaces/kits/js/src/mod_fileio/class_dir/dir_n_exporter.cpp index c89a3a989..d52ae6bd9 100644 --- a/interfaces/kits/js/src/mod_fileio/class_dir/dir_n_exporter.cpp +++ b/interfaces/kits/js/src/mod_fileio/class_dir/dir_n_exporter.cpp @@ -68,8 +68,16 @@ napi_value DirNExporter::CloseSync(napi_env env, napi_callback_info info) dirEntity->dir_.reset(); + auto finalize = [](napi_env env, void *data, void *hint) { + if (data == nullptr) { + return; + } + delete reinterpret_cast(data); + }; + void *pdata = nullptr; NAPI_CALL(env, napi_remove_wrap(env, funcArg.GetThisVar(), &pdata)); + finalize(env, data, nullptr); return nullptr; } @@ -113,11 +121,23 @@ napi_value DirNExporter::Close(napi_env env, napi_callback_info info) NVal thisVar(env, funcArg.GetThisVar()); static const string procedureName = "fileioDirClose"; if (funcArg.GetArgc() == NARG_CNT::ZERO) { - return NAsyncWorkPromise(env, thisVar).Schedule(procedureName, cbExec, cbCompl).val_; + NAsyncWorkPromise(env, thisVar).Schedule(procedureName, cbExec, cbCompl); } else { NVal cb(env, funcArg[NARG_POS::FIRST]); - return NAsyncWorkCallback(env, thisVar, cb).Schedule(procedureName, cbExec, cbCompl).val_; + NAsyncWorkCallback(env, thisVar, cb).Schedule(procedureName, cbExec, cbCompl); } + auto finalize = [](napi_env env, void *data, void *hint) { + if (data == nullptr) { + return; + } + delete reinterpret_cast(data); + }; + + void *pdata = nullptr; + NAPI_CALL(env, napi_remove_wrap(env, funcArg.GetThisVar(), &pdata)); + finalize(env, data, nullptr); + + return NVal::CreateUndefined(env).val_; } struct DirReadArgs { -- Gitee From 6aa2d9ccdc2d93a3ba12e25ceccae484b9d440dd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AD=99=E6=97=AD=E8=BE=89?= Date: Mon, 31 Oct 2022 08:08:05 +0000 Subject: [PATCH 04/12] update interfaces/kits/js/src/mod_fileio/class_randomaccessfile/randomaccessfile_n_exporter.cpp. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 孙旭辉 --- .../randomaccessfile_n_exporter.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/interfaces/kits/js/src/mod_fileio/class_randomaccessfile/randomaccessfile_n_exporter.cpp b/interfaces/kits/js/src/mod_fileio/class_randomaccessfile/randomaccessfile_n_exporter.cpp index 38f000ead..66ca1c931 100644 --- a/interfaces/kits/js/src/mod_fileio/class_randomaccessfile/randomaccessfile_n_exporter.cpp +++ b/interfaces/kits/js/src/mod_fileio/class_randomaccessfile/randomaccessfile_n_exporter.cpp @@ -370,8 +370,16 @@ napi_value RandomAccessFileNExporter::Constructor(napi_env env, napi_callback_in return nullptr; } + auto finalize = [](napi_env env, void *data, void *hint) { + if (data == nullptr) { + return; + } + delete reinterpret_cast(data); + }; + void *pdata = nullptr; NAPI_CALL(env, napi_remove_wrap(env, funcArg.GetThisVar(), &pdata)); + finalize(env, data, nullptr); return funcArg.GetThisVar(); } -- Gitee From 24b094e57467c538b994d06d77fd1352334084aa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AD=99=E6=97=AD=E8=BE=89?= Date: Mon, 31 Oct 2022 08:10:07 +0000 Subject: [PATCH 05/12] update interfaces/kits/js/src/mod_fileio/class_stream/stream_n_exporter.cpp. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 孙旭辉 --- .../mod_fileio/class_stream/stream_n_exporter.cpp | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/interfaces/kits/js/src/mod_fileio/class_stream/stream_n_exporter.cpp b/interfaces/kits/js/src/mod_fileio/class_stream/stream_n_exporter.cpp index a61c81aa7..b981d01fb 100644 --- a/interfaces/kits/js/src/mod_fileio/class_stream/stream_n_exporter.cpp +++ b/interfaces/kits/js/src/mod_fileio/class_stream/stream_n_exporter.cpp @@ -97,8 +97,16 @@ napi_value StreamNExporter::CloseSync(napi_env env, napi_callback_info info) } streamEntity->fp.reset(); + auto finalize = [](napi_env env, void *data, void *hint) { + if (data == nullptr) { + return; + } + delete reinterpret_cast(data); + }; + void *pdata = nullptr; NAPI_CALL(env, napi_remove_wrap(env, funcArg.GetThisVar(), &pdata)); + finalize(env, data, nullptr); return NVal::CreateUndefined(env).val_; } @@ -340,8 +348,15 @@ napi_value StreamNExporter::Close(napi_env env, napi_callback_info info) NAsyncWorkCallback(env, thisVar, cb).Schedule(procedureName, cbExec, cbCompl); } + auto finalize = [](napi_env env, void *data, void *hint) { + if (data == nullptr) { + return; + } + delete reinterpret_cast(data); + }; void *pdata = nullptr; NAPI_CALL(env, napi_remove_wrap(env, funcArg.GetThisVar(), &pdata)); + finalize(env, data, nullptr); return NVal::CreateUndefined(env).val_; } -- Gitee From 915bcf1b42776bd2e649d2bd77255da7fe780f77 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AD=99=E6=97=AD=E8=BE=89?= Date: Mon, 31 Oct 2022 08:12:08 +0000 Subject: [PATCH 06/12] update interfaces/kits/js/src/mod_fileio/properties/close.cpp. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 孙旭辉 --- .../kits/js/src/mod_fileio/properties/close.cpp | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/interfaces/kits/js/src/mod_fileio/properties/close.cpp b/interfaces/kits/js/src/mod_fileio/properties/close.cpp index 54fb0e7c0..bd68c404a 100644 --- a/interfaces/kits/js/src/mod_fileio/properties/close.cpp +++ b/interfaces/kits/js/src/mod_fileio/properties/close.cpp @@ -46,9 +46,15 @@ napi_value Close::Sync(napi_env env, napi_callback_info info) return nullptr; } + auto finalize = [](napi_env env, void *data, void *hint) { + if (data == nullptr) { + return; + } + delete reinterpret_cast(data); + }; void *pdata = nullptr; NAPI_CALL(env, napi_remove_wrap(env, funcArg.GetThisVar(), &pdata)); - + finalize(env, data, nullptr); return NVal::CreateUndefined(env).val_; } @@ -92,10 +98,15 @@ napi_value Close::Async(napi_env env, napi_callback_info info) NVal cb(env, funcArg[NARG_POS::SECOND]); NAsyncWorkCallback(env, thisVar, cb).Schedule(procedureName, cbExec, cbComplete); } - + auto finalize = [](napi_env env, void *data, void *hint) { + if (data == nullptr) { + return; + } + delete reinterpret_cast(data); + }; void *pdata = nullptr; NAPI_CALL(env, napi_remove_wrap(env, funcArg.GetThisVar(), &pdata)); - + finalize(env, data, nullptr); return NVal::CreateUndefined(env).val_; } } // namespace ModuleFileIO -- Gitee From c7a7c063899c3037da58d97bf0549f86cff66f67 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AD=99=E6=97=AD=E8=BE=89?= Date: Mon, 31 Oct 2022 08:38:09 +0000 Subject: [PATCH 07/12] update interfaces/kits/js/src/mod_fileio/class_dir/dir_n_exporter.cpp. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 孙旭辉 --- .../src/mod_fileio/class_dir/dir_n_exporter.cpp | 15 --------------- 1 file changed, 15 deletions(-) diff --git a/interfaces/kits/js/src/mod_fileio/class_dir/dir_n_exporter.cpp b/interfaces/kits/js/src/mod_fileio/class_dir/dir_n_exporter.cpp index d52ae6bd9..113cae396 100644 --- a/interfaces/kits/js/src/mod_fileio/class_dir/dir_n_exporter.cpp +++ b/interfaces/kits/js/src/mod_fileio/class_dir/dir_n_exporter.cpp @@ -68,16 +68,8 @@ napi_value DirNExporter::CloseSync(napi_env env, napi_callback_info info) dirEntity->dir_.reset(); - auto finalize = [](napi_env env, void *data, void *hint) { - if (data == nullptr) { - return; - } - delete reinterpret_cast(data); - }; - void *pdata = nullptr; NAPI_CALL(env, napi_remove_wrap(env, funcArg.GetThisVar(), &pdata)); - finalize(env, data, nullptr); return nullptr; } @@ -126,16 +118,9 @@ napi_value DirNExporter::Close(napi_env env, napi_callback_info info) NVal cb(env, funcArg[NARG_POS::FIRST]); NAsyncWorkCallback(env, thisVar, cb).Schedule(procedureName, cbExec, cbCompl); } - auto finalize = [](napi_env env, void *data, void *hint) { - if (data == nullptr) { - return; - } - delete reinterpret_cast(data); - }; void *pdata = nullptr; NAPI_CALL(env, napi_remove_wrap(env, funcArg.GetThisVar(), &pdata)); - finalize(env, data, nullptr); return NVal::CreateUndefined(env).val_; } -- Gitee From 553a693a6b91979e669e82f9096fb2660ecfcfc8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AD=99=E6=97=AD=E8=BE=89?= Date: Mon, 31 Oct 2022 08:38:54 +0000 Subject: [PATCH 08/12] update interfaces/kits/js/src/mod_fileio/class_randomaccessfile/randomaccessfile_n_exporter.cpp. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 孙旭辉 --- .../randomaccessfile_n_exporter.cpp | 8 -------- 1 file changed, 8 deletions(-) diff --git a/interfaces/kits/js/src/mod_fileio/class_randomaccessfile/randomaccessfile_n_exporter.cpp b/interfaces/kits/js/src/mod_fileio/class_randomaccessfile/randomaccessfile_n_exporter.cpp index 66ca1c931..38f000ead 100644 --- a/interfaces/kits/js/src/mod_fileio/class_randomaccessfile/randomaccessfile_n_exporter.cpp +++ b/interfaces/kits/js/src/mod_fileio/class_randomaccessfile/randomaccessfile_n_exporter.cpp @@ -370,16 +370,8 @@ napi_value RandomAccessFileNExporter::Constructor(napi_env env, napi_callback_in return nullptr; } - auto finalize = [](napi_env env, void *data, void *hint) { - if (data == nullptr) { - return; - } - delete reinterpret_cast(data); - }; - void *pdata = nullptr; NAPI_CALL(env, napi_remove_wrap(env, funcArg.GetThisVar(), &pdata)); - finalize(env, data, nullptr); return funcArg.GetThisVar(); } -- Gitee From d5062f331054af56ee05fcb7826f660becce5c6b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AD=99=E6=97=AD=E8=BE=89?= Date: Mon, 31 Oct 2022 08:39:48 +0000 Subject: [PATCH 09/12] update interfaces/kits/js/src/mod_fileio/class_stream/stream_n_exporter.cpp. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 孙旭辉 --- .../mod_fileio/class_stream/stream_n_exporter.cpp | 15 --------------- 1 file changed, 15 deletions(-) diff --git a/interfaces/kits/js/src/mod_fileio/class_stream/stream_n_exporter.cpp b/interfaces/kits/js/src/mod_fileio/class_stream/stream_n_exporter.cpp index b981d01fb..a61c81aa7 100644 --- a/interfaces/kits/js/src/mod_fileio/class_stream/stream_n_exporter.cpp +++ b/interfaces/kits/js/src/mod_fileio/class_stream/stream_n_exporter.cpp @@ -97,16 +97,8 @@ napi_value StreamNExporter::CloseSync(napi_env env, napi_callback_info info) } streamEntity->fp.reset(); - auto finalize = [](napi_env env, void *data, void *hint) { - if (data == nullptr) { - return; - } - delete reinterpret_cast(data); - }; - void *pdata = nullptr; NAPI_CALL(env, napi_remove_wrap(env, funcArg.GetThisVar(), &pdata)); - finalize(env, data, nullptr); return NVal::CreateUndefined(env).val_; } @@ -348,15 +340,8 @@ napi_value StreamNExporter::Close(napi_env env, napi_callback_info info) NAsyncWorkCallback(env, thisVar, cb).Schedule(procedureName, cbExec, cbCompl); } - auto finalize = [](napi_env env, void *data, void *hint) { - if (data == nullptr) { - return; - } - delete reinterpret_cast(data); - }; void *pdata = nullptr; NAPI_CALL(env, napi_remove_wrap(env, funcArg.GetThisVar(), &pdata)); - finalize(env, data, nullptr); return NVal::CreateUndefined(env).val_; } -- Gitee From 66c31fd6d4a557e05b6a05d70fff2ff47825f255 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AD=99=E6=97=AD=E8=BE=89?= Date: Mon, 31 Oct 2022 08:41:12 +0000 Subject: [PATCH 10/12] update interfaces/kits/js/src/mod_fileio/properties/close.cpp. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 孙旭辉 --- .../kits/js/src/mod_fileio/properties/close.cpp | 17 +++-------------- 1 file changed, 3 insertions(+), 14 deletions(-) diff --git a/interfaces/kits/js/src/mod_fileio/properties/close.cpp b/interfaces/kits/js/src/mod_fileio/properties/close.cpp index bd68c404a..54fb0e7c0 100644 --- a/interfaces/kits/js/src/mod_fileio/properties/close.cpp +++ b/interfaces/kits/js/src/mod_fileio/properties/close.cpp @@ -46,15 +46,9 @@ napi_value Close::Sync(napi_env env, napi_callback_info info) return nullptr; } - auto finalize = [](napi_env env, void *data, void *hint) { - if (data == nullptr) { - return; - } - delete reinterpret_cast(data); - }; void *pdata = nullptr; NAPI_CALL(env, napi_remove_wrap(env, funcArg.GetThisVar(), &pdata)); - finalize(env, data, nullptr); + return NVal::CreateUndefined(env).val_; } @@ -98,15 +92,10 @@ napi_value Close::Async(napi_env env, napi_callback_info info) NVal cb(env, funcArg[NARG_POS::SECOND]); NAsyncWorkCallback(env, thisVar, cb).Schedule(procedureName, cbExec, cbComplete); } - auto finalize = [](napi_env env, void *data, void *hint) { - if (data == nullptr) { - return; - } - delete reinterpret_cast(data); - }; + void *pdata = nullptr; NAPI_CALL(env, napi_remove_wrap(env, funcArg.GetThisVar(), &pdata)); - finalize(env, data, nullptr); + return NVal::CreateUndefined(env).val_; } } // namespace ModuleFileIO -- Gitee From d9e3ee4496bf35fdfcea8ec1d5dcacc968c3e51a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AD=99=E6=97=AD=E8=BE=89?= Date: Mon, 31 Oct 2022 09:16:10 +0000 Subject: [PATCH 11/12] update interfaces/kits/js/src/mod_fileio/class_randomaccessfile/randomaccessfile_n_exporter.cpp. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 孙旭辉 --- .../class_randomaccessfile/randomaccessfile_n_exporter.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/interfaces/kits/js/src/mod_fileio/class_randomaccessfile/randomaccessfile_n_exporter.cpp b/interfaces/kits/js/src/mod_fileio/class_randomaccessfile/randomaccessfile_n_exporter.cpp index 38f000ead..bfa6e0983 100644 --- a/interfaces/kits/js/src/mod_fileio/class_randomaccessfile/randomaccessfile_n_exporter.cpp +++ b/interfaces/kits/js/src/mod_fileio/class_randomaccessfile/randomaccessfile_n_exporter.cpp @@ -353,6 +353,10 @@ napi_value RandomAccessFileNExporter::CloseSync(napi_env env, napi_callback_info return nullptr; } rafEntity->fd_.reset(); + + void *pdata = nullptr; + NAPI_CALL(env, napi_remove_wrap(env, funcArg.GetThisVar(), &pdata)); + return NVal::CreateUndefined(env).val_; } @@ -370,9 +374,6 @@ napi_value RandomAccessFileNExporter::Constructor(napi_env env, napi_callback_in return nullptr; } - void *pdata = nullptr; - NAPI_CALL(env, napi_remove_wrap(env, funcArg.GetThisVar(), &pdata)); - return funcArg.GetThisVar(); } -- Gitee From b9459cf5ad335a5e55fea4361989618ea4154e5a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AD=99=E6=97=AD=E8=BE=89?= Date: Mon, 31 Oct 2022 09:27:50 +0000 Subject: [PATCH 12/12] update interfaces/kits/js/src/mod_fileio/class_dir/dir_n_exporter.cpp. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 孙旭辉 --- interfaces/kits/js/src/mod_fileio/class_dir/dir_n_exporter.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/interfaces/kits/js/src/mod_fileio/class_dir/dir_n_exporter.cpp b/interfaces/kits/js/src/mod_fileio/class_dir/dir_n_exporter.cpp index 113cae396..61ebb2f73 100644 --- a/interfaces/kits/js/src/mod_fileio/class_dir/dir_n_exporter.cpp +++ b/interfaces/kits/js/src/mod_fileio/class_dir/dir_n_exporter.cpp @@ -55,7 +55,7 @@ static DirEntity *GetDirEntity(napi_env env, napi_callback_info info) napi_value DirNExporter::CloseSync(napi_env env, napi_callback_info info) { NFuncArg funcArg(env, info); - if (!funcArg.InitArgs(NARG_CNT::ONE)) { + if (!funcArg.InitArgs(NARG_CNT::ZERO, NARG_CNT::ONE)) { UniError(EINVAL).ThrowErr(env, "Number of arguments unmatched"); return nullptr; } -- Gitee