* patch #3966: Create a mh_xmalloc function to prevent mistakes when
[mmh] / uip / packf.c
index ec2f975..9f71b92 100644 (file)
@@ -3,11 +3,16 @@
  * packf.c -- pack a nmh folder into a file
  *
  * $Id$
+ *
+ * This code is Copyright (c) 2002, by the authors of nmh.  See the
+ * COPYRIGHT file in the root directory of the nmh distribution for
+ * complete copyright information.
  */
 
 #include <h/mh.h>
 #include <fcntl.h>
 #include <h/dropsbr.h>
+#include <h/utils.h>
 #include <errno.h>
 
 /*
@@ -27,12 +32,10 @@ static struct swit switches[] = {
 #define VERSIONSW      3
     { "version", 0 },
 #define        HELPSW         4
-    { "help", 4 },
+    { "help", 0 },
     { NULL, 0 }
 };
 
-extern int errno;
-
 static int md = NOTOK;
 static int mbx_style = MBOX_FORMAT;
 static int mapping = 0;
@@ -65,8 +68,7 @@ main (int argc, char **argv)
      */
     nummsgs = 0;
     maxmsgs = MAXMSGS;
-    if (!(msgs = (char **) malloc ((size_t) (maxmsgs * sizeof(*msgs)))))
-       adios (NULL, "unable to allocate storage");
+    msgs = (char **) mh_xmalloc ((size_t) (maxmsgs * sizeof(*msgs)));
 
     /*
      * Parse arguments
@@ -197,12 +199,13 @@ main (int argc, char **argv)
     seq_save (mp);
     context_save ();                   /* save the context file         */
     folder_free (mp);                  /* free folder/message structure */
-    done (0);
+    return done (0);
 }
 
-void
+int
 done (int status)
 {
     mbx_close (file, md);
     exit (status);
+    return 1;  /* dead code to satisfy the compiler */
 }