On Tuesday 30 October 2007, Junio C Hamano wrote: > "Morten Welinder" writes: > >> + } else if (x->flags & EXC_FLAG_ENDSWITH) > >> { + if (!strcmp(exclude + 1, > >> pathname + pathlen -x->patternlen + 1)) > > > > Is there some guarantee that the result of that subtraction is still > > within the string? > > Good eyes. > > If pattern is "*.exe", patternlen is 5, and strcmp wants to > compare 4 chars, so pathlen is better be at least that long, and > we do allow that pattern to match a hidden file ".exe". > > Like this? > > if (x->patternlen - 1 <= pathlen && > !strcmp(exclude + 1, pathname + pathlen - x->patternlen + 1)) > return to_exclude; Yes, that looks right. Thanks for catching that one. Lars - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html