1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-11-14 23:46:10 +00:00
freebsd-ports/shells/tcsh/files/patch-ad

80 lines
1.9 KiB
Plaintext
Raw Normal View History

*** glob.c.orig Sun May 14 00:49:21 1995
--- glob.c Thu Oct 31 18:04:28 1996
***************
*** 139,144 ****
--- 139,161 ----
#define M_SET META('[')
#define ismeta(c) (((c)&M_META) != 0)
+ int collate_range_cmp (c1, c2)
+ int c1, c2;
+ {
+ static char s1[2], s2[2];
+ int ret;
+
+ c1 &= UCHAR_MAX;
+ c2 &= UCHAR_MAX;
+ if (c1 == c2)
+ return (0);
+ s1[0] = c1;
+ s2[0] = c2;
+ if ((ret = strcoll(s1, s2)) != 0)
+ return (ret);
+ return (c1 - c2);
+ }
+
/*
* Need to dodge two kernel bugs:
* opendir("") != opendir(".")
***************
*** 646,652 ****
++pat;
while (((c = *pat++) & M_MASK) != M_END) {
if ((*pat & M_MASK) == M_RNG) {
! if (c <= k && k <= pat[1])
ok = 1;
pat += 2;
}
--- 663,671 ----
++pat;
while (((c = *pat++) & M_MASK) != M_END) {
if ((*pat & M_MASK) == M_RNG) {
! if ( collate_range_cmp(CHAR(c), CHAR(k)) <= 0
! && collate_range_cmp(CHAR(k), CHAR(pat[1])) <= 0
! )
ok = 1;
pat += 2;
}
1996-08-12 02:56:37 +00:00
*** sh.glob.c.orig Sun May 14 00:49:17 1995
--- sh.glob.c Thu Oct 31 18:04:28 1996
***************
*** 85,90 ****
--- 85,91 ----
static void pword __P((int));
static void psave __P((int));
static void backeval __P((Char *, bool));
+ extern int collate_range_cmp __P((int, int));
static Char *
globtilde(nv, s)
1996-08-12 02:56:37 +00:00
***************
*** 1038,1045 ****
if (match)
continue;
if (rangec == '-' && *(pattern-2) != '[' && *pattern != ']') {
! match = (stringc <= (*pattern & TRIM) &&
! (*(pattern-2) & TRIM) <= stringc);
pattern++;
}
else
--- 1039,1047 ----
1996-08-12 02:56:37 +00:00
if (match)
continue;
if (rangec == '-' && *(pattern-2) != '[' && *pattern != ']') {
! match = ( collate_range_cmp(stringc, *pattern & TRIM) <= 0
! && collate_range_cmp(*(pattern-2) & TRIM, stringc) <= 0
1996-08-12 02:56:37 +00:00
! );
pattern++;
}
else