diff --git a/cmd/mcadump/mcadump.go b/cmd/mcadump/mcadump.go index eccfdfc..ee96be1 100644 --- a/cmd/mcadump/mcadump.go +++ b/cmd/mcadump/mcadump.go @@ -23,7 +23,7 @@ func main() { args := flag.Args() var o string - o = "."// output dir + o = "." // output dir if len(args) < 2 { usage() } @@ -44,7 +44,7 @@ func main() { } func usage() { - _, _ = fmt.Fprintf(os.Stderr, "usage: %s [-x] [-r] r...mc{a,c}\n", flag.Arg(0)) + _, _ = fmt.Fprintf(os.Stderr, "usage: %s [-x] [-r] r...mc{a,c}\n", os.Args[0]) os.Exit(1) } diff --git a/nbt/read.go b/nbt/read.go index 6b58e62..53ed54a 100644 --- a/nbt/read.go +++ b/nbt/read.go @@ -32,7 +32,7 @@ func (d *Decoder) Decode(v interface{}) error { err = d.unmarshal(val.Elem(), tagType, tagName) if err != nil { - return fmt.Errorf("nbt: %w", err) + return fmt.Errorf("nbt: fail to decode tag %q: %w", tagName, err) } return nil } @@ -304,7 +304,7 @@ func (d *Decoder) unmarshal(val reflect.Value, tagType byte, tagName string) err if field != -1 { err = d.unmarshal(val.Field(field), tt, tn) if err != nil { - return err + return fmt.Errorf("fail to decode tag %q: %w", tn, err) } } else { if err := d.rawRead(tt); err != nil { @@ -329,7 +329,7 @@ func (d *Decoder) unmarshal(val reflect.Value, tagType byte, tagName string) err } v := reflect.New(val.Type().Elem()) if err = d.unmarshal(v.Elem(), tt, tn); err != nil { - return err + return fmt.Errorf("fail to decode tag %q: %w", tn, err) } val.SetMapIndex(reflect.ValueOf(tn), v.Elem()) } @@ -345,7 +345,7 @@ func (d *Decoder) unmarshal(val reflect.Value, tagType byte, tagName string) err } var value interface{} if err = d.unmarshal(reflect.ValueOf(&value).Elem(), tt, tn); err != nil { - return err + return fmt.Errorf("fail to decode tag %q: %w", tn, err) } buf[tn] = value }