From 986ab5e943db7aaed2aed98f8b74e4c26666fdd8 Mon Sep 17 00:00:00 2001 From: Thomas Roessler Date: Tue, 25 Aug 1998 22:33:07 +0000 Subject: CVS branch clean-up. --- from.c | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) (limited to 'from.c') diff --git a/from.c b/from.c index 4279f9a8..f5d29749 100644 --- a/from.c +++ b/from.c @@ -62,7 +62,8 @@ time_t is_from (const char *s, char *path, size_t pathlen) struct tm tm; int yr; - *path = 0; + if (path) + *path = 0; if (strncmp ("From ", s, 5) != 0) return 0; @@ -102,11 +103,14 @@ time_t is_from (const char *s, char *path, size_t pathlen) if ((p = strchr (s, ' ')) == NULL) return 0; } - len = (size_t) (p - s); - if (len + 1 > pathlen) - len = pathlen - 1; - memcpy (path, s, len); - path[len] = 0; + if (path) + { + len = (size_t) (p - s); + if (len + 1 > pathlen) + len = pathlen - 1; + memcpy (path, s, len); + path[len] = 0; + } s = p + 1; SKIPWS (s); @@ -156,7 +160,7 @@ time_t is_from (const char *s, char *path, size_t pathlen) if (!*s) return 0; /* timezone? */ - if (isalpha (*s) || *s == '+' || *s == '-') + if (isalpha ((unsigned char) *s) || *s == '+' || *s == '-') { s = next_word (s); if (!*s) return 0; @@ -165,7 +169,7 @@ time_t is_from (const char *s, char *path, size_t pathlen) * some places have two timezone fields after the time, e.g. * From xxxx@yyyyyyy.fr Wed Aug 2 00:39:12 MET DST 1995 */ - if (isalpha (*s)) + if (isalpha ((unsigned char) *s)) { s = next_word (s); if (!*s) return 0; -- cgit v1.2.3