X-Git-Url: http://git.marmaro.de/?a=blobdiff_plain;f=uip%2Fsortm.c;h=d2486eef5d06d7ff4a9f30897eabc24b6053849e;hb=a6f717992d5588898c37711aa1895dbb11016e1c;hp=9e8da9f6227d3fbed516da4fac74d0e484d6622b;hpb=13ae9ba066e6b8c114daa6714895a56816465f49;p=mmh diff --git a/uip/sortm.c b/uip/sortm.c index 9e8da9f..d2486ee 100644 --- a/uip/sortm.c +++ b/uip/sortm.c @@ -28,9 +28,13 @@ static struct swit switches[] = { { "verbose", 0 }, #define NVERBSW 7 { "noverbose", 0 }, -#define VERSIONSW 8 +#define ALLMSGS 8 + { "all", 0 }, +#define NALLMSGS 9 + { "noall", 0 }, +#define VERSIONSW 10 { "version", 0 }, -#define HELPSW 9 +#define HELPSW 11 { "help", 0 }, { NULL, 0 } }; @@ -48,6 +52,7 @@ char *subjsort = (char *) 0; /* sort on subject if != 0 */ time_t datelimit = 0; int submajor = 0; /* if true, sort on subject-major */ int verbose; +int allmsgs = 1; /* This keeps compiler happy on calls to qsort */ typedef int (*qsort_comp) (const void *, const void *); @@ -103,10 +108,10 @@ main (int argc, char **argv) snprintf(buf, sizeof(buf), "%s [+folder] [msgs] [switches]", invo_name); print_help (buf, switches, 1); - done (1); + done (0); case VERSIONSW: print_version(invo_name); - done (1); + done (0); case DATESW: if (datesw) @@ -153,6 +158,13 @@ main (int argc, char **argv) case NVERBSW: verbose = 0; continue; + + case ALLMSGS: + allmsgs = 1; + continue; + case NALLMSGS: + allmsgs = 0; + continue; } } if (*cp == '+' || *cp == '@') { @@ -166,8 +178,13 @@ main (int argc, char **argv) if (!context_find ("path")) free (path ("./", TFOLDER)); - if (!msgs.size) - app_msgarg(&msgs, "all"); + if (!msgs.size) { + if (allmsgs) { + app_msgarg(&msgs, "all"); + } else { + adios (NULL, "must specify messages to sort with -noall"); + } + } if (!datesw) datesw = "date"; if (!folder) @@ -492,7 +509,7 @@ rename_chain (struct msgs *mp, struct smsg **mlist, int msg, int endmsg) { int nxt, old, new; char *newname, oldname[BUFSIZ]; - char newbuf[MAXPATHLEN + 1]; + char newbuf[PATH_MAX + 1]; for (;;) { nxt = mlist[msg] - smsgs; /* mlist[msg] is a ptr into smsgs */ @@ -530,7 +547,7 @@ rename_msgs (struct msgs *mp, struct smsg **mlist) int i, j, old, new; seqset_t tmpset; char f1[BUFSIZ], tmpfil[BUFSIZ]; - char newbuf[MAXPATHLEN + 1]; + char newbuf[PATH_MAX + 1]; struct smsg *sp; strncpy (tmpfil, m_name (mp->hghmsg + 1), sizeof(tmpfil));