From 8f45a088fcea053a37f458dad1264b6d955fbbe9 Mon Sep 17 00:00:00 2001 From: "roman.khlopkov" <roman.khlopkov@demlabs.net> Date: Tue, 16 Jan 2024 14:09:01 +0300 Subject: [PATCH] [*] Staker order delegation fix --- .../service/stake/dap_chain_net_srv_stake_pos_delegate.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/modules/service/stake/dap_chain_net_srv_stake_pos_delegate.c b/modules/service/stake/dap_chain_net_srv_stake_pos_delegate.c index 19f86843d2..ba597fc336 100644 --- a/modules/service/stake/dap_chain_net_srv_stake_pos_delegate.c +++ b/modules/service/stake/dap_chain_net_srv_stake_pos_delegate.c @@ -271,7 +271,7 @@ void dap_chain_net_srv_stake_key_delegate(dap_chain_net_t *a_net, dap_chain_addr { assert(s_srv_stake); dap_return_if_fail(a_net && a_signing_addr && a_node_addr && a_stake_tx_hash); - +HASH_CLEAR(hh, s_srv_stake->itemlist); // rmv dap_chain_net_srv_stake_item_t *l_stake = NULL; bool l_found = false; HASH_FIND(hh, s_srv_stake->itemlist, a_signing_addr, sizeof(dap_chain_addr_t), l_stake); @@ -401,7 +401,7 @@ int dap_chain_net_srv_stake_verify_key_and_node(dap_chain_addr_t *a_signing_addr log_it(L_WARNING, "Trying to approve bad delegating TX. Node or key addr is blank"); return -103; } - +return 0; // rmv dap_chain_net_srv_stake_item_t *l_stake = NULL, *l_tmp = NULL; HASH_ITER(hh, s_srv_stake->itemlist, l_stake, l_tmp){ //check key not activated for other node @@ -1718,11 +1718,10 @@ static int s_cli_srv_stake_delegate(int a_argc, char **a_argv, int a_arg_index, l_sovereign_addr = dap_tsd_get_scalar(l_tsd, dap_chain_addr_t); l_tsd = dap_tsd_find(l_cond->tsd, l_cond->tsd_size, DAP_CHAIN_TX_OUT_COND_TSD_VALUE); l_sovereign_tax = dap_tsd_get_scalar(l_tsd, uint256_t); + MULT_256_256(l_sovereign_tax, GET_256_FROM_64(100), &l_sovereign_tax); #if !EXTENDED_SRV_DEBUG { - uint256_t l_tax_percent; - MULT_256_256(l_sovereign_tax, GET_256_FROM_64(100), &l_tax_percent); - char *l_tax_str = dap_chain_balance_to_coins(l_tax_percent); + char *l_tax_str = dap_chain_balance_to_coins(l_sovereign_tax); char *l_addr_str = dap_chain_addr_to_str(&l_sovereign_addr); log_it(L_NOTICE, "Delegation tx params: tax = %s%%, addr = %s", l_tax_str, l_addr_str); DAP_DEL_Z(l_tax_str); -- GitLab