From 7e1701899534151972ddff3c08cc964a9db64bc5 Mon Sep 17 00:00:00 2001 From: Jeff Garzik Date: Sat, 24 Aug 2013 00:33:46 -0400 Subject: CreateNewBlock() now takes scriptPubKey argument, rather than a key. CreateNewBlockWithKey() helper is added to restore existing functionality, making this an equivalent-transformation change. --- src/miner.cpp | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) (limited to 'src/miner.cpp') diff --git a/src/miner.cpp b/src/miner.cpp index e50c0b576d..bea69ad1b6 100644 --- a/src/miner.cpp +++ b/src/miner.cpp @@ -141,7 +141,7 @@ public: } }; -CBlockTemplate* CreateNewBlock(CReserveKey& reservekey) +CBlockTemplate* CreateNewBlock(CScript& scriptPubKeyIn) { // Create new block auto_ptr pblocktemplate(new CBlockTemplate()); @@ -154,10 +154,7 @@ CBlockTemplate* CreateNewBlock(CReserveKey& reservekey) txNew.vin.resize(1); txNew.vin[0].prevout.SetNull(); txNew.vout.resize(1); - CPubKey pubkey; - if (!reservekey.GetReservedKey(pubkey)) - return NULL; - txNew.vout[0].scriptPubKey << pubkey << OP_CHECKSIG; + txNew.vout[0].scriptPubKey = scriptPubKeyIn; // Add our coinbase tx as first transaction pblock->vtx.push_back(txNew); @@ -383,6 +380,15 @@ CBlockTemplate* CreateNewBlock(CReserveKey& reservekey) return pblocktemplate.release(); } +CBlockTemplate* CreateNewBlockWithKey(CReserveKey& reservekey) +{ + CPubKey pubkey; + if (!reservekey.GetReservedKey(pubkey)) + return NULL; + + CScript scriptPubKey = CScript() << pubkey << OP_CHECKSIG; + return CreateNewBlock(scriptPubKey); +} void IncrementExtraNonce(CBlock* pblock, CBlockIndex* pindexPrev, unsigned int& nExtraNonce) { @@ -510,7 +516,7 @@ void static BitcoinMiner(CWallet *pwallet) unsigned int nTransactionsUpdatedLast = nTransactionsUpdated; CBlockIndex* pindexPrev = pindexBest; - auto_ptr pblocktemplate(CreateNewBlock(reservekey)); + auto_ptr pblocktemplate(CreateNewBlockWithKey(reservekey)); if (!pblocktemplate.get()) return; CBlock *pblock = &pblocktemplate->block; -- cgit v1.2.3