[Trivial] Fix svace issue
authorSeoHyungjun <hyungjun.seo@samsung.com>
Fri, 16 Dec 2022 07:40:55 +0000 (16:40 +0900)
committerJijoong Moon <jijoong.moon@samsung.com>
Thu, 22 Dec 2022 03:11:23 +0000 (12:11 +0900)
Running increment operator after erasing iterator is a logical error.
If erase is required, change the iterator to the return value. (The return value of erase is the next iterator.)
If not, run increment operator.

Signed-off-by: SeoHyungjun <hyungjun.seo@samsung.com>
api/capi/src/nntrainer.cpp
nntrainer/tensor/task_executor.cpp

index efe71d8..b713649 100644 (file)
@@ -189,7 +189,7 @@ static int ml_train_dataset_create(ml_train_dataset_h *dataset,
 template <typename... Args>
 static int ml_train_dataset_add_(ml_train_dataset_h dataset,
                                  ml_train_dataset_mode_e mode,
-                                 ml::train::DatasetType type, Args &&... args) {
+                                 ml::train::DatasetType type, Args &&...args) {
   check_feature_state();
   std::shared_ptr<ml::train::Dataset> underlying_dataset;
 
@@ -1287,7 +1287,7 @@ int ml_train_model_get_weight(ml_train_model_h model, const char *layer_name,
     status = ml_tensors_data_set_tensor_data(
       *weight, i, w[i], dims[i].getDataLen() * sizeof(float));
     if (status != ML_ERROR_NONE) {
-           ml_tensors_data_destroy(weight);
+      ml_tensors_data_destroy(*weight);
       return status;
     }
   }
index 8e253bd..6e266fb 100644 (file)
@@ -49,8 +49,9 @@ void TaskExecutor::clean(void) {
   for (auto it = tasks.begin(); it != tasks.end();) {
     auto running = std::get<std::atomic_bool>(it->second).load();
     if (running == false)
-      tasks.erase(it);
-    it++;
+      it = tasks.erase(it);
+    else
+      it++;
   }
 }