diff options
-rw-r--r-- | ChangeLog | 3 | ||||
-rw-r--r-- | Src/hist.c | 10 |
2 files changed, 11 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog index 16ce32b54..ca290ea2a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2023-06-08 Jun-ichi Takimoto <takimoto-j@kba.biglobe.ne.jp> + * 51826: Src/hist.c: correctly handle metafied null character + when reading history file + * Stephane: 51817: Completion/BSD/Command/_rcctl: protect ':' in _rcctl (was in 51817 but missed in commit 0577daf) diff --git a/Src/hist.c b/Src/hist.c index b4dc53d90..bfbcd6ede 100644 --- a/Src/hist.c +++ b/Src/hist.c @@ -3803,8 +3803,14 @@ histsplitwords(char *lineptr, short **wordsp, int *nwordsp, int *nwordposp, zrealloc(words, nwords*sizeof(*words)); } words[nwordpos++] = lineptr - start; - while (*lineptr && !inblank(*lineptr)) - lineptr++; + while (*lineptr) { + if (*lineptr == Meta && lineptr[1]) + lineptr += 2; + else if (!inblank(*lineptr)) + lineptr++; + else + break; + } words[nwordpos++] = lineptr - start; } } while (*lineptr); |