aboutsummaryrefslogtreecommitdiffstats
path: root/core/state_transition.go
diff options
context:
space:
mode:
authorJeffrey Wilcke <geffobscura@gmail.com>2015-06-24 01:19:33 +0800
committerJeffrey Wilcke <geffobscura@gmail.com>2015-06-24 01:19:33 +0800
commit72e2613a9fe3205fa5a67b72b832e03b2357ee88 (patch)
treebbc987510d279d9e174ff8f684158d668131661e /core/state_transition.go
parent5daf8729be88eca87b302ebf7a46fc69cad0f6d0 (diff)
parent67e6f74e9af00ff011a6a02f18644804eb18cdaa (diff)
downloaddexon-72e2613a9fe3205fa5a67b72b832e03b2357ee88.tar.gz
dexon-72e2613a9fe3205fa5a67b72b832e03b2357ee88.tar.zst
dexon-72e2613a9fe3205fa5a67b72b832e03b2357ee88.zip
Merge branch 'release/0.9.32'
Diffstat (limited to 'core/state_transition.go')
-rw-r--r--core/state_transition.go23
1 files changed, 5 insertions, 18 deletions
diff --git a/core/state_transition.go b/core/state_transition.go
index fedea8021..915dd466b 100644
--- a/core/state_transition.go
+++ b/core/state_transition.go
@@ -151,7 +151,7 @@ func (self *StateTransition) BuyGas() error {
}
coinbase := self.Coinbase()
- err = coinbase.BuyGas(self.msg.Gas(), self.msg.GasPrice())
+ err = coinbase.SubGas(self.msg.Gas(), self.msg.GasPrice())
if err != nil {
return err
}
@@ -241,26 +241,13 @@ func (self *StateTransition) refundGas() {
sender.AddBalance(remaining)
uhalf := new(big.Int).Div(self.gasUsed(), common.Big2)
- for addr, ref := range self.state.Refunds() {
- refund := common.BigMin(uhalf, ref)
- self.gas.Add(self.gas, refund)
- self.state.AddBalance(common.StringToAddress(addr), refund.Mul(refund, self.msg.GasPrice()))
- }
+ refund := common.BigMin(uhalf, self.state.Refunds())
+ self.gas.Add(self.gas, refund)
+ self.state.AddBalance(sender.Address(), refund.Mul(refund, self.msg.GasPrice()))
- coinbase.RefundGas(self.gas, self.msg.GasPrice())
+ coinbase.AddGas(self.gas, self.msg.GasPrice())
}
func (self *StateTransition) gasUsed() *big.Int {
return new(big.Int).Sub(self.initialGas, self.gas)
}
-
-// Converts an message in to a state object
-func makeContract(msg Message, state *state.StateDB) *state.StateObject {
- faddr, _ := msg.From()
- addr := crypto.CreateAddress(faddr, msg.Nonce())
-
- contract := state.GetOrNewStateObject(addr)
- contract.SetInitCode(msg.Data())
-
- return contract
-}