Added recursion limits to AbstractReader.cs
diff --git a/src/ProtocolBuffers.Test/TestWriterFormatXml.cs b/src/ProtocolBuffers.Test/TestWriterFormatXml.cs
index b5eb60b..acad6f1 100644
--- a/src/ProtocolBuffers.Test/TestWriterFormatXml.cs
+++ b/src/ProtocolBuffers.Test/TestWriterFormatXml.cs
@@ -324,5 +324,13 @@
             TestXmlMessage copy = rdr.Merge(TestXmlMessage.CreateBuilder(), registry).Build();

             Assert.AreEqual(message, copy);

         }

+        [Test, ExpectedException(typeof(InvalidProtocolBufferException))]

+        public void TestRecursiveLimit()

+        {

+            StringBuilder sb = new StringBuilder(8192);

+            for (int i = 0; i < 80; i++)

+                sb.Append("<child>");

+            TestXmlRescursive msg = TestXmlRescursive.ParseFromXml("child", XmlReader.Create(new StringReader(sb.ToString())));

+        }

     }

 }