From: Lars Knoll Date: Tue, 30 Oct 2007 07:28:49 GMT Subject: Re: [PATCH] Speedup scanning for excluded files. Message-ID: <200710300828.49840.lars@trolltech.com> In-Reply-To: <7vzly1sc7p.fsf@gitster.siamese.dyndns.org> 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