From: Marco d'Itri Date: Thu, 27 Jan 2005 18:25:40 +0000 (+0000) Subject: Don't segfault when invoked without any arguments. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=27b270ab29a78571d30b8ca4c19f7ff0eb826fe6;p=neomutt Don't segfault when invoked without any arguments. --- diff --git a/pgpewrap.c b/pgpewrap.c index d88948382..c15864fc2 100644 --- a/pgpewrap.c +++ b/pgpewrap.c @@ -10,10 +10,19 @@ #include #include +void print_usage(const char *progname) { + fprintf(stderr, "Command line usage: %s [flags] -- prefix [recipients]\n", progname); + exit(1); +} + int main(int argc, char **argv) { char **opts, **opt, *pfx; int i; + if (argc <= 1) { + print_usage(argv[0]); + } + opts = malloc((2 * argc + 1) * sizeof (* opts)); /* __MEM_CHECKED__ */ if(!opts) { perror(argv[0]); @@ -36,8 +45,7 @@ int main(int argc, char **argv) { if(!strcmp(argv[i], "--")) { i += 2; if(i > argc) { - fprintf(stderr, "Command line usage: %s [flags] -- prefix [recipients]\n", argv[0]); - return 1; + print_usage(argv[0]); } pfx = argv[i-1]; }