From 370846959ebcb8109d8d01cc7dba0b29ec0e6ee8 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Mon, 15 Apr 2002 06:24:31 +0000 Subject: [PATCH] (__mktime_internal): If year is 69, don't bail out early, but check whether it overflowed afterwards. --- time/mktime.c | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/time/mktime.c b/time/mktime.c index 470c5f5f46e..44491e18cb2 100644 --- a/time/mktime.c +++ b/time/mktime.c @@ -259,8 +259,10 @@ __mktime_internal (struct tm *tp, int sec_requested = sec; - /* Only years after 1970 are defined. */ - if (year < 70) + /* Only years after 1970 are defined. + If year is 69, it might still be representable due to + timezone differnces. */ + if (year < 69) return -1; #if LEAP_SECONDS_POSSIBLE @@ -370,6 +372,14 @@ __mktime_internal (struct tm *tp, return -1; } + if (year == 69) + { + /* If year was 69, need to check whether the time was representable + or not. */ + if (t < 0 || t > 2 * 24 * 60 * 60) + return -1; + } + *tp = tm; return t; } -- 2.47.2