summaryrefslogtreecommitdiff
path: root/time.c
diff options
context:
space:
mode:
authorS.H <gamelinks007@gmail.com>2020-07-23 11:35:20 +0900
committerGitHub <noreply@github.com>2020-07-23 11:35:20 +0900
commitafacf85e443cc64dd41c248659b65476434b4175 (patch)
tree9daf738ec11e2d3e1735380f749ae8b72810af2a /time.c
parent8ed687a4d7b7a77f30f8e937f58aae74bfb699b6 (diff)
Merge pull request #3352 from S-H-GAMELINKS/bug/17042-strftime
Fix Time#strftime with timezone [Bug #17042]
Notes
Notes: Merged-By: nobu <nobu@ruby-lang.org>
Diffstat (limited to 'time.c')
-rw-r--r--time.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/time.c b/time.c
index 8d7206824b..e993d785a5 100644
--- a/time.c
+++ b/time.c
@@ -5109,6 +5109,10 @@ time_strftime(VALUE time, VALUE format)
VALUE tmp;
GetTimeval(time, tobj);
+ if (tobj->vtm.yday == 0) {
+ VALUE zone = tobj->vtm.zone;
+ if (!NIL_P(zone)) zone_localtime(zone, time);
+ }
MAKE_TM(time, tobj);
StringValue(format);
if (!rb_enc_str_asciicompat_p(format)) {