X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/0509728c8a506f287fa3483d8e8ffaf8fb66d41d..bddd9ca00cd2e2e73aded115a59614af3a74a6cb:/uip/sortm.c diff --git a/uip/sortm.c b/uip/sortm.c index dc62f563..84f8e085 100644 --- a/uip/sortm.c +++ b/uip/sortm.c @@ -167,10 +167,9 @@ main (int argc, char **argv) if (*cp == '+' || *cp == '@') { if (folder) adios (NULL, "only one folder at a time!"); - else - folder = pluspath (cp); + folder = pluspath (cp); } else - app_msgarg(&msgs, cp); + app_msgarg(&msgs, cp); } if (!context_find ("path")) @@ -340,15 +339,16 @@ get_fields (char *datesw, int msg, struct smsg *smsg) struct tws *tw; char *datecomp = NULL, *subjcomp = NULL; FILE *in; - m_getfld_state_t gstate = 0; + m_getfld_state_t gstate; if ((in = fopen (msgnam = m_name (msg), "r")) == NULL) { admonish (msgnam, "unable to read message"); return (0); } + gstate = m_getfld_state_init(in); for (compnum = 1;;) { int bufsz = sizeof buf; - switch (state = m_getfld (&gstate, nam, buf, &bufsz, in)) { + switch (state = m_getfld2(&gstate, nam, buf, &bufsz)) { case FLD: case FLDPLUS: compnum++; @@ -356,7 +356,7 @@ get_fields (char *datesw, int msg, struct smsg *smsg) datecomp = add (buf, datecomp); while (state == FLDPLUS) { bufsz = sizeof buf; - state = m_getfld (&gstate, nam, buf, &bufsz, in); + state = m_getfld2(&gstate, nam, buf, &bufsz); datecomp = add (buf, datecomp); } if (!subjsort || subjcomp) @@ -365,7 +365,7 @@ get_fields (char *datesw, int msg, struct smsg *smsg) subjcomp = add (buf, subjcomp); while (state == FLDPLUS) { bufsz = sizeof buf; - state = m_getfld (&gstate, nam, buf, &bufsz, in); + state = m_getfld2(&gstate, nam, buf, &bufsz); subjcomp = add (buf, subjcomp); } if (datecomp) @@ -374,7 +374,7 @@ get_fields (char *datesw, int msg, struct smsg *smsg) /* just flush this guy */ while (state == FLDPLUS) { bufsz = sizeof buf; - state = m_getfld (&gstate, nam, buf, &bufsz, in); + state = m_getfld2(&gstate, nam, buf, &bufsz); } } continue;