Allow passing null to JsonArray.Add()
[mono.git] / mcs / class / System.Json / System.Json / JsonArray.cs
index 49010681dcd205c5222fa31eaa75398d46b69385..524e3e8b75007c0163ca85dce45f1bf4c003b4cb 100644 (file)
@@ -45,9 +45,6 @@ namespace System.Json
 
                public void Add (JsonValue item)
                {
-                       if (item == null)
-                               throw new ArgumentNullException ("item");
-
                        list.Add (item);
                }
 
@@ -108,7 +105,16 @@ namespace System.Json
                                throw new ArgumentNullException ("stream");
                        stream.WriteByte ((byte) '[');
                        for (int i = 0; i < list.Count; i++) {
-                               list [i].Save (stream);
+                               JsonValue v = list [i];
+                               if (v != null)
+                                       v.Save (stream);
+                               else {
+                                       stream.WriteByte ((byte) 'n');
+                                       stream.WriteByte ((byte) 'u');
+                                       stream.WriteByte ((byte) 'l');
+                                       stream.WriteByte ((byte) 'l');
+                               }
+
                                if (i < Count - 1) {
                                        stream.WriteByte ((byte) ',');
                                        stream.WriteByte ((byte) ' ');