diff options
author | akr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2009-05-12 12:07:49 +0000 |
---|---|---|
committer | akr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2009-05-12 12:07:49 +0000 |
commit | f64e076260cf60b25d78dcfe157c3b4e8c704ce5 (patch) | |
tree | d5887cdf60176e2fa75dfc62cabc0b86f5cd769c /strftime.c | |
parent | fab2a85c455246f52a61f711ac4c673bf2640018 (diff) |
* time.c: support fixed UTC offset. [ruby-dev:38326]
(leap_year_v_p): new macro.
(TIME_FIXOFF_P): new macro.
(TIME_SET_FIXOFF): new macro.
(time_init_0): renamed from time_init.
(time_set_utc_offset): new function.
(vtm_add_offset): new function.
(utc_offset_arg): new function.
(time_init_1): new function.
(time_init): call time_init_0 or time_init_1 according argc.
(validate_utc_offset): new function.
(time_localtime_m): new function.
(time_fixoff): new function.
(time_getlocaltime): take optional UTC offset argument.
(time_get_tm): support fixed UTC offset time.
(Init_Time): make Time#{initialize,localtime,getlocal} varargs.
* strftime.c (rb_strftime): vtm->zone can be NULL now.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23415 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'strftime.c')
-rw-r--r-- | strftime.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/strftime.c b/strftime.c index 3727bc40ea..076822742b 100644 --- a/strftime.c +++ b/strftime.c @@ -610,7 +610,10 @@ rb_strftime(char *s, size_t maxsize, const char *format, const struct vtm *vtm, #endif /* HAVE_TM_ZONE */ #endif /* HAVE_TZNAME */ #endif /* 0 */ - tp = vtm->zone; + if (vtm->zone == NULL) + tp = ""; + else + tp = vtm->zone; i = strlen(tp); break; |