From dcbe99da5601d05e9ca638edf7125649790c0542 Mon Sep 17 00:00:00 2001 From: chenming Date: Fri, 25 Mar 2022 14:53:41 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E6=A3=80=E8=A7=86=E6=95=B4?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: chenming --- frameworks/extension/src/work_scheduler_extension.cpp | 4 ++-- services/native/src/conditions/battery_level_listener.cpp | 2 +- services/native/src/conditions/charger_listener.cpp | 4 ++-- services/native/src/work_scheduler_service.cpp | 1 + 4 files changed, 6 insertions(+), 5 deletions(-) diff --git a/frameworks/extension/src/work_scheduler_extension.cpp b/frameworks/extension/src/work_scheduler_extension.cpp index ec35602..eedf8ea 100644 --- a/frameworks/extension/src/work_scheduler_extension.cpp +++ b/frameworks/extension/src/work_scheduler_extension.cpp @@ -23,13 +23,13 @@ namespace WorkScheduler { WorkSchedulerExtension* WorkSchedulerExtension::Create(const std::unique_ptr& runtime) { if (!runtime) { - return new WorkSchedulerExtension(); + return (new (std::nothrow) WorkSchedulerExtension()); } switch (runtime->GetLanguage()) { case AbilityRuntime::Runtime::Language::JS: return JsWorkSchedulerExtension::Create(runtime); default: - return new WorkSchedulerExtension(); + return (new (std::nothrow) WorkSchedulerExtension()); } } diff --git a/services/native/src/conditions/battery_level_listener.cpp b/services/native/src/conditions/battery_level_listener.cpp index b553136..177f187 100644 --- a/services/native/src/conditions/battery_level_listener.cpp +++ b/services/native/src/conditions/battery_level_listener.cpp @@ -32,7 +32,7 @@ void BatteryLevelEventSubscriber::OnReceiveEvent(const EventFwk::CommonEventData WS_HILOGI("OnReceiveEvent get action: %{public}s", action.c_str()); if (action == EventFwk::CommonEventSupport::COMMON_EVENT_BATTERY_CHANGED) { if (data.GetCode() == PowerMgr::BatteryInfo::COMMON_EVENT_CODE_CAPACITY) { - int battCap = atoi(data.GetData().c_str()); + int battCap = stoi(data.GetData()); listener_.OnConditionChanged(WorkCondition::Type::BATTERY_LEVEL, std::make_shared(battCap, 0, 0, std::string())); } diff --git a/services/native/src/conditions/charger_listener.cpp b/services/native/src/conditions/charger_listener.cpp index 52cbdc4..6883ff0 100644 --- a/services/native/src/conditions/charger_listener.cpp +++ b/services/native/src/conditions/charger_listener.cpp @@ -33,7 +33,7 @@ void ChargerEventSubscriber::OnReceiveEvent(const EventFwk::CommonEventData &dat if (action == EventFwk::CommonEventSupport::COMMON_EVENT_POWER_CONNECTED) { int code = data.GetCode(); if (code == PowerMgr::BatteryInfo::COMMON_EVENT_CODE_PLUGGED_TYPE) { - int type = atoi(data.GetData().c_str()); + int type = stoi(data.GetData()); switch (type) { case static_cast(PowerMgr::BatteryPluggedType::PLUGGED_TYPE_AC): WS_HILOGI("Condition changed: CHARGER_PLUGGED_AC"); @@ -60,7 +60,7 @@ void ChargerEventSubscriber::OnReceiveEvent(const EventFwk::CommonEventData &dat } else if (action == EventFwk::CommonEventSupport::COMMON_EVENT_POWER_DISCONNECTED) { int code = data.GetCode(); if (code == PowerMgr::BatteryInfo::COMMON_EVENT_CODE_PLUGGED_TYPE) { - int type = atoi(data.GetData().c_str()); + int type = stoi(data.GetData()); switch (type) { case static_cast(PowerMgr::BatteryPluggedType::PLUGGED_TYPE_NONE): case static_cast(PowerMgr::BatteryPluggedType::PLUGGED_TYPE_BUTT): diff --git a/services/native/src/work_scheduler_service.cpp b/services/native/src/work_scheduler_service.cpp index ae9d044..9526db8 100644 --- a/services/native/src/work_scheduler_service.cpp +++ b/services/native/src/work_scheduler_service.cpp @@ -144,6 +144,7 @@ list> WorkSchedulerService::ReadPersistedWorks() Json::CharReaderBuilder readerBuilder; const unique_ptr jsonReader(readerBuilder.newCharReader()); bool res = jsonReader->parse(data.c_str(), data.c_str() + data.length(), &root, &errs); + fin.close(); if (!res || !errs.empty()) { return workInfos; } -- Gitee