]> git.tdb.fi Git - libs/core.git/commitdiff
Flip the sign of TimeZone offset so it makes more sense
authorMikko Rasa <tdb@tdb.fi>
Mon, 30 May 2011 20:16:00 +0000 (23:16 +0300)
committerMikko Rasa <tdb@tdb.fi>
Mon, 30 May 2011 20:16:00 +0000 (23:16 +0300)
source/time/datetime.cpp
source/time/timezone.cpp

index 415ce40abcdbd9dd7b4e2a61c2ebe995711413cb..7fa8ceefbac56c0ac5b7507906ff15b0df1f8d31 100644 (file)
@@ -186,7 +186,7 @@ void DateTime::set_timezone(const TimeZone &tz)
 
 void DateTime::convert_timezone(const TimeZone &tz)
 {
 
 void DateTime::convert_timezone(const TimeZone &tz)
 {
-       add_raw((zone.get_offset()-tz.get_offset()).raw());
+       add_raw((tz.get_offset()-zone.get_offset()).raw());
        zone = tz;
 }
 
        zone = tz;
 }
 
@@ -296,7 +296,7 @@ string DateTime::format_rfc3339() const
        if(const TimeDelta &offs = zone.get_offset())
        {
                int m = abs(static_cast<int>(offs/Time::min));
        if(const TimeDelta &offs = zone.get_offset())
        {
                int m = abs(static_cast<int>(offs/Time::min));
-               result += Msp::format("%c%02d:%02d", (offs<zero ? '+' : '-'), m/60, m%60);
+               result += Msp::format("%c%02d:%02d", (offs<zero ? '-' : '+'), m/60, m%60);
        }
        else
                result += 'Z';
        }
        else
                result += 'Z';
index 9c146249208da8206ae6c1c937526afcde56fe21..a96e1b51be34ef6672239c358210d4b766d212d5 100644 (file)
@@ -102,7 +102,7 @@ TimeZone get_local_timezone()
                close(fd);
 
                if(gmtoff!=-1)
                close(fd);
 
                if(gmtoff!=-1)
-                       return TimeZone(-gmtoff/60, name);
+                       return TimeZone(gmtoff/60, name);
        }
        return TimeZone();
 #endif
        }
        return TimeZone();
 #endif
@@ -117,15 +117,15 @@ TimeZone::TimeZone():
        name("UTC")
 { }
 
        name("UTC")
 { }
 
-TimeZone::TimeZone(int minutes_west):
-       offset(minutes_west*min)
+TimeZone::TimeZone(int minutes):
+       offset(minutes*min)
 {
 {
-       if(minutes_west)
+       if(minutes)
        {
                ostringstream ss;
                ss.fill('0');
        {
                ostringstream ss;
                ss.fill('0');
-               int m = abs(minutes_west);
-               ss<<"UTC"<<(minutes_west<0 ? '-' : '+')<<m/60;
+               int m = abs(minutes);
+               ss<<"UTC"<<(minutes<0 ? '-' : '+')<<m/60;
                if(m%60)
                        ss<<':'<<setw(2)<<m%60;
        }
                if(m%60)
                        ss<<':'<<setw(2)<<m%60;
        }
@@ -133,9 +133,9 @@ TimeZone::TimeZone(int minutes_west):
                name = "UTC";
 }
 
                name = "UTC";
 }
 
-TimeZone::TimeZone(int minutes_west, const string &n):
+TimeZone::TimeZone(int minutes, const string &n):
        name(n),
        name(n),
-       offset(minutes_west*min)
+       offset(minutes*min)
 { }
 
 const TimeZone &TimeZone::utc()
 { }
 
 const TimeZone &TimeZone::utc()