summary refs log tree commit diff
path: root/crypto/src/asn1/ASN1StreamParser.cs
diff options
context:
space:
mode:
Diffstat (limited to 'crypto/src/asn1/ASN1StreamParser.cs')
-rw-r--r--crypto/src/asn1/ASN1StreamParser.cs26
1 files changed, 14 insertions, 12 deletions
diff --git a/crypto/src/asn1/ASN1StreamParser.cs b/crypto/src/asn1/ASN1StreamParser.cs
index 0c6b4413a..3eaaadaee 100644
--- a/crypto/src/asn1/ASN1StreamParser.cs
+++ b/crypto/src/asn1/ASN1StreamParser.cs
@@ -218,17 +218,19 @@ namespace Org.BouncyCastle.Asn1
 			}
 		}
 
-		internal Asn1EncodableVector ReadVector()
-		{
-			Asn1EncodableVector v = new Asn1EncodableVector();
-
-			IAsn1Convertible obj;
-			while ((obj = ReadObject()) != null)
-			{
-				v.Add(obj.ToAsn1Object());
-			}
-
-			return v;
-		}
+        internal Asn1EncodableVector ReadVector()
+        {
+            IAsn1Convertible obj = ReadObject();
+            if (null == obj)
+                return new Asn1EncodableVector(0);
+
+            Asn1EncodableVector v = new Asn1EncodableVector();
+            do
+            {
+                v.Add(obj.ToAsn1Object());
+            }
+            while ((obj = ReadObject()) != null);
+            return v;
+        }
 	}
 }