Leonardo Duarte
335fae9a71
LibC: Return early in time_to_tm for large time_t
...
POSIX says that localtime should fail with EOVERFLOW if the result
cannot be represented, which is the case for most large (in absolute
value) time_t inputs, since they overflow (or underflow) tm_year, which
is an int. This patch introduces this functionality. Previously, tm_year
just overflowed (or underflowed) silently.
Incidentally, this partially fixes #12729 without solving the root
problem, which is that time_to_tm is linear in its input to determine
the number of years since epoch.
This means that the bash port mktime test no longer times-out in 60s,
but it still fails (faster) in some other place. Due to underlying issue
in the algorithm, the worst case inputs still take a couple of seconds
on my machine.
2022-04-19 10:06:23 -04:00
..
2022-04-01 21:24:45 +01:00
2022-04-03 19:15:14 +02:00
2022-03-02 11:40:37 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-03-06 13:00:42 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-14 03:12:56 +04:30
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-03-02 11:40:37 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-02-28 20:28:01 -08:00
2022-04-03 19:15:14 +02:00
2022-04-03 19:15:14 +02:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-19 10:06:23 -04:00
2022-04-01 21:24:45 +01:00
2022-02-28 20:09:37 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-04-01 21:24:45 +01:00
2022-03-20 08:40:36 -04:00