diff --git a/crypto/src/util/io/BaseInputStream.cs b/crypto/src/util/io/BaseInputStream.cs
index 0a6e19307..a5613d801 100644
--- a/crypto/src/util/io/BaseInputStream.cs
+++ b/crypto/src/util/io/BaseInputStream.cs
@@ -25,6 +25,7 @@ namespace Org.BouncyCastle.Utilities.IO
public override void Close()
{
closed = true;
+ base.Close();
}
#endif
diff --git a/crypto/src/util/io/BaseOutputStream.cs b/crypto/src/util/io/BaseOutputStream.cs
index 0b6daa6a5..a0608d111 100644
--- a/crypto/src/util/io/BaseOutputStream.cs
+++ b/crypto/src/util/io/BaseOutputStream.cs
@@ -25,6 +25,7 @@ namespace Org.BouncyCastle.Utilities.IO
public override void Close()
{
closed = true;
+ base.Close();
}
#endif
diff --git a/crypto/src/util/io/FilterStream.cs b/crypto/src/util/io/FilterStream.cs
index fe359de90..a92dee3e5 100644
--- a/crypto/src/util/io/FilterStream.cs
+++ b/crypto/src/util/io/FilterStream.cs
@@ -42,6 +42,7 @@ namespace Org.BouncyCastle.Utilities.IO
public override void Close()
{
Platform.Dispose(s);
+ base.Close();
}
#endif
public override void Flush()
diff --git a/crypto/src/util/io/TeeInputStream.cs b/crypto/src/util/io/TeeInputStream.cs
index e5fc10157..6996f3fbb 100644
--- a/crypto/src/util/io/TeeInputStream.cs
+++ b/crypto/src/util/io/TeeInputStream.cs
@@ -33,6 +33,7 @@ namespace Org.BouncyCastle.Utilities.IO
{
Platform.Dispose(input);
Platform.Dispose(tee);
+ base.Close();
}
#endif
diff --git a/crypto/src/util/io/TeeOutputStream.cs b/crypto/src/util/io/TeeOutputStream.cs
index 82407d9fa..a6c7fd5b5 100644
--- a/crypto/src/util/io/TeeOutputStream.cs
+++ b/crypto/src/util/io/TeeOutputStream.cs
@@ -33,6 +33,7 @@ namespace Org.BouncyCastle.Utilities.IO
{
Platform.Dispose(output);
Platform.Dispose(tee);
+ base.Close();
}
#endif
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
|