Removed msh, vmh and wmh.
[mmh] / uip / mhn.c
index 809568c..a7644a3 100644 (file)
--- a/uip/mhn.c
+++ b/uip/mhn.c
@@ -2,8 +2,6 @@
 /*
  * mhn.c -- display, list, cache, or store the contents of MIME messages
  *
- * $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.
@@ -126,7 +124,6 @@ static struct swit switches[] = {
 
 
 /* mhparse.c */
-extern int checksw;
 extern char *tmp;      /* directory to place temp files */
 
 /* mhcachesbr.c */
@@ -157,9 +154,6 @@ extern int userrs;
 int debugsw = 0;
 int verbosw = 0;
 
-/* The list of top-level contents to display */
-CT *cts = NULL;
-
 /*
  * variables for mhbuild (mhn -build)
  */
@@ -200,6 +194,8 @@ void cache_all_messages (CT *);
 
 /* mhfree.c */
 void free_content (CT);
+extern CT *cts;
+void freects_done (int) NORETURN;
 
 /*
  * static prototypes
@@ -220,6 +216,8 @@ main (int argc, char **argv)
     CT ct, *ctp;
     FILE *fp;
 
+    done=freects_done;
+
 #ifdef LOCALE
     setlocale(LC_ALL, "");
 #endif
@@ -685,7 +683,8 @@ do_cache:
        context_save ();                  /* save the context file  */
     }
 
-    return done (0);
+    done (0);
+    return 1;
 }
 
 
@@ -702,17 +701,3 @@ pipeser (int i)
     done (1);
     /* NOTREACHED */
 }
-
-
-int
-done (int status)
-{
-    CT *ctp;
-
-    if ((ctp = cts))
-       for (; *ctp; ctp++)
-           free_content (*ctp);
-
-    exit (status);
-    return 1;  /* dead code to satisfy the compiler */
-}