diff --git a/dap_chain_net.c b/dap_chain_net.c
index 6360d46567101f319a1ab241330f4d4b4a9f7cae..abbf467f04bae2a8ecc56d38ade781ed961470e1 100644
--- a/dap_chain_net.c
+++ b/dap_chain_net.c
@@ -929,12 +929,23 @@ static int s_cli_net( int argc, char **argv, char **a_str_reply)
                 // get current node address
                 dap_chain_node_addr_t l_cur_node_addr = { 0 };
                 l_cur_node_addr.uint64 = dap_chain_net_get_cur_addr(l_net) ? dap_chain_net_get_cur_addr(l_net)->uint64 : dap_db_get_cur_node_addr();
-                dap_chain_node_cli_set_reply_text(a_str_reply, "Network \"%s\" has state %s (target state %s), active links %u from %u, cur node address " NODE_ADDR_FP_STR,
-                                                    l_net->pub.name,c_net_states[PVT(l_net)->state],
-                                                    c_net_states[PVT(l_net)->state_target], HASH_COUNT( PVT(l_net)->links),
-                                                    PVT(l_net)->links_addrs_count,
-                                                    NODE_ADDR_FP_ARGS_S(l_cur_node_addr)
-                                                  );
+                if(!l_cur_node_addr.uint64) {
+                    dap_chain_node_cli_set_reply_text(a_str_reply,
+                            "Network \"%s\" has state %s (target state %s), active links %u from %u, cur node address not defined",
+                            l_net->pub.name, c_net_states[PVT(l_net)->state],
+                            c_net_states[PVT(l_net)->state_target], HASH_COUNT(PVT(l_net)->links),
+                            PVT(l_net)->links_addrs_count
+                            );
+                }
+                else {
+                    dap_chain_node_cli_set_reply_text(a_str_reply,
+                            "Network \"%s\" has state %s (target state %s), active links %u from %u, cur node address " NODE_ADDR_FP_STR,
+                            l_net->pub.name, c_net_states[PVT(l_net)->state],
+                            c_net_states[PVT(l_net)->state_target], HASH_COUNT(PVT(l_net)->links),
+                            PVT(l_net)->links_addrs_count,
+                            NODE_ADDR_FP_ARGS_S(l_cur_node_addr)
+                            );
+                }
                 ret = 0;
             }
         } else if ( l_links_str ){
diff --git a/dap_chain_node_cli.c b/dap_chain_node_cli.c
index 0df3ce95a5c40382bc2763dbea45a0370c8d8eb0..ef36699b1d9df66e6036ff847631090ca6fe3278 100644
--- a/dap_chain_node_cli.c
+++ b/dap_chain_node_cli.c
@@ -841,7 +841,7 @@ int dap_chain_node_cli_init(dap_config_t * g_config)
 
     // Transaction history
     dap_chain_node_cli_cmd_item_create("tx_history", com_tx_history, "Transaction history (for address or by hash)",
-            "tx_history  [-addr <addr> | -w <wallet name> -tx <tx_hash>] -net <net name> -chain <chain name>\n");
+            "tx_history  [-addr <addr> | -w <wallet name> | -tx <tx_hash>] -net <net name> -chain <chain name>\n");
     // Log
     dap_chain_node_cli_cmd_item_create ("print_log", com_print_log, "Print log info",
                 "print_log [ts_after <timestamp >] [limit <line numbers>]\n" );
diff --git a/dap_chain_node_cli_cmd_tx.c b/dap_chain_node_cli_cmd_tx.c
index 868d1d8b62760501228e00a21f452b2283bc899d..dc4c118103dec591e2017e6affeda3ccd5f7f7ba 100644
--- a/dap_chain_node_cli_cmd_tx.c
+++ b/dap_chain_node_cli_cmd_tx.c
@@ -595,7 +595,7 @@ char* dap_db_history_addr(dap_chain_addr_t * a_addr, dap_chain_t * a_chain)
 
         // go to next transaction
         l_atom = a_chain->callback_atom_iter_get_next(l_atom_iter);
-        l_atom_size = a_chain->callback_atom_get_size(l_atom);
+        l_atom_size = l_atom ? a_chain->callback_atom_get_size(l_atom) : 0;
     }
 
     // delete hashes