Apply upstream commit 943a6621866e9d6e654f5cfe1494378c1fb8957a.

Author: Paul Eggert <eggert@cs.ucla.edu>
Date:   Thu Aug 22 12:47:51 2013 -0700

    * localtime.c: Fix another integer overflow bug in mktime.

    (time2sub): Avoid undefined behavior on time_t overflow.
    Reported by Elliott Hughes in
    <http://mm.icann.org/pipermail/tz/2013-August/019580.html>.

Bug: 10310929
Change-Id: I3bf26f1f91371552e0a3828457d27e22af55acb2
This commit is contained in:
Elliott Hughes
2013-08-22 14:13:50 -07:00
parent c44205cf71
commit 713fe6463e
3 changed files with 14 additions and 6 deletions

View File

@@ -1812,14 +1812,14 @@ time2sub(struct tm * const tmp,
} else dir = tmcomp(&mytm, &yourtm);
if (dir != 0) {
if (t == lo) {
++t;
if (t <= lo)
if (t == time_t_max)
return WRONG;
++t;
++lo;
} else if (t == hi) {
--t;
if (t >= hi)
if (t == time_t_min)
return WRONG;
--t;
--hi;
}
if (lo > hi)