diff options
author | Wei-Ning Huang <w@cobinhood.com> | 2018-10-16 19:26:29 +0800 |
---|---|---|
committer | Wei-Ning Huang <w@byzantine-lab.io> | 2019-06-12 17:23:39 +0800 |
commit | 7d938ac7fd4f787f6e4507ce69c6acc677eb8080 (patch) | |
tree | 664c98a1f37787d4352d2527b4f6752d9b9bc755 /dex | |
parent | ab284ca86e5181cbd009aaa1e9b49d56eb532f97 (diff) | |
download | go-tangerine-7d938ac7fd4f787f6e4507ce69c6acc677eb8080.tar go-tangerine-7d938ac7fd4f787f6e4507ce69c6acc677eb8080.tar.gz go-tangerine-7d938ac7fd4f787f6e4507ce69c6acc677eb8080.tar.bz2 go-tangerine-7d938ac7fd4f787f6e4507ce69c6acc677eb8080.tar.lz go-tangerine-7d938ac7fd4f787f6e4507ce69c6acc677eb8080.tar.xz go-tangerine-7d938ac7fd4f787f6e4507ce69c6acc677eb8080.tar.zst go-tangerine-7d938ac7fd4f787f6e4507ce69c6acc677eb8080.zip |
dex/core: misc bug fixes
Diffstat (limited to 'dex')
-rw-r--r-- | dex/api_backend.go | 3 | ||||
-rw-r--r-- | dex/app.go | 5 | ||||
-rw-r--r-- | dex/governance.go | 4 |
3 files changed, 10 insertions, 2 deletions
diff --git a/dex/api_backend.go b/dex/api_backend.go index 3c9be5f3d..4d0cdc9e9 100644 --- a/dex/api_backend.go +++ b/dex/api_backend.go @@ -79,6 +79,9 @@ func (b *DexAPIBackend) BlockByNumber(ctx context.Context, blockNr rpc.BlockNumb } func (b *DexAPIBackend) StateAndHeaderByNumber(ctx context.Context, blockNr rpc.BlockNumber) (*state.StateDB, *types.Header, error) { + if blockNr == rpc.PendingBlockNumber { + blockNr = rpc.BlockNumber(b.dex.blockchain.CurrentBlock().Header().Number.Uint64()) + } header, err := b.HeaderByNumber(ctx, blockNr) if header == nil || err != nil { return nil, nil, err diff --git a/dex/app.go b/dex/app.go index 35a771460..85d7ea621 100644 --- a/dex/app.go +++ b/dex/app.go @@ -308,11 +308,12 @@ func (d *DexconApp) BlockDelivered(blockHash coreCommon.Hash, result coreTypes.F _, err = d.blockchain.InsertChain( []*types.Block{types.NewBlock(&types.Header{ - ParentHash: common.Hash(block.ParentHash), + ParentHash: d.blockchain.CurrentBlock().Hash(), Number: new(big.Int).SetUint64(result.Height), - Time: new(big.Int).SetInt64(result.Timestamp.Unix()), + Time: big.NewInt(result.Timestamp.Unix()), TxHash: types.DeriveSha(transactions), Coinbase: common.BytesToAddress(block.ProposerID.Hash[:]), + GasLimit: 800000, }, transactions, nil, nil)}) if err != nil { log.Error("insert chain", "error", err) diff --git a/dex/governance.go b/dex/governance.go index a78cf2d4f..19b9e578c 100644 --- a/dex/governance.go +++ b/dex/governance.go @@ -109,6 +109,10 @@ func (d *DexconGovernance) sendGovTx(ctx context.Context, data []byte) error { return err } + if nonce > 0 { + nonce += 1 + } + tx := types.NewTransaction( nonce, vm.GovernanceContractAddress, |