diff --git a/blaze822.c b/blaze822.c index 1011d29..4feddfc 100644 --- a/blaze822.c +++ b/blaze822.c @@ -146,14 +146,16 @@ blaze822_addr(char *s, char **dispo, char **addro) { static char disp[1024]; static char addr[1024]; -// char *disp = disp+sizeof disp; -// char *addr = addr+sizeof addr; char *c, *e; -// printf("RAW : |%s|\n", s); - while (iswsp(*s)) s++; + + if (!*s) { + if (dispo) *dispo = 0; + if (addro) *addro = 0; + return 0; + } c = disp; e = disp + sizeof disp; @@ -213,11 +215,8 @@ blaze822_addr(char *s, char **dispo, char **addro) *disp = 0; } -// printf("DISP :: |%s|\n", disp); -// printf("ADDR :: |%s|\n", addr); - - if (dispo) *dispo = disp; - if (addro) *addro = addr; + if (dispo) *dispo = *disp ? disp : 0; + if (addro) *addro = *addr ? addr : 0; return s; } diff --git a/mscan.c b/mscan.c index 8d9d335..b987120 100644 --- a/mscan.c +++ b/mscan.c @@ -123,9 +123,9 @@ oneline(char *file) if ((v = blaze822_hdr(msg, "from"))) { char *disp, *addr; blaze822_addr(v, &disp, &addr); - if (*disp) + if (disp) from = disp; - else if (*addr) + else if (addr) from = addr; else from = "(unknown)"; diff --git a/msort.c b/msort.c index 1526a05..6f72347 100644 --- a/msort.c +++ b/msort.c @@ -74,9 +74,9 @@ fetch_from(char *file) if (v) { char *disp, *addr; blaze822_addr(v, &disp, &addr); - if (*disp) + if (disp) from = strdup(disp); - else if (*addr) + else if (addr) from = strdup(addr); }