From 3055680f3e97a573e1ef7fe61df2424f4cb15094 Mon Sep 17 00:00:00 2001 From: huyx Date: Mon, 29 Jul 2024 16:39:43 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E6=8E=92=E9=9B=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: huyx --- adapter/uhdf2/host/src/driver_loader_full.c | 1 + .../support/platform/src/watchdog/watchdog_core.c | 1 + framework/tools/hdi-gen/hash/hash.cpp | 1 + framework/tools/hdi-gen/util/string_builder.cpp | 10 +++++++++- 4 files changed, 12 insertions(+), 1 deletion(-) diff --git a/adapter/uhdf2/host/src/driver_loader_full.c b/adapter/uhdf2/host/src/driver_loader_full.c index ed55d4110..d2dd22907 100644 --- a/adapter/uhdf2/host/src/driver_loader_full.c +++ b/adapter/uhdf2/host/src/driver_loader_full.c @@ -67,6 +67,7 @@ void HdfDriverLoaderFullReclaimDriver(struct HdfDriver *driver) if (driver == NULL) { return; } + dlclose(driver->priv); OsalMemFree(driver); } diff --git a/framework/support/platform/src/watchdog/watchdog_core.c b/framework/support/platform/src/watchdog/watchdog_core.c index eb2d4c887..757fc5361 100644 --- a/framework/support/platform/src/watchdog/watchdog_core.c +++ b/framework/support/platform/src/watchdog/watchdog_core.c @@ -111,6 +111,7 @@ int32_t WatchdogCntlrGetStatus(struct WatchdogCntlr *cntlr, int32_t *status) ret = cntlr->ops->getStatus(cntlr, status); if (ret != HDF_SUCCESS) { HDF_LOGE("WatchdogCntlrGetStatus: getStatus fail!"); + (void)OsalSpinUnlockIrqRestore(&cntlr->lock, &flags); return ret; } (void)OsalSpinUnlockIrqRestore(&cntlr->lock, &flags); diff --git a/framework/tools/hdi-gen/hash/hash.cpp b/framework/tools/hdi-gen/hash/hash.cpp index ddfe3bd8c..160167bb2 100644 --- a/framework/tools/hdi-gen/hash/hash.cpp +++ b/framework/tools/hdi-gen/hash/hash.cpp @@ -90,6 +90,7 @@ bool Hash::GenFileHashKey(const std::string &path, size_t &hashKey) buffer << fs.rdbuf(); hashKey = std::hash()(buffer.str()); + fs.close(); return true; } } // namespace HDI diff --git a/framework/tools/hdi-gen/util/string_builder.cpp b/framework/tools/hdi-gen/util/string_builder.cpp index 73fec49a9..32983303d 100644 --- a/framework/tools/hdi-gen/util/string_builder.cpp +++ b/framework/tools/hdi-gen/util/string_builder.cpp @@ -33,6 +33,10 @@ StringBuilder &StringBuilder::Append(char c) } } + if (buffer_ == nullptr) { + Logger::E(TAG, "buffer_ is nullptr!", ret); + return *this; + } buffer_[position_] = c; position_ += 1; return *this; @@ -146,12 +150,12 @@ bool StringBuilder::Grow(size_t size) if (buffer_ != nullptr) { int ret = memcpy_s(newBuffer, newSize, buffer_, capacity_); - free(buffer_); if (ret != 0) { Logger::E(TAG, "memcpy_s error ret = %d!", ret); free(newBuffer); return false; } + free(buffer_); } buffer_ = newBuffer; capacity_ = newSize; @@ -160,6 +164,10 @@ bool StringBuilder::Grow(size_t size) std::string StringBuilder::ToString() const { + if (buffer_ == nullptr) { + Logger::E(TAG, "buffer_ is nullptr"); + return ""; + } return std::string(buffer_, position_); } } // namespace HDI -- Gitee From 23474af8323f1ea5ef03696044078dcb0bc8924f Mon Sep 17 00:00:00 2001 From: huyx Date: Mon, 29 Jul 2024 17:13:05 +0800 Subject: [PATCH 2/4] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E6=8E=92=E9=9B=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: huyx --- framework/tools/hdi-gen/util/string_builder.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/framework/tools/hdi-gen/util/string_builder.cpp b/framework/tools/hdi-gen/util/string_builder.cpp index 32983303d..4942b3468 100644 --- a/framework/tools/hdi-gen/util/string_builder.cpp +++ b/framework/tools/hdi-gen/util/string_builder.cpp @@ -152,6 +152,7 @@ bool StringBuilder::Grow(size_t size) int ret = memcpy_s(newBuffer, newSize, buffer_, capacity_); if (ret != 0) { Logger::E(TAG, "memcpy_s error ret = %d!", ret); + free(buffer_); free(newBuffer); return false; } -- Gitee From 09446ee9fd38c177d0578086f58af61c0eafe975 Mon Sep 17 00:00:00 2001 From: huyx Date: Mon, 29 Jul 2024 19:40:40 +0800 Subject: [PATCH 3/4] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E6=8E=92=E9=9B=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: huyx --- framework/tools/hdi-gen/util/string_builder.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/framework/tools/hdi-gen/util/string_builder.cpp b/framework/tools/hdi-gen/util/string_builder.cpp index 4942b3468..fdabf36f3 100644 --- a/framework/tools/hdi-gen/util/string_builder.cpp +++ b/framework/tools/hdi-gen/util/string_builder.cpp @@ -34,7 +34,7 @@ StringBuilder &StringBuilder::Append(char c) } if (buffer_ == nullptr) { - Logger::E(TAG, "buffer_ is nullptr!", ret); + Logger::E(TAG, "buffer_ is nullptr!"); return *this; } buffer_[position_] = c; -- Gitee From 2a5d0662ba81d8248f2ef992dd8101806e3eb347 Mon Sep 17 00:00:00 2001 From: huyx Date: Thu, 1 Aug 2024 09:58:39 +0800 Subject: [PATCH 4/4] =?UTF-8?q?=E5=91=8A=E8=AD=A6=E6=95=B4=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: huyx --- framework/core/manager/src/devmgr_service.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/framework/core/manager/src/devmgr_service.c b/framework/core/manager/src/devmgr_service.c index 902ce8f54..e5d115b48 100644 --- a/framework/core/manager/src/devmgr_service.c +++ b/framework/core/manager/src/devmgr_service.c @@ -450,6 +450,10 @@ int DevmgrServicePowerStateChange(struct IDevmgrService *devmgrService, enum Hdf bool DevmgrServiceConstruct(struct DevmgrService *inst) { + if (inst == NULL) { + HDF_LOGE("%{public}s:inst is null ", __func__); + return false; + } struct IDevmgrService *devMgrSvcIf = NULL; if (OsalMutexInit(&inst->devMgrMutex) != HDF_SUCCESS) { HDF_LOGE("%{public}s:failed to mutex init ", __func__); -- Gitee