about summary refs log tree commit diff
diff options
context:
space:
mode:
authorPeter Stephenson <p.stephenson@samsung.com>2019-03-19 13:44:47 +0000
committerPeter Stephenson <p.stephenson@samsung.com>2019-03-19 13:44:47 +0000
commit73b29f079b50412700727e0f77991506c03d19fe (patch)
tree786d08db085967f0f7d780aa96d493cf92ae0b80
parent6331772c5b35ff9d4deb80ff9461d04b5e0d2db5 (diff)
downloadzsh-73b29f079b50412700727e0f77991506c03d19fe.tar.gz
zsh-73b29f079b50412700727e0f77991506c03d19fe.tar.xz
zsh-73b29f079b50412700727e0f77991506c03d19fe.zip
44142: Fix hist_reduce_spaces bug.
When there were as an unstripped comment on the line the
pointer for stripping spaces could be bogus.  Don't do
any editing in that case.
-rw-r--r--ChangeLog5
-rw-r--r--Src/hist.c5
2 files changed, 8 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 0677bf36f..2196db3de 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2019-03-19  Peter Stephenson  <p.stephenson@samsung.com>
+
+	* 44142: Src/hist.c: fix bug stripping spaces on line with only
+	comment.
+
 2019-03-18  Matthew Martin  <phy1729@gmail.com>
 
 	* 44135: Completion/Unix/Command/_chmod, Doc/Zsh/mod_files.yo,
diff --git a/Src/hist.c b/Src/hist.c
index f7e53de74..901cd3b1a 100644
--- a/Src/hist.c
+++ b/Src/hist.c
@@ -1198,8 +1198,9 @@ histreduceblanks(void)
 	chline[pos] = '\0';
     } else {
 	ptr = chline + pos;
-	while ((*ptr++ = *lastptr++))
-	    ;
+	if (ptr < lastptr)
+	    while ((*ptr++ = *lastptr++))
+		;
     }
 }