1*635a8641SAndroid Build Coastguard WorkerFrom f7ef75a1ddea9d18e1f166b76e90f948cbfd1f77 Mon Sep 17 00:00:00 2001 2*635a8641SAndroid Build Coastguard WorkerFrom: Qijiang Fan <[email protected]> 3*635a8641SAndroid Build Coastguard WorkerDate: Tue, 31 Mar 2020 17:43:16 +0900 4*635a8641SAndroid Build Coastguard WorkerSubject: [PATCH] libchrome: fix integer overflow if microseconds is INT64_MIN 5*635a8641SAndroid Build Coastguard Worker 6*635a8641SAndroid Build Coastguard WorkerChange-Id: Id3641f6b625f716ae6d134002c0224ed32284939 7*635a8641SAndroid Build Coastguard Worker--- 8*635a8641SAndroid Build Coastguard Worker base/time/time_exploded_posix.cc | 3 +-- 9*635a8641SAndroid Build Coastguard Worker 1 file changed, 1 insertion(+), 2 deletions(-) 10*635a8641SAndroid Build Coastguard Worker 11*635a8641SAndroid Build Coastguard Workerdiff --git a/base/time/time_exploded_posix.cc b/base/time/time_exploded_posix.cc 12*635a8641SAndroid Build Coastguard Workerindex 627c6b4f8735..2aef3864554e 100644 13*635a8641SAndroid Build Coastguard Worker--- a/base/time/time_exploded_posix.cc 14*635a8641SAndroid Build Coastguard Worker+++ b/base/time/time_exploded_posix.cc 15*635a8641SAndroid Build Coastguard Worker@@ -141,8 +141,7 @@ void Time::Explode(bool is_local, Exploded* exploded) const { 16*635a8641SAndroid Build Coastguard Worker millisecond = milliseconds % kMillisecondsPerSecond; 17*635a8641SAndroid Build Coastguard Worker } else { 18*635a8641SAndroid Build Coastguard Worker // Round these *down* (towards -infinity). 19*635a8641SAndroid Build Coastguard Worker- milliseconds = (microseconds - kMicrosecondsPerMillisecond + 1) / 20*635a8641SAndroid Build Coastguard Worker- kMicrosecondsPerMillisecond; 21*635a8641SAndroid Build Coastguard Worker+ milliseconds = (microseconds + 1) / kMicrosecondsPerMillisecond - 1; 22*635a8641SAndroid Build Coastguard Worker seconds = 23*635a8641SAndroid Build Coastguard Worker (milliseconds - kMillisecondsPerSecond + 1) / kMillisecondsPerSecond; 24*635a8641SAndroid Build Coastguard Worker // Make this nonnegative (and between 0 and 999 inclusive). 25*635a8641SAndroid Build Coastguard Worker-- 26*635a8641SAndroid Build Coastguard Worker2.24.1 27*635a8641SAndroid Build Coastguard Worker 28