From 0e1045301a765a60c33a84eaa6de4bbdd5febc44 Mon Sep 17 00:00:00 2001 From: Alexander Neumann Date: Sun, 21 Dec 2014 17:29:37 +0100 Subject: [PATCH] Optimize 'cat' and 'snapshots' commands --- cmd/restic/cmd_cat.go | 15 ++++++++++----- cmd/restic/cmd_snapshots.go | 2 +- 2 files changed, 11 insertions(+), 6 deletions(-) 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