From: Tom Lane Date: Sat, 2 Jun 2001 17:12:12 +0000 (+0000) Subject: Paranoia about unordered comparisons in IEEE float math. If we are X-Git-Tag: REL7_2_BETA1~1115 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=58193c5f37838b49043925437e3c99711ca66407;p=postgresql Paranoia about unordered comparisons in IEEE float math. If we are given values that compare as unordered, make sure we reply that they are equal, which is better than giving an arbitrary answer --- at least it doesn't depend on which one is passed as which arg. --- diff --git a/src/backend/utils/adt/float.c b/src/backend/utils/adt/float.c index 06405d0cee..42239cced0 100644 --- a/src/backend/utils/adt/float.c +++ b/src/backend/utils/adt/float.c @@ -8,7 +8,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/utils/adt/float.c,v 1.71 2001/05/03 19:00:36 tgl Exp $ + * $Header: /cvsroot/pgsql/src/backend/utils/adt/float.c,v 1.72 2001/06/02 17:12:12 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -566,10 +566,10 @@ float4_cmp_internal(float4 a, float4 b) { if (a > b) return 1; - else if (a == b) - return 0; - else + else if (a < b) return -1; + else + return 0; } } @@ -662,10 +662,10 @@ float8_cmp_internal(float8 a, float8 b) { if (a > b) return 1; - else if (a == b) - return 0; - else + else if (a < b) return -1; + else + return 0; } }