From e709eb829448ce040087a3fc5481db6bfcaae212 Mon Sep 17 00:00:00 2001 From: "Arnold D. Robbins" Date: Wed, 3 Aug 2022 13:00:54 +0300 Subject: [PATCH] Smal bug fix in builtin.c. Reference:https://git.savannah.gnu.org/gitweb/?p=gawk.git;a=commitdiff;h=e709eb829448ce040087a3fc5481db6bfcaae212 Conflict:delete changlog --- builtin.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/builtin.c b/builtin.c index d7ba82c..3eee9b9 100644 --- a/builtin.c +++ b/builtin.c @@ -963,7 +963,10 @@ check_pos: s1++; n0--; } - if (val >= num_args) { + // val could be less than zero if someone provides a field width + // so large that it causes integer overflow. Mainly fuzzers do this, + // but let's try to be good anyway. + if (val < 0 || val >= num_args) { toofew = true; break; } -- 2.27.0