diff --git a/cmd/mist/gui.go b/cmd/mist/gui.go index d37d6f81b8be89d84fdeaa519f3a47d95ba5eabd..66614478c5842d9145d1f157784f92932dcde673 100644 --- a/cmd/mist/gui.go +++ b/cmd/mist/gui.go @@ -238,13 +238,11 @@ func (gui *Gui) insertTransaction(window string, tx *types.Transaction) { inout = "recv" } - var ( - ptx = xeth.NewTx(tx) - send = from.Hex() - rec = tx.To().Hex() - ) - ptx.Sender = send - ptx.Address = rec + ptx := xeth.NewTx(tx) + ptx.Sender = from.Hex() + if to := tx.To(); to != nil { + ptx.Address = to.Hex() + } if window == "post" { //gui.getObjectByName("transactionView").Call("addTx", ptx, inout) diff --git a/cmd/utils/customflags.go b/cmd/utils/customflags.go index a623ae19c2553e059870a3b9e5d8efca5cb71ae4..78a6b8d22036502616259f5da1fa8bd0ccf50fb6 100644 --- a/cmd/utils/customflags.go +++ b/cmd/utils/customflags.go @@ -18,11 +18,11 @@ type DirectoryString struct { Value string } -func (self DirectoryString) String() string { +func (self *DirectoryString) String() string { return self.Value } -func (self DirectoryString) Set(value string) error { +func (self *DirectoryString) Set(value string) error { self.Value = expandPath(value) return nil } @@ -72,9 +72,8 @@ func (self DirectoryFlag) Apply(set *flag.FlagSet) { } eachName(self.Name, func(name string) { - set.Var(self.Value, self.Name, "a: "+self.Usage) + set.Var(&self.Value, self.Name, self.Usage) }) - } func prefixFor(name string) (prefix string) { diff --git a/xeth/types.go b/xeth/types.go index 7390924740be0e92cea540c2d0b214b9d780154d..1be5e109cab745a0c25b0682f8f45d9da8e68838 100644 --- a/xeth/types.go +++ b/xeth/types.go @@ -140,8 +140,11 @@ type Transaction struct { func NewTx(tx *types.Transaction) *Transaction { hash := tx.Hash().Hex() - receiver := tx.To().Hex() - if len(receiver) == 0 { + + var receiver string + if to := tx.To(); to != nil { + receiver = to.Hex() + } else { receiver = core.AddressFromMessage(tx).Hex() } sender, _ := tx.From()