diff --git a/OpenMetaverse.StructuredData/JSON/JsonWriter.cs b/OpenMetaverse.StructuredData/JSON/JsonWriter.cs index 667b5f66..9dcc59dc 100644 --- a/OpenMetaverse.StructuredData/JSON/JsonWriter.cs +++ b/OpenMetaverse.StructuredData/JSON/JsonWriter.cs @@ -322,13 +322,16 @@ namespace LitJson DoValidation (Condition.Value); PutNewline (); - string str = Convert.ToString (number, number_format); - Put (str); + if (double.IsNaN(number) || double.IsInfinity(number)) + Put("null"); + else + { + string str = Convert.ToString(number, number_format); + Put(str); - if (str.IndexOf ('.') == -1 && - str.IndexOf ('E') == -1 && - !double.IsNaN(number)) - writer.Write (".0"); + if (str.IndexOf('.') == -1 && str.IndexOf('E') == -1) + writer.Write(".0"); + } context.ExpectingValue = false; }