diff options
author | Frantisek Vacek <fvacek@rim.com> | 2012-10-12 14:31:59 +0200 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2012-10-13 23:18:00 +0200 |
commit | a1d3383a380531e09e994c94f13820504e6a56db (patch) | |
tree | 1f4b20f261495341304fc1e6ded99938aa85a1d3 | |
parent | 1345af6b49edce7ae71a88606741485c4c301c39 (diff) |
QPerformanceTimer: fixed wrong implementation of elapsedToAbsoluteTime()
Function elapsedToAbsoluteTime() had wrong implementation on MAC and WIN
platforms.
Change-Id: Icc11e85bcd562cce42af902749883b433a1fcb0b
Reviewed-by: Christiaan Janssen <christiaan.janssen@digia.com>
-rw-r--r-- | src/declarative/qml/qperformancetimer.cpp | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/declarative/qml/qperformancetimer.cpp b/src/declarative/qml/qperformancetimer.cpp index 9e2e0734..c818a8b1 100644 --- a/src/declarative/qml/qperformancetimer.cpp +++ b/src/declarative/qml/qperformancetimer.cpp @@ -76,15 +76,16 @@ void QPerformanceTimer::start() qint64 QPerformanceTimer::elapsed() const { - uint64_t cpu_time = mach_absolute_time(); + qint64 cpu_time = mach_absolute_time(); return absoluteToNSecs(cpu_time - t1); } // return number of nsecs elapsed from timer start time till absoluteMonotonicTimeNs +// elapsedToAbsoluteTime(0) returns negative value of absolute time (ns) when the timer was started qint64 QPerformanceTimer::elapsedToAbsoluteTime(qint64 absoluteMonotonicTimeNs) const { - uint64_t cpu_time = absoluteMonotonicTimeNs; - return absoluteToNSecs(cpu_time - t1); + qint64 absolute_t1_ns = absoluteToNSecs(t1); + return absoluteMonotonicTimeNs - absolute_t1_ns; } ////////////////////////////// Unix ////////////////////////////// @@ -198,7 +199,8 @@ qint64 QPerformanceTimer::elapsed() const qint64 QPerformanceTimer::elapsedToAbsoluteTime(qint64 absoluteMonotonicTimeNs) const { - return absoluteMonotonicTimeNs - t1; + qint64 absolute_t1_ns = getTimeFromTick(t1); + return absoluteMonotonicTimeNs - absolute_t1_ns; } ////////////////////////////// Default ////////////////////////////// |