Skip to content

Commit 922bea9

Browse files
committed
Better handle invalid parameters to signrawtransaction
This silently skips trying to merge signatures from inputs which do not exist from transactions provided to signrawtransaction, instead of hitting an assert.
1 parent 7ea0ad5 commit 922bea9

File tree

1 file changed

+3
-1
lines changed

1 file changed

+3
-1
lines changed

src/rpc/rawtransaction.cpp

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -835,7 +835,9 @@ UniValue signrawtransaction(const JSONRPCRequest& request)
835835

836836
// ... and merge in other signatures:
837837
BOOST_FOREACH(const CMutableTransaction& txv, txVariants) {
838-
sigdata = CombineSignatures(prevPubKey, TransactionSignatureChecker(&txConst, i, amount), sigdata, DataFromTransaction(txv, i));
838+
if (txv.vin.size() > i) {
839+
sigdata = CombineSignatures(prevPubKey, TransactionSignatureChecker(&txConst, i, amount), sigdata, DataFromTransaction(txv, i));
840+
}
839841
}
840842

841843
UpdateTransaction(mergedTx, i, sigdata);

0 commit comments

Comments
 (0)