After removing collation for [a-z] ranges in r302512, do it here too.

Approved by:    jilles
This commit is contained in:
Andrey A. Chernov 2016-07-13 08:13:09 +00:00
parent 8e0303b03b
commit 3ea37deb6c
2 changed files with 2 additions and 20 deletions

View File

@ -107,7 +107,6 @@ static void expmeta(char *, char *, struct arglist *);
static int expsortcmp(const void *, const void *);
static int patmatch(const char *, const char *);
static void cvtnum(int, char *);
static int collate_range_cmp(wchar_t, wchar_t);
void
emptyarglist(struct arglist *list)
@ -138,16 +137,6 @@ appendarglist(struct arglist *list, char *str)
list->args[list->count++] = str;
}
static int
collate_range_cmp(wchar_t c1, wchar_t c2)
{
static wchar_t s1[2], s2[2];
s1[0] = c1;
s2[0] = c2;
return (wcscoll(s1, s2));
}
static char *
stputs_quotes(const char *data, const char *syntax, char *p)
{
@ -1359,9 +1348,7 @@ patmatch(const char *pattern, const char *string)
return 0;
} else
wc2 = (unsigned char)*p++;
if ( collate_range_cmp(chr, wc) >= 0
&& collate_range_cmp(chr, wc2) <= 0
)
if (wc <= chr && chr <= wc2)
found = 1;
} else {
if (chr == wc)

View File

@ -14,11 +14,6 @@ c1=e
c2=$(printf '\366')
case $c1$c2 in
[a-z][a-z]) ;;
*) echo wrong at $LINENO ;;
esac
case $c1$c2 in
[a-f][n-p]) ;;
[a-z][!a-z]) ;;
*) echo wrong at $LINENO ;;
esac