diff --git a/driver-core/src/main/com/mongodb/internal/connection/ZlibCompressor.java b/driver-core/src/main/com/mongodb/internal/connection/ZlibCompressor.java index b2f4768b541..e826b626a79 100644 --- a/driver-core/src/main/com/mongodb/internal/connection/ZlibCompressor.java +++ b/driver-core/src/main/com/mongodb/internal/connection/ZlibCompressor.java @@ -18,6 +18,7 @@ import com.mongodb.MongoCompressor; +import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.util.zip.Deflater; @@ -48,6 +49,15 @@ InputStream getInputStream(final InputStream source) { @Override OutputStream getOutputStream(final OutputStream source) { - return new DeflaterOutputStream(source, new Deflater(level)); + return new DeflaterOutputStream(source, new Deflater(level)) { + @Override + public void close() throws IOException { + try { + super.close(); + } finally { + def.end(); + } + } + }; } }