Add supoprt for D release use-case.
[sim/o1-interface.git] / ntsimulator / ntsim-ng / core / faults / faults_logic.c
index 3f1688e..9479b43 100644 (file)
@@ -34,22 +34,33 @@ void faults_fault_list_clear(void) {
     free(faults_fault_list);
     faults_fault_list = 0;
     faults_fault_list_iterator = 0;
+    log_add_verbose(2, "[faults] fault list cleared\n");
 }
 
 int faults_fault_list_add(uint16_t delay) {
     faults_fault_list_len++;
     faults_fault_list = (uint16_t *)realloc(faults_fault_list, sizeof(uint16_t) * (faults_fault_list_len));
     if(faults_fault_list == 0) {
-        log_error("realloc failed");
+        log_error("realloc failed\n");
         return NTS_ERR_FAILED;
     }
     faults_fault_list[faults_fault_list_len - 1] = delay;
+    log_add_verbose(2, "[faults] added %d\n", delay);
 
     return NTS_ERR_OK;
 }
 
 bool faults_fault_list_not_empty(void) {
-    return (faults_fault_list_len != 0);
+    bool not_empty = (faults_fault_list_len != 0);
+    if(not_empty == true) {
+        int delay_sum = 0;
+        for(int i = 0; i < faults_fault_list_len; i++) {
+            delay_sum += faults_fault_list[i];
+        }
+
+        not_empty = (delay_sum != 0);
+    }
+    return not_empty;
 }
 
 uint16_t faults_fault_list_get_next(void) {