diff options
author | Sergey Poznyakoff <gray@gnu.org.ua> | 2004-08-24 07:59:53 +0000 |
---|---|---|
committer | Sergey Poznyakoff <gray@gnu.org.ua> | 2004-08-24 07:59:53 +0000 |
commit | a47b303b1a6187001cfd5bc5ec6df25d6f6ffb98 (patch) | |
tree | 8d118d5ff33456f9d9b95a20e124da00be1c29cf /mail | |
parent | 3fe09d98a3d6c73a909bfc8efcb75c8246ff2904 (diff) | |
download | mailutils-a47b303b1a6187001cfd5bc5ec6df25d6f6ffb98.tar.gz mailutils-a47b303b1a6187001cfd5bc5ec6df25d6f6ffb98.tar.bz2 |
(util_do_command): Fixed coredump on unparseable input strings.
Diffstat (limited to 'mail')
-rw-r--r-- | mail/util.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/mail/util.c b/mail/util.c index 358a39a69..a0bb4e9b6 100644 --- a/mail/util.c +++ b/mail/util.c @@ -121,7 +121,7 @@ util_do_command (const char *c, ...) return 0; } - if (argcv_get (cmd, delim, NULL, &argc, &argv) == 0) + if (argcv_get (cmd, delim, NULL, &argc, &argv) == 0 && argc > 0) { struct mail_command_entry entry; char *p; @@ -152,9 +152,13 @@ util_do_command (const char *c, ...) } else { - util_error (_("Unknown command: %s"), argv[0]); + if (argc) + util_error (_("Unknown command: %s"), argv[0]); + else + util_error (_("Invalid command")); status = 1; } + argcv_free (argc, argv); return status; |