Skip to content

Commit

Permalink
Merge pull request #5924
Browse files Browse the repository at this point in the history
835c122 Clean up change computation in CreateTransaction. (Daniel Kraft)
  • Loading branch information
laanwj committed Oct 1, 2015
2 parents 1119cc3 + 835c122 commit 12a7712
Showing 1 changed file with 4 additions and 7 deletions.
11 changes: 4 additions & 7 deletions src/wallet/wallet.cpp
Expand Up @@ -1852,9 +1852,9 @@ bool CWallet::CreateTransaction(const vector<CRecipient>& vecSend, CWalletTx& wt
nChangePosRet = -1;
bool fFirst = true;

CAmount nTotalValue = nValue;
CAmount nValueToSelect = nValue;
if (nSubtractFeeFromAmount == 0)
nTotalValue += nFeeRet;
nValueToSelect += nFeeRet;
double dPriority = 0;
// vouts to the payees
BOOST_FOREACH (const CRecipient& recipient, vecSend)
Expand Down Expand Up @@ -1891,7 +1891,7 @@ bool CWallet::CreateTransaction(const vector<CRecipient>& vecSend, CWalletTx& wt
// Choose coins to use
set<pair<const CWalletTx*,unsigned int> > setCoins;
CAmount nValueIn = 0;
if (!SelectCoins(nTotalValue, setCoins, nValueIn, coinControl))
if (!SelectCoins(nValueToSelect, setCoins, nValueIn, coinControl))
{
strFailReason = _("Insufficient funds");
return false;
Expand All @@ -1909,10 +1909,7 @@ bool CWallet::CreateTransaction(const vector<CRecipient>& vecSend, CWalletTx& wt
dPriority += (double)nCredit * age;
}

CAmount nChange = nValueIn - nValue;
if (nSubtractFeeFromAmount == 0)
nChange -= nFeeRet;

const CAmount nChange = nValueIn - nValueToSelect;
if (nChange > 0)
{
// Fill a vout to ourself
Expand Down

0 comments on commit 12a7712

Please sign in to comment.