- In wallet and GUI code LOCK cs_main as well as cs_wallet when
necessary
- In main.cpp SendMessages move the TRY_LOCK(cs_main) up, to encompass the call
to IsInitialBlockDownload.
- Make ActivateBestChain, AddToBlockIndex, IsInitialBlockDownload,
InitBlockIndex acquire the cs_main lock
Fixes#3997
@ -55,6 +55,7 @@ int ClientModel::getNumConnections(unsigned int flags) const
@@ -55,6 +55,7 @@ int ClientModel::getNumConnections(unsigned int flags) const
@ -46,8 +46,7 @@ QString TransactionDesc::toHTML(CWallet *wallet, CWalletTx &wtx, int vout, int u
@@ -46,8 +46,7 @@ QString TransactionDesc::toHTML(CWallet *wallet, CWalletTx &wtx, int vout, int u
@ -272,8 +271,6 @@ QString TransactionDesc::toHTML(CWallet *wallet, CWalletTx &wtx, int vout, int u
@@ -272,8 +271,6 @@ QString TransactionDesc::toHTML(CWallet *wallet, CWalletTx &wtx, int vout, int u
strHTML+="<br><b>"+tr("Inputs")+":</b>";
strHTML+="<ul>";
{
LOCK(wallet->cs_wallet);
BOOST_FOREACH(constCTxIn&txin,wtx.vin)
{
COutPointprevout=txin.prevout;
@ -297,12 +294,10 @@ QString TransactionDesc::toHTML(CWallet *wallet, CWalletTx &wtx, int vout, int u
@@ -297,12 +294,10 @@ QString TransactionDesc::toHTML(CWallet *wallet, CWalletTx &wtx, int vout, int u