]> git.marmaro.de Git - mmh/commitdiff
Return type of (*done)() changed to void. default_done() replaced by
authorJoel Reicher <jjr@panacea.null.org>
Sun, 4 Nov 2007 11:54:32 +0000 (11:54 +0000)
committerJoel Reicher <jjr@panacea.null.org>
Sun, 4 Nov 2007 11:54:32 +0000 (11:54 +0000)
exit(). All dead code "return 1" lines removed from *_done()s and replaced
by explicit "return 1" following done() calls in main()s (they should
never be reached). This should make cleaning up program termination
structures easier.

49 files changed:
ChangeLog
h/mh.h
sbr/done.c
uip/ali.c
uip/anno.c
uip/ap.c
uip/burst.c
uip/comp.c
uip/conflict.c
uip/dist.c
uip/dp.c
uip/flist.c
uip/fmtdump.c
uip/folder.c
uip/forw.c
uip/inc.c
uip/install-mh.c
uip/mark.c
uip/mhbuild.c
uip/mhbuildsbr.c
uip/mhfree.c
uip/mhl.c
uip/mhlist.c
uip/mhn.c
uip/mhparam.c
uip/mhparse.c
uip/mhpath.c
uip/mhshow.c
uip/mhstore.c
uip/mhtest.c
uip/msgchk.c
uip/msh.c
uip/packf.c
uip/pick.c
uip/post.c
uip/prompter.c
uip/rcvdist.c
uip/rcvpack.c
uip/rcvstore.c
uip/refile.c
uip/repl.c
uip/rmf.c
uip/rmm.c
uip/scan.c
uip/send.c
uip/sendsbr.c
uip/slocal.c
uip/sortm.c
uip/viamail.c

index 1412bf304487006e19258545886070986a7ea1ff..2b2254c8d3d4a357276c943de12f704402e8f591 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2007-11-04  Joel Reicher <joel@panacea.null.org>
+
+       * Changed done() link overriding to function pointer. Return type
+       is now void so that exit() can be used as done() callback. Dead
+       code return from all done()s removed, with return 1 in main()
+       following done() (should never be reached).
+
 2007-08-21  Josh Bressers <josh@bress.net>
 
        * Red Hat Bug #253342: inc.c, utils.c, utils.h: When inc is run with
diff --git a/h/mh.h b/h/mh.h
index bcfe6ae9d6ce7e770998c850a176f371af61780f..7cdbead2c44b9a380a616e39598c745ec7ea1839 100644 (file)
--- a/h/mh.h
+++ b/h/mh.h
@@ -336,7 +336,7 @@ extern char *vmhproc;
 extern char *whatnowproc;
 extern char *whomproc;
 
-extern int (*done) (int);
+extern void (*done) (int);
 
 #include <h/prototypes.h>
 
index bcc258ccf104cdc136b6ab00ec0d53113a81c61c..938fdb2d683d03db7d963aa5d3ffc1c67890d877 100644 (file)
 
 #include <h/mh.h>
 
-int (*done) (int) = default_done;
-
-int
-default_done (int status)
-{
-    exit (status);
-    return 1;  /* dead code to satisfy the compiler */
-}
+void (*done) (int) = exit;
index a8812c224890d096737538f7b5b35c39718d668f..8513092c461d37a09d8fdafe54f1b1c3e7d33193 100644 (file)
--- a/uip/ali.c
+++ b/uip/ali.c
@@ -170,7 +170,8 @@ main (int argc, char **argv)
        }
     }
 
-    return done (0);
+    done (0);
+    return 1;
 }
 
 static void
index 86fe3c3a8e320e258b0edfbb221d5b393bcaad5f..ee9dcd71486d3a9dc35ddd0478c0a90c8467af8b 100644 (file)
@@ -236,7 +236,8 @@ main (int argc, char **argv)
        else
            annotate (draft, comp, text, inplace, datesw, delete, append);
 
