Mercurial > dovecot > original-hg > dovecot-1.2
changeset 958:2c7a2d90e0cb HEAD
Handle one-digit hour in dates.
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Mon, 13 Jan 2003 22:00:38 +0200 |
parents | c1a97fc30d1c |
children | f66455b629cd |
files | src/lib-mail/message-date.c |
diffstat | 1 files changed, 9 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/src/lib-mail/message-date.c Mon Jan 13 22:00:23 2003 +0200 +++ b/src/lib-mail/message-date.c Mon Jan 13 22:00:38 2003 +0200 @@ -120,7 +120,7 @@ } /* dd */ - if (token != 'A' || len > 2 || !i_isdigit(value[0])) + if (token != 'A' || len < 1 || len > 2 || !i_isdigit(value[0])) return FALSE; tm.tm_mday = value[0]-'0'; @@ -165,12 +165,16 @@ tm.tm_year -= 1900; } - /* hh */ + /* hh, allow also single digit */ token = next_token(ctx, &value, &len); - if (token != 'A' || len != 2 || - !i_isdigit(value[0]) || !i_isdigit(value[1])) + if (token != 'A' || len < 1 || len > 2 || !i_isdigit(value[0])) return FALSE; - tm.tm_hour = (value[0]-'0') * 10 + (value[1]-'0'); + tm.tm_hour = value[0]-'0'; + if (len == 2) { + if (!i_isdigit(value[1])) + return FALSE; + tm.tm_hour = tm.tm_hour * 10 + (value[1]-'0'); + } /* :mm */ token = next_token(ctx, &value, &len);