From 3c39edd817eef704b83d70519b6500452b954046 Mon Sep 17 00:00:00 2001 From: wenlong12 Date: Tue, 22 Feb 2022 16:11:16 +0800 Subject: [PATCH] fix hiperf cidecheck issue Signed-off-by: wenlong12 Signed-off-by: wenlong12 --- include/debug_logger.h | 4 ++-- src/elf_file.cpp | 2 +- src/perf_event_record.cpp | 5 ++++- src/perf_file_reader.cpp | 13 ++++++++----- 4 files changed, 15 insertions(+), 9 deletions(-) diff --git a/include/debug_logger.h b/include/debug_logger.h index d5b803f..6e2ff89 100755 --- a/include/debug_logger.h +++ b/include/debug_logger.h @@ -299,8 +299,8 @@ public: if (!showError_) { DebugLogger::GetInstance()->Log(level_, HILOG_TAG, "%s\n", buffer_.str().c_str()); } else { - DebugLogger::GetInstance()->Log(level_, HILOG_TAG, "%s (errno %d:%s)\n", - buffer_.str().c_str(), errno, strerror(errno)); + DebugLogger::GetInstance()->Log(level_, HILOG_TAG, "%s (errno %d)\n", + buffer_.str().c_str(), errno); } } } diff --git a/src/elf_file.cpp b/src/elf_file.cpp index 285fc58..81308f7 100755 --- a/src/elf_file.cpp +++ b/src/elf_file.cpp @@ -185,7 +185,7 @@ bool ElfFile::ParseSecNamesStr() HLOG_ASSERT(ret == static_cast(secOffset)); char *secNamesBuf = new (std::nothrow) char[secSize]; if (secNamesBuf == nullptr) { - HLOGE("new secNamesBuf failed"); + HLOGE("Error in ElfFile::ParseSecNamesStr(): new secNamesBuf failed"); return false; } memset_s(secNamesBuf, secSize, '\0', secSize); diff --git a/src/perf_event_record.cpp b/src/perf_event_record.cpp index 9b2aa9e..91b22d3 100755 --- a/src/perf_event_record.cpp +++ b/src/perf_event_record.cpp @@ -228,7 +228,10 @@ void PerfRecordSample::ReplaceWithCallStack(size_t originalSize) PerfRecordSample::PerfRecordSample(uint8_t *p, const perf_event_attr &attr) : PerfEventRecord(p, "sample") { - HLOG_ASSERT(p); + if (p == nullptr) { + HLOG_ASSERT(p); + return; + } sampleType_ = attr.sample_type; p += sizeof(header); diff --git a/src/perf_file_reader.cpp b/src/perf_file_reader.cpp index d630fb9..7e0d783 100755 --- a/src/perf_file_reader.cpp +++ b/src/perf_file_reader.cpp @@ -316,8 +316,9 @@ bool PerfFileReader::ReadRecord(ProcessRecordCB &callback) bool PerfFileReader::Read(void *buf, size_t len) { - HLOG_ASSERT(buf != nullptr); - if (len == 0) { + if (buf == nullptr || len == 0) { + HLOG_ASSERT(buf != nullptr); + HLOG_ASSERT(len > 0); return false; } @@ -335,9 +336,11 @@ const perf_file_header &PerfFileReader::GetHeader() const bool PerfFileReader::Read(char *buf, uint64_t offset, size_t len) { - HLOG_ASSERT(buf != nullptr); - HLOG_ASSERT(len > 0); - + if (buf == nullptr || len == 0) { + HLOG_ASSERT(buf != nullptr); + HLOG_ASSERT(len > 0); + return false; + } if (fseek(fp_, offset, SEEK_SET) != 0) { HLOGE("fseek() failed"); return false; -- Gitee