X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/b56c88e2847c582f9b18ae5bbda44f033cd49c42..ef1ba39e8dae81091b6c3e73e72825ef6edea3c6:/uip/sortm.c diff --git a/uip/sortm.c b/uip/sortm.c index 3df18859..97d42e5f 100644 --- a/uip/sortm.c +++ b/uip/sortm.c @@ -122,7 +122,7 @@ main (int argc, char **argv) subjsort = "subject"; continue; case NSUBJSW: - subjsort = (char *)0; + subjsort = NULL; continue; case LIMSW: @@ -242,7 +242,7 @@ main (int argc, char **argv) */ if (!submajor && subjsort) { /* already date sorted */ struct smsg **slist, **flist; - register struct smsg ***il, **fp, **dp; + struct smsg ***il, **fp, **dp; slist = (struct smsg **) mh_xmalloc ((nmsgs+1) * sizeof(*slist)); memcpy((char *)slist, (char *)dlist, (nmsgs+1)*sizeof(*slist)); @@ -253,9 +253,7 @@ main (int argc, char **argv) * the collection of messages with the same subj * given a message number. */ - il = (struct smsg ***) calloc (mp->hghsel+1, sizeof(*il)); - if (! il) - adios (NULL, "couldn't allocate msg list"); + il = mh_xcalloc(mp->hghsel + 1, sizeof *il); for (i = 0; i < nmsgs; i++) il[slist[i]->s_msg] = &slist[i]; /* @@ -265,7 +263,7 @@ main (int argc, char **argv) flist = (struct smsg **) mh_xmalloc ((nmsgs+1) * sizeof(*flist)); fp = flist; for (dp = dlist; *dp;) { - register struct smsg **s = il[(*dp++)->s_msg]; + struct smsg **s = il[(*dp++)->s_msg]; /* see if we already did this guy */ if (! s) @@ -287,6 +285,7 @@ main (int argc, char **argv) } } *fp = 0; + free (il); free (slist); free (dlist); dlist = flist; @@ -312,16 +311,11 @@ read_hdrs (struct msgs *mp, char *datesw) { int msgnum; struct tws tb; - register struct smsg *s; + struct smsg *s; twscopy (&tb, dlocaltimenow ()); - smsgs = (struct smsg *) - calloc ((size_t) (mp->hghsel - mp->lowsel + 2), - sizeof(*smsgs)); - if (smsgs == NULL) - adios (NULL, "unable to allocate sort storage"); - + smsgs = mh_xcalloc(mp->hghsel - mp->lowsel + 2, sizeof *smsgs); s = smsgs; for (msgnum = mp->lowsel; msgnum <= mp->hghsel; msgnum++) { if (is_selected(mp, msgnum)) { @@ -344,12 +338,12 @@ read_hdrs (struct msgs *mp, char *datesw) static int get_fields (char *datesw, int msg, struct smsg *smsg) { - register int state; + int state; int compnum; char *msgnam, buf[BUFSIZ], nam[NAMESZ]; - register struct tws *tw; - register char *datecomp = NULL, *subjcomp = NULL; - register FILE *in; + struct tws *tw; + char *datecomp = NULL, *subjcomp = NULL; + FILE *in; m_getfld_state_t gstate = 0; if ((in = fopen (msgnam = m_name (msg), "r")) == NULL) { @@ -400,10 +394,8 @@ get_fields (char *datesw, int msg, struct smsg *smsg) msg, compnum); check_failed = 1; } - if (datecomp) - free (datecomp); - if (subjcomp) - free (subjcomp); + mh_xfree(datecomp); + mh_xfree(subjcomp); fclose (in); return (0); @@ -439,7 +431,7 @@ get_fields (char *datesw, int msg, struct smsg *smsg) * leading "re:", everything but letters & smash * letters to lower case. */ - register char *cp, *cp2, c; + char *cp, *cp2, c; cp = subjcomp; cp2 = subjcomp; @@ -457,8 +449,7 @@ get_fields (char *datesw, int msg, struct smsg *smsg) while ((c = *cp++)) { if (isascii((unsigned char) c) && isalnum((unsigned char) c)) - *cp2++ = isupper((unsigned char) c) ? - tolower((unsigned char) c) : c; + *cp2++ = tolower((unsigned char)c); } *cp2 = '\0'; @@ -469,8 +460,7 @@ get_fields (char *datesw, int msg, struct smsg *smsg) smsg->s_subj = subjcomp; } fclose (in); - if (datecomp) - free (datecomp); + mh_xfree(datecomp); return (1); } @@ -483,12 +473,11 @@ dsort (struct smsg **a, struct smsg **b) { if ((*a)->s_clock < (*b)->s_clock) return (-1); - else if ((*a)->s_clock > (*b)->s_clock) + if ((*a)->s_clock > (*b)->s_clock) return (1); - else if ((*a)->s_msg < (*b)->s_msg) + if ((*a)->s_msg < (*b)->s_msg) return (-1); - else - return (1); + return (1); } /* @@ -497,7 +486,7 @@ dsort (struct smsg **a, struct smsg **b) static int subsort (struct smsg **a, struct smsg **b) { - register int i; + int i; if ((i = strcmp ((*a)->s_subj, (*b)->s_subj))) return (i); @@ -508,14 +497,13 @@ subsort (struct smsg **a, struct smsg **b) static int txtsort (struct smsg **a, struct smsg **b) { - register int i; + int i; if ((i = strcmp ((*a)->s_subj, (*b)->s_subj))) return (i); - else if ((*a)->s_msg < (*b)->s_msg) + if ((*a)->s_msg < (*b)->s_msg) return (-1); - else - return (1); + return (1); } static void @@ -527,7 +515,7 @@ rename_chain (struct msgs *mp, struct smsg **mlist, int msg, int endmsg) for (;;) { nxt = mlist[msg] - smsgs; /* mlist[msg] is a ptr into smsgs */ - mlist[msg] = (struct smsg *)0; + mlist[msg] = NULL; old = smsgs[nxt].s_msg; new = smsgs[msg].s_msg; strncpy (oldname, m_name (old), sizeof(oldname));