Cocoa: fix integer multiplication overflow in qt_gettime()

Task-number: QTBUG-24031
Change-Id: Iae00b10b6a7423508669ef173a80a03b3dd388c6
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
This commit is contained in:
Michael Klein 2015-08-08 21:07:58 +01:00 committed by Thiago Macieira
parent af3152adee
commit e3d7cf7c96

View File

@ -59,8 +59,13 @@ static qint64 absoluteToNSecs(qint64 cpuTime)
{
if (info.denom == 0)
mach_timebase_info(&info);
#ifdef __LP64__
__uint128_t nsecs = static_cast<__uint128_t>(cpuTime) * info.numer / info.denom;
return static_cast<qint64>(nsecs);
#else
qint64 nsecs = cpuTime * info.numer / info.denom;
return nsecs;
#endif
}
static qint64 absoluteToMSecs(qint64 cpuTime)