From 9b9131604c6832e5ed3ad8c09630806a50088eb1 Mon Sep 17 00:00:00 2001 From: Steve Waldman Date: Fri, 27 Jan 2017 00:47:11 -0800 Subject: [PATCH] Check for presence of metadata before trying to deserialize it --- common/compiler/solidity.go | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/common/compiler/solidity.go b/common/compiler/solidity.go index f49f7a6219..7d3c58197b 100644 --- a/common/compiler/solidity.go +++ b/common/compiler/solidity.go @@ -148,8 +148,10 @@ func runsolc(cmd *exec.Cmd, source string) (map[string]*Contract, error) { return nil, fmt.Errorf("solc: error reading dev doc: %v", err) } var metadata interface{} - if err := json.Unmarshal([]byte(info.Metadata), &metadata); err != nil { - return nil, fmt.Errorf("solc: error reading metadata: %v", err) + if info.Metadata != "" { + if err := json.Unmarshal([]byte(info.Metadata), &metadata); err != nil { + return nil, fmt.Errorf("solc: error reading metadata: %v", err) + } } contracts[name] = &Contract{ Code: "0x" + info.Bin,