From: James Turner Date: Wed, 6 Jan 2016 05:18:41 +0000 (-0600) Subject: Fix negative loop counts when dt is small. X-Git-Url: https://git.mxchange.org/?a=commitdiff_plain;h=3d9d44cf73c751854322982294183d88ad8b8aca;p=simgear.git Fix negative loop counts when dt is small. --- diff --git a/simgear/structure/subsystem_mgr.cxx b/simgear/structure/subsystem_mgr.cxx index 5e26a432..b01a0ffe 100644 --- a/simgear/structure/subsystem_mgr.cxx +++ b/simgear/structure/subsystem_mgr.cxx @@ -234,6 +234,7 @@ SGSubsystemGroup::update (double delta_time_sec) if ((delta_time_sec > 0.0) && (_fixedUpdateTime > 0.0)) { double localDelta = delta_time_sec + _updateTimeRemainder; loopCount = SGMiscd::roundToInt(localDelta / _fixedUpdateTime); + loopCount = std::max(0, loopCount); _updateTimeRemainder = delta_time_sec - (loopCount * _fixedUpdateTime); delta_time_sec = _fixedUpdateTime; }