From 7758a899f0a8c7d86eb05b8fe4b85c36dcddd7fb Mon Sep 17 00:00:00 2001
From: "pavel.uhanov" <pavel.uhanov@demlabs.net>
Date: Mon, 18 Sep 2023 07:48:27 +0000
Subject: [PATCH] feature-9026_fix

---
 dap-sdk                                       |  2 +-
 modules/chain/dap_chain_ledger.c              | 43 ++++++++-------
 modules/channel/chain/dap_stream_ch_chain.c   | 10 ++--
 .../consensus/dag-poa/dap_chain_cs_dag_poa.c  | 10 ++--
 .../consensus/esbocs/dap_chain_cs_esbocs.c    | 54 +++++++------------
 modules/consensus/none/dap_chain_cs_none.c    |  3 +-
 modules/net/dap_chain_node_cli_cmd.c          |  2 +-
 modules/type/dag/dap_chain_cs_dag.c           |  7 +--
 8 files changed, 61 insertions(+), 70 deletions(-)

diff --git a/dap-sdk b/dap-sdk
index 19c0dd72cb..d9fd506ebc 160000
--- a/dap-sdk
+++ b/dap-sdk
@@ -1 +1 @@
-Subproject commit 19c0dd72cb192c0baabc45fc2ae57df0e15aedb8
+Subproject commit d9fd506ebcc6ed80ca4e818e0febadf0cbd56bac
diff --git a/modules/chain/dap_chain_ledger.c b/modules/chain/dap_chain_ledger.c
index c13c700f1d..ee5b136f28 100644
--- a/modules/chain/dap_chain_ledger.c
+++ b/modules/chain/dap_chain_ledger.c
@@ -2225,7 +2225,7 @@ static void s_threshold_emission_free(dap_ledger_t *a_ledger){
  * @param a_values
  * @param a_arg
  */
-static void s_load_cache_gdb_loaded_balances_callback(dap_global_db_context_t *a_global_db_context,
+static bool s_load_cache_gdb_loaded_balances_callback(dap_global_db_context_t *a_global_db_context,
                                                       int a_rc, const char *a_group,
                                                       const size_t a_values_total, const size_t a_values_count,
                                                       dap_global_db_obj_t *a_values, void *a_arg)
@@ -2236,13 +2236,13 @@ static void s_load_cache_gdb_loaded_balances_callback(dap_global_db_context_t *a
         dap_ledger_wallet_balance_t *l_balance_item = DAP_NEW_Z(dap_ledger_wallet_balance_t);
         if (!l_balance_item) {
         log_it(L_CRITICAL, "Memory allocation error");
-            return;
+            return false;
         }
         l_balance_item->key = DAP_NEW_Z_SIZE(char, strlen(a_values[i].key) + 1);
         if (!l_balance_item->key) {
         log_it(L_CRITICAL, "Memory allocation error");
             DAP_DEL_Z(l_balance_item);
-            return;
+            return false;
         }
         strcpy(l_balance_item->key, a_values[i].key);
         char *l_ptr = strchr(l_balance_item->key, ' ');
@@ -2261,6 +2261,7 @@ static void s_load_cache_gdb_loaded_balances_callback(dap_global_db_context_t *a
     l_ledger_pvt->load_end = true;
     pthread_cond_broadcast( &l_ledger_pvt->load_cond );
     pthread_mutex_unlock( &l_ledger_pvt->load_mutex );
+    return true;
 }
 
 /**
@@ -2275,7 +2276,7 @@ static void s_load_cache_gdb_loaded_balances_callback(dap_global_db_context_t *a
  * @param a_values
  * @param a_arg
  */
-static void s_load_cache_gdb_loaded_spent_txs_callback(dap_global_db_context_t *a_global_db_context,
+static bool s_load_cache_gdb_loaded_spent_txs_callback(dap_global_db_context_t *a_global_db_context,
                                                        int a_rc, const char *a_group,
                                                        const size_t a_values_total, const size_t a_values_count,
                                                        dap_global_db_obj_t *a_values, void *a_arg)
@@ -2287,16 +2288,17 @@ static void s_load_cache_gdb_loaded_spent_txs_callback(dap_global_db_context_t *
         dap_chain_ledger_tx_spent_item_t *l_tx_spent_item = DAP_NEW_Z(dap_chain_ledger_tx_spent_item_t);
         if ( !l_tx_spent_item ) {
         log_it(L_CRITICAL, "Memory allocation error");
-            return;
+            return false;
         }
         dap_chain_hash_fast_from_str(a_values[i].key, &l_tx_spent_item->tx_hash_fast);
         l_tx_spent_item->cache_data = *(typeof(l_tx_spent_item->cache_data)*)a_values[i].value;
         HASH_ADD(hh, l_ledger_pvt->spent_items, tx_hash_fast, sizeof(dap_chain_hash_fast_t), l_tx_spent_item);
     }
 
-    char * l_gdb_group = dap_chain_ledger_get_gdb_group(l_ledger, DAP_CHAIN_LEDGER_BALANCES_STR);
+    char *l_gdb_group = dap_chain_ledger_get_gdb_group(l_ledger, DAP_CHAIN_LEDGER_BALANCES_STR);
     dap_global_db_get_all(l_gdb_group, 0, s_load_cache_gdb_loaded_balances_callback, l_ledger);
     DAP_DELETE(l_gdb_group);
+    return true;
 }
 
 /**
@@ -2311,7 +2313,7 @@ static void s_load_cache_gdb_loaded_spent_txs_callback(dap_global_db_context_t *
  * @param a_values
  * @param a_arg
  */
-static void s_load_cache_gdb_loaded_txs_callback(dap_global_db_context_t *a_global_db_context,
+static bool s_load_cache_gdb_loaded_txs_callback(dap_global_db_context_t *a_global_db_context,
                                                  int a_rc, const char *a_group,
                                                  const size_t a_values_total, const size_t a_values_count,
                                                  dap_global_db_obj_t *a_values, void *a_arg)
@@ -2322,14 +2324,14 @@ static void s_load_cache_gdb_loaded_txs_callback(dap_global_db_context_t *a_glob
         dap_chain_ledger_tx_item_t *l_tx_item = DAP_NEW_Z(dap_chain_ledger_tx_item_t);
         if ( !l_tx_item ) {
             log_it(L_CRITICAL, "Memory allocation error");
-            return;
+            return false;
         }
         dap_chain_hash_fast_from_str(a_values[i].key, &l_tx_item->tx_hash_fast);
         l_tx_item->tx = DAP_NEW_Z_SIZE(dap_chain_datum_tx_t, a_values[i].value_len - sizeof(l_tx_item->cache_data));
         if ( !l_tx_item->tx ) {
             DAP_DELETE(l_tx_item);
             log_it(L_CRITICAL, "Memory allocation error");
-            return;
+            return false;
         }
         memcpy(&l_tx_item->cache_data, a_values[i].value, sizeof(l_tx_item->cache_data));
         memcpy(l_tx_item->tx, a_values[i].value + sizeof(l_tx_item->cache_data), a_values[i].value_len - sizeof(l_tx_item->cache_data));
@@ -2340,9 +2342,10 @@ static void s_load_cache_gdb_loaded_txs_callback(dap_global_db_context_t *a_glob
     char *l_gdb_group = dap_chain_ledger_get_gdb_group(l_ledger, DAP_CHAIN_LEDGER_SPENT_TXS_STR);
     dap_global_db_get_all(l_gdb_group, 0, s_load_cache_gdb_loaded_spent_txs_callback, l_ledger);
     DAP_DELETE(l_gdb_group);
+    return true;
 }
 
-static void s_load_cache_gdb_loaded_stake_lock_callback(dap_global_db_context_t *a_global_db_context,
+static bool s_load_cache_gdb_loaded_stake_lock_callback(dap_global_db_context_t *a_global_db_context,
                                                         int a_rc, const char *a_group,
                                                         const size_t a_values_total, const size_t a_values_count,
                                                         dap_global_db_obj_t *a_values, void *a_arg)
@@ -2366,6 +2369,7 @@ static void s_load_cache_gdb_loaded_stake_lock_callback(dap_global_db_context_t
     char* l_gdb_group = dap_chain_ledger_get_gdb_group(l_ledger, DAP_CHAIN_LEDGER_TXS_STR);
     dap_global_db_get_all(l_gdb_group, 0, s_load_cache_gdb_loaded_txs_callback, l_ledger);
     DAP_DELETE(l_gdb_group);
+    return true;
 }
 
 
@@ -2382,7 +2386,7 @@ static void s_load_cache_gdb_loaded_stake_lock_callback(dap_global_db_context_t
  * @param a_arg
  * @return Always true thats means to clear up a_values
  */
-static void s_load_cache_gdb_loaded_emissions_callback(dap_global_db_context_t *a_global_db_context,
+static bool s_load_cache_gdb_loaded_emissions_callback(dap_global_db_context_t *a_global_db_context,
                                                        int a_rc, const char *a_group,
                                                        const size_t a_values_total, const size_t a_values_count,
                                                        dap_global_db_obj_t *a_values, void *a_arg)
@@ -2404,7 +2408,7 @@ static void s_load_cache_gdb_loaded_emissions_callback(dap_global_db_context_t *
         dap_chain_ledger_token_emission_item_t *l_emission_item = DAP_NEW_Z(dap_chain_ledger_token_emission_item_t);
         if ( !l_emission_item ) {
             log_it(L_CRITICAL, "Memory allocation error");
-            return;
+            return false;
         }
         dap_chain_hash_fast_from_str(a_values[i].key, &l_emission_item->datum_token_emission_hash);
         l_emission_item->tx_used_out = *(dap_hash_fast_t*)a_values[i].value;
@@ -2418,6 +2422,7 @@ static void s_load_cache_gdb_loaded_emissions_callback(dap_global_db_context_t *
     char* l_gdb_group = dap_chain_ledger_get_gdb_group(l_ledger, DAP_CHAIN_LEDGER_STAKE_LOCK_STR);
     dap_global_db_get_all(l_gdb_group, 0, s_load_cache_gdb_loaded_stake_lock_callback, l_ledger);
     DAP_DELETE(l_gdb_group);
+    return true;
 }
 
 
@@ -2433,14 +2438,14 @@ static void s_load_cache_gdb_loaded_emissions_callback(dap_global_db_context_t *
  * @param a_values
  * @param a_arg
  */
-static void s_load_cache_gdb_loaded_tokens_callback(dap_global_db_context_t *a_global_db_context,
+static bool s_load_cache_gdb_loaded_tokens_callback(dap_global_db_context_t *a_global_db_context,
                                                     int a_rc, const char *a_group,
                                                     const size_t a_values_total, const size_t a_values_count,
                                                     dap_global_db_obj_t *a_values, void *a_arg)
 {
-    dap_ledger_t * l_ledger = (dap_ledger_t*) a_arg;
-    dap_ledger_private_t * l_ledger_pvt = PVT(l_ledger);
-    if( a_rc != 0){
+    dap_ledger_t *l_ledger = (dap_ledger_t *) a_arg;
+    dap_ledger_private_t *l_ledger_pvt = PVT(l_ledger);
+    if(a_rc) {
         log_it(L_NOTICE, "No ledger cache found");
         pthread_mutex_lock(&l_ledger_pvt->load_mutex);
         l_ledger_pvt->load_end = true;
@@ -2470,6 +2475,7 @@ static void s_load_cache_gdb_loaded_tokens_callback(dap_global_db_context_t *a_g
     char *l_gdb_group = dap_chain_ledger_get_gdb_group(l_ledger, DAP_CHAIN_LEDGER_EMISSIONS_STR);
     dap_global_db_get_all(l_gdb_group, 0, s_load_cache_gdb_loaded_emissions_callback, l_ledger);
     DAP_DELETE(l_gdb_group);
+    return true;
 }
 
 /**
@@ -2741,10 +2747,9 @@ int dap_chain_ledger_token_emission_add_check(dap_ledger_t *a_ledger, byte_t *a_
 bool s_chain_ledger_token_address_check(dap_chain_addr_t * a_addrs, dap_chain_datum_token_emission_t *a_token_emission, size_t a_addrs_count)
 {
     // if l_addrs is empty - nothing to check
-    if (!a_addrs)
-        return true;
+    dap_return_val_if_pass(!a_addrs, true);
 
-    for(size_t n=0; n<a_addrs_count;n++ ){
+    for(size_t n = 0; n < a_addrs_count; n++ ){
         dap_chain_addr_t l_addr = a_addrs[n];
         if (memcmp(&l_addr,&a_token_emission->hdr.address,sizeof(dap_chain_addr_t))==0)
             return true;
diff --git a/modules/channel/chain/dap_stream_ch_chain.c b/modules/channel/chain/dap_stream_ch_chain.c
index 27efe47aee..580886dc17 100644
--- a/modules/channel/chain/dap_stream_ch_chain.c
+++ b/modules/channel/chain/dap_stream_ch_chain.c
@@ -114,7 +114,7 @@ static bool s_sync_out_gdb_proc_callback(dap_proc_thread_t *a_thread, void *a_ar
 static bool s_sync_in_chains_callback(dap_proc_thread_t *a_thread, void *a_arg);
 
 static bool s_gdb_in_pkt_proc_callback(dap_proc_thread_t *a_thread, void *a_arg);
-static void s_gdb_in_pkt_proc_set_raw_callback(dap_global_db_context_t *a_global_db_context,
+static bool s_gdb_in_pkt_proc_set_raw_callback(dap_global_db_context_t *a_global_db_context,
                                                int a_rc, const char *a_group,
                                                const size_t a_values_total, const size_t a_values_count,
                                                dap_store_obj_t *a_values, void *a_arg);
@@ -775,21 +775,21 @@ static bool s_gdb_in_pkt_proc_callback(dap_proc_thread_t *a_thread, void *a_arg)
  * @param a_values
  * @param a_arg
  */
-static void s_gdb_in_pkt_proc_set_raw_callback(dap_global_db_context_t *a_global_db_context,
+static bool s_gdb_in_pkt_proc_set_raw_callback(dap_global_db_context_t *a_global_db_context,
                                                int a_rc, const char *a_group,
                                                const size_t a_values_total, const size_t a_values_count,
                                                dap_store_obj_t *a_values, void *a_arg)
 {
-
     struct sync_request *l_sync_req = (struct sync_request*) a_arg;
-    if( a_rc != 0){
+    if(a_rc){
         debug_if(s_debug_more, L_ERROR, "Can't save GlobalDB request, code %d", a_rc);
         dap_worker_exec_callback_inter(a_global_db_context->queue_worker_callback_input[l_sync_req->worker->id],
                                     s_gdb_in_pkt_error_worker_callback, l_sync_req);
-    }else{
+    } else {
         debug_if(s_debug_more, L_DEBUG, "Added new GLOBAL_DB synchronization record");
         DAP_DELETE(l_sync_req);
     }
+    return true;
 }
 
 
diff --git a/modules/consensus/dag-poa/dap_chain_cs_dag_poa.c b/modules/consensus/dag-poa/dap_chain_cs_dag_poa.c
index 234d30b296..846181534b 100644
--- a/modules/consensus/dag-poa/dap_chain_cs_dag_poa.c
+++ b/modules/consensus/dag-poa/dap_chain_cs_dag_poa.c
@@ -422,7 +422,7 @@ static int s_callback_new(dap_chain_t * a_chain, dap_config_t * a_chain_cfg)
  * @param a_values
  * @param a_arg
  */
-static void s_poa_round_check_callback_round_clean(dap_global_db_context_t *a_global_db_context,
+static bool s_poa_round_check_callback_round_clean(dap_global_db_context_t *a_global_db_context,
                                                    int a_rc, const char *a_group,
                                                    const size_t a_values_total, const size_t a_values_count,
                                                    dap_global_db_obj_t *a_values, void *a_arg)
@@ -459,6 +459,7 @@ static void s_poa_round_check_callback_round_clean(dap_global_db_context_t *a_gl
             }
         }
     }
+    return true;
 }
 
 /**
@@ -580,13 +581,13 @@ static dap_chain_cs_dag_event_round_item_t *s_round_event_choose_dup(dap_list_t
  * @param a_is_pinned
  * @param a_arg
  */
-static void s_callback_round_event_to_chain_callback_get_round_item(dap_global_db_context_t *a_global_db_context,
+static bool s_callback_round_event_to_chain_callback_get_round_item(dap_global_db_context_t *a_global_db_context,
                                                                     int a_rc, const char *a_group,
                                                                     const size_t a_values_total, const size_t a_values_count,
                                                                     dap_store_obj_t *a_values, void *a_arg)
 {
-    if (a_rc != DAP_GLOBAL_DB_RC_SUCCESS)
-        return;
+    if (a_rc != DAP_GLOBAL_DB_RC_SUCCESS) 
+        return false;
     struct round_timer_arg *l_arg = (struct round_timer_arg *)a_arg;
     dap_chain_cs_dag_t *l_dag = l_arg->dag;
     uint64_t l_round_id = l_arg->round_id;
@@ -640,6 +641,7 @@ static void s_callback_round_event_to_chain_callback_get_round_item(dap_global_d
 
     }
     dap_list_free(l_dups_list);
+    return true;
 }
 
 /**
diff --git a/modules/consensus/esbocs/dap_chain_cs_esbocs.c b/modules/consensus/esbocs/dap_chain_cs_esbocs.c
index 5605042ed3..dcf4657c70 100644
--- a/modules/consensus/esbocs/dap_chain_cs_esbocs.c
+++ b/modules/consensus/esbocs/dap_chain_cs_esbocs.c
@@ -307,9 +307,7 @@ static void s_session_db_serialize(dap_global_db_context_t *a_context, void *a_a
     uint64_t l_limit_time = l_time_store_lim_hours ? dap_nanotime_now() - dap_nanotime_from_sec(l_time_store_lim_hours * 3600) : 0;
     size_t l_objs_count = 0;
     dap_global_db_pkt_t *l_pkt = 0;
-    dap_db_iter_t *l_iter = dap_global_db_driver_iter_create(l_sync_group);
-    dap_store_obj_t *l_objs = dap_global_db_get_all_raw_unsafe(a_context, l_iter, &l_objs_count);
-    dap_global_db_driver_iter_delete(l_iter);
+    dap_store_obj_t *l_objs = dap_global_db_get_all_raw_unsafe(a_context, l_sync_group, &l_objs_count);
     for (size_t i = 0; i < l_objs_count; i++) {
         dap_store_obj_t *it = l_objs + i;
         if (l_notify_item->ttl && it->timestamp < l_limit_time) {
@@ -339,9 +337,7 @@ static void s_session_db_serialize(dap_global_db_context_t *a_context, void *a_a
 
     char *l_del_sync_group = dap_strdup_printf("%s.del", l_sync_group);
     l_objs_count = 0;
-    l_iter = dap_global_db_driver_iter_create(l_sync_group);
-    l_objs = dap_global_db_get_all_raw_unsafe(a_context, l_iter, &l_objs_count);
-    dap_global_db_driver_iter_delete(l_iter);
+    l_objs = dap_global_db_get_all_raw_unsafe(a_context, l_sync_group, &l_objs_count);
     
     DAP_DELETE(l_del_sync_group);
     for (size_t i = 0; i < l_objs_count; i++) {
@@ -1499,7 +1495,7 @@ typedef struct fee_serv_param
     dap_chain_t * chain;
 }fee_serv_param_t;
 
-static void s_check_db_callback_fee_collect (UNUSED_ARG dap_global_db_context_t *a_global_db_context,
+static bool s_check_db_callback_fee_collect (UNUSED_ARG dap_global_db_context_t *a_global_db_context,
                                              UNUSED_ARG int a_rc, UNUSED_ARG const char *a_group,
                                              UNUSED_ARG const size_t a_values_total, const size_t a_values_count,
                                              dap_global_db_obj_t *a_values, void *a_arg)
@@ -1516,46 +1512,36 @@ static void s_check_db_callback_fee_collect (UNUSED_ARG dap_global_db_context_t
     dap_list_t *l_block_list = NULL;
     log_it(L_MSG, "Fee collector start work");
     l_block_cache = dap_chain_block_cs_cache_get_by_hash(l_blocks, &l_arg->block_hash);
-    if(!l_block_cache)
-    {
+    if(!l_block_cache) {
         log_it(L_WARNING, "The block_cache is empty");
-        return;
+        return false;
     }
     dap_ledger_t *l_ledger = dap_chain_net_by_id(l_chain->net_id)->pub.ledger;
     dap_list_t *l_list_used_out = dap_chain_block_get_list_tx_cond_outs_with_val(l_ledger, l_block_cache, &l_value_out_block);
-    if(!l_list_used_out)
-    {
+    if(!l_list_used_out) {
         log_it(L_WARNING, "There aren't any fee in this block");
-        return;
+        return false;
     }
     dap_list_free_full(l_list_used_out, NULL);
     l_block_list = dap_list_append(l_block_list, l_block_cache);
-    if(!a_values_count)
-    {
-        if(compare256(l_value_out_block,l_arg->fee_need_cfg) == 1)
-        {
+    if(!a_values_count){
+        if(compare256(l_value_out_block,l_arg->fee_need_cfg) == 1) {
             char *l_hash_tx = dap_chain_mempool_tx_coll_fee_create(l_arg->key_from, l_arg->a_addr_to,
                                                  l_block_list, l_arg->value_fee, "hex");
-            if(l_hash_tx)
-            {
+            if(l_hash_tx) {
                 log_it(L_NOTICE, "Fee collect transaction successfully created, hash=%s\n",l_hash_tx);
                 dap_global_db_del(s_block_fee_group, NULL, NULL, NULL);
                 DAP_DELETE(l_hash_tx);
             }
-        }
-        else
-        {
+        } else {
             res = dap_global_db_set(s_block_fee_group,l_block_cache->block_hash_str,&l_value_out_block,sizeof(uint256_t),false,NULL,NULL);
             if(res)
                 log_it(L_WARNING, "Unable to write data to database");
             else
                 log_it(L_NOTICE, "The block was successfully added to the database");
         }        
-    }
-    else
-    {
-        for(size_t i=0;i<a_values_count;i++)
-        {
+    } else {
+        for(size_t i=0;i<a_values_count;i++) {
             dap_hash_fast_t block_hash;
             dap_chain_hash_fast_from_hex_str(a_values[i].key,&block_hash);
             dap_chain_block_cache_t *block_cache = dap_chain_block_cs_cache_get_by_hash(l_blocks, &block_hash);
@@ -1563,19 +1549,15 @@ static void s_check_db_callback_fee_collect (UNUSED_ARG dap_global_db_context_t
             SUM_256_256(*(uint256_t*)a_values[i].value,l_value_gdb,&l_value_gdb);
         }
         SUM_256_256(l_value_out_block,l_value_gdb,&l_value_total);
-        if(compare256(l_value_total,l_arg->fee_need_cfg) == 1)
-        {
+        if(compare256(l_value_total,l_arg->fee_need_cfg) == 1) {
             char *l_hash_tx = dap_chain_mempool_tx_coll_fee_create(l_arg->key_from, l_arg->a_addr_to,
                                                  l_block_list, l_arg->value_fee, "hex");
-            if(l_hash_tx)
-            {
+            if(l_hash_tx) {
                 dap_global_db_del(s_block_fee_group, NULL, NULL, NULL);
                 log_it(L_NOTICE, "Fee collect transaction successfully created, hash=%s\n",l_hash_tx);
                 DAP_DELETE(l_hash_tx);
             }
-        }
-        else
-        {
+        } else {
             res = dap_global_db_set(s_block_fee_group,l_block_cache->block_hash_str,&l_value_out_block,sizeof(uint256_t),false,NULL,NULL);
             if(res)
                 log_it(L_WARNING, "Unable to write data to database");
@@ -1586,7 +1568,7 @@ static void s_check_db_callback_fee_collect (UNUSED_ARG dap_global_db_context_t
     dap_list_free(l_block_list);
     DAP_DEL_Z(l_arg->a_addr_to);
     DAP_DELETE(l_arg);
-    return;
+    return true;
 }
 
 static void s_session_round_finish(dap_chain_esbocs_session_t *a_session, dap_chain_esbocs_store_t *l_store)
@@ -1669,7 +1651,7 @@ static void s_session_round_finish(dap_chain_esbocs_session_t *a_session, dap_ch
         tmp->fee_need_cfg = PVT(a_session->esbocs)->fee_coll_set;
         tmp->key_from = PVT(a_session->esbocs)->blocks_sign_key;
 
-        dap_global_db_get_all(s_block_fee_group, 0, s_check_db_callback_fee_collect,tmp);
+        dap_global_db_get_all(s_block_fee_group, 0, s_check_db_callback_fee_collect, tmp);
     }
 }
 
diff --git a/modules/consensus/none/dap_chain_cs_none.c b/modules/consensus/none/dap_chain_cs_none.c
index 7680827628..6a8f04291b 100644
--- a/modules/consensus/none/dap_chain_cs_none.c
+++ b/modules/consensus/none/dap_chain_cs_none.c
@@ -299,7 +299,7 @@ const char* dap_chain_gdb_get_group(dap_chain_t * a_chain)
  * @param a_values
  * @param a_arg
  */
-static void s_ledger_load_callback(UNUSED_ARG dap_global_db_context_t *a_global_db_context,
+static bool s_ledger_load_callback(UNUSED_ARG dap_global_db_context_t *a_global_db_context,
                                    UNUSED_ARG int a_rc, UNUSED_ARG const char *a_group,
                                    UNUSED_ARG const size_t a_values_total, const size_t a_values_count,
                                    dap_global_db_obj_t *a_values, void *a_arg)
@@ -322,6 +322,7 @@ static void s_ledger_load_callback(UNUSED_ARG dap_global_db_context_t *a_global_
     l_gdb_pvt->is_load_mode = false;
     pthread_cond_broadcast(&l_gdb_pvt->load_cond);
     pthread_mutex_unlock(&l_gdb_pvt->load_mutex);
+    return true;
 }
 
 /**
diff --git a/modules/net/dap_chain_node_cli_cmd.c b/modules/net/dap_chain_node_cli_cmd.c
index f21791c944..0ebf1f9b49 100644
--- a/modules/net/dap_chain_node_cli_cmd.c
+++ b/modules/net/dap_chain_node_cli_cmd.c
@@ -2200,7 +2200,7 @@ int l_arg_index = 1, l_rc, cmd_num = CMD_NONE;
         // wallet info
         case CMD_WALLET_INFO: {
             dap_ledger_t *l_ledger = NULL;
-            if (l_wallet_name && l_addr_str || !l_wallet_name && !l_addr_str) {
+            if ((l_wallet_name && l_addr_str) || (!l_wallet_name && !l_addr_str)) {
                 dap_cli_server_cmd_set_reply_text(a_str_reply, "You should use either the -w or -addr option for the wallet info command.");
                 dap_string_free(l_string_ret, true);
                 return -1;
diff --git a/modules/type/dag/dap_chain_cs_dag.c b/modules/type/dag/dap_chain_cs_dag.c
index d8b94156fd..74c84fba9a 100644
--- a/modules/type/dag/dap_chain_cs_dag.c
+++ b/modules/type/dag/dap_chain_cs_dag.c
@@ -199,20 +199,21 @@ static void s_history_callback_round_notify(dap_global_db_context_t *a_context,
     }
 }
 
-static void s_dag_rounds_events_iter(dap_global_db_context_t *a_context,
+static bool s_dag_rounds_events_iter(dap_global_db_context_t *a_context,
                                      int a_rc, const char *a_group,
                                      const size_t a_values_current, const size_t a_values_count,
                                      dap_store_obj_t *a_values, void *a_arg)
 {
     UNUSED(a_group);
     UNUSED(a_values_current);
-    if (a_rc != DAP_GLOBAL_DB_RC_SUCCESS)
-        return;
+    dap_return_val_if_pass(a_rc != DAP_GLOBAL_DB_RC_SUCCESS, false);
+
     for (size_t i = 0; i < a_values_count; i++) {
         dap_store_obj_t *l_obj_cur = a_values + i;
         l_obj_cur->type = DAP_DB$K_OPTYPE_ADD;
         s_history_callback_round_notify(a_context, a_values + i, a_arg);
     }
+    return true;
 }
 
 static void s_timer_process_callback(void *a_arg)
-- 
GitLab