attr: Allow multiple changes to an attribute on the same line.

When using macros it isn't inconceivable to have an attribute
being set by a macro, and then being reset explicitly.

Signed-off-by: Henrik Grubbström <grubba@grubba.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Henrik Grubbström
2010-04-06 14:46:43 +02:00
committed by Junio C Hamano
parent 426c27b7c0
commit 969f9d7322
2 changed files with 7 additions and 1 deletions

2
attr.c
View File

@ -599,7 +599,7 @@ static int fill_one(const char *what, struct match_attr *a, int rem)
struct git_attr_check *check = check_all_attr;
int i;
for (i = 0; 0 < rem && i < a->num_attr; i++) {
for (i = a->num_attr - 1; 0 < rem && 0 <= i; i--) {
struct git_attr *attr = a->state[i].attr;
const char **n = &(check[attr->attr_nr].value);
const char *v = a->state[i].setto;