]> TLD Linux GIT Repositories - packages/mksh.git/blobdiff - mksh-circumflex.patch
- merged 56c from PLD
[packages/mksh.git] / mksh-circumflex.patch
index 8aed985fc61f01e1a4b90c2701baa6e8aa7bcf96..36ad8179be415aaaf947633c2a772b54b4e19bcb 100644 (file)
@@ -1,45 +1,46 @@
-diff -ur mksh-40.org//eval.c mksh-40/eval.c
---- mksh-40.org//eval.c        2011-06-12 16:45:57.000000000 +0200
-+++ mksh-40/eval.c     2011-07-07 18:27:58.891492090 +0200
-@@ -887,6 +887,7 @@
-                               switch (c) {
-                               case '[':
-                               case '!':
-+                              case NOT2:
-                               case '-':
-                               case ']':
+diff -ur mksh-56.orig/eval.c mksh-56/eval.c
+--- mksh-56.orig/eval.c        2017-08-12 22:10:26.321676398 +0200
++++ mksh-56/eval.c     2017-08-12 22:40:32.672676143 +0200
+@@ -1005,6 +1005,7 @@
+                               switch (ord(c)) {
+                               case ORD('['):
+                               case ORD('!'):
++                              case ORD(NOT2):
+                               case ORD('-'):
+                               case ORD(']'):
                                        /*
-diff -ur mksh-40.org//misc.c mksh-40/misc.c
---- mksh-40.org//misc.c        2011-06-12 16:45:58.000000000 +0200
-+++ mksh-40/misc.c     2011-07-07 18:28:39.015826686 +0200
-@@ -843,7 +843,7 @@
-       bool notp, found = false;
-       const unsigned char *orig_p = p;
+diff -ur mksh-56.orig/misc.c mksh-56/misc.c
+--- mksh-56.orig/misc.c        2017-08-12 22:10:26.321676398 +0200
++++ mksh-56/misc.c     2017-08-12 22:40:32.672676143 +0200
+@@ -966,7 +966,7 @@
+       char *subp;
  
--      if ((notp = tobool(ISMAGIC(*p) && *++p == '!')))
-+      if ((notp = tobool(ISMAGIC(*p) && (*++p == '!' || *p == NOT2))))
-               p++;
-       do {
-               c = *p++;
-diff -ur mksh-40.org//sh.h mksh-40/sh.h
---- mksh-40.org//sh.h  2011-06-12 16:59:09.000000000 +0200
-+++ mksh-40/sh.h       2011-07-07 18:29:16.346761511 +0200
-@@ -380,5 +380,6 @@
- #define MAGIC         (7)     /* prefix for *?[!{,} during expand */
- #define ISMAGIC(c)    ((unsigned char)(c) == MAGIC)
+       /* check for negation */
+-      if (ISMAGIC(p[0]) && ord(p[1]) == ORD('!')) {
++      if (ISMAGIC(p[0]) && (ord(p[1]) == ORD('!') || ord(p[1]) == ORD(NOT2))) {
+               p += 2;
+               negated = true;
+       }
+diff -ur mksh-56.orig/sh.h mksh-56/sh.h
+--- mksh-56.orig/sh.h  2017-08-12 22:10:26.325009789 +0200
++++ mksh-56/sh.h       2017-08-12 22:40:32.696009488 +0200
+@@ -550,6 +550,7 @@
+  */
+ #define MAGIC         KSH_BEL /* prefix for *?[!{,} during expand */
+ #define ISMAGIC(c)    (ord(c) == ORD(MAGIC))
 +#define NOT2          '^'
  
#define LINE          4096    /* input line size */
EXTERN const char *safe_prompt; /* safe prompt if PS1 substitution fails */
  
-diff -ur mksh-40.org//tree.c mksh-40/tree.c
---- mksh-40.org//tree.c        2011-05-29 04:19:21.000000000 +0200
-+++ mksh-40/tree.c     2011-07-07 18:30:12.088149284 +0200
-@@ -289,7 +289,7 @@
-               case CHAR:
-                       c = *wp++;
-                       if ((opmode & WDS_MAGIC) &&
--                          (ISMAGIC(c) || c == '[' || c == '!' ||
-+                          (ISMAGIC(c) || c == '[' || c == '!' || c == NOT2 ||
-                           c == '-' || c == ']' || c == '*' || c == '?'))
-                               shf_putc(MAGIC, shf);
-                       shf_putc(c, shf);
+diff -ur mksh-56.orig/check.t mksh-56/check.t
+--- mksh-56.orig/check.t       2017-08-12 22:10:26.321676398 +0200
++++ mksh-56/check.t    2017-08-12 22:41:46.886083258 +0200
+@@ -2438,7 +2438,7 @@
+       !bc +bc ,bc 0bc 1bc ^bc cbc
+       !bc +bc ,bc -bc 0bc 1bc ^bc cbc
+       abc bbc
+-      ^bc abc bbc
++      !bc +bc ,bc -bc 0bc 1bc ^bc cbc
+       +bc ,bc -bc
+       -bc 0bc 1bc
+ ---