wallet2: ensure daemon returns correct tx for spend proof

This commit is contained in:
selsta
2026-04-28 15:25:38 +02:00
parent 3ad4a5ee82
commit b7fbe95eeb
+2
View File
@@ -11889,6 +11889,7 @@ std::string wallet2::get_spend_proof(const crypto::hash &txid, const std::string
cryptonote::transaction tx;
crypto::hash tx_hash;
THROW_WALLET_EXCEPTION_IF(!get_pruned_tx(res.txs[0], tx, tx_hash), error::wallet_internal_error, "Failed to get tx from daemon");
THROW_WALLET_EXCEPTION_IF(tx_hash != txid, error::wallet_internal_error, "Failed to get the right transaction from daemon");
std::vector<std::vector<crypto::signature>> signatures;
@@ -12002,6 +12003,7 @@ bool wallet2::check_spend_proof(const crypto::hash &txid, const std::string &mes
cryptonote::transaction tx;
crypto::hash tx_hash;
THROW_WALLET_EXCEPTION_IF(!get_pruned_tx(res.txs[0], tx, tx_hash), error::wallet_internal_error, "failed to get tx from daemon");
THROW_WALLET_EXCEPTION_IF(tx_hash != txid, error::wallet_internal_error, "Failed to get the right transaction from daemon");
// check signature size
size_t num_sigs = 0;