diff options
| author | Wladimir J. van der Laan <[email protected]> | 2013-12-10 15:27:53 +0100 |
|---|---|---|
| committer | JaSK <[email protected]> | 2014-07-02 15:48:38 +0200 |
| commit | 2935b211033610d7ef0deef9bf1b344a5bac029f (patch) | |
| tree | c3bb65c391305f127ac89c970eafc9de93ae9d52 /src | |
| parent | Add support for watch-only addresses (diff) | |
| download | discoin-2935b211033610d7ef0deef9bf1b344a5bac029f.tar.xz discoin-2935b211033610d7ef0deef9bf1b344a5bac029f.zip | |
qt: Hide unspendable outputs in coin control
Diffstat (limited to 'src')
| -rw-r--r-- | src/qt/walletmodel.cpp | 6 | ||||
| -rw-r--r-- | src/wallet.cpp | 2 |
2 files changed, 6 insertions, 2 deletions
diff --git a/src/qt/walletmodel.cpp b/src/qt/walletmodel.cpp index d32e74b78..098d39e8a 100644 --- a/src/qt/walletmodel.cpp +++ b/src/qt/walletmodel.cpp @@ -60,7 +60,8 @@ qint64 WalletModel::getBalance(const CCoinControl *coinControl) const std::vector<COutput> vCoins; wallet->AvailableCoins(vCoins, true, coinControl); BOOST_FOREACH(const COutput& out, vCoins) - nBalance += out.tx->vout[out.i].nValue; + if(out.fSpendable) + nBalance += out.tx->vout[out.i].nValue; return nBalance; } @@ -585,7 +586,8 @@ void WalletModel::listCoins(std::map<QString, std::vector<COutput> >& mapCoins) } CTxDestination address; - if(!ExtractDestination(cout.tx->vout[cout.i].scriptPubKey, address)) continue; + if(!out.fSpendable || !ExtractDestination(cout.tx->vout[cout.i].scriptPubKey, address)) + continue; mapCoins[CBitcoinAddress(address).ToString().c_str()].push_back(out); } } diff --git a/src/wallet.cpp b/src/wallet.cpp index 3d679f4c5..40ace9c40 100644 --- a/src/wallet.cpp +++ b/src/wallet.cpp @@ -1259,6 +1259,8 @@ bool CWallet::SelectCoins(int64_t nTargetValue, set<pair<const CWalletTx*,unsign { BOOST_FOREACH(const COutput& out, vCoins) { + if(!out.fSpendable) + continue; nValueRet += out.tx->vout[out.i].nValue; setCoinsRet.insert(make_pair(out.tx, out.i)); } |