]> TLD Linux GIT Repositories - packages/mksh.git/blob - mksh-circumflex.patch
- merged 58 from PLD
[packages/mksh.git] / mksh-circumflex.patch
1 diff -ur mksh-56.orig/eval.c mksh-56/eval.c
2 --- mksh-56.orig/eval.c 2017-08-12 22:10:26.321676398 +0200
3 +++ mksh-56/eval.c      2017-08-12 22:40:32.672676143 +0200
4 @@ -1005,6 +1005,7 @@
5                                 switch (ord(c)) {
6                                 case ORD('['):
7                                 case ORD('!'):
8 +                               case ORD(NOT2):
9                                 case ORD('-'):
10                                 case ORD(']'):
11                                         /*
12 diff -ur mksh-56.orig/misc.c mksh-56/misc.c
13 --- mksh-56.orig/misc.c 2017-08-12 22:10:26.321676398 +0200
14 +++ mksh-56/misc.c      2017-08-12 22:40:32.672676143 +0200
15 @@ -966,7 +966,7 @@
16         char *subp;
17  
18         /* check for negation */
19 -       if (ISMAGIC(p[0]) && ord(p[1]) == ORD('!')) {
20 +       if (ISMAGIC(p[0]) && (ord(p[1]) == ORD('!') || ord(p[1]) == ORD(NOT2))) {
21                 p += 2;
22                 negated = true;
23         }
24 diff -ur mksh-56.orig/sh.h mksh-56/sh.h
25 --- mksh-56.orig/sh.h   2017-08-12 22:10:26.325009789 +0200
26 +++ mksh-56/sh.h        2017-08-12 22:40:32.696009488 +0200
27 @@ -550,6 +550,7 @@
28   */
29  #define MAGIC          KSH_BEL /* prefix for *?[!{,} during expand */
30  #define ISMAGIC(c)     (ord(c) == ORD(MAGIC))
31 +#define NOT2           '^'
32  
33  EXTERN const char *safe_prompt; /* safe prompt if PS1 substitution fails */
34  
35 diff -ur mksh-56.orig/check.t mksh-56/check.t
36 --- mksh-56.orig/check.t        2017-08-12 22:10:26.321676398 +0200
37 +++ mksh-56/check.t     2017-08-12 22:41:46.886083258 +0200
38 @@ -2438,7 +2438,7 @@
39         !bc +bc ,bc 0bc 1bc ^bc cbc
40         !bc +bc ,bc -bc 0bc 1bc ^bc cbc
41         abc bbc
42 -       ^bc abc bbc
43 +       !bc +bc ,bc -bc 0bc 1bc ^bc cbc
44         +bc ,bc -bc
45         -bc 0bc 1bc
46  ---