From 1366224266bcf5e41b57361afb1e557c3d65334d Mon Sep 17 00:00:00 2001 From: Ivailo Monev Date: Fri, 17 Sep 2021 18:55:21 +0300 Subject: [PATCH] fix regression since 0f720fe9d2c8e8e9816fa3fa22fecd85e30addb7 Signed-off-by: Ivailo Monev --- src/gui/painting/qpainterpath.cpp | 3 +-- src/gui/painting/qpathclipper.cpp | 4 ++-- src/gui/qguicommon_p.h | 6 ++++++ 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/src/gui/painting/qpainterpath.cpp b/src/gui/painting/qpainterpath.cpp index 754a1ed31..be5a04fde 100644 --- a/src/gui/painting/qpainterpath.cpp +++ b/src/gui/painting/qpainterpath.cpp @@ -38,6 +38,7 @@ #include "qpathclipper_p.h" #include "qstroker_p.h" #include "qtextengine_p.h" +#include "qguicommon_p.h" #include @@ -2173,8 +2174,6 @@ bool QPainterPath::operator==(const QPainterPath &path) const else if (d->elements.size() != path.d_func()->elements.size()) return false; - static const qreal qt_epsilon = std::numeric_limits::epsilon();; - QSizeF epsilon = boundingRect().size(); epsilon.rwidth() *= qt_epsilon; epsilon.rheight() *= qt_epsilon; diff --git a/src/gui/painting/qpathclipper.cpp b/src/gui/painting/qpathclipper.cpp index 9e00d5aa6..d7d7b948c 100644 --- a/src/gui/painting/qpathclipper.cpp +++ b/src/gui/painting/qpathclipper.cpp @@ -20,11 +20,11 @@ ****************************************************************************/ #include "qpathclipper_p.h" - #include "qbezier_p.h" #include "qmath.h" #include "qnumeric.h" #include "qdebug.h" +#include "qguicommon_p.h" /** The algorithm is as follows: @@ -46,7 +46,7 @@ QT_BEGIN_NAMESPACE static inline bool fuzzyIsNull(qreal d) { - return qAbs(d) <= std::numeric_limits::epsilon(); + return qAbs(d) <= qt_epsilon; } static inline bool comparePoints(const QPointF &a, const QPointF &b) diff --git a/src/gui/qguicommon_p.h b/src/gui/qguicommon_p.h index f2cdae6ff..defee8ba7 100644 --- a/src/gui/qguicommon_p.h +++ b/src/gui/qguicommon_p.h @@ -9,6 +9,12 @@ QT_BEGIN_NAMESPACE +#ifdef QT_NO_FPU +static const qreal qt_epsilon = qreal(1e-12); +#else +static const qreal qt_epsilon = qreal(1e-5); +#endif + // same as QColor(Qt::color0).rgba() and QColor(Qt::white).rgba() static const QRgb qt_whitergba = qRgba(255, 255, 255, 255); // same as QColor(Qt::color0).rgb() and QColor(Qt::white).rgb() -- 2.11.0