Browse Source

core: adapt Message for new Transaction.From signature

Felix Lange 10 years ago
parent
commit
27f7aa0163
2 changed files with 5 additions and 3 deletions
  1. 2 1
      core/block_processor.go
  2. 3 2
      core/state_transition.go

+ 2 - 1
core/block_processor.go

@@ -81,7 +81,8 @@ func (self *BlockProcessor) ApplyTransaction(coinbase *state.StateObject, stated
 	_, gas, err := ApplyMessage(NewEnv(statedb, self.bc, tx, block), tx, cb)
 	if err != nil && (IsNonceErr(err) || state.IsGasLimitErr(err) || IsInvalidTxErr(err)) {
 		// If the account is managed, remove the invalid nonce.
-		self.bc.TxState().RemoveNonce(tx.From(), tx.Nonce())
+		from, _ := tx.From()
+		self.bc.TxState().RemoveNonce(from, tx.Nonce())
 		return nil, nil, err
 	}
 

+ 3 - 2
core/state_transition.go

@@ -44,9 +44,10 @@ type StateTransition struct {
 	env vm.Environment
 }
 
+// Message represents a message sent to a contract.
 type Message interface {
-	From() common.Address
-	To() common.Address
+	From() (common.Address, error)
+	To() *common.Address
 
 	GasPrice() *big.Int
 	Gas() *big.Int