X-Git-Url: https://git.tld-linux.org/?p=packages%2Fmksh.git;a=blobdiff_plain;f=mksh-circumflex.patch;h=36ad8179be415aaaf947633c2a772b54b4e19bcb;hp=8aed985fc61f01e1a4b90c2701baa6e8aa7bcf96;hb=d7634fca1c726c672daab14db9e474a97594bfe1;hpb=5a2b33e1e24f11b9ead84554444f9210d1b85211 diff --git a/mksh-circumflex.patch b/mksh-circumflex.patch index 8aed985..36ad817 100644 --- a/mksh-circumflex.patch +++ b/mksh-circumflex.patch @@ -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 + ---