diff --git a/modules/wallet/dap_chain_wallet_cache.c b/modules/wallet/dap_chain_wallet_cache.c index ddc3c401c20ae772d0cd83875205dbeebbb631c2..3b3f7ea6c07f0c22f54b27aae065251cb2eff6af 100644 --- a/modules/wallet/dap_chain_wallet_cache.c +++ b/modules/wallet/dap_chain_wallet_cache.c @@ -692,16 +692,16 @@ static int s_save_tx_into_wallet_cache(dap_chain_t *a_chain, dap_chain_datum_tx_ dap_hash_fast_t l_prev_tx_hash = ((dap_chain_tx_in_t*)it->data)->header.tx_prev_hash; int l_prev_idx = ((dap_chain_tx_in_t*)it->data)->header.tx_out_prev_idx; if (dap_hash_fast_is_blank(&l_prev_tx_hash)) - continue; + continue; dap_chain_datum_t *l_prev_datum = a_chain->callback_datum_find_by_hash(a_chain, &l_prev_tx_hash, NULL, NULL); dap_chain_datum_tx_t *l_tx_prev = l_prev_datum ? (dap_chain_datum_tx_t *)(l_prev_datum->data) : NULL; if (!l_tx_prev){ log_it(L_ERROR, "Can't find previous transactions (hash=%s)", dap_hash_fast_to_str_static(&l_prev_tx_hash)); continue; } - uint8_t* l_prev_item = dap_chain_datum_tx_item_get_nth(l_tx_prev, TX_ITEM_TYPE_OUT, l_prev_idx); + uint8_t* l_prev_item = dap_chain_datum_tx_item_get_nth(l_tx_prev, TX_ITEM_TYPE_OUT_ALL, l_prev_idx); if (!l_prev_item){ - log_it(L_ERROR, "Can't find out with index %d transactions (hash=%s)", l_prev_idx, dap_hash_fast_to_str_static(&l_prev_tx_hash)); + log_it(L_ERROR, "Can't find out with index %d in transaction %s", l_prev_idx, dap_hash_fast_to_str_static(&l_prev_tx_hash)); continue; } uint8_t l_out_type = *(uint8_t *)l_prev_item; @@ -948,7 +948,7 @@ static int s_save_tx_cache_for_addr(dap_chain_t *a_chain, dap_chain_addr_t *a_ad } uint8_t* l_prev_item = dap_chain_datum_tx_item_get_nth(l_tx_prev, TX_ITEM_TYPE_OUT, l_prev_idx); if (!l_prev_item){ - log_it(L_ERROR, "Can't find out with index %d transactions (hash=%s)", l_prev_idx, dap_hash_fast_to_str_static(&l_prev_tx_hash)); + log_it(L_ERROR, "Can't find out with index %d in transaction %s", l_prev_idx, dap_hash_fast_to_str_static(&l_prev_tx_hash)); continue; } uint8_t l_out_type = *(uint8_t *)l_prev_item;