[Alarm/BT/HAM/MediaCon/SysInfo] Fix Coverity issues 32/305432/3
authorPiotr Kosko/Tizen API (PLT) /SRPOL/Engineer/Samsung Electronics <p.kosko@samsung.com>
Thu, 1 Feb 2024 13:05:00 +0000 (14:05 +0100)
committerPiotr Kosko/Tizen API (PLT) /SRPOL/Engineer/Samsung Electronics <p.kosko@samsung.com>
Fri, 2 Feb 2024 10:39:52 +0000 (11:39 +0100)
Issues:
1739921, 1741285, 1745119, 1746302, 1740124, 1740531, 1745380

[Verification] Auto TCT passed for modules Alarm, Bluetooth,
HumanactivityMonitor, Mediacontroller and Systeminfo

Change-Id: I05b09590936ceba63273bf92ad53577bb2a368fd

src/alarm/alarm_manager.cc
src/bluetooth/bluetooth_le_device.cc
src/humanactivitymonitor/humanactivitymonitor_manager.cc
src/mediacontroller/mediacontroller_server.cc
src/systeminfo/systeminfo_sim_details_manager.cc

index 4eae000..19a3244 100644 (file)
@@ -369,7 +369,8 @@ void AlarmManager::AddAlarmNotification(const picojson::value& args, picojson::o
       ret = alarm_schedule_noti_after_delay(notification_handle, delay, period, &alarm_id);
     }
   } else {
-    if (alarm.find("period")->second.is<double>()) {
+    const auto it_period = alarm.find("period");
+    if (alarm.end() != it_period && it_period->second.is<double>()) {
       LogAndReportError(PlatformResult(ErrorCode::INVALID_VALUES_ERR,
                                        "AlarmAbsolute constructed by deprecated constructor."),
                         &out);
index bb20d59..20dc820 100644 (file)
@@ -484,7 +484,7 @@ void BluetoothLEDevice::GetAttMtu(const picojson::value& data, picojson::object&
   const auto& address = common::FromJson<std::string>(args, kAddress);
 
   if (mac_address_.empty()) {
-    mac_address_ == address;
+    mac_address_ = address;
   }
 
   bt_gatt_client_h client = service_.GetGattClientHandle(address);
@@ -512,7 +512,7 @@ void BluetoothLEDevice::RequestAttMtuChange(const picojson::value& data, picojso
   const auto& address = common::FromJson<std::string>(args, kAddress);
 
   if (mac_address_.empty()) {
-    mac_address_ == address;
+    mac_address_ = address;
   }
 
   bt_gatt_client_h client = service_.GetGattClientHandle(address);
@@ -535,7 +535,7 @@ void BluetoothLEDevice::AddAttMtuChangeListener(const picojson::value& data,
   const auto& address = common::FromJson<std::string>(args, kAddress);
 
   if (mac_address_.empty()) {
-    mac_address_ == address;
+    mac_address_ = address;
   }
 
   bt_gatt_client_h client = service_.GetGattClientHandle(address);
index 3e54bee..67031e3 100644 (file)
@@ -661,6 +661,7 @@ class HumanActivityMonitorManager::Monitor::SensorMonitor
 
   void addRecordedData(picojson::value* data) {
     ScopeLogger();
+    std::lock_guard<std::mutex> lock(mutex_);
     recorded_data_->push_back(*data);
   }
 
index 85b48e9..74f0fbb 100644 (file)
@@ -344,6 +344,7 @@ PlatformResult MediaControllerServer::SetMetadata(const picojson::object& metada
     }
   }
 
+  std::lock_guard<std::mutex> lock(handle_mutex_);
   int ret = mc_server_update_metadata(handle_);
   if (MEDIA_CONTROLLER_ERROR_NONE != ret) {
     return LogAndCreateResult(
index 8b85d5b..f1c758e 100644 (file)
@@ -147,10 +147,11 @@ PlatformResult SimDetailsManager::GatherSimInformation(TapiHandle* handle, picoj
       return ret;
     }
     // The variable used to determine if double mutex-locking is needed.
-    auto to_process_cached = to_process_;
+    unsigned short to_process_cached = 0;
     {
       // All props should be fetched synchronously, but sync function does not work
       std::lock_guard<std::mutex> lock_to_process(sim_to_process_mutex_);
+      to_process_cached = to_process_;
       // would be deleted on } ending bracket
       int result = tel_get_sim_cphs_netname(handle, SimCphsValueCallback, this);
       if (TAPI_API_SUCCESS == result) {