Merge #10294: [Wallet] unset change position when there is no change
7c58863 [Wallet] unset change position when there is no change on exact match (Gregory Sanders) Tree-SHA512: ce8b9337e4132e32d80f954258d50938052c833a48e39431649d6adb16e3d18626a0ae5d300827e7fa397927fba72a1f066cb31af9b0a3ef7f1feb6024461626
This commit is contained in:
parent
5623326010
commit
c45c767f8e
@ -54,6 +54,11 @@ class RawTransactionsTest(BitcoinTestFramework):
|
|||||||
self.nodes[0].generate(121)
|
self.nodes[0].generate(121)
|
||||||
self.sync_all()
|
self.sync_all()
|
||||||
|
|
||||||
|
# ensure that setting changePosition in fundraw with an exact match is handled properly
|
||||||
|
rawmatch = self.nodes[2].createrawtransaction([], {self.nodes[2].getnewaddress():50})
|
||||||
|
rawmatch = self.nodes[2].fundrawtransaction(rawmatch, {"changePosition":1, "subtractFeeFromOutputs":[0]})
|
||||||
|
assert_equal(rawmatch["changepos"], -1)
|
||||||
|
|
||||||
watchonly_address = self.nodes[0].getnewaddress()
|
watchonly_address = self.nodes[0].getnewaddress()
|
||||||
watchonly_pubkey = self.nodes[0].validateaddress(watchonly_address)["pubkey"]
|
watchonly_pubkey = self.nodes[0].validateaddress(watchonly_address)["pubkey"]
|
||||||
watchonly_amount = Decimal(2000)
|
watchonly_amount = Decimal(2000)
|
||||||
|
@ -3597,9 +3597,10 @@ bool CWallet::CreateTransaction(const vector<CRecipient>& vecSend, CWalletTx& wt
|
|||||||
txNew.vout.insert(position, newTxOut);
|
txNew.vout.insert(position, newTxOut);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
} else {
|
||||||
else
|
|
||||||
reservekey.ReturnKey();
|
reservekey.ReturnKey();
|
||||||
|
nChangePosInOut = -1;
|
||||||
|
}
|
||||||
|
|
||||||
// Fill vin
|
// Fill vin
|
||||||
//
|
//
|
||||||
|
Loading…
Reference in New Issue
Block a user