summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ext/date/lib/tm2unixtime.c7
-rw-r--r--ext/date/lib/unixtime2tm.c1
2 files changed, 3 insertions, 5 deletions
diff --git a/ext/date/lib/tm2unixtime.c b/ext/date/lib/tm2unixtime.c
index 66a20b4699..9e2b862f83 100644
--- a/ext/date/lib/tm2unixtime.c
+++ b/ext/date/lib/tm2unixtime.c
@@ -202,11 +202,8 @@ static timelib_sll do_adjust_timezone(timelib_time *tz, timelib_tzinfo *tzi)
break;
case TIMELIB_ZONETYPE_ID:
- tz->is_localtime = 1;
- timelib_set_timezone(tz, tz->tz_info);
- return -tz->z;
-
- break;
+ tzi = tz->tz_info;
+ /* Break intentionally missing */
default:
/* No timezone in struct, fallback to reference if possible */
diff --git a/ext/date/lib/unixtime2tm.c b/ext/date/lib/unixtime2tm.c
index 8895d1a0aa..0b536dc467 100644
--- a/ext/date/lib/unixtime2tm.c
+++ b/ext/date/lib/unixtime2tm.c
@@ -132,6 +132,7 @@ void timelib_unixtime2local(timelib_time *tm, timelib_sll ts, timelib_tzinfo* tz
gmt_offset = timelib_get_time_zone_info(ts, tz);
timelib_unixtime2gmt(tm, ts + gmt_offset->offset);
+
/* we need to reset the sse here as unixtime2gmt modifies it */
tm->sse = ts;
tm->dst = gmt_offset->is_dst;