Moving closer to interop
This commit is contained in:
@@ -28,7 +28,7 @@ func Disassemble(script []byte) (asm []string) {
|
||||
if len(data) == 0 {
|
||||
data = []byte{0}
|
||||
}
|
||||
asm = append(asm, fmt.Sprintf("0x%x", data))
|
||||
asm = append(asm, fmt.Sprintf("%#x", data))
|
||||
|
||||
pc.Add(pc, big.NewInt(a-1))
|
||||
}
|
||||
|
@@ -55,6 +55,8 @@ func (bc *BlockChain) NewBlock(coinbase []byte) *Block {
|
||||
nil,
|
||||
"")
|
||||
|
||||
block.MinGasPrice = big.NewInt(10000000000000)
|
||||
|
||||
if bc.CurrentBlock != nil {
|
||||
var mul *big.Int
|
||||
if block.Time < lastBlockTime+42 {
|
||||
|
@@ -131,14 +131,21 @@ func (self *StateTransition) TransitionState() (err error) {
|
||||
return NonceError(tx.Nonce, sender.Nonce)
|
||||
}
|
||||
|
||||
// Increment the nonce for the next transaction
|
||||
sender.Nonce += 1
|
||||
|
||||
// Pre-pay gas / Buy gas of the coinbase account
|
||||
if err = self.BuyGas(); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
// XXX Transactions after this point are considered valid.
|
||||
|
||||
defer func() {
|
||||
self.state.UpdateStateObject(sender)
|
||||
self.state.UpdateStateObject(receiver)
|
||||
}()
|
||||
|
||||
// Increment the nonce for the next transaction
|
||||
sender.Nonce += 1
|
||||
|
||||
// Get the receiver (TODO fix this, if coinbase is the receiver we need to save/retrieve)
|
||||
receiver = self.Receiver()
|
||||
|
||||
@@ -187,9 +194,6 @@ func (self *StateTransition) TransitionState() (err error) {
|
||||
remaining := new(big.Int).Mul(self.gas, tx.GasPrice)
|
||||
sender.AddAmount(remaining)
|
||||
|
||||
self.state.UpdateStateObject(sender)
|
||||
self.state.UpdateStateObject(receiver)
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
|
@@ -226,7 +226,7 @@ var opCodeToString = map[OpCode]string{
|
||||
func (o OpCode) String() string {
|
||||
str := opCodeToString[o]
|
||||
if len(str) == 0 {
|
||||
return fmt.Sprintf("Missing opcode 0x%x", int(o))
|
||||
return fmt.Sprintf("Missing opcode %#x", int(o))
|
||||
}
|
||||
|
||||
return str
|
||||
|
Reference in New Issue
Block a user