-       return (done(0));
+       done(0);
+       return 1;
     }
 
 #ifdef UCI
@@ -285,7 +286,8 @@ main (int argc, char **argv)
     seq_save (mp);     /* synchronize message sequences */
     folder_free (mp);  /* free folder/message structure */
     context_save ();   /* save the context file         */
-    return done (0);
+    done (0);
+    return 1;
 }
 
 static void
index 85683f933601723eacc9e1e2f15885eda3367ba3..ea2d36d776e039afe3e73fe06bfe0a0be185674e 100644 (file)
--- a/uip/ap.c
+++ b/uip/ap.c
@@ -151,7 +151,8 @@ main (int argc, char **argv)
     for (addrp = 0; addrs[addrp]; addrp++)
        status += process (addrs[addrp], width, normalize);
 
-    return done (status);
+    done (status);
+    return 1;
 }
 
 struct pqpair {
index 319918bb35f6ed3670412ee4b5e1a4fc4753cb5c..15756d30354cb26fae511fccb4917a38570b6afe 100644 (file)
@@ -189,7 +189,8 @@ main (int argc, char **argv)
     seq_save (mp);     /* synchronize message sequences */
     context_save ();   /* save the context file         */
     folder_free (mp);  /* free folder/message structure */
-    return done (0);
+    done (0);
+    return 1;
 }
 
 
index 67cf83bb502199f9e23733d462d20b489cddf188..9c915bf3e0efc6f58f7eb5df48169cc29268661d 100644 (file)
@@ -296,5 +296,6 @@ edit_it:
     if (nwhat)
        done (0);
     what_now (ed, nedit, use, drft, NULL, 0, NULLMP, NULL, 0, cwd);
-    return done (1);
+    done (1);
+    return 1;
 }
index 1713b15b1899e5b01827cda24465bd4ef7b32be3..8247ff0cf32912e97cdc6ce78849d8e77ecd18bd 100644 (file)
@@ -139,7 +139,8 @@ main (int argc, char **argv)
 #endif /* UCI */
     maildrops ();
 
-    return done (0);
+    done (0);
+    return 1;
 }
 
 
index d8c261da4c9dbf78d22ff9db200f988322695fbc..1effbb05bd00184a0bdee9bfe6497963c24c81a7 100644 (file)
@@ -285,5 +285,6 @@ try_it_again:
        done (0);
     what_now (ed, nedit, NOUSE, drft, msgnam, 1, mp,
        anot ? "Resent" : NULL, inplace, cwd);
-    return done (1);
+    done (1);
+    return 1;
 }
index c20e1ac8b77fd17610e2543d7e94e6cb416861bb..6b41bb627403708b2b87d13d549f741f0833fef5 100644 (file)
--- a/uip/dp.c
+++ b/uip/dp.c
@@ -136,7 +136,8 @@ main (int argc, char **argv)
        status += process (dates[datep], width);
 
     context_save ();   /* save the context file */
-    return done (status);
+    done (status);
+    return 1;
 }
 
 
index 97488bbb3094d89d922abd4d4b02680ebb0b231f..b5226ceaa8f97d8d0aa0d8b463de894578651a26 100644 (file)
@@ -276,7 +276,8 @@ main(int argc, char **argv)
     ScanFolders();
     qsort(folders, nFolders, sizeof(struct Folder), (qsort_comp) CompareFolders);
     PrintFolders();
-    return done (0);
+    done (0);
+    return 1;
 }
 
 /*
index cc9a589a04763707de2ef919a00351150d390d44..a590a0063529bdff1b52c222a3d06a7d076a48a2 100644 (file)
@@ -106,7 +106,8 @@ main (int argc, char **argv)
     ncomps = fmt_compile(nfs, &fmt);
 
     fmt_dump(fmt);
-    return done(0);
+    done(0);
+    return 1;
 }
 
 static void
index f04ae2fa0f837bf6efef4da255a794c96047d5c0..f50d3f51c4d51d8aba4619a068739acbbfc29d2f 100644 (file)
@@ -405,7 +405,8 @@ main (int argc, char **argv)
     print_folders();
 
     context_save ();   /* save the context file */
