Merge pull request #9490

31c6b2a wallet: can't decrypt payment id if tx key is missing (tobtoht)
This commit is contained in:
luigi1111 2024-12-23 10:38:25 -05:00
commit f00cb9421a
No known key found for this signature in database
GPG Key ID: F4ACA0183641E010

View File

@ -7502,6 +7502,11 @@ crypto::hash wallet2::get_payment_id(const pending_tx &ptx) const
MWARNING("Encrypted payment id found, but no destinations public key, cannot decrypt"); MWARNING("Encrypted payment id found, but no destinations public key, cannot decrypt");
return crypto::null_hash; return crypto::null_hash;
} }
if (ptx.tx_key == crypto::null_skey)
{
MWARNING("Encrypted payment id found, but no tx secret key, cannot decrypt");
return crypto::null_hash;
}
if (m_account.get_device().decrypt_payment_id(payment_id8, ptx.dests[0].addr.m_view_public_key, ptx.tx_key)) if (m_account.get_device().decrypt_payment_id(payment_id8, ptx.dests[0].addr.m_view_public_key, ptx.tx_key))
{ {
memcpy(payment_id.data, payment_id8.data, 8); memcpy(payment_id.data, payment_id8.data, 8);