From ccada7d89a8587666affe88ede9d2508f5e9c7f2 Mon Sep 17 00:00:00 2001 From: Sebastian Schmidt Date: Thu, 1 Jan 2015 14:50:31 +0100 Subject: [PATCH] Don't skip subtree on false filter condition when restoring We still need to descend into subtrees and check if their filter matches. --- restorer.go | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/restorer.go b/restorer.go index f26b30354..7523b2cbd 100644 --- a/restorer.go +++ b/restorer.go @@ -51,15 +51,14 @@ func (res *Restorer) to(dir string, tree_id backend.ID) error { for _, node := range tree { p := filepath.Join(dir, node.Name) - if !res.Filter(p, node) { - continue - } - err := node.CreateAt(res.ch, p) - if err != nil { - err = res.Error(p, node, arrar.Annotate(err, "create node")) + if res.Filter(p, node) { + err := node.CreateAt(res.ch, p) if err != nil { - return err + err = res.Error(p, node, arrar.Annotate(err, "create node")) + if err != nil { + return err + } } }