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);