From c5523a17e8dfd1da47716586bf85c3d0619d15c7 Mon Sep 17 00:00:00 2001 From: Taneli Mielikainen Date: Sun, 4 Aug 2013 00:21:58 +0300 Subject: [PATCH] fixing problem that isinf(-Inf) can be 1 or -1 --- json_object.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/json_object.c b/json_object.c index e12c4407..b63faa48 100644 --- a/json_object.c +++ b/json_object.c @@ -575,10 +575,11 @@ static int json_object_double_to_json_string(struct json_object* jso, how to handle these cases as strings */ if(isnan(jso->o.c_double)) size = snprintf(buf, 128, "NaN"); - else if(isinf(jso->o.c_double) == 1) - size = snprintf(buf, 128, "Infinity"); - else if(isinf(jso->o.c_double) == -1) - size = snprintf(buf, 128, "-Infinity"); + else if(isinf(jso->o.c_double)) + if(jso->o.c_double > 0) + size = snprintf(buf, 128, "Infinity"); + else + size = snprintf(buf, 128, "-Infinity"); else size = snprintf(buf, 128, "%f", jso->o.c_double); -- 2.39.5