diff --git a/lib/ignore/ignore.go b/lib/ignore/ignore.go index 02ab7a87..12ddf4d2 100644 --- a/lib/ignore/ignore.go +++ b/lib/ignore/ignore.go @@ -249,7 +249,9 @@ func parseIgnoreFile(fd io.Reader, currentFile string, seen map[string]bool) ([] } patterns = append(patterns, pattern) - pattern.match, err = glob.Compile(line[3:]) + line = line[3:] + pattern.pattern = line + pattern.match, err = glob.Compile(line) if err != nil { return fmt.Errorf("invalid pattern %q in ignore file", line) } @@ -271,7 +273,9 @@ func parseIgnoreFile(fd io.Reader, currentFile string, seen map[string]bool) ([] } patterns = append(patterns, pattern) - pattern.match, err = glob.Compile("**/" + line) + line := "**/" + line + pattern.pattern = line + pattern.match, err = glob.Compile(line) if err != nil { return fmt.Errorf("invalid pattern %q in ignore file", line) } @@ -299,9 +303,6 @@ func parseIgnoreFile(fd io.Reader, currentFile string, seen map[string]bool) ([] err = addPattern(line) case strings.HasSuffix(line, "/"): err = addPattern(line) - if err == nil { - err = addPattern(line + "**") - } default: err = addPattern(line) if err == nil { diff --git a/lib/ignore/ignore_test.go b/lib/ignore/ignore_test.go index 9d71f699..7d42b2dc 100644 --- a/lib/ignore/ignore_test.go +++ b/lib/ignore/ignore_test.go @@ -177,10 +177,6 @@ func TestCaching(t *testing.T) { t.Fatal("Expected empty cache") } - if len(pats.patterns) != 4 { - t.Fatal("Incorrect number of patterns loaded", len(pats.patterns), "!=", 4) - } - // Cache some outcomes for _, letter := range []string{"a", "b", "x", "y"} {