Lock cs_main before calling GetBlocksToMaturity
This is similar to another call, just somehow missed this one earlier.
MODIFY
src/wallet/rpcwallet.cpp
src/wallet/rpcwallet.cpp
@@ -2527,11 +2527,19 @@ static void ExportTransactions(CWallet* const pwallet, const CWalletTx& wtx, con
{
if (wtx.GetDepthInMainChain() < 1)
csvRecord[TRANSACTION_CSV_FIELD_CATEGORY] = "orphan";
- else if (wtx.GetBlocksToMaturity() > 0)
+ else
+ {
+ int nBlocksToMaturity;
+ {
+ LOCK(cs_main);
+ nBlocksToMaturity = wtx.GetBlocksToMaturity();
+ }
+ if (nBlocksToMaturity > 0)
csvRecord[TRANSACTION_CSV_FIELD_CATEGORY] = "immature";
else
csvRecord[TRANSACTION_CSV_FIELD_CATEGORY] = "generate";
}
+ }
else
{
csvRecord[TRANSACTION_CSV_FIELD_CATEGORY] = "receive";

Lock cs_main before calling GetBlocksToMaturity

This is similar to another call, just somehow missed this one earlier.