From: Junio C Hamano Date: Tue, 22 Jan 2013 22:51:59 GMT Subject: Re: [PATCH v3 01/10] wildmatch: fix "**" special case Message-ID: <7v1udcn84w.fsf@alter.siamese.dyndns.org> In-Reply-To: <7vr4lcnbn5.fsf@alter.siamese.dyndns.org> Junio C Hamano writes: > We obviously do not want to set FNM_PATHNAME when we are not > substituting fnmatch() with wildmatch(), but I wonder if it may make > sense to unconditionally use WM_PATHNAME semantics when we build the > system with USE_WILDMATCH and calling wildmatch() in this codepath. > Users can always use "*/**/*" in place of "*" in their patterns > where they want to ignore directory boundaries. Another possibility, which _might_ make more practical sense, is to update dowild() so that any pattern that has (^|/)**(/|$) in it implicitly turns the WM_PATHNAME flag on. There is no reason for the user to feed it a double-asterisk unless it is an attempt to defeat some directory boundaries, so we already know that the user expects WM_PATHNAME behaviour at that point. Otherwise, the user would have simply said '*' instead, wouldn't he? I said "_might_" because it sounds a bit too magical to my taste. I dunno.