]> TLD Linux GIT Repositories - packages/mksh.git/blob - mksh-circumflex.patch
- updated to 54
[packages/mksh.git] / mksh-circumflex.patch
1 diff -urp mksh.orig/check.t mksh/check.t
2 --- mksh.orig/check.t   2016-08-12 16:48:28.000000000 +0000
3 +++ mksh/check.t        2016-08-18 06:51:31.069554000 +0000
4 @@ -2274,7 +2274,7 @@ expected-stdout:
5         cbc
6         -bc cbc
7         abc bbc
8 -       ^bc abc bbc
9 +       !bc -bc ^bc cbc
10         !bc -bc ^bc cbc
11  ---
12  name: glob-range-2
13 diff -urp mksh.orig/eval.c mksh/eval.c
14 --- mksh.orig/eval.c    2016-08-01 21:38:27.000000000 +0000
15 +++ mksh/eval.c 2016-08-18 06:51:31.063554000 +0000
16 @@ -972,6 +972,7 @@ expand(
17                                 switch (c) {
18                                 case '[':
19                                 case '!':
20 +                               case NOT2:
21                                 case '-':
22                                 case ']':
23                                         /*
24 diff -urp mksh.orig/misc.c mksh/misc.c
25 --- mksh.orig/misc.c    2016-08-01 18:43:08.000000000 +0000
26 +++ mksh/misc.c 2016-08-18 06:51:31.064554000 +0000
27 @@ -902,7 +902,7 @@ gmatch_cclass(const unsigned char *p, un
28         bool notp, found = false;
29         const unsigned char *orig_p = p;
30  
31 -       if ((notp = tobool(ISMAGIC(*p) && *++p == '!')))
32 +       if ((notp = tobool(ISMAGIC(*p) && (*++p == '!' || *p == NOT2))))
33                 p++;
34         do {
35                 c = *p++;
36 diff -urp mksh.orig/sh.h mksh/sh.h
37 --- mksh.orig/sh.h      2016-08-12 16:48:31.000000000 +0000
38 +++ mksh/sh.h   2016-08-18 06:51:31.066554000 +0000
39 @@ -501,6 +501,7 @@ extern int __cdecl setegid(gid_t);
40   */
41  #define MAGIC          (7)     /* prefix for *?[!{,} during expand */
42  #define ISMAGIC(c)     ((unsigned char)(c) == MAGIC)
43 +#define NOT2           '^'
44  
45  EXTERN const char *safe_prompt; /* safe prompt if PS1 substitution fails */
46