Re: [PATCH 1/3] wildmatch: make dowild() take arbitrary flags
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Dec 19, 2012, 16:32 UTC
- Message-ID
- <7v4njiatp3.fsf@alter.siamese.dyndns.org>
- In-Reply-To
- <1355922488-20976-2-git-send-email-pclouds@gmail.com>
Nguyễn Thái Ngọc Duy <pclouds@gmail.com> writes:
Show 15 quoted lines
> Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> > --- > wildmatch.c | 13 ++++++------- > 1 file changed, 6 insertions(+), 7 deletions(-) > > diff --git a/wildmatch.c b/wildmatch.c > index 3972e26..9586ed9 100644 > --- a/wildmatch.c > +++ b/wildmatch.c > @@ -55,7 +55,7 @@ typedef unsigned char uchar; > #define ISXDIGIT(c) (ISASCII(c) && isxdigit(c)) > > /* Match pattern "p" against "text" */ > -static int dowild(const uchar *p, const uchar *text, int force_lower_case) > +static int dowild(const uchar *p, const uchar *text, int flags)
It may be better to declare a bitset like this unsigned.
Show 9 quoted lines
> {
> uchar p_ch;
>
> @@ -64,9 +64,9 @@ static int dowild(const uchar *p, const uchar *text, int force_lower_case)
> uchar t_ch, prev_ch;
> if ((t_ch = *text) == '\0' && p_ch != '*')
> return ABORT_ALL;
> - if (force_lower_case && ISUPPER(t_ch))
> + if (flags & FNM_CASEFOLD && ISUPPER(t_ch))Please add parentheses around bitwise-AND that is used as a boolean, i.e.
if ((flags & FNM_CASEFOLD) && ISUPPER(t_ch))
Less chance of confusion.