X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/ac95517a622081f0f4625dbdbad283b54ab56300..bfc6b93af:/sbr/mf.c?ds=sidebyside diff --git a/sbr/mf.c b/sbr/mf.c index 63b13ba4..870a0a52 100644 --- a/sbr/mf.c +++ b/sbr/mf.c @@ -26,8 +26,8 @@ static int my_lex (char *); int isfrom(const char *string) { - return (strncmp (string, "From ", 5) == 0 - || strncmp (string, ">From ", 6) == 0); + return (HasPrefix(string, "From ") + || HasPrefix(string, ">From ")); } @@ -52,10 +52,8 @@ lequal (const char *a, const char *b) static int isat (const char *p) { - return (strncmp (p, " AT ", 4) - && strncmp (p, " At ", 4) - && strncmp (p, " aT ", 4) - && strncmp (p, " at ", 4) ? FALSE : TRUE); + return HasPrefix(p, " AT ") || HasPrefix(p, " At ") || + HasPrefix(p, " aT ") || HasPrefix(p, " at "); } @@ -180,18 +178,12 @@ getadrx (const char *addrs, int eai) char *bp; struct adrx *adrxp = &adrxs2; - if (pers) - free (pers); - if (mbox) - free (mbox); - if (host) - free (host); - if (path) - free (path); - if (grp) - free (grp); - if (note) - free (note); + mh_xfree(pers); + mh_xfree(mbox); + mh_xfree(host); + mh_xfree(path); + mh_xfree(grp); + mh_xfree(note); pers = mbox = host = path = grp = note = NULL; err[0] = 0; @@ -297,10 +289,8 @@ again: ; return NOTOK; } case LX_COMA: - if (note) { - free (note); - note = NULL; - } + mh_xfree(note); + note = NULL; goto again; case LX_END: