From 477815c04451542a7301511e23009d6728e59ee5 Mon Sep 17 00:00:00 2001
From: obscuren <geffobscura@gmail.com>
Date: Wed, 11 Mar 2015 16:33:39 +0100
Subject: Improved error reporting and removed commented code

---
 core/block_processor.go  | 17 ++++++-----------
 core/state_transition.go | 33 +--------------------------------
 2 files changed, 7 insertions(+), 43 deletions(-)

(limited to 'core')

diff --git a/core/block_processor.go b/core/block_processor.go
index ea9d06841..7ac8a1bd2 100644
--- a/core/block_processor.go
+++ b/core/block_processor.go
@@ -80,7 +80,7 @@ func (self *BlockProcessor) ApplyTransaction(coinbase *state.StateObject, stated
 	cb := statedb.GetStateObject(coinbase.Address())
 	st := NewStateTransition(NewEnv(statedb, self.bc, tx, block), tx, cb)
 	_, err := st.TransitionState()
-	if err != nil && (IsNonceErr(err) || state.IsGasLimitErr(err)) {
+	if err != nil && (IsNonceErr(err) || state.IsGasLimitErr(err) || IsInvalidTxErr(err)) {
 		return nil, nil, err
 	}
 
@@ -120,17 +120,12 @@ func (self *BlockProcessor) ApplyTransactions(coinbase *state.StateObject, state
 
 	for _, tx := range txs {
 		receipt, txGas, err := self.ApplyTransaction(coinbase, statedb, block, tx, totalUsedGas, transientProcess)
+		if err != nil && (IsNonceErr(err) || state.IsGasLimitErr(err) || IsInvalidTxErr(err)) {
+			return nil, nil, nil, nil, err
+		}
+
 		if err != nil {
-			switch {
-			case IsNonceErr(err):
-				return nil, nil, nil, nil, err
-			case state.IsGasLimitErr(err):
-				return nil, nil, nil, nil, err
-			default:
-				statelogger.Infoln(err)
-				erroneous = append(erroneous, tx)
-				err = nil
-			}
+			statelogger.Infoln("TX err:", err)
 		}
 		receipts = append(receipts, receipt)
 		handled = append(handled, tx)
diff --git a/core/state_transition.go b/core/state_transition.go
index 9b67de149..b1c66d8c9 100644
--- a/core/state_transition.go
+++ b/core/state_transition.go
@@ -184,6 +184,7 @@ func (self *StateTransition) TransitionState() (ret []byte, err error) {
 		}
 	}
 	if err = self.UseGas(big.NewInt(dgas)); err != nil {
+		println("2")
 		return nil, InvalidTxError(err)
 	}
 
@@ -200,46 +201,14 @@ func (self *StateTransition) TransitionState() (ret []byte, err error) {
 				ref.SetCode(ret)
 			}
 		}
-
-		/*
-			if vmenv, ok := vmenv.(*VMEnv); ok && tryJit {
-				statelogger.Infof("CREATE: re-running using JIT (PH=%x)\n", stateCopy.Root()[:4])
-				// re-run using the JIT (validation for the JIT)
-				goodState := vmenv.State().Copy()
-				vmenv.state = stateCopy
-				vmenv.SetVmType(vm.JitVmTy)
-				vmenv.Create(sender, contract.Address(), self.msg.Data(), self.gas, self.gasPrice, self.value)
-				statelogger.Infof("DONE PH=%x STD_H=%x JIT_H=%x\n", stateCopy.Root()[:4], goodState.Root()[:4], vmenv.State().Root()[:4])
-				self.state.Set(goodState)
-			}
-		*/
 	} else {
 		ret, err = vmenv.Call(self.From(), self.To().Address(), self.msg.Data(), self.gas, self.gasPrice, self.value)
-
-		/*
-			if vmenv, ok := vmenv.(*VMEnv); ok && tryJit {
-				statelogger.Infof("CALL: re-running using JIT (PH=%x)\n", stateCopy.Root()[:4])
-				// re-run using the JIT (validation for the JIT)
-				goodState := vmenv.State().Copy()
-				vmenv.state = stateCopy
-				vmenv.SetVmType(vm.JitVmTy)
-				vmenv.Call(self.From(), self.To().Address(), self.msg.Data(), self.gas, self.gasPrice, self.value)
-				statelogger.Infof("DONE PH=%x STD_H=%x JIT_H=%x\n", stateCopy.Root()[:4], goodState.Root()[:4], vmenv.State().Root()[:4])
-				self.state.Set(goodState)
-			}
-		*/
 	}
 
 	if err != nil && IsValueTransferErr(err) {
 		return nil, InvalidTxError(err)
 	}
 
-	/*
-		if err != nil {
-			self.UseGas(self.gas)
-		}
-	*/
-
 	return
 }
 
-- 
cgit v1.2.3