From 392524c34ae4dad3ab742da80ed22a24853a28b7 Mon Sep 17 00:00:00 2001 From: fanzhihao8 Date: Wed, 16 Jul 2025 21:19:39 +0800 Subject: [PATCH 1/7] fix bug for codecheck Signed-off-by: fanzhihao8 --- .../innerkitsimpl/stream/src/file_source_stream.cpp | 10 ++++++++-- frameworks/innerkitsimpl/utils/src/image_utils.cpp | 4 ++++ .../libextplugin/src/hardware/jpeg_hw_decoder.cpp | 2 +- 3 files changed, 13 insertions(+), 3 deletions(-) diff --git a/frameworks/innerkitsimpl/stream/src/file_source_stream.cpp b/frameworks/innerkitsimpl/stream/src/file_source_stream.cpp index ffe748527..f86ea4326 100644 --- a/frameworks/innerkitsimpl/stream/src/file_source_stream.cpp +++ b/frameworks/innerkitsimpl/stream/src/file_source_stream.cpp @@ -431,11 +431,17 @@ OutputDataStream* FileSourceStream::ToOutputDataStream() if (filePtr_ == nullptr) { return nullptr; } - if (DupFd(filePtr_, dupFd)) { + if (!DupFd(filePtr_, dupFd)) { IMAGE_LOGE("[FileSourceStream] ToOutputDataStream fd failed"); return nullptr; } - return new (std::nothrow) FilePackerStream(dupFd); + // return new (std::nothrow) FilePackerStream(dupFd); + OutputDataStream* stream = new (std::nothrow) FilePackerStream(dupFd); + if (!stream) { + close(dupFd); + return nullptr; + } + return stream; } int FileSourceStream::GetMMapFd() diff --git a/frameworks/innerkitsimpl/utils/src/image_utils.cpp b/frameworks/innerkitsimpl/utils/src/image_utils.cpp index c5f89405a..fa126fca7 100644 --- a/frameworks/innerkitsimpl/utils/src/image_utils.cpp +++ b/frameworks/innerkitsimpl/utils/src/image_utils.cpp @@ -806,6 +806,10 @@ std::string ImageUtils::GetLocalTime() auto ms = std::chrono::duration_cast(now.time_since_epoch()) % 1000; std::time_t t = std::chrono::system_clock::to_time_t(now); std::tm tm = *std::localtime(&t); + if (!tm) { + IMAGE_LOGE("ImageUtils::GetLocalTime error, returned nullptr"); + return ""; + } std::stringstream ss; int millSecondWidth = 3; diff --git a/plugins/common/libs/image/libextplugin/src/hardware/jpeg_hw_decoder.cpp b/plugins/common/libs/image/libextplugin/src/hardware/jpeg_hw_decoder.cpp index 42ff4c424..ccea55968 100644 --- a/plugins/common/libs/image/libextplugin/src/hardware/jpeg_hw_decoder.cpp +++ b/plugins/common/libs/image/libextplugin/src/hardware/jpeg_hw_decoder.cpp @@ -267,7 +267,7 @@ bool JpegHardwareDecoder::HuffmanTblTransform(JHUFF_TBL* huffTbl, CodecJpegHuffT actualHuffValLen += huffTbl->bits[i]; } JPEG_HW_LOGD("actualHuffValLen=%{public}d", actualHuffValLen); - if (actualHuffValLen > MAX_LIST_HUFFVAL_LEN) { + if (actualHuffValLen >= MAX_LIST_HUFFVAL_LEN) { JPEG_HW_LOGE("invalid huffVal len: %{public}d", actualHuffValLen); return false; } -- Gitee From 6b0e886387a5ee62a3feb398996e62186e2abd2e Mon Sep 17 00:00:00 2001 From: fanzhihao8 Date: Thu, 17 Jul 2025 10:58:14 +0800 Subject: [PATCH 2/7] fix bug for codecheck Signed-off-by: fanzhihao8 --- frameworks/innerkitsimpl/stream/src/file_source_stream.cpp | 1 - 1 file changed, 1 deletion(-) diff --git a/frameworks/innerkitsimpl/stream/src/file_source_stream.cpp b/frameworks/innerkitsimpl/stream/src/file_source_stream.cpp index f86ea4326..6376d206f 100644 --- a/frameworks/innerkitsimpl/stream/src/file_source_stream.cpp +++ b/frameworks/innerkitsimpl/stream/src/file_source_stream.cpp @@ -435,7 +435,6 @@ OutputDataStream* FileSourceStream::ToOutputDataStream() IMAGE_LOGE("[FileSourceStream] ToOutputDataStream fd failed"); return nullptr; } - // return new (std::nothrow) FilePackerStream(dupFd); OutputDataStream* stream = new (std::nothrow) FilePackerStream(dupFd); if (!stream) { close(dupFd); -- Gitee From f61a5f75fab759c3371432a8c3d921a8ae772165 Mon Sep 17 00:00:00 2001 From: fanzhihao8 Date: Thu, 17 Jul 2025 14:34:00 +0800 Subject: [PATCH 3/7] fix bug for codecheck Signed-off-by: fanzhihao8 --- frameworks/innerkitsimpl/utils/src/image_utils.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frameworks/innerkitsimpl/utils/src/image_utils.cpp b/frameworks/innerkitsimpl/utils/src/image_utils.cpp index fa126fca7..f30112cd0 100644 --- a/frameworks/innerkitsimpl/utils/src/image_utils.cpp +++ b/frameworks/innerkitsimpl/utils/src/image_utils.cpp @@ -806,7 +806,7 @@ std::string ImageUtils::GetLocalTime() auto ms = std::chrono::duration_cast(now.time_since_epoch()) % 1000; std::time_t t = std::chrono::system_clock::to_time_t(now); std::tm tm = *std::localtime(&t); - if (!tm) { + if (tm == nullptr) { IMAGE_LOGE("ImageUtils::GetLocalTime error, returned nullptr"); return ""; } -- Gitee From 09d029020f6f5906a442df6e7f562689f0c1937a Mon Sep 17 00:00:00 2001 From: fanzhihao8 Date: Thu, 17 Jul 2025 18:46:27 +0800 Subject: [PATCH 4/7] fix bug for codecheck Signed-off-by: fanzhihao8 --- frameworks/innerkitsimpl/utils/src/image_utils.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/frameworks/innerkitsimpl/utils/src/image_utils.cpp b/frameworks/innerkitsimpl/utils/src/image_utils.cpp index f30112cd0..a6407d929 100644 --- a/frameworks/innerkitsimpl/utils/src/image_utils.cpp +++ b/frameworks/innerkitsimpl/utils/src/image_utils.cpp @@ -806,8 +806,8 @@ std::string ImageUtils::GetLocalTime() auto ms = std::chrono::duration_cast(now.time_since_epoch()) % 1000; std::time_t t = std::chrono::system_clock::to_time_t(now); std::tm tm = *std::localtime(&t); - if (tm == nullptr) { - IMAGE_LOGE("ImageUtils::GetLocalTime error, returned nullptr"); + if (tm == NULL) { + IMAGE_LOGE("ImageUtils::GetLocalTime error, returned NULL"); return ""; } -- Gitee From f9f59a9f5d2d901d3f27e0fa49240d99917ec5b2 Mon Sep 17 00:00:00 2001 From: fanzhihao8 Date: Fri, 18 Jul 2025 15:24:35 +0800 Subject: [PATCH 5/7] fix bug for codecheck Signed-off-by: fanzhihao8 --- frameworks/innerkitsimpl/utils/src/image_utils.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/frameworks/innerkitsimpl/utils/src/image_utils.cpp b/frameworks/innerkitsimpl/utils/src/image_utils.cpp index a6407d929..f33ae97c7 100644 --- a/frameworks/innerkitsimpl/utils/src/image_utils.cpp +++ b/frameworks/innerkitsimpl/utils/src/image_utils.cpp @@ -805,15 +805,15 @@ std::string ImageUtils::GetLocalTime() auto now = std::chrono::system_clock::now(); auto ms = std::chrono::duration_cast(now.time_since_epoch()) % 1000; std::time_t t = std::chrono::system_clock::to_time_t(now); - std::tm tm = *std::localtime(&t); - if (tm == NULL) { - IMAGE_LOGE("ImageUtils::GetLocalTime error, returned NULL"); + std::tm* tm = std::localtime(&t); + if (tm == nullptr) { + IMAGE_LOGE("ImageUtils::GetLocalTime error, returned nullptr"); return ""; } std::stringstream ss; int millSecondWidth = 3; - ss << std::put_time(&tm, "%Y-%m-%d %H_%M_%S.") << std::setfill('0') << std::setw(millSecondWidth) << ms.count(); + ss << std::put_time(tm, "%Y-%m-%d %H_%M_%S.") << std::setfill('0') << std::setw(millSecondWidth) << ms.count(); return ss.str(); } -- Gitee From 7931e7f5b18eaf5b4c08bce3531ebe976b9b74a4 Mon Sep 17 00:00:00 2001 From: fanzhihao8 Date: Tue, 22 Jul 2025 19:38:07 +0800 Subject: [PATCH 6/7] fix bug for codecheck Signed-off-by: fanzhihao8 --- .../stream/include/file_source_stream.h | 1 - .../stream/src/file_source_stream.cpp | 18 ------------------ .../stream_test/file_source_stream_test.cpp | 18 ------------------ 3 files changed, 37 deletions(-) diff --git a/frameworks/innerkitsimpl/stream/include/file_source_stream.h b/frameworks/innerkitsimpl/stream/include/file_source_stream.h index 40e692044..7241eddf7 100644 --- a/frameworks/innerkitsimpl/stream/include/file_source_stream.h +++ b/frameworks/innerkitsimpl/stream/include/file_source_stream.h @@ -47,7 +47,6 @@ public: uint8_t *GetDataPtr() override; uint8_t *GetDataPtr(bool populate) override; uint32_t GetStreamType() override; - ImagePlugin::OutputDataStream* ToOutputDataStream() override; int GetMMapFd(); private: diff --git a/frameworks/innerkitsimpl/stream/src/file_source_stream.cpp b/frameworks/innerkitsimpl/stream/src/file_source_stream.cpp index 6376d206f..5a85cfa7b 100644 --- a/frameworks/innerkitsimpl/stream/src/file_source_stream.cpp +++ b/frameworks/innerkitsimpl/stream/src/file_source_stream.cpp @@ -425,24 +425,6 @@ void FileSourceStream::ResetReadBuffer() fileData_ = nullptr; } -OutputDataStream* FileSourceStream::ToOutputDataStream() -{ - int dupFd = -1; - if (filePtr_ == nullptr) { - return nullptr; - } - if (!DupFd(filePtr_, dupFd)) { - IMAGE_LOGE("[FileSourceStream] ToOutputDataStream fd failed"); - return nullptr; - } - OutputDataStream* stream = new (std::nothrow) FilePackerStream(dupFd); - if (!stream) { - close(dupFd); - return nullptr; - } - return stream; -} - int FileSourceStream::GetMMapFd() { mmapFdPassedOn_ = true; diff --git a/frameworks/innerkitsimpl/test/unittest/stream_test/file_source_stream_test.cpp b/frameworks/innerkitsimpl/test/unittest/stream_test/file_source_stream_test.cpp index 6707c8ede..659a8f8f7 100644 --- a/frameworks/innerkitsimpl/test/unittest/stream_test/file_source_stream_test.cpp +++ b/frameworks/innerkitsimpl/test/unittest/stream_test/file_source_stream_test.cpp @@ -579,21 +579,3 @@ HWTEST_F(FileSourceStreamTest, FileSourceStreamTest0027, TestSize.Level3) fileSourceStream->fileData_ = nullptr; GTEST_LOG_(INFO) << "FileSourceStreamTest: FileSourceStreamTest0027 end"; } - -/** - * @tc.name: FileSourceStreamTest0028 - * @tc.desc: ToOutputDataStream - * @tc.type: FUNC - */ -HWTEST_F(FileSourceStreamTest, FileSourceStreamTest0028, TestSize.Level3) -{ - GTEST_LOG_(INFO) << "FileSourceStreamTest: FileSourceStreamTest0028 start"; - std::unique_ptr fileSourceStream = FileSourceStream::CreateSourceStream(IMAGE_INPUT_JPG_PATH); - ASSERT_NE(fileSourceStream, nullptr); - fileSourceStream->filePtr_ = fopen("/data/local/tmp/image/test.jpg", "w+"); - auto ret = fileSourceStream->ToOutputDataStream(); - ASSERT_EQ(ret, nullptr); - GTEST_LOG_(INFO) << "FileSourceStreamTest: FileSourceStreamTest0028 end"; -} -} -} -- Gitee From 4739c94841ef6661b71ba7c2868ab2303bc6cc9a Mon Sep 17 00:00:00 2001 From: fanzhihao8 Date: Tue, 22 Jul 2025 19:39:09 +0800 Subject: [PATCH 7/7] fix bug for codecheck Signed-off-by: fanzhihao8 --- .../test/unittest/stream_test/file_source_stream_test.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/frameworks/innerkitsimpl/test/unittest/stream_test/file_source_stream_test.cpp b/frameworks/innerkitsimpl/test/unittest/stream_test/file_source_stream_test.cpp index 659a8f8f7..f2fe79b19 100644 --- a/frameworks/innerkitsimpl/test/unittest/stream_test/file_source_stream_test.cpp +++ b/frameworks/innerkitsimpl/test/unittest/stream_test/file_source_stream_test.cpp @@ -579,3 +579,5 @@ HWTEST_F(FileSourceStreamTest, FileSourceStreamTest0027, TestSize.Level3) fileSourceStream->fileData_ = nullptr; GTEST_LOG_(INFO) << "FileSourceStreamTest: FileSourceStreamTest0027 end"; } +} +} -- Gitee