For negative matches, always use leading dir match
diff --git a/src/attr_file.c b/src/attr_file.c
index 2f09537..07ffacb 100644
--- a/src/attr_file.c
+++ b/src/attr_file.c
@@ -534,7 +534,8 @@ int git_attr_fnmatch__parse(
}
if (*pattern == '!' && (spec->flags & GIT_ATTR_FNMATCH_ALLOWNEG) != 0) {
- spec->flags = spec->flags | GIT_ATTR_FNMATCH_NEGATIVE;
+ spec->flags = spec->flags |
+ GIT_ATTR_FNMATCH_NEGATIVE | GIT_ATTR_FNMATCH_LEADINGDIR;
pattern++;
}