| Index: base/time_win.cc
|
| diff --git a/base/time_win.cc b/base/time_win.cc
|
| index 191b7a779881026f54573e4a00c8658ade9ccc12..b59dab2811f1519da9ffec7bf75252d1e853c403 100644
|
| --- a/base/time_win.cc
|
| +++ b/base/time_win.cc
|
| @@ -141,10 +141,18 @@ Time Time::NowFromSystemTime() {
|
|
|
| // static
|
| Time Time::FromFileTime(FILETIME ft) {
|
| + if (bit_cast<int64, FILETIME>(ft) == 0)
|
| + return Time();
|
| + if (bit_cast<int64, FILETIME>(ft) == std::numeric_limits<int64>::max())
|
| + return Max();
|
| return Time(FileTimeToMicroseconds(ft));
|
| }
|
|
|
| FILETIME Time::ToFileTime() const {
|
| + if (is_null())
|
| + return bit_cast<FILETIME, int64>(0);
|
| + if (is_max())
|
| + return bit_cast<FILETIME, int64>(std::numeric_limits<int64>::max());
|
| FILETIME utc_ft;
|
| MicrosecondsToFileTime(us_, &utc_ft);
|
| return utc_ft;
|
|
|