Fix prev commit, days at month boundaries

This commit is contained in:
Howard Chu 2004-04-04 15:40:14 +00:00
parent ebd7bc27e7
commit 65e409817e

View File

@ -222,7 +222,15 @@ parse_time( char *atm )
tmg.tm_mday -= tml.tm_mday;
tmg.tm_hour -= tml.tm_hour;
if ( tmg.tm_mday ) tmg.tm_hour += tmg.tm_mday > 0 ? 24 : -24;
if ( tmg.tm_mday ) {
/* The difference should only be +/- 1 day, but may
* fall outside this range at the beginning/end of a month
*/
if ( tmg.tm_mday > 1 ) tmg.tm_mday = -1;
else if ( tmg.tm_mday < -1 ) tmg.tm_mday = 1;
tmg.tm_hour += tmg.tm_mday > 0 ? 24 : -24;
}
if ( tmg.tm_hour ) t -= tmg.tm_hour * 3600;
tmg.tm_min -= tml.tm_min;
if ( tmg.tm_min ) t -= tmg.tm_min * 60;