X-Git-Url: http://git.marmaro.de/?p=mmh;a=blobdiff_plain;f=uip%2Frcvstore.c;h=21f6c776d8bd4ad6d2af65a73f5c08b440c01796;hp=7b15491f36292d74dbea558d88fb15c0700403c7;hb=d8916ff5d389de5ab225cd6f40aeda1b285d0f28;hpb=a753601a3811c10e433dbb04d8211a3df4b99012 diff --git a/uip/rcvstore.c b/uip/rcvstore.c index 7b15491..21f6c77 100644 --- a/uip/rcvstore.c +++ b/uip/rcvstore.c @@ -48,6 +48,7 @@ static struct swit switches[] = { */ static char *tmpfilenam = NULL; +static void unlink_done(int) NORETURN; int main (int argc, char **argv) @@ -60,6 +61,8 @@ main (int argc, char **argv) struct msgs *mp; struct stat st; + done=unlink_done; + #ifdef LOCALE setlocale(LC_ALL, ""); #endif @@ -134,7 +137,7 @@ main (int argc, char **argv) if (folder) adios (NULL, "only one folder at a time!"); else - folder = path (cp + 1, *cp == '+' ? TFOLDER : TSUBCWF); + folder = pluspath (cp); } else { adios (NULL, "usage: %s [+folder] [switches]", invo_name); } @@ -222,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 */ -int -done(int status) +static void +unlink_done(int status) { if (tmpfilenam && *tmpfilenam) unlink (tmpfilenam); exit (status); - return 1; /* dead code to satisfy the compiler */ }