* ext/date/date_core.c (datetime_to_time): preserve timezone info

[Bug #12189] [Fix GH-1295]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54169 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
sonots 2016-03-18 01:26:12 +00:00
parent f8e79c84a9
commit 5f11a6eb6c
3 changed files with 15 additions and 9 deletions

View file

@ -8587,21 +8587,24 @@ date_to_datetime(VALUE self)
static VALUE
datetime_to_time(VALUE self)
{
volatile VALUE dup = dup_obj_with_new_offset(self, 0);
volatile VALUE dup = dup_obj(self);
{
VALUE t;
get_d1(dup);
t = f_utc6(rb_cTime,
t = rb_funcall(rb_cTime,
rb_intern("new"),
7,
m_real_year(dat),
INT2FIX(m_mon(dat)),
INT2FIX(m_mday(dat)),
INT2FIX(m_hour(dat)),
INT2FIX(m_min(dat)),
f_add(INT2FIX(m_sec(dat)),
m_sf_in_sec(dat)));
return f_getlocal(t);
m_sf_in_sec(dat)),
INT2FIX(m_of(dat)));
return t;
}
}