-    return done (0);
+    done (0);
+    return 1;
 }
 
 /*
index 17e78e981782ae09a824ae3e6e6387fa3c6ad24f..2d4f2d53deb22b2b2b75d0c9cea2eb35be81d3a1 100644 (file)
@@ -444,7 +444,8 @@ try_it_again:
        done (0);
     what_now (ed, nedit, NOUSE, drft, NULL, 0, mp,
        anot ? "Forwarded" : NULL, inplace, cwd);
-    return done (1);
+    done (1);
+    return 1;
 }
 
 
index f2d2e77901635e0f49c4196c037cd0af301e0e41..ef1b08febc408334e5467ca4db48f436b25be541 100644 (file)
--- a/uip/inc.c
+++ b/uip/inc.c
@@ -223,7 +223,7 @@ static FILE *in;
  */
 char *map_name(char *);
 
-static int inc_done(int);
+static void inc_done(int);
 #ifdef POP
 static int pop_action(char *);
 static int pop_pack(char *);
@@ -952,7 +952,8 @@ go_to_it:
     seq_setunseen (mp, 0);     /* set the Unseen-Sequence */
     seq_save (mp);             /* synchronize sequences   */
     context_save ();           /* save the context file   */
-    return done (0);
+    done (0);
+    return 1;
 }
 
 
@@ -989,7 +990,7 @@ cpymsg (FILE *in, FILE *out)
 #endif /* if 0 */
 
 
-static int
+static void
 inc_done (int status)
 {
 #ifdef POP
@@ -1003,7 +1004,6 @@ inc_done (int status)
         DROPGROUPPRIVS();
     }
     exit (status);
-    return 1;  /* dead code to satisfy the compiler */
 }
 
 #ifdef POP
index ec847fb4548e481bb7f9e43d40b4ce800cffbd0f..d3890938193bb7df30604b9cd4b15eb6c62b5bcf 100644 (file)
@@ -213,7 +213,8 @@ query:
            fprintf (out, "%s: %s\n", np->n_name, np->n_field);
     }
     fclose (out);
-    return done (0);
+    done (0);
+    return 1;
 }
 
 
index 4799b238214270edbae4e80ad3fb3de02f521a93..372568a0e6b637aa6e697b18ab9c8d535bb1b44c 100644 (file)
@@ -228,7 +228,8 @@ main (int argc, char **argv)
     context_replace (pfolder, folder); /* update current folder         */
     context_save ();                   /* save the context file         */
     folder_free (mp);                  /* free folder/message structure */
-    return done (0);
+    done (0);
+    return 1;
 }
 
 
index 15132eece4121407e176c0d4cbd4dbdf80050034..2776f7c8d15011915f1caffafb8a9a4b76332922 100644 (file)
@@ -100,7 +100,7 @@ static int unlink_infile  = 0;
 static char outfile[BUFSIZ];
 static int unlink_outfile = 0;
 
-static int unlink_done (int);
+static void unlink_done (int);
 
 /* mhbuildsbr.c */
 CT build_mime (char *);
@@ -381,11 +381,12 @@ main (int argc, char **argv)
     unlink_outfile = 0;
 
     free_content (ct);
-    return done (0);
+    done (0);
+    return 1;
 }
 
 
-static int
+static void
 unlink_done (int status)
 {
     /*
@@ -398,5 +399,4 @@ unlink_done (int status)
        unlink (outfile);
 
     exit (status);
-    return 1;  /* dead code to satisfy the compiler */
 }
index 2c101b94189ddec68ad9028c40ef1e00c2888e4a..041a14296df4e5481ca82203ae014979b8cf3d31 100644 (file)
@@ -244,7 +244,8 @@ pidcheck (int status)
 
     fflush (stdout);
     fflush (stderr);
