diff options
author | Jeff Garzik <jgarzik@bitpay.com> | 2013-08-24 00:33:46 -0400 |
---|---|---|
committer | Jeff Garzik <jgarzik@bitpay.com> | 2013-08-24 00:33:46 -0400 |
commit | 7e1701899534151972ddff3c08cc964a9db64bc5 (patch) | |
tree | f8ec4db2675d980d98d0893046bc543c67efe09c /src/miner.cpp | |
parent | b60012f2b6770105557db2af40dc34947e884330 (diff) |
CreateNewBlock() now takes scriptPubKey argument,
rather than a key.
CreateNewBlockWithKey() helper is added to restore existing functionality,
making this an equivalent-transformation change.
Diffstat (limited to 'src/miner.cpp')
-rw-r--r-- | src/miner.cpp | 18 |
1 files changed, 12 insertions, 6 deletions
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<CBlockTemplate> 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<CBlockTemplate> pblocktemplate(CreateNewBlock(reservekey)); + auto_ptr<CBlockTemplate> pblocktemplate(CreateNewBlockWithKey(reservekey)); if (!pblocktemplate.get()) return; CBlock *pblock = &pblocktemplate->block; |