From 6a1fd83c619c40a0dc00209bebd753728c98eac1 Mon Sep 17 00:00:00 2001 From: liyuke Date: Mon, 11 Aug 2025 20:17:14 +0800 Subject: [PATCH] =?UTF-8?q?dup=5Fani=E5=86=85=E5=AD=98=E6=B3=84=E6=BC=8F?= =?UTF-8?q?=E9=97=AE=E9=A2=98=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: liyuke Change-Id: I26fa7540cd822117619f9323993765e5fb23050d --- .../kits/js/src/mod_fs/class_atomicfile/ani/atomicfile_ani.cpp | 2 ++ interfaces/kits/js/src/mod_fs/properties/ani/dup_ani.cpp | 2 ++ .../kits/js/src/mod_fs/properties/ani/fdopen_stream_ani.cpp | 2 ++ interfaces/kits/js/src/mod_fs/properties/ani/read_lines_ani.cpp | 2 ++ 4 files changed, 8 insertions(+) diff --git a/interfaces/kits/js/src/mod_fs/class_atomicfile/ani/atomicfile_ani.cpp b/interfaces/kits/js/src/mod_fs/class_atomicfile/ani/atomicfile_ani.cpp index 614c53008..8756289da 100644 --- a/interfaces/kits/js/src/mod_fs/class_atomicfile/ani/atomicfile_ani.cpp +++ b/interfaces/kits/js/src/mod_fs/class_atomicfile/ani/atomicfile_ani.cpp @@ -113,6 +113,8 @@ ani_object AtomicFileAni::GetBaseFile(ani_env *env, [[maybe_unused]] ani_object auto result = FileWrapper::Wrap(env, move(fsFile)); if (result == nullptr) { HILOGE("Failed to wrap"); + delete fsFile; + fsFile = nullptr; ErrorHandler::Throw(env, UNKNOWN_ERR); return nullptr; } diff --git a/interfaces/kits/js/src/mod_fs/properties/ani/dup_ani.cpp b/interfaces/kits/js/src/mod_fs/properties/ani/dup_ani.cpp index 0ddd81887..5578d8f5a 100644 --- a/interfaces/kits/js/src/mod_fs/properties/ani/dup_ani.cpp +++ b/interfaces/kits/js/src/mod_fs/properties/ani/dup_ani.cpp @@ -40,6 +40,8 @@ ani_object DupAni::Dup(ani_env *env, [[maybe_unused]] ani_class clazz, ani_int f const FsFile *file = ret.GetData().value(); auto result = FileWrapper::Wrap(env, move(file)); if (result == nullptr) { + delete file; + file = nullptr; ErrorHandler::Throw(env, UNKNOWN_ERR); return nullptr; } diff --git a/interfaces/kits/js/src/mod_fs/properties/ani/fdopen_stream_ani.cpp b/interfaces/kits/js/src/mod_fs/properties/ani/fdopen_stream_ani.cpp index ad98f46e3..eda3a2bac 100644 --- a/interfaces/kits/js/src/mod_fs/properties/ani/fdopen_stream_ani.cpp +++ b/interfaces/kits/js/src/mod_fs/properties/ani/fdopen_stream_ani.cpp @@ -50,6 +50,8 @@ ani_object FdopenStreamAni::FdopenStreamSync( const FsStream *stream = ret.GetData().value(); auto result = StreamWrapper::Wrap(env, move(stream)); if (result == nullptr) { + delete stream; + stream = nullptr; ErrorHandler::Throw(env, UNKNOWN_ERR); return nullptr; } diff --git a/interfaces/kits/js/src/mod_fs/properties/ani/read_lines_ani.cpp b/interfaces/kits/js/src/mod_fs/properties/ani/read_lines_ani.cpp index 10c3ce394..694b09683 100644 --- a/interfaces/kits/js/src/mod_fs/properties/ani/read_lines_ani.cpp +++ b/interfaces/kits/js/src/mod_fs/properties/ani/read_lines_ani.cpp @@ -76,6 +76,8 @@ ani_object ReadLinesAni::ReadLinesSync( const FsReaderIterator *readerIterator = ret.GetData().value(); auto result = ReaderIteratorAni::Wrap(env, move(readerIterator)); if (result == nullptr) { + delete readerIterator; + readerIterator = nullptr; ErrorHandler::Throw(env, UNKNOWN_ERR); return nullptr; } -- Gitee