]> granicus.if.org Git - neomutt/commitdiff
Don't segfault when invoked without any arguments.
authorMarco d'Itri <md@Linux.IT>
Thu, 27 Jan 2005 18:25:40 +0000 (18:25 +0000)
committerMarco d'Itri <md@Linux.IT>
Thu, 27 Jan 2005 18:25:40 +0000 (18:25 +0000)
pgpewrap.c

index d88948382aa64088a25d0cf3aba442009c554c4c..c15864fc276b880ae70843c4ea42773749657a46 100644 (file)
 #include <unistd.h>
 #include <string.h>
 
+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];
                }