diff --git a/services/bundlemgr_lite/src/bundle_manager_service.cpp b/services/bundlemgr_lite/src/bundle_manager_service.cpp index 12c817ceffd6f3537be34fc75c4dac200ea6aaa1..edb89fbacb95f996f287fe36686bc6026b518421 100644 --- a/services/bundlemgr_lite/src/bundle_manager_service.cpp +++ b/services/bundlemgr_lite/src/bundle_manager_service.cpp @@ -183,6 +183,9 @@ void ManagerService::ServiceMsgProcess(Request* request) if (installer_ == nullptr) { installer_ = new (std::nothrow) BundleInstaller(INSTALL_PATH, DATA_PATH); + if (installer_ == nullptr) { + return; + } } switch (request->msgId) { diff --git a/utils/bundle_lite/utils_list.h b/utils/bundle_lite/utils_list.h index ae5a9593015ff5524902a97fd8b7f5135b15e93f..a32577fc5d34042f81dffe81e5c9688f3c10984a 100644 --- a/utils/bundle_lite/utils_list.h +++ b/utils/bundle_lite/utils_list.h @@ -35,6 +35,9 @@ public: List() : count_(0) { head_ = new (std::nothrow) Node(); + if (head_ == nullptr) { + return; + } head_->next_ = head_; head_->prev_ = head_; } @@ -94,6 +97,9 @@ public: void PushBack(T value) { auto node = new (std::nothrow) Node(value); + if (node == nullptr) { + return; + } node->next_ = head_; node->prev_ = head_->prev_;