summaryrefslogtreecommitdiff
path: root/mail
diff options
context:
space:
mode:
authorSergey Poznyakoff <gray@gnu.org.ua>2004-08-24 07:59:53 +0000
committerSergey Poznyakoff <gray@gnu.org.ua>2004-08-24 07:59:53 +0000
commita47b303b1a6187001cfd5bc5ec6df25d6f6ffb98 (patch)
tree8d118d5ff33456f9d9b95a20e124da00be1c29cf /mail
parent3fe09d98a3d6c73a909bfc8efcb75c8246ff2904 (diff)
downloadmailutils-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.c8
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;

Return to:

Send suggestions and report system problems to the System administrator.