aboutsummaryrefslogtreecommitdiff
path: root/src/qt/walletmodel.cpp
diff options
context:
space:
mode:
authorWladimir J. van der Laan <[email protected]>2014-01-06 13:36:51 +0100
committerWladimir J. van der Laan <[email protected]>2014-01-06 13:37:12 +0100
commit37d30ec3cf51aa332ce95ecf52fdd3e8e3d7228b (patch)
treef8002c42fa4062606197564710595654a7be42ba /src/qt/walletmodel.cpp
parentMerge pull request #3401 (diff)
parentqt: Add missing lock in WalletModel::listCoins (diff)
downloaddiscoin-37d30ec3cf51aa332ce95ecf52fdd3e8e3d7228b.tar.xz
discoin-37d30ec3cf51aa332ce95ecf52fdd3e8e3d7228b.zip
Merge pull request #3413
d31ad26 qt: Add missing lock in WalletModel::listCoins (Wladimir J. van der Laan) 28352af qt: protect SetAddressBook with cs_wallet lock everywhere (Wladimir J. van der Laan) aaf8d15 qt: Add missing LOCKs for locked coin functions (Wladimir J. van der Laan) 4757e92 qt: add missing cs_wallet lock in AddressTableModel::setData (Wladimir J. van der Laan)
Diffstat (limited to 'src/qt/walletmodel.cpp')
-rw-r--r--src/qt/walletmodel.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/qt/walletmodel.cpp b/src/qt/walletmodel.cpp
index f08342b83..6f3e3b0aa 100644
--- a/src/qt/walletmodel.cpp
+++ b/src/qt/walletmodel.cpp
@@ -502,6 +502,7 @@ void WalletModel::listCoins(std::map<QString, std::vector<COutput> >& mapCoins)
std::vector<COutput> vCoins;
wallet->AvailableCoins(vCoins);
+ LOCK(wallet->cs_wallet); // ListLockedCoins, mapWallet
std::vector<COutPoint> vLockedCoins;
wallet->ListLockedCoins(vLockedCoins);
@@ -531,20 +532,24 @@ void WalletModel::listCoins(std::map<QString, std::vector<COutput> >& mapCoins)
bool WalletModel::isLockedCoin(uint256 hash, unsigned int n) const
{
+ LOCK(wallet->cs_wallet);
return wallet->IsLockedCoin(hash, n);
}
void WalletModel::lockCoin(COutPoint& output)
{
+ LOCK(wallet->cs_wallet);
wallet->LockCoin(output);
}
void WalletModel::unlockCoin(COutPoint& output)
{
+ LOCK(wallet->cs_wallet);
wallet->UnlockCoin(output);
}
void WalletModel::listLockedCoins(std::vector<COutPoint>& vOutpts)
{
+ LOCK(wallet->cs_wallet);
wallet->ListLockedCoins(vOutpts);
}