summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--crypto/src/asn1/Asn1Encodable.cs4
-rw-r--r--crypto/src/asn1/Asn1Object.cs8
2 files changed, 8 insertions, 4 deletions
diff --git a/crypto/src/asn1/Asn1Encodable.cs b/crypto/src/asn1/Asn1Encodable.cs

index 247b0e0bf..15918afb0 100644 --- a/crypto/src/asn1/Asn1Encodable.cs +++ b/crypto/src/asn1/Asn1Encodable.cs
@@ -21,14 +21,14 @@ namespace Org.BouncyCastle.Asn1 public byte[] GetEncoded() { MemoryStream bOut = new MemoryStream(); - EncodeTo(bOut); + ToAsn1Object().EncodeTo(bOut); return bOut.ToArray(); } public byte[] GetEncoded(string encoding) { MemoryStream bOut = new MemoryStream(); - EncodeTo(bOut, encoding); + ToAsn1Object().EncodeTo(bOut, encoding); return bOut.ToArray(); } diff --git a/crypto/src/asn1/Asn1Object.cs b/crypto/src/asn1/Asn1Object.cs
index 67c0f37c4..e6498060d 100644 --- a/crypto/src/asn1/Asn1Object.cs +++ b/crypto/src/asn1/Asn1Object.cs
@@ -8,12 +8,16 @@ namespace Org.BouncyCastle.Asn1 { public override void EncodeTo(Stream output) { - Asn1OutputStream.Create(output).WriteObject(this); + Asn1OutputStream asn1Out = Asn1OutputStream.Create(output); + Encode(asn1Out, true); + asn1Out.FlushInternal(); } public override void EncodeTo(Stream output, string encoding) { - Asn1OutputStream.Create(output, encoding).WriteObject(this); + Asn1OutputStream asn1Out = Asn1OutputStream.Create(output, encoding); + Encode(asn1Out, true); + asn1Out.FlushInternal(); } /// <summary>Create a base ASN.1 object from a byte array.</summary>