diff options
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | time.c | 6 |
2 files changed, 10 insertions, 2 deletions
@@ -1,3 +1,9 @@ +Sat Apr 25 16:03:21 2009 Tanaka Akira <akr@fsij.org> + + * time.c (TIME_COPY_GMT): new macro. + (time_s_at): use TIME_COPY_GMT. + (time_succ): ditto. + Sat Apr 25 15:54:04 2009 Tanaka Akira <akr@fsij.org> * time.c (time_mload): use TIME_SET_UTC. @@ -1002,6 +1002,8 @@ struct time_object { #define TIME_LOCALTIME_P(tobj) ((tobj)->gmt == 0) #define TIME_SET_LOCALTIME(tobj) ((tobj)->gmt = 0) +#define TIME_COPY_GMT(tobj1, tobj2) ((tobj1)->gmt = (tobj2)->gmt) + static VALUE time_get_tm(VALUE, struct time_object *); #define MAKE_TM(time, tobj) \ do { \ @@ -1359,7 +1361,7 @@ time_s_at(int argc, VALUE *argv, VALUE klass) GetTimeval(time, tobj); t = time_new_timev(klass, tobj->timev); GetTimeval(t, tobj2); - tobj2->gmt = tobj->gmt; + TIME_COPY_GMT(tobj2, tobj); } else { timev = num_exact(time); @@ -2450,7 +2452,7 @@ time_succ(VALUE time) GetTimeval(time, tobj); time = time_new_timev(rb_cTime, add(tobj->timev, INT2FIX(1))); GetTimeval(time, tobj2); - tobj2->gmt = tobj->gmt; + TIME_COPY_GMT(tobj2, tobj); return time; } |