summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog3
-rw-r--r--Src/hist.c1
-rw-r--r--Test/D02glob.ztst4
3 files changed, 8 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 9fcd6432e..5913101a8 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
2025-11-16 dana <dana@dana.is>
+ * 53671: Src/hist.c, Test/D02glob.ztst: hist: untokenise input
+ to :A and :P
+
* 53578 (tweaked): Src/Zle/computil.c, Src/builtin.c,
Src/exec.c: silence gcc warnings
diff --git a/Src/hist.c b/Src/hist.c
index 8334b1ae5..ce5f7c20e 100644
--- a/Src/hist.c
+++ b/Src/hist.c
@@ -1999,6 +1999,7 @@ chrealpath(char **junkptr, char mode, int use_heap)
if (**junkptr != '/')
return 0;
+ untokenize(*junkptr);
unmetafy(*junkptr, NULL);
lastpos = strend(*junkptr);
diff --git a/Test/D02glob.ztst b/Test/D02glob.ztst
index 24494d274..1526b6191 100644
--- a/Test/D02glob.ztst
+++ b/Test/D02glob.ztst
@@ -707,6 +707,10 @@
0:modifier ':P' with path too long
>16001
+ print -r ${${:-/a-b=c}:P}
+0:modifier ':P' with tokenised input
+>/a-b=c
+
foo=a
value="ac"
print ${value//[${foo}b-z]/x}