diff --git a/cmd/restic/cmd_cat.go b/cmd/restic/cmd_cat.go index 7bb6c3129..6af0a476a 100644 --- a/cmd/restic/cmd_cat.go +++ b/cmd/restic/cmd_cat.go @@ -58,13 +58,13 @@ func (cmd CmdCat) Execute(args []string) error { return err } - err = ch.LoadAllMaps() - if err != nil { - return err - } - switch tpe { case "blob": + err = ch.LoadAllMaps() + if err != nil { + return err + } + // try id data, err := ch.Load(backend.Data, id) if err == nil { @@ -88,6 +88,11 @@ func (cmd CmdCat) Execute(args []string) error { return err case "tree": + err = ch.LoadAllMaps() + if err != nil { + return err + } + var tree restic.Tree // try id err := ch.LoadJSON(backend.Tree, id, &tree) diff --git a/cmd/restic/cmd_snapshots.go b/cmd/restic/cmd_snapshots.go index 84cfa532f..c431607e3 100644 --- a/cmd/restic/cmd_snapshots.go +++ b/cmd/restic/cmd_snapshots.go @@ -108,7 +108,7 @@ func (cmd CmdSnapshots) Execute(args []string) error { list := []*restic.Snapshot{} backend.EachID(be, backend.Snapshot, func(id backend.ID) { - sn, err := ch.LoadSnapshot(id) + sn, err := restic.LoadSnapshot(ch, id) if err != nil { fmt.Fprintf(os.Stderr, "error loading snapshot %s: %v\n", id, err) return