push test: rely on &&-chaining instead of 'if bad; then echo Oops; fi'
[gitweb.git] / attr.c
diff --git a/attr.c b/attr.c
index 4657cc233c4aa7cff90e745a58ac7ad0a5fa8cd2..e2f9377891a7f6e0d56803016726e3cd3137fdc2 100644 (file)
--- a/attr.c
+++ b/attr.c
@@ -255,9 +255,11 @@ static struct match_attr *parse_attr_line(const char *line, const char *src,
                                      &res->u.pat.patternlen,
                                      &res->u.pat.flags,
                                      &res->u.pat.nowildcardlen);
-               if (res->u.pat.flags & EXC_FLAG_NEGATIVE)
-                       die(_("Negative patterns are forbidden in git attributes\n"
-                             "Use '\\!' for literal leading exclamation."));
+               if (res->u.pat.flags & EXC_FLAG_NEGATIVE) {
+                       warning(_("Negative patterns are ignored in git attributes\n"
+                                 "Use '\\!' for literal leading exclamation."));
+                       return NULL;
+               }
        }
        res->is_macro = is_macro;
        res->num_attr = num_attr;