private void Deflate(bool flushing) { while (flushing || !this.deflater.IsNeedingInput) { int deflateCount = this.deflater.Deflate(this.buffer, 0, BufferLength); if (deflateCount <= 0) { break; } this.rawStream.Write(this.buffer, 0, deflateCount); } if (!this.deflater.IsNeedingInput) { DeflateThrowHelper.ThrowNoDeflate(); } }
private void Finish() { this.deflater.Finish(); while (!this.deflater.IsFinished) { int len = this.deflater.Deflate(this.buffer, 0, BufferLength); if (len <= 0) { break; } this.rawStream.Write(this.buffer, 0, len); } if (!this.deflater.IsFinished) { DeflateThrowHelper.ThrowNoDeflate(); } this.rawStream.Flush(); }