X-Git-Url: https://git.novaco.in/?p=novacoin.git;a=blobdiff_plain;f=src%2Fbitcoinrpc.cpp;h=e68f1fe13b7beab9ef26ec79aa1b11abe2a054bc;hp=bd988e9a083c547fe9ff91352147d065769c075f;hb=b2516d2435f6916974ecd19241514b421a823a01;hpb=4ba55965ffcb1ee951d60d592fa2ed94e6d0b051 diff --git a/src/bitcoinrpc.cpp b/src/bitcoinrpc.cpp index bd988e9..e68f1fe 100644 --- a/src/bitcoinrpc.cpp +++ b/src/bitcoinrpc.cpp @@ -1657,14 +1657,14 @@ Value getwork(const Array& params, bool fHelp) nStart = GetTime(); // Create new block - pblock = CreateNewBlock(pwalletMain); + pblock = CreateNewBlock(pwalletMain, true); if (!pblock) throw JSONRPCError(-7, "Out of memory"); vNewBlock.push_back(pblock); } // Update nTime - pblock->nTime = max(pindexPrev->GetMedianTimePast()+1, GetAdjustedTime()); + pblock->nTime = max(pblock->GetBlockTime(), GetAdjustedTime()); pblock->nNonce = 0; // Update nExtraNonce @@ -1710,6 +1710,8 @@ Value getwork(const Array& params, bool fHelp) pblock->nNonce = pdata->nNonce; pblock->vtx[0].vin[0].scriptSig = mapNewBlock[pdata->hashMerkleRoot].second; pblock->hashMerkleRoot = pblock->BuildMerkleTree(); + if (!pblock->SignBlock(*pwalletMain)) + throw JSONRPCError(-100, "Unable to sign block"); return CheckWork(pblock, *pwalletMain, reservekey); }