X-Git-Url: http://git.marmaro.de/?p=mmh;a=blobdiff_plain;f=uip%2Fmhpath.c;h=47146f4f2b93e9bb451171552d64b5f9e070b32d;hp=5c0de0577d7c4c9e97cb508000109c14adf5bd01;hb=2abb9a7cfb0930e27062088734d306e7d78e4cc2;hpb=6dc010d334b477ad4dee0b1a1d3ee6a6bdb7bd9a diff --git a/uip/mhpath.c b/uip/mhpath.c index 5c0de05..47146f4 100644 --- a/uip/mhpath.c +++ b/uip/mhpath.c @@ -8,10 +8,12 @@ #include #include +#include +#include static struct swit switches[] = { #define VERSIONSW 0 - { "version", 0 }, + { "Version", 0 }, #define HELPSW 1 { "help", 0 }, { NULL, 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; }