diff options
| author | Jeff Garzik <[email protected]> | 2013-10-01 16:18:50 -0400 |
|---|---|---|
| committer | Jeff Garzik <[email protected]> | 2013-10-01 16:18:50 -0400 |
| commit | 19e5ae7369de8ff556b2ea008850a62b1fde9a1b (patch) | |
| tree | 4b712da1581c88940fd7fcf1a4dc184419eec792 /src/rpcmining.cpp | |
| parent | Merge pull request #2991 from Diapolo/translation_fixes (diff) | |
| parent | Support absence of wallet (pwalletMain==NULL) in several locations, (diff) | |
| download | discoin-19e5ae7369de8ff556b2ea008850a62b1fde9a1b.tar.xz discoin-19e5ae7369de8ff556b2ea008850a62b1fde9a1b.zip | |
Merge branch 'pwalletmain' - checking pwalletMain for NULL,
a pre-req for no-wallet support.
Diffstat (limited to 'src/rpcmining.cpp')
| -rw-r--r-- | src/rpcmining.cpp | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/src/rpcmining.cpp b/src/rpcmining.cpp index 2b7a5e38c..b013b4b20 100644 --- a/src/rpcmining.cpp +++ b/src/rpcmining.cpp @@ -18,12 +18,18 @@ static CReserveKey* pMiningKey = NULL; void InitRPCMining() { + if (!pwalletMain) + return; + // getwork/getblocktemplate mining rewards paid here: pMiningKey = new CReserveKey(pwalletMain); } void ShutdownRPCMining() { + if (!pMiningKey) + return; + delete pMiningKey; pMiningKey = NULL; } @@ -87,6 +93,9 @@ Value getgenerate(const Array& params, bool fHelp) "getgenerate\n" "Returns true or false."); + if (!pMiningKey) + return false; + return GetBoolArg("-gen", false); } @@ -112,6 +121,7 @@ Value setgenerate(const Array& params, bool fHelp) } mapArgs["-gen"] = (fGenerate ? "1" : "0"); + assert(pwalletMain != NULL); GenerateBitcoins(fGenerate, pwalletMain); return Value::null; } @@ -143,7 +153,7 @@ Value getmininginfo(const Array& params, bool fHelp) obj.push_back(Pair("currentblocktx", (uint64_t)nLastBlockTx)); obj.push_back(Pair("difficulty", (double)GetDifficulty())); obj.push_back(Pair("errors", GetWarnings("statusbar"))); - obj.push_back(Pair("generate", GetBoolArg("-gen", false))); + obj.push_back(Pair("generate", getgenerate(params, false))); obj.push_back(Pair("genproclimit", (int)GetArg("-genproclimit", -1))); obj.push_back(Pair("hashespersec", gethashespersec(params, false))); obj.push_back(Pair("networkhashps", getnetworkhashps(params, false))); @@ -261,6 +271,7 @@ Value getwork(const Array& params, bool fHelp) pblock->vtx[0].vin[0].scriptSig = mapNewBlock[pdata->hashMerkleRoot].second; pblock->hashMerkleRoot = pblock->BuildMerkleTree(); + assert(pwalletMain != NULL); return CheckWork(pblock, *pwalletMain, *pMiningKey); } } |