summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBart Schaefer <schaefer@zsh.org>2025-07-13 10:26:09 -0700
committerBart Schaefer <schaefer@zsh.org>2025-07-13 10:26:09 -0700
commit9dcd08e585d6670f07a0328607961daa552eb6e1 (patch)
treebeff3ff8ce2971e50ddcfd7f84c0e2c586df130c
parent53807: new completion for nettop command (diff)
downloadzsh-9dcd08e585d6670f07a0328607961daa552eb6e1.tar
zsh-9dcd08e585d6670f07a0328607961daa552eb6e1.tar.gz
zsh-9dcd08e585d6670f07a0328607961daa552eb6e1.tar.bz2
zsh-9dcd08e585d6670f07a0328607961daa552eb6e1.tar.lz
zsh-9dcd08e585d6670f07a0328607961daa552eb6e1.tar.xz
zsh-9dcd08e585d6670f07a0328607961daa552eb6e1.tar.zst
zsh-9dcd08e585d6670f07a0328607961daa552eb6e1.zip
53820: detect integer overflow when parsing history word designators.
-rw-r--r--ChangeLog5
-rw-r--r--Src/hist.c5
2 files changed, 10 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 12797ff88..70f84ae15 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2025-07-13 Bart Schaefer <schaefer@zsh.org>
+
+ * 53820: Src/hist.c: detect integer overflow when parsing
+ history word designators.
+
2025-06-01 Jun-ichi Takimoto <takimoto-j@kba.biglobe.ne.jp>
* 53807: Completion/Darwin/Command/_nettop: new completion
diff --git a/Src/hist.c b/Src/hist.c
index 00bdbb2b8..4e4a20e31 100644
--- a/Src/hist.c
+++ b/Src/hist.c
@@ -1800,6 +1800,11 @@ getargspec(int argc, int marg, int evset)
ret = 0;
while (idigit(c)) {
ret = ret * 10 + c - '0';
+ if (ret < 0) {
+ herrflush();
+ zerr("no such word in event");
+ return -2;
+ }
c = ingetc();
}
inungetc(c);