[dovecot-cvs] dovecot/src/lib-storage/index/mbox mbox-from.c, 1.6,
1.7
cras at dovecot.org
cras at dovecot.org
Sun Aug 28 21:54:43 EEST 2005
Update of /var/lib/cvs/dovecot/src/lib-storage/index/mbox
In directory talvi:/tmp/cvs-serv25289/src/lib-storage/index/mbox
Modified Files:
mbox-from.c
Log Message:
Timezones in From-lines weren't handled correctly.
Index: mbox-from.c
===================================================================
RCS file: /var/lib/cvs/dovecot/src/lib-storage/index/mbox/mbox-from.c,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -d -r1.6 -r1.7
--- mbox-from.c 19 Aug 2005 15:49:49 -0000 1.6
+++ mbox-from.c 28 Aug 2005 18:54:35 -0000 1.7
@@ -145,8 +145,8 @@
i_isdigit(msg[3]) && i_isdigit(msg[4]) && msg[5] == ' ') {
/* numeric timezone, use it */
seen_timezone = TRUE;
- timezone = (msg[1]-'0') * 1000 + (msg[2]-'0') * 100 +
- (msg[3]-'0') * 10 +(msg[4]-'0');
+ timezone = (msg[1]-'0') * 10*60*60 + (msg[2]-'0') * 60*60 +
+ (msg[3]-'0') * 10 + (msg[4]-'0');
if (msg[0] == '-') timezone = -timezone;
msg += 6;
}
@@ -166,8 +166,8 @@
i_isdigit(msg[2]) && i_isdigit(msg[3]) &&
i_isdigit(msg[4]) && i_isdigit(msg[5])) {
seen_timezone = TRUE;
- timezone = (msg[2]-'0') * 1000 + (msg[3]-'0') * 100 +
- (msg[4]-'0') * 10 +(msg[5]-'0');
+ timezone = (msg[2]-'0') * 10*60*60 + (msg[3]-'0') * 60*60 +
+ (msg[4]-'0') * 10 + (msg[5]-'0');
if (msg[1] == '-') timezone = -timezone;
}
@@ -176,7 +176,7 @@
if (t == (time_t)-1)
return -1;
- t -= timezone * 60;
+ t -= timezone;
*time_r = t;
} else {
/* assume local timezone */
More information about the dovecot-cvs
mailing list