From 492eaefb90b9e60b608a1a4b2e3e68ce7c6c7c69 Mon Sep 17 00:00:00 2001 From: Michael Meskes Date: Tue, 16 Feb 2010 18:41:23 +0000 Subject: Do not check nan values for infinity. Some system are not able to handle this. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit By Zoltán Böszörményi --- src/interfaces/ecpg/ecpglib/execute.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'src/interfaces/ecpg/ecpglib/execute.c') diff --git a/src/interfaces/ecpg/ecpglib/execute.c b/src/interfaces/ecpg/ecpglib/execute.c index d0aef8a5c6a..f65ede58368 100644 --- a/src/interfaces/ecpg/ecpglib/execute.c +++ b/src/interfaces/ecpg/ecpglib/execute.c @@ -1,4 +1,4 @@ -/* $PostgreSQL: pgsql/src/interfaces/ecpg/ecpglib/execute.c,v 1.93 2010/02/04 09:41:34 meskes Exp $ */ +/* $PostgreSQL: pgsql/src/interfaces/ecpg/ecpglib/execute.c,v 1.94 2010/02/16 18:41:23 meskes Exp $ */ /* * The aim is to get a simpler inteface to the database routines. @@ -468,15 +468,15 @@ ecpg_store_result(const PGresult *results, int act_field, static void sprintf_double_value(char *ptr, double value, const char *delim) { - if (isinf(value)) + if (isnan(value)) + sprintf(ptr, "%s%s", "NaN", delim); + else if (isinf(value)) { if (value < 0) sprintf(ptr, "%s%s", "-Infinity", delim); else sprintf(ptr, "%s%s", "Infinity", delim); } - else if (isnan(value)) - sprintf(ptr, "%s%s", "NaN", delim); else sprintf(ptr, "%.14g%s", value, delim); } @@ -484,15 +484,15 @@ sprintf_double_value(char *ptr, double value, const char *delim) static void sprintf_float_value(char *ptr, float value, const char *delim) { - if (isinf(value)) + if (isnan(value)) + sprintf(ptr, "%s%s", "NaN", delim); + else if (isinf(value)) { if (value < 0) sprintf(ptr, "%s%s", "-Infinity", delim); else sprintf(ptr, "%s%s", "Infinity", delim); } - else if (isnan(value)) - sprintf(ptr, "%s%s", "NaN", delim); else sprintf(ptr, "%.14g%s", value, delim); } -- cgit v1.2.3