Merge pull request #8421

bd1e7c5 wallet2: prevent crash when reading tx w/fewer outputs than expected (j-berman)
This commit is contained in:
luigi1111 2022-07-13 00:39:54 -04:00
commit cfdee9ba69
No known key found for this signature in database
GPG Key ID: F4ACA0183641E010

View File

@ -349,6 +349,8 @@ private:
uint64_t amount() const { return m_amount; }
const crypto::public_key get_public_key() const {
crypto::public_key output_public_key;
THROW_WALLET_EXCEPTION_IF(m_tx.vout.size() <= m_internal_output_index,
error::wallet_internal_error, "Too few outputs, outputs may be corrupted");
THROW_WALLET_EXCEPTION_IF(!get_output_public_key(m_tx.vout[m_internal_output_index], output_public_key),
error::wallet_internal_error, "Unable to get output public key from output");
return output_public_key;