X-Git-Url: http://git.marmaro.de/?p=mmh;a=blobdiff_plain;f=uip%2Fmhpath.c;h=47146f4f2b93e9bb451171552d64b5f9e070b32d;hp=605d13c37a70abaaa3218bee6cb1f8648b5d9328;hb=2abb9a7cfb0930e27062088734d306e7d78e4cc2;hpb=32b2354dbaf4bf934936eb5b102a4a3d2fdd209a diff --git a/uip/mhpath.c b/uip/mhpath.c index 605d13c..47146f4 100644 --- a/uip/mhpath.c +++ b/uip/mhpath.c @@ -8,6 +8,8 @@ #include #include +#include +#include static struct swit switches[] = { #define VERSIONSW 0 @@ -27,9 +29,7 @@ main(int argc, char **argv) struct msgs_array msgs = { 0, 0, NULL }; struct msgs *mp; -#ifdef LOCALE setlocale(LC_ALL, ""); -#endif invo_name = mhbasename(argv[0]); /* read user profile/context */ @@ -46,17 +46,17 @@ main(int argc, char **argv) switch (smatch(++cp, switches)) { case AMBIGSW: ambigsw(cp, switches); - done(1); + exit(1); //sysexits.h EX_TEMPFAIL case UNKWNSW: adios(NULL, "-%s unknown", cp); case HELPSW: snprintf(buf, sizeof(buf), "%s [+folder] [msgs] [switches]", invo_name); print_help(buf, switches, 1); - done(1); + exit(0); //sysexits.h EX_OK case VERSIONSW: print_version(invo_name); - done(1); + exit(0); //sysexits.h EX_OK } } if (*cp == '+' || *cp == '@') { @@ -75,7 +75,7 @@ main(int argc, char **argv) /* If no messages are given, print folder pathname */ if (!msgs.size) { printf("%s\n", maildir); - done(0); + exit(0); //sysexits.h EX_OK } if (chdir(maildir) == NOTOK) @@ -110,9 +110,11 @@ main(int argc, char **argv) mp->msgflags |= ALLOW_BEYOND; /* allow the beyond sequence */ /* parse all the message ranges/sequences and set SELECTED */ - for (i = 0; i < msgs.size; i++) - if (!m_convert(mp, msgs.msgs[i])) - done(1); + for (i = 0; i < msgs.size; i++) { + if (!m_convert(mp, msgs.msgs[i])) { + exit(1); //sysexits.h EX_USAGE + } + } seq_setprev(mp); /* set the previous-sequence */ @@ -124,6 +126,5 @@ main(int argc, char **argv) seq_save(mp); /* synchronize message sequences */ context_save(); /* save the context file */ folder_free(mp); /* free folder/message structure */ - done(0); - return 1; + return 0; }