about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--Src/params.c4
2 files changed, 6 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 65ef5cc90..ec784d0ce 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,4 +1,6 @@
-2017-03-08  Barton E. Schaefer  <schaefer@brasslantern.com>
+2017-03-08  Barton E. Schaefer  <schaefer@zsh.org>
+
+	* 40799: Src/params.c: fix $- expansion partly broken by 40760
 
 	* 40763: Src/Zle/compmatch.c, Src/Zle/computil.c, Src/utils.c:
 	count wide characters and Cmatcher pointers more sanely in
diff --git a/Src/params.c b/Src/params.c
index b89fb74eb..785b9ead7 100644
--- a/Src/params.c
+++ b/Src/params.c
@@ -1987,7 +1987,9 @@ fetchvalue(Value v, char **pptr, int bracks, int flags)
 	*s++ = '$';
     else if (c == Star)
 	*s++ = '*';
-    else if (c == '#' || c == '-' || c == '?' || c == '$' ||
+    else if (IS_DASH(c))
+	*s++ = '-';
+    else if (c == '#' || c == '?' || c == '$' ||
 	     c == '!' || c == '@' || c == '*')
 	s++;
     else