aboutsummaryrefslogtreecommitdiffstats
path: root/ethchain
diff options
context:
space:
mode:
Diffstat (limited to 'ethchain')
-rw-r--r--ethchain/block.go37
1 files changed, 11 insertions, 26 deletions
diff --git a/ethchain/block.go b/ethchain/block.go
index 24ff5a32f..3401632b1 100644
--- a/ethchain/block.go
+++ b/ethchain/block.go
@@ -56,8 +56,6 @@ type Block struct {
// List of transactions and/or contracts
transactions []*Transaction
TxSha []byte
-
- contractStates map[string]*ethutil.Trie
}
// New block takes a raw encoded string
@@ -91,28 +89,23 @@ func CreateBlock(root interface{},
block := &Block{
// Slice of transactions to include in this block
- transactions: txes,
- PrevHash: prevHash,
- Coinbase: base,
- Difficulty: Difficulty,
- Nonce: Nonce,
- Time: time.Now().Unix(),
- Extra: extra,
- UncleSha: EmptyShaList,
- GasUsed: new(big.Int),
- MinGasPrice: new(big.Int),
- GasLimit: new(big.Int),
- contractStates: make(map[string]*ethutil.Trie),
+ transactions: txes,
+ PrevHash: prevHash,
+ Coinbase: base,
+ Difficulty: Difficulty,
+ Nonce: Nonce,
+ Time: time.Now().Unix(),
+ Extra: extra,
+ UncleSha: EmptyShaList,
+ GasUsed: new(big.Int),
+ MinGasPrice: new(big.Int),
+ GasLimit: new(big.Int),
}
block.SetTransactions(txes)
block.SetUncles([]*Block{})
block.state = NewState(ethutil.NewTrie(ethutil.Config.Db, root))
- for _, tx := range txes {
- block.MakeContract(tx)
- }
-
return block
}
@@ -178,13 +171,6 @@ func (block *Block) Undo() {
block.state.Reset()
}
-func (block *Block) MakeContract(tx *Transaction) {
- contract := MakeContract(tx, block.state)
- if contract != nil {
- block.state.states[string(tx.Hash()[12:])] = contract.state
- }
-}
-
/////// Block Encoding
func (block *Block) rlpTxs() interface{} {
// Marshal the transactions of this block
@@ -265,7 +251,6 @@ func (block *Block) RlpValueDecode(decoder *ethutil.Value) {
block.Time = int64(header.Get(10).BigInt().Uint64())
block.Extra = header.Get(11).Str()
block.Nonce = header.Get(12).Bytes()
- block.contractStates = make(map[string]*ethutil.Trie)
// Tx list might be empty if this is an uncle. Uncles only have their
// header set.