]> git.ipfire.org Git - thirdparty/util-linux.git/commitdiff
lsfd: (filter) improve error message
authorMasatake YAMATO <yamato@redhat.com>
Sat, 3 Jun 2023 20:44:38 +0000 (05:44 +0900)
committerMasatake YAMATO <yamato@redhat.com>
Sat, 3 Jun 2023 22:40:42 +0000 (07:40 +0900)
Signed-off-by: Masatake YAMATO <yamato@redhat.com>
misc-utils/lsfd-filter.c

index a3d44bb35c1a052b5c331e179fd2a7c0e1702b90..b5e12a4022669ce7295c786969d63312ed97afd7 100644 (file)
@@ -481,6 +481,9 @@ static int parser_read_dec(struct parser *parser, struct token *token)
        errno = 0;
        unsigned long long num = strtoull(token->val.str, NULL, 10);
        rc = errno;
+       if (rc)
+               return rc;
+
        free(token->val.str);
        token->val.num = num;
        return rc;
@@ -636,9 +639,12 @@ static struct token *parser_read(struct parser *parser)
                } else if (isdigit((unsigned char)c)) {
                        t->type = TOKEN_DEC;
                        xstrputc(&t->val.str, c);
-                       if (parser_read_dec(parser, t) != 0)
+                       if (parser_read_dec(parser, t) != 0) {
                                snprintf(parser->errmsg, sizeof(parser->errmsg),
-                                        _("error: failed to convert input to number"));
+                                        _("error: failed to convert input to number: %s"),
+                                        t->val.str);
+                               free(t->val.str);
+                       }
                        break;
                }
                snprintf(parser->errmsg, sizeof(parser->errmsg),