diff --git a/source/bforce/u_time.c b/source/bforce/u_time.c index b150248..a4a578c 100644 --- a/source/bforce/u_time.c +++ b/source/bforce/u_time.c @@ -176,15 +176,15 @@ long time_gmtoffset(void) long tz = local.tm_yday - gmt.tm_yday; if( tz > 1 ) - tz = 24; - else if( tz < -1 ) tz = -24; + else if( tz < -1 ) + tz = +24; else tz *= 24; - tz += local.tm_hour - gmt.tm_hour; + tz += gmt.tm_hour - local.tm_hour; tz *= 60; - tz += local.tm_min - gmt.tm_min; + tz += gmt.tm_min - local.tm_min; return tz; } @@ -200,7 +200,7 @@ long time_gmtoffset(void) */ char *time_string_gmtoffset(char *buffer) { - long tz = time_gmtoffset(); + long tz = -time_gmtoffset(); char sign = (tz > 0)?'+':'-'; tz = abs(tz); unsigned int hour = tz/60;