Allow specifying PSBT version in constructor

This commit is contained in:
Ava Chow 2024-07-22 17:14:45 -04:00
parent 13b89330d0
commit 55cc7cd4c8
2 changed files with 6 additions and 3 deletions

View file

@ -11,11 +11,14 @@
#include <util/check.h> #include <util/check.h>
#include <util/strencodings.h> #include <util/strencodings.h>
PartiallySignedTransaction::PartiallySignedTransaction(const CMutableTransaction& tx) : tx(tx) PartiallySignedTransaction::PartiallySignedTransaction(const CMutableTransaction& tx, uint32_t version) : m_version(version)
{ {
if (version == 0) {
this->tx = tx;
}
inputs.resize(tx.vin.size(), PSBTInput(GetVersion())); inputs.resize(tx.vin.size(), PSBTInput(GetVersion()));
outputs.resize(tx.vout.size(), PSBTOutput(GetVersion())); outputs.resize(tx.vout.size(), PSBTOutput(GetVersion()));
CacheUnsignedTxPieces(); SetupFromTx(tx);
} }
bool PartiallySignedTransaction::IsNull() const bool PartiallySignedTransaction::IsNull() const

View file

@ -1332,7 +1332,7 @@ struct PartiallySignedTransaction
CMutableTransaction GetUnsignedTx() const; CMutableTransaction GetUnsignedTx() const;
uint256 GetUniqueID() const; uint256 GetUniqueID() const;
PartiallySignedTransaction() = default; PartiallySignedTransaction() = default;
explicit PartiallySignedTransaction(const CMutableTransaction& tx); explicit PartiallySignedTransaction(const CMutableTransaction& tx, uint32_t version = 0);
template <typename Stream> template <typename Stream>
inline void Serialize(Stream& s) const { inline void Serialize(Stream& s) const {