From 6c7255cde2afdff7710af23c9830835398e6b43d Mon Sep 17 00:00:00 2001
From: obscuren <geffobscura@gmail.com>
Date: Mon, 24 Feb 2014 13:15:34 +0100
Subject: [PATCH] Fixed a minor issue on crashed contracts

---
 ethchain/block.go    | 5 +++--
 ethchain/contract.go | 3 +++
 2 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/ethchain/block.go b/ethchain/block.go
index 7ad9984be..472ae134a 100644
--- a/ethchain/block.go
+++ b/ethchain/block.go
@@ -221,8 +221,9 @@ func (block *Block) Undo() {
 
 func (block *Block) MakeContract(tx *Transaction) {
 	contract := MakeContract(tx, NewState(block.state))
-
-	block.contractStates[string(tx.Hash()[12:])] = contract.state
+	if contract != nil {
+		block.contractStates[string(tx.Hash()[12:])] = contract.state
+	}
 }
 
 /////// Block Encoding
diff --git a/ethchain/contract.go b/ethchain/contract.go
index dbcbb3697..14abb05d1 100644
--- a/ethchain/contract.go
+++ b/ethchain/contract.go
@@ -1,6 +1,7 @@
 package ethchain
 
 import (
+	"fmt"
 	"github.com/ethereum/eth-go/ethutil"
 	"math/big"
 )
@@ -65,6 +66,8 @@ func MakeContract(tx *Transaction, state *State) *Contract {
 		state.trie.Update(string(addr), string(contract.RlpEncode()))
 
 		return contract
+	} else {
+		fmt.Println("NO CONTRACT")
 	}
 
 	return nil
-- 
GitLab