From 4aa90d773139d0ac3279514faef8ba0e285ea640 Mon Sep 17 00:00:00 2001 From: Alex Blasche <alexander.blasche@digia.com> Date: Tue, 21 Oct 2014 16:01:53 +0200 Subject: [PATCH] Ensure that rounding errors are considered by QGeoCircle::contains Task-number: QTBUG-41447 Change-Id: I9837fab4b7132f406f69ecbe6c0e5f383345a516 Reviewed-by: Lars Knoll <lars.knoll@digia.com> --- src/positioning/qgeocircle.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/positioning/qgeocircle.cpp b/src/positioning/qgeocircle.cpp index d5a3bc60b..459ce8240 100644 --- a/src/positioning/qgeocircle.cpp +++ b/src/positioning/qgeocircle.cpp @@ -204,7 +204,12 @@ bool QGeoCirclePrivate::contains(const QGeoCoordinate &coordinate) const if (!isValid() || !coordinate.isValid()) return false; - return center.distanceTo(coordinate) <= radius; + // see QTBUG-41447 for details + qreal distance = center.distanceTo(coordinate); + if (qFuzzyCompare(distance, radius) || distance <= radius) + return true; + + return false; } /*! -- GitLab