summaryrefslogtreecommitdiffstats
path: root/contrib/awk/builtin.c
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/awk/builtin.c')
-rw-r--r--contrib/awk/builtin.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/contrib/awk/builtin.c b/contrib/awk/builtin.c
index 89babb3..fc9365b 100644
--- a/contrib/awk/builtin.c
+++ b/contrib/awk/builtin.c
@@ -2104,9 +2104,11 @@ size_t len;
retval = (retval * 16) + val;
}
} else if (*str == '0') {
+ if (strchr(str, '8') != NULL || strchr(str, '9') != NULL)
+ goto decimal;
for (; len > 0; len--) {
- if (! isdigit(*str) || *str == '8' || *str == '9')
- goto decimal;
+ if (! isdigit(*str))
+ goto done;
retval = (retval * 8) + (*str - '0');
str++;
}
OpenPOWER on IntegriCloud