X-Git-Url: https://git.novaco.in/?a=blobdiff_plain;f=src%2Fwallet.cpp;h=201d8a0cb19209bd0bfc875799c5b57fa326ffc2;hb=35be24faa1ab82f3178f278a04436eade50b5093;hp=91b8aee49ab9284c87f7fed320de7e6d528b3c99;hpb=c8a225331fe4690ce6358a6a32434a87c16ea099;p=novacoin.git diff --git a/src/wallet.cpp b/src/wallet.cpp index 91b8aee..201d8a0 100644 --- a/src/wallet.cpp +++ b/src/wallet.cpp @@ -1022,23 +1022,32 @@ void CWallet::AvailableCoins(vector& vCoins, bool fOnlyConfirmed, const { const CWalletTx* pcoin = &(*it).second; - if (!pcoin->IsFinal()) + if (!pcoin->IsFinal()) { continue; + } - if (fOnlyConfirmed && !pcoin->IsTrusted()) + if (fOnlyConfirmed && !pcoin->IsTrusted()) { continue; + } - if (pcoin->IsCoinBase() && pcoin->GetBlocksToMaturity() > 0) + if (pcoin->IsCoinBase() && pcoin->GetBlocksToMaturity() > 0) { continue; + } - if(pcoin->IsCoinStake() && pcoin->GetBlocksToMaturity() > 0) + int nDepth = pcoin->GetDepthInMainChain(); + if (nDepth < 0) { continue; + } - for (unsigned int i = 0; i < pcoin->vout.size(); i++) + if(pcoin->IsCoinStake() && pcoin->GetBlocksToMaturity() > 0) { + continue; + } + + for (unsigned int i = 0; i < pcoin->vout.size(); i++) { if (!(pcoin->IsSpent(i)) && IsMine(pcoin->vout[i]) && pcoin->vout[i].nValue >= nMinimumInputValue && (!coinControl || !coinControl->HasSelected() || coinControl->IsSelected((*it).first, i))) - vCoins.push_back(COutput(pcoin, i, pcoin->GetDepthInMainChain())); - + vCoins.push_back(COutput(pcoin, i, nDepth)); + } } } } @@ -1046,7 +1055,6 @@ void CWallet::AvailableCoins(vector& vCoins, bool fOnlyConfirmed, const void CWallet::AvailableCoinsMinConf(vector& vCoins, int nConf) const { vCoins.clear(); - { LOCK(cs_wallet); for (map::const_iterator it = mapWallet.begin(); it != mapWallet.end(); ++it)