From 0ff97264a685fba438b81238f692a4cbb942011f Mon Sep 17 00:00:00 2001 From: Peter Dettman Date: Sun, 8 Nov 2015 12:43:15 +0700 Subject: Tighten up the correspondence b/w Close/Dispose --- crypto/src/util/zlib/ZDeflaterOutputStream.cs | 1 + crypto/src/util/zlib/ZInflaterInputStream.cs | 1 + crypto/src/util/zlib/ZInputStream.cs | 21 +++++++++++---------- crypto/src/util/zlib/ZOutputStream.cs | 5 +++-- 4 files changed, 16 insertions(+), 12 deletions(-) (limited to 'crypto/src/util/zlib') diff --git a/crypto/src/util/zlib/ZDeflaterOutputStream.cs b/crypto/src/util/zlib/ZDeflaterOutputStream.cs index 99a4ebfbe..d0f0bcb8d 100644 --- a/crypto/src/util/zlib/ZDeflaterOutputStream.cs +++ b/crypto/src/util/zlib/ZDeflaterOutputStream.cs @@ -164,6 +164,7 @@ namespace Org.BouncyCastle.Utilities.Zlib { Platform.Dispose(outp); outp=null; } + base.Close(); } #endif } diff --git a/crypto/src/util/zlib/ZInflaterInputStream.cs b/crypto/src/util/zlib/ZInflaterInputStream.cs index 0f0999e86..ef742bb00 100644 --- a/crypto/src/util/zlib/ZInflaterInputStream.cs +++ b/crypto/src/util/zlib/ZInflaterInputStream.cs @@ -127,6 +127,7 @@ namespace Org.BouncyCastle.Utilities.Zlib { public override void Close() { Platform.Dispose(inp); + base.Close(); } #endif diff --git a/crypto/src/util/zlib/ZInputStream.cs b/crypto/src/util/zlib/ZInputStream.cs index ee19af587..4b7351555 100644 --- a/crypto/src/util/zlib/ZInputStream.cs +++ b/crypto/src/util/zlib/ZInputStream.cs @@ -98,22 +98,23 @@ namespace Org.BouncyCastle.Utilities.Zlib { if (disposing) { - if (!closed) - { - closed = true; - Platform.Dispose(input); - } + if (closed) + return; + + closed = true; + Platform.Dispose(input); } base.Dispose(disposing); } #else public override void Close() { - if (!closed) - { - closed = true; - Platform.Dispose(input); - } + if (closed) + return; + + closed = true; + Platform.Dispose(input); + base.Close(); } #endif diff --git a/crypto/src/util/zlib/ZOutputStream.cs b/crypto/src/util/zlib/ZOutputStream.cs index ede557135..d9f005f69 100644 --- a/crypto/src/util/zlib/ZOutputStream.cs +++ b/crypto/src/util/zlib/ZOutputStream.cs @@ -100,7 +100,7 @@ namespace Org.BouncyCastle.Utilities.Zlib { if (disposing) { - if (this.closed) + if (closed) return; DoClose(); @@ -110,10 +110,11 @@ namespace Org.BouncyCastle.Utilities.Zlib #else public override void Close() { - if (this.closed) + if (closed) return; DoClose(); + base.Close(); } #endif -- cgit 1.5.1