From 9eca61629030613591a6b63052c2ccd0310c725b Mon Sep 17 00:00:00 2001 From: kwesolowski Date: Fri, 25 Jul 2014 10:36:21 +0200 Subject: Fixes for windows CalculateProcessorLoad - Fixed bad logic condition, - Added comment to clarify --- src/util.cc | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/util.cc b/src/util.cc index 9d0282f..33cf204 100644 --- a/src/util.cc +++ b/src/util.cc @@ -424,7 +424,7 @@ static double CalculateProcessorLoad(uint64_t idleTicks, uint64_t totalTicks) uint64_t totalTicksSinceLastTime = totalTicks - previousTotalTicks; double load; - if( previousTotalTicks > 0) { + if (previousTotalTicks == 0) { //return error for first call load = -0.0; } else if(totalTicksSinceLastTime == 0) { @@ -454,7 +454,10 @@ double GetLoadAverage() { double result; if (getSystemTimeSucceeded) { uint64_t idleTicks = FileTimeToTickCount(idleTime); + + //kernelTime from GetSystemTimes already includes idleTime uint64_t totalTicks = FileTimeToTickCount(kernelTime) + FileTimeToTickCount(userTime); + result = CalculateProcessorLoad(idleTicks, totalTicks); } else { result = -0.0; -- cgit v0.12