From 3aa6709272d6c74300b70d8371b135289a8d8c9d Mon Sep 17 00:00:00 2001 From: "Arnold D. Robbins" Date: Sat, 9 Jan 2021 22:24:07 +0200 Subject: Fix conversion of 018 to decimal. Add a test. --- builtin.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'builtin.c') diff --git a/builtin.c b/builtin.c index fc5dc31e..e28c35ef 100644 --- a/builtin.c +++ b/builtin.c @@ -3,7 +3,7 @@ */ /* - * Copyright (C) 1986, 1988, 1989, 1991-2020, + * Copyright (C) 1986, 1988, 1989, 1991-2021, * the Free Software Foundation, Inc. * * This file is part of GAWK, the GNU implementation of the @@ -3684,7 +3684,9 @@ nondec2awknum(char *str, size_t len, char **endptr) if (endptr) *endptr = str; } else if (len >= 1 && *str == '0') { - for (; len > 0; len--) { + int l; + // preserve len in case we go to decimal + for (l = len; l > 0; l--) { if (! isdigit((unsigned char) *str)) { if (endptr) *endptr = str; -- cgit v1.2.3