summaryrefslogtreecommitdiffstats
path: root/lang/erlang14/files/patch-lib_stdlib_src_calendar.erl
diff options
context:
space:
mode:
Diffstat (limited to 'lang/erlang14/files/patch-lib_stdlib_src_calendar.erl')
-rw-r--r--lang/erlang14/files/patch-lib_stdlib_src_calendar.erl29
1 files changed, 29 insertions, 0 deletions
diff --git a/lang/erlang14/files/patch-lib_stdlib_src_calendar.erl b/lang/erlang14/files/patch-lib_stdlib_src_calendar.erl
new file mode 100644
index 0000000..1ab9565
--- /dev/null
+++ b/lang/erlang14/files/patch-lib_stdlib_src_calendar.erl
@@ -0,0 +1,29 @@
+
+$FreeBSD$
+
+--- lib/stdlib/src/calendar.erl.orig
++++ lib/stdlib/src/calendar.erl
+@@ -215,11 +215,19 @@
+
+ -spec local_time_to_universal_time_dst(t_datetime1970()) -> [t_datetime1970()].
+ local_time_to_universal_time_dst(DateTime) ->
+- UtDst = erlang:localtime_to_universaltime(DateTime, true),
+- Ut = erlang:localtime_to_universaltime(DateTime, false),
+ %% Reverse check the universal times
+- LtDst = erlang:universaltime_to_localtime(UtDst),
+- Lt = erlang:universaltime_to_localtime(Ut),
++ {UtDst, LtDst} =
++ try
++ UtDst0 = erlang:localtime_to_universaltime(DateTime, true),
++ {UtDst0, erlang:universaltime_to_localtime(UtDst0)}
++ catch error:badarg -> {error, error}
++ end,
++ {Ut, Lt} =
++ try
++ Ut0 = erlang:localtime_to_universaltime(DateTime, false),
++ {Ut0, erlang:universaltime_to_localtime(Ut0)}
++ catch error:badarg -> {error, error}
++ end,
+ %% Return the valid universal times
+ case {LtDst,Lt} of
+ {DateTime,DateTime} when UtDst =/= Ut ->
OpenPOWER on IntegriCloud