aboutsummaryrefslogtreecommitdiffstats
path: root/miner
diff options
context:
space:
mode:
authorGustav Simonsson <gustav.simonsson@gmail.com>2015-08-24 08:52:53 +0800
committerGustav Simonsson <gustav.simonsson@gmail.com>2015-08-25 10:46:11 +0800
commit7324176f702a77fc331bf16a968d2eb4bccce021 (patch)
treea9fef3b9ee46fc382dde23cdd90209cc4298dd59 /miner
parentd51d0022cee91d6588186455afbe6e54fae2cbf7 (diff)
downloadgo-tangerine-7324176f702a77fc331bf16a968d2eb4bccce021.tar.gz
go-tangerine-7324176f702a77fc331bf16a968d2eb4bccce021.tar.zst
go-tangerine-7324176f702a77fc331bf16a968d2eb4bccce021.zip
Add tests for uncle timestamps and refactor timestamp type
Diffstat (limited to 'miner')
-rw-r--r--miner/worker.go10
1 files changed, 5 insertions, 5 deletions
diff --git a/miner/worker.go b/miner/worker.go
index aa2132a51..86970ec07 100644
--- a/miner/worker.go
+++ b/miner/worker.go
@@ -278,7 +278,7 @@ func (self *worker) wait() {
glog.V(logger.Error).Infoln("Invalid block found during mining")
continue
}
- if err := core.ValidateHeader(self.eth.BlockProcessor().Pow, block.Header(), parent, true); err != nil && err != core.BlockFutureErr {
+ if err := core.ValidateHeader(self.eth.BlockProcessor().Pow, block.Header(), parent, true, false); err != nil && err != core.BlockFutureErr {
glog.V(logger.Error).Infoln("Invalid header on mined block:", err)
continue
}
@@ -434,8 +434,8 @@ func (self *worker) commitNewWork() {
tstart := time.Now()
parent := self.chain.CurrentBlock()
tstamp := tstart.Unix()
- if tstamp <= int64(parent.Time()) {
- tstamp = int64(parent.Time()) + 1
+ if parent.Time().Cmp(new(big.Int).SetInt64(tstamp)) != 1 {
+ tstamp = parent.Time().Int64() + 1
}
// this will ensure we're not going off too far in the future
if now := time.Now().Unix(); tstamp > now+4 {
@@ -448,12 +448,12 @@ func (self *worker) commitNewWork() {
header := &types.Header{
ParentHash: parent.Hash(),
Number: num.Add(num, common.Big1),
- Difficulty: core.CalcDifficulty(uint64(tstamp), parent.Time(), parent.Number(), parent.Difficulty()),
+ Difficulty: core.CalcDifficulty(uint64(tstamp), parent.Time().Uint64(), parent.Number(), parent.Difficulty()),
GasLimit: core.CalcGasLimit(parent),
GasUsed: new(big.Int),
Coinbase: self.coinbase,
Extra: self.extra,
- Time: uint64(tstamp),
+ Time: big.NewInt(tstamp),
}
previous := self.current