-    return done (1);
+    done (1);
+    return 1;
 }
 
 
index 418e5c920a90ff205d86430036e61e41fa66e7ce..df0ee4658eb3f6af5c91c7502da3b3468b8cfe67 100644 (file)
@@ -25,7 +25,7 @@ void free_content (CT);
 void free_header (CT);
 void free_ctinfo (CT);
 void free_encoding (CT, int);
-int freects_done (int);
+void freects_done (int);
 
 /*
  * static prototypes
@@ -287,7 +287,7 @@ free_encoding (CT ct, int toplevel)
 }
 
 
-int
+void
 freects_done (int status)
 {
     CT *ctp;
@@ -297,5 +297,4 @@ freects_done (int status)
            free_content (*ctp);
 
     exit (status);
-    return 1;  /* dead code to satisfy the compiler */
 }
index 03eb49e8e332505a610683e62343f57f70d1bc8c..e37c3ba9dc90b9f3c89195421611d5a09be822e3 100644 (file)
--- a/uip/mhl.c
+++ b/uip/mhl.c
@@ -21,7 +21,8 @@ main (int argc, char **argv)
 #ifdef LOCALE
     setlocale(LC_ALL, "");
 #endif
-    return done (mhl (argc, argv));
+    done (mhl (argc, argv));
+    return 1;
 }
 
 
index 112c09840e621e56a43e6cfbc3c71840dcb30a8e..e8f8163b63ad0a83ba1f9a0f392ca05265fd4141 100644 (file)
@@ -110,7 +110,7 @@ void list_all_messages (CT *, int, int, int, int);
 /* mhfree.c */
 void free_content (CT);
 extern CT *cts;
-int freects_done (int);
+void freects_done (int);
 
 /*
  * static prototypes
@@ -373,7 +373,8 @@ do_cache:
        context_save ();                  /* save the context file  */
     }
 
-    return done (0);
+    done (0);
+    return 1;
 }
 
 
index 41eb33abcc76df144dec009020d0e049da53ea14..69554768c0ea205ef4ecf1163e99b262aef56292 100644 (file)
--- a/uip/mhn.c
+++ b/uip/mhn.c
@@ -198,7 +198,7 @@ void cache_all_messages (CT *);
 /* mhfree.c */
 void free_content (CT);
 extern CT *cts;
-int freects_done (int);
+void freects_done (int);
 
 /*
  * static prototypes
@@ -686,7 +686,8 @@ do_cache:
        context_save ();                  /* save the context file  */
     }
 
-    return done (0);
+    done (0);
+    return 1;
 }
 
 
index 0b60b03291bad25d0ca0618de19b09fe7e425f6b..f9f78c349e9ee62eae60f2b390b571704a91ae94 100644 (file)
@@ -181,7 +181,8 @@ main(int argc, char **argv)
        }
     }
     
-    return done (missed);
+    done (missed);
+    return 1;
 }
 
 
index 733048d820ef9c5410476713807618d13222cb4f..a34814416f52e3000a7bc2d4eab49995362a4f43 100644 (file)
@@ -209,7 +209,8 @@ pidcheck (int status)
 
     fflush (stdout);
     fflush (stderr);
-    return done (1);
+    done (1);
+    return 1;
 }
 
 
index 3974515d961016d72be74d013b96472c8413632a..c4fd935b815e9a9b96ded8da99ffd3cc0e0d1ddf 100644 (file)
@@ -123,5 +123,6 @@ main(int argc, char **argv)
     seq_save (mp);     /* synchronize message sequences */
     context_save ();   /* save the context file         */
     folder_free (mp);  /* free folder/message structure */
-    return done (0);
+    done (0);
+    return 1;
 }
index b7a097c1a8df08e57b02efd745024e0db3fe2c03..1383388d5f158462f7b23721f74a5355b645a4dd 100644 (file)
@@ -126,7 +126,7 @@ void show_all_messages (CT *);
 /* mhfree.c */
 void free_content (CT);
 extern CT *cts;
