summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorThiago Macieira <thiago.macieira@intel.com>2021-11-27 21:20:44 -0800
committerThiago Macieira <thiago.macieira@intel.com>2022-01-14 09:57:41 -0800
commit1ee875dcace287d0285575b9e8c5799a286cfb0f (patch)
tree9c03ad22bf7b0b49baf0c4df433b4a5d461937da /src
parent0ca6ad8cfc0827775e5bf001cd8d17f247a1400f (diff)
convertDoubleTo: invert the condition so we catch NaNs early
This is floating point, so De Morgan doesn't always apply. Change-Id: I89446ea06b5742efb194fffd16bb9e36025cb387 Reviewed-by: Marc Mutz <marc.mutz@qt.io>
Diffstat (limited to 'src')
-rw-r--r--src/corelib/global/qnumeric_p.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/corelib/global/qnumeric_p.h b/src/corelib/global/qnumeric_p.h
index bb3f1a976b..4fa817077e 100644
--- a/src/corelib/global/qnumeric_p.h
+++ b/src/corelib/global/qnumeric_p.h
@@ -198,7 +198,7 @@ static inline bool convertDoubleTo(double v, T *value, bool allow_precision_upgr
// T has more bits than double's mantissa, so don't allow "upgrading"
// to T (makes it look like the number had more precision than really
// was transmitted)
- if (!allow_precision_upgrade && (v > double(max_mantissa) || v < double(-max_mantissa - 1)))
+ if (!allow_precision_upgrade && !(v <= double(max_mantissa) && v >= double(-max_mantissa - 1)))
return false;
}