aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--toys/other/factor.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/toys/other/factor.c b/toys/other/factor.c
index 0e07d714..f0e69c5d 100644
--- a/toys/other/factor.c
+++ b/toys/other/factor.c
@@ -29,8 +29,9 @@ static void factor(char *s)
if (*s=='-') dash = *s++;
if (!*s) return;
+ errno = 0;
l = strtoull(s, &s, 0);
- if (*s && !isspace(*s)) {
+ if (errno || (*s && !isspace(*s))) {
error_msg("%s: not integer", err);
while (*s && !isspace(*s)) s++;
continue;