From f637b2996d359d619386312dea0d954870c6f952 Mon Sep 17 00:00:00 2001 From: Roland Winklmeier Date: Tue, 31 Jul 2018 10:57:05 +0200 Subject: [PATCH] Fix floating point comparison --- src/xswiftbus/traffic.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/xswiftbus/traffic.cpp b/src/xswiftbus/traffic.cpp index 40311ff1d..1320caa1c 100644 --- a/src/xswiftbus/traffic.cpp +++ b/src/xswiftbus/traffic.cpp @@ -765,7 +765,9 @@ namespace XSwiftBus { const auto now = std::chrono::system_clock::now(); - if (plane->surfaces.gearPosition != plane->targetGearPosition) + static const float epsilon = std::numeric_limits::epsilon(); + const float f = plane->surfaces.gearPosition - plane->targetGearPosition; + if (std::abs(f) > epsilon) { // interpolate gear position constexpr float gearMoveTimeMs = 5000;