-int freects_done (int);
+void freects_done (int);
 
 /*
  * static prototypes
@@ -453,7 +453,8 @@ do_cache:
        context_save ();                  /* save the context file  */
     }
 
-    return done (0);
+    done (0);
+    return 1;
 }
 
 
index 4d1ebe099e27e3bcefb10010a4adc7dc8ae4762d..bcebb7f2729e6096fc3d20c75a12698958d0cc34 100644 (file)
@@ -104,7 +104,7 @@ void store_all_messages (CT *);
 /* mhfree.c */
 void free_content (CT);
 extern CT *cts;
-int freects_done (int);
+void freects_done (int);
 
 /*
  * static prototypes
@@ -385,7 +385,8 @@ do_cache:
        context_save ();                  /* save the context file  */
     }
 
-    return done (0);
+    done (0);
+    return 1;
 }
 
 
index 6771bdb825c9d351e51eb0a5c19078bda62eaffc..fa42cd271a2af2eeaf003a2f74997431291abcf4 100644 (file)
@@ -106,7 +106,7 @@ void flush_errors (void);
 /* mhfree.c */
 void free_content (CT);
 extern CT *cts;
-int freects_done (int);
+void freects_done (int);
 
 /*
  * static prototypes
@@ -364,7 +364,8 @@ do_cache:
        context_save ();                  /* save the context file  */
     }
 
-    return done (0);
+    done (0);
+    return 1;
 }
 
 
index 872dc2e152fc1fe17dd31d82a6e8c069ae14bfbf..1a59a3bd7d02c9f13a6c43d69441cf7ad456eb8b 100644 (file)
@@ -327,7 +327,8 @@ main (int argc, char **argv)
     }          /* host == NULL */
 #endif
 
-    return done (status);
+    done (status);
+    return 1;
 }
 
 
index 3f8a7ab0291d5530c689d225265b0dce38c24748..6d6fbca2fed46b98d27cf4c33dca7aa3d81e865c 100644 (file)
--- a/uip/msh.c
+++ b/uip/msh.c
@@ -413,7 +413,8 @@ main (int argc, char **argv)
 
     m_reset ();
     
-    return done (0);
+    done (0);
+    return 1;
 }
 
 
index 0183da65355480d8428396c3c2e8962de6a9a86c..fb8871d97dae7afb31570629a6152d7f594696c6 100644 (file)
@@ -33,7 +33,7 @@ static int md = NOTOK;
 static int mbx_style = MBOX_FORMAT;
 static int mapping = 0;
 
-static int mbxclose_done(int);
+static void mbxclose_done(int);
 
 char *file = NULL;
 
@@ -179,13 +179,13 @@ main (int argc, char **argv)
     seq_save (mp);
     context_save ();                   /* save the context file         */
     folder_free (mp);                  /* free folder/message structure */
-    return done (0);
+    done (0);
+    return 1;
 }
 
-static int
+static void
 mbxclose_done (int status)
 {
     mbx_close (file, md);
     exit (status);
-    return 1;  /* dead code to satisfy the compiler */
 }
index afbcf88cabc79009b8b0be5ae598b7851942e6a9..ad356e3915ae7f2e56f55090d8d29b29b40057d6 100644 (file)
@@ -68,7 +68,7 @@ static struct swit switches[] = {
 
 static int listsw = -1;
 
-static int putzero_done (int);
+static void putzero_done (int);
 
 int
 main (int argc, char **argv)
@@ -286,15 +286,15 @@ main (int argc, char **argv)
     seq_save (mp);                     /* synchronize message sequences */
     context_save ();                   /* save the context file         */
     folder_free (mp);                  /* free folder/message structure */
-    return done (0);
+    done (0);
+    return 1;
 }
 
 
-static int
+static void
 putzero_done (int status)
 {
     if (listsw && status && !isatty (fileno (stdout)))
        printf ("0\n");
     exit (status);
-    return 1;  /* dead code to satisfy the compiler */
 }
index d99da1fd627ec86ee9380d7594212699a77e3452..e3b6229dd0071946d346a5c8837f22da2dc69ae2 100644 (file)
@@ -639,7 +639,8 @@ main (int argc, char **argv)
     if (verbose)
        printf (partno ? "Partial Message #%s Processed\n" : "Message Processed\n",
                partno);
-    return done (0);
+    done (0);
+    return 1;
 }
 
 
index fd10aca29fb273277cb31ec1ddd346addafe91b4..35f6860a4ac49536a06f085991d56daf24b09294 100644 (file)
@@ -400,7 +400,8 @@ no_body:
     unlink (tmpfil);
 
     context_save ();   /* save the context file */
-    return done (0);
+    done (0);
+    return 1;
 }
 
 
index 1667232c8a22436dcb9233a69f37a5ef1deda092..b0a360977bfae8aa13b2b257be0be6d792efee78 100644 (file)
@@ -34,7 +34,7 @@ static char tmpfil[BUFSIZ] = "";
  * prototypes
  */
 static void rcvdistout (FILE *, char *, char *);
-static int unlink_done (int);
+static void unlink_done (int);
 
 
 int
@@ -270,7 +270,7 @@ finished: ;
 }
 
 
-static int
+static void
 unlink_done (int status)
 {
     if (backup[0])
@@ -281,5 +281,4 @@ unlink_done (int status)
        unlink (tmpfil);
 
     exit (status ? RCV_MBX : RCV_MOK);
-    return 1;  /* dead code to satisfy the compiler */
 }
index 410267b6d7dccc460f023a5aa20f6b7cfd5da893..f03fc9953a1dfaaa09759ffd391fa1fe9b0c620f 100644 (file)
@@ -103,5 +103,6 @@ main (int argc, char **argv)
     if (mbx_close (file, md) == NOTOK)
        done (RCV_MBX);
 
-    return done (RCV_MOK);
+    done (RCV_MOK);
+    return 1;
 }
index 3e0961e51a1ddc6ddd6905a856b956dc7dfdb55e..493badebc2eec2dd82ca23b9fae9c442c3e4f492 100644 (file)
@@ -48,7 +48,7 @@ static struct swit switches[] = {
  */
 static char *tmpfilenam = NULL;
 
-static int unlink_done(int);
+static void unlink_done(int);
 
 int
 main (int argc, char **argv)
@@ -225,17 +225,17 @@ main (int argc, char **argv)
     unlink (tmpfilenam);       /* remove temporary file                  */
     tmpfilenam = NULL;
 
-    return done (0);
+    done (0);
+    return 1;
 }
 
 /*
  * Clean up and exit
  */
-static int
+static void
 unlink_done(int status)
 {
     if (tmpfilenam && *tmpfilenam)
        unlink (tmpfilenam);
     exit (status);
-    return 1;  /* dead code to satisfy the compiler */
 }
index 0b3afe12b357a33df9c491eb7686f5ca10029aa3..7bc6d0b92b221ea7bdf023da0493d6267e6a7f5c 100644 (file)
@@ -266,7 +266,8 @@ main (int argc, char **argv)
     context_replace (pfolder, folder); /* update current folder   */
     context_save ();                   /* save the context file   */
     folder_free (mp);                  /* free folder structure   */
-    return done (0);
+    done (0);
+    return 1;
 }
 
 
index 7a1aca18b6f287fbba22527575fae561772b2802..4584b6743a7f5a51d02b53e078c1476621231664 100644 (file)
@@ -442,7 +442,8 @@ try_it_again:
        done (0);
     what_now (ed, nedit, NOUSE, drft, msg, 0, mp,
            anot ? "Replied" : NULL, inplace, cwd);
-    return done (1);
+    done (1);
+    return 1;
 }
 
 void
index 1cacbc472d0d266915aa1f1cb453a35ab4732646..c3dcc919491436441d9a1f6a90cb0c3063124b5a 100644 (file)
--- a/uip/rmf.c
+++ b/uip/rmf.c
@@ -122,7 +122,8 @@ main (int argc, char **argv)
        }
     }
     context_save ();   /* save the context file */
-    return done (0);
+    done (0);
+    return 1;
 }
 
 static int
index b1e887e7103591258b39de7073bc7dc330b8bd05..15302896d629f10b393d70e7a6895ce5bc1e7e39 100644 (file)
--- a/uip/rmm.c
+++ b/uip/rmm.c
@@ -127,5 +127,6 @@ main (int argc, char **argv)
     context_replace (pfolder, folder); /* update current folder   */
     context_save ();                   /* save the context file   */
     folder_free (mp);                  /* free folder structure   */
-    return done (0);
+    done (0);
+    return 1;
 }
index 05f8bf88c78aad6ad439fecc04eac7b04aefaff9..31aa245f1cfd7670ae47265bdc0643579986af17 100644 (file)
@@ -326,5 +326,6 @@ main (int argc, char **argv)
     if (clearflag)
        clear_screen ();
 
-    return done (0);
+    done (0);
+    return 1;
 }
index 784947215145d20070de06b9ecd2a7310e4dcabc..196af625a9aaf0a7b587fa15a38ff41038776f31 100644 (file)
@@ -473,5 +473,6 @@ go_to_it:
     }
 
     context_save ();   /* save the context file */
-    return done (status);
+    done (status);
+    return 1;
 }
index cb6bb3f784b1b24512a89537f8daa43df060e909..877538bfb70d2cafd83c2c2630b4334b4db19804 100644 (file)
@@ -60,7 +60,7 @@ char *getusername (void);
 /*
  * static prototypes
  */
-static int armed_done (int);
+static void armed_done (int);
 static void alert (char *, int);
 static int tmp_fd (void);
 static void anno (int, struct stat *);
@@ -153,7 +153,7 @@ sendsbr (char **vec, int vecp, char *drft, struct stat *st, int rename_drft, cha
        break;
     }
 
-    done=default_done;
+    done=exit;
     if (distfile)
        unlink (distfile);
 
@@ -1074,11 +1074,10 @@ oops:
 }
 
 
-static int
+static void
 armed_done (int status)
 {
     longjmp (env, status ? status : NOTOK);
 
     exit (status);
-    return 1;  /* dead code to satisfy the compiler */
 }
index 08a3e28b7d8c4d5e2b1cfe80f464766b98e54c45..1396cc29e850b285bc3098fbe7b73776c774337f 100644 (file)
@@ -412,7 +412,8 @@ main (int argc, char **argv)
     /* deliver the message */
     status = localmail (fd, mdlvr);
 
-    return done (status != -1 ? RCV_MOK : RCV_MBX);
+    done (status != -1 ? RCV_MOK : RCV_MBX);
+    return 1;
 }
 
 
index 65291ce87bd126aec272f6873f22154c2913ebf2..212b441659db00d51dfcfdbf63fd119fada04eee 100644 (file)
@@ -285,7 +285,8 @@ main (int argc, char **argv)
     seq_save (mp);                     /* synchronize message sequences */
     context_save ();                   /* save the context file         */
     folder_free (mp);                  /* free folder/message structure */
-    return done (0);
+    done (0);
+    return 1;
 }
 
 static int
index 859dfafa645fd8296093a556be7f4cfc1749e659..04a76d2f50f255f8910683210aa4ee00f9ae84c3 100644 (file)
@@ -248,5 +248,6 @@ via_mail (char *mailsw, char *subjsw, char *parmsw, char *descsw,
     fclose (fp);
     if (unlink (tmpfil) == -1)
        advise (NULL, "unable to remove temp file %s", tmpfil);
-    return done (status);
+    done (status);
+    return 1;
 }