Project

General

Profile

Actions

Bug #14880

closed

Time#localtime doesn't always seem to respect TZ

Added by ioquatix (Samuel Williams) almost 6 years ago. Updated over 5 years ago.

Status:
Closed
Assignee:
-
Target version:
-
[ruby-core:87675]

Description

In the first case, calling #localtime doesn't change the utc_offset.

$ TZ=UTC ruby -e 'ENV["TZ"]="Pacific/Auckland"; puts t=Time.new; ENV["TZ"]="UTC"; puts t.localtime'                                            
2018-06-29 16:21:36 +1200
2018-06-29 16:21:36 +1200

$ TZ=UTC ruby -e 'ENV["TZ"]="Pacific/Auckland"; puts t=Time.new; ENV["TZ"]="UTC"; puts Time.new(t.year, t.month, t.day, t.hour, t.min, t.sec, t.utc_offset).localtime'
2018-06-29 16:23:08 +1200
2018-06-29 04:23:08 +0000

In the second case, by creating new time, calling #localtime works as expected.

It seems like once a time instance is "localtime", calling #localtime a 2nd time does not have any effect.

Actions

Also available in: Atom PDF

Like0
Like0Like0Like0Like0Like0Like0Like0