diff --git a/src/backend/utils/adt/float.c b/src/backend/utils/adt/float.c index 128f147debd342b9f440d3cc9e54ebb7b360a8d0..7651da166edb1da94cd55b6c00c0cb2567054270 100644 --- a/src/backend/utils/adt/float.c +++ b/src/backend/utils/adt/float.c @@ -8,7 +8,7 @@ * * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/utils/adt/float.c,v 1.139 2007/01/03 22:05:00 momjian Exp $ + * $PostgreSQL: pgsql/src/backend/utils/adt/float.c,v 1.140 2007/01/04 05:18:39 momjian Exp $ * *------------------------------------------------------------------------- */ @@ -1453,7 +1453,8 @@ dpow(PG_FUNCTION_ARGS) if (errno == EDOM && isnan(result)) { if ((fabs(arg1) > 1 && arg2 >= 0) || (fabs(arg1) < 1 && arg2 < 0)) - result = (arg1 >= 0) ? get_float8_infinity() : -get_float8_infinity(); + /* The sign if Inf is not significant in this case. */ + result = get_float8_infinity(); else if (fabs(arg1) != 1) result = 0; else