From 9eeadc83da8a0c8b4ec7be115df56b00e21595a5 Mon Sep 17 00:00:00 2001 From: Jon Griffiths Date: Tue, 5 Jul 2022 01:56:17 +1200 Subject: [PATCH] PSET: Write input fields in their definition order As for outputs. ISSUANCE_VALUE_COMMITMENT and ISSUANCE_VALUE were misordered. --- src/psbt.h | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/psbt.h b/src/psbt.h index 61a4803c9f..c4b6140db1 100644 --- a/src/psbt.h +++ b/src/psbt.h @@ -346,15 +346,15 @@ struct PSBTInput } // Elements proprietary fields are only allowed with v2 - // Issuance value - if (!m_issuance_value_commitment.IsNull()) { - SerializeToVector(s, CompactSizeWriter(PSBT_IN_PROPRIETARY), PSBT_ELEMENTS_ID, CompactSizeWriter(PSBT_ELEMENTS_IN_ISSUANCE_VALUE_COMMITMENT)); - SerializeToVector(s, m_issuance_value_commitment); - } + // Issuance value + commitment if (m_issuance_value != std::nullopt) { SerializeToVector(s, CompactSizeWriter(PSBT_IN_PROPRIETARY), PSBT_ELEMENTS_ID, CompactSizeWriter(PSBT_ELEMENTS_IN_ISSUANCE_VALUE)); SerializeToVector(s, *m_issuance_value); } + if (!m_issuance_value_commitment.IsNull()) { + SerializeToVector(s, CompactSizeWriter(PSBT_IN_PROPRIETARY), PSBT_ELEMENTS_ID, CompactSizeWriter(PSBT_ELEMENTS_IN_ISSUANCE_VALUE_COMMITMENT)); + SerializeToVector(s, m_issuance_value_commitment); + } // Issuance rangeproof if (!m_issuance_rangeproof.empty()) {