]> git.cworth.org Git - apitrace/blobdiff - retrace/json.hpp
Avoid inserting 'inf' and friends into the json output.
[apitrace] / retrace / json.hpp
index 6af1f4c6c4fab898fae8ca730c5092cefc850459..2f50a8c55aedc28fccad91c1493031289113cc2b 100644 (file)
 #include <stddef.h>
 #include <wchar.h>
 
+#ifdef _MSC_VER
+#  include <float.h>
+#  define isfinite _finite
+#else
+#  include <math.h> // isfinite
+#endif
+
 #include <iomanip>
 #include <limits>
 #include <ostream>
@@ -328,8 +335,8 @@ public:
 
     template<class T>
     inline void writeNumber(T n) {
-        if (n != n) {
-            // NaN
+        if (!isfinite(n)) {
+            // NaN/Inf
             writeNull();
         } else {
             separator();