fixing problem that isinf(-Inf) can be 1 or -1
diff --git a/json_object.c b/json_object.c
index e12c440..b63faa4 100644
--- a/json_object.c
+++ b/json_object.c
@@ -575,10 +575,11 @@
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);