From 1466667c436c9df4a7d4f67342ef5559b7c4f70c Mon Sep 17 00:00:00 2001 From: 18721213663 Date: Thu, 30 Nov 2023 12:09:52 +0800 Subject: [PATCH 1/2] fs_close_add_log Signed-off-by: 18721213663 --- interfaces/kits/js/src/mod_fs/properties/close.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/interfaces/kits/js/src/mod_fs/properties/close.cpp b/interfaces/kits/js/src/mod_fs/properties/close.cpp index 76b639afe..988561346 100644 --- a/interfaces/kits/js/src/mod_fs/properties/close.cpp +++ b/interfaces/kits/js/src/mod_fs/properties/close.cpp @@ -44,6 +44,12 @@ static FileEntity *GetFileEntity(napi_env env, napi_value objFile) static NError CloseFd(int fd) { + string path = "/proc/self/fd/" + to_string(fd); + int readlinkRet = uv_fs_readlink(nullptr, readlink_req.get(), path.c_str(), nullptr); + if (readlinkRet < 0) { + HILOGE("Failed to readlink fd, ret: %{public}d", readlinkRet); + return NError(readlinkRet); + HILOGI("In CloseFd, filePath=%{public}s", static_cast(readlink_req->ptr)); std::unique_ptr close_req = { new uv_fs_t, CommonFunc::fs_req_cleanup }; if (!close_req) { -- Gitee From a4b2e427bd302338243acaf9b4b536486b0397aa Mon Sep 17 00:00:00 2001 From: 18721213663 Date: Thu, 30 Nov 2023 14:50:19 +0800 Subject: [PATCH 2/2] fs_close_add_log Signed-off-by: 18721213663 --- interfaces/kits/js/src/mod_fs/properties/close.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/interfaces/kits/js/src/mod_fs/properties/close.cpp b/interfaces/kits/js/src/mod_fs/properties/close.cpp index 988561346..941e958a3 100644 --- a/interfaces/kits/js/src/mod_fs/properties/close.cpp +++ b/interfaces/kits/js/src/mod_fs/properties/close.cpp @@ -44,11 +44,18 @@ static FileEntity *GetFileEntity(napi_env env, napi_value objFile) static NError CloseFd(int fd) { + std::unique_ptr readlink_req = { + new uv_fs_t, CommonFunc::fs_req_cleanup }; + if (!readlink_req) { + HILOGE("Failed to request heap memory."); + return NError(ENOMEM); + } string path = "/proc/self/fd/" + to_string(fd); int readlinkRet = uv_fs_readlink(nullptr, readlink_req.get(), path.c_str(), nullptr); if (readlinkRet < 0) { HILOGE("Failed to readlink fd, ret: %{public}d", readlinkRet); return NError(readlinkRet); + } HILOGI("In CloseFd, filePath=%{public}s", static_cast(readlink_req->ptr)); std::unique_ptr close_req = { new uv_fs_t, CommonFunc::fs_req_cleanup }; -- Gitee