aboutsummaryrefslogtreecommitdiff
path: root/src/script
diff options
context:
space:
mode:
authorGlenn Willen <gwillen@nerdnet.org>2018-10-26 15:26:16 -0700
committerGlenn Willen <gwillen@nerdnet.org>2018-11-01 12:11:24 -0700
commit65166d4cf828909dc4bc49dd68a58103d015f1fd (patch)
treec72e82590f9a56617085336e41010b74d25586dd /src/script
parent4f3f5cb4b142f0fcb36241fa33b52a257901dbee (diff)
downloadbitcoin-65166d4cf828909dc4bc49dd68a58103d015f1fd.tar.xz
New PartiallySignedTransaction constructor from CTransction
New constructor that creates a PartiallySignedTransaction from a CTransaction, automatically sizing the inputs and outputs vectors for convenience.
Diffstat (limited to 'src/script')
-rw-r--r--src/script/sign.cpp6
-rw-r--r--src/script/sign.h1
2 files changed, 7 insertions, 0 deletions
diff --git a/src/script/sign.cpp b/src/script/sign.cpp
index 89cc7c808c..bcf1108967 100644
--- a/src/script/sign.cpp
+++ b/src/script/sign.cpp
@@ -513,6 +513,12 @@ bool IsSolvable(const SigningProvider& provider, const CScript& script)
return false;
}
+PartiallySignedTransaction::PartiallySignedTransaction(const CTransaction& tx) : tx(tx)
+{
+ inputs.resize(tx.vin.size());
+ outputs.resize(tx.vout.size());
+}
+
bool PartiallySignedTransaction::IsNull() const
{
return !tx && inputs.empty() && outputs.empty() && unknown.empty();
diff --git a/src/script/sign.h b/src/script/sign.h
index d47aada17d..381e2eb120 100644
--- a/src/script/sign.h
+++ b/src/script/sign.h
@@ -566,6 +566,7 @@ struct PartiallySignedTransaction
bool IsSane() const;
PartiallySignedTransaction() {}
PartiallySignedTransaction(const PartiallySignedTransaction& psbt_in) : tx(psbt_in.tx), inputs(psbt_in.inputs), outputs(psbt_in.outputs), unknown(psbt_in.unknown) {}
+ explicit PartiallySignedTransaction(const CTransaction& tx);
// Only checks if they refer to the same transaction
friend bool operator==(const PartiallySignedTransaction& a, const PartiallySignedTransaction &b)