public override void Write(System.Byte[] b1, int off, int len)
{
if (len == 0)
{
return;
}
int err;
var b = new byte[b1.Length];
System.Array.Copy(b1, 0, b, 0, b1.Length);
z.next_in = b;
z.next_in_index = off;
z.avail_in = len;
do
{
z.next_out = buf;
z.next_out_index = 0;
z.avail_out = bufsize;
if (compress)
{
err = z.deflate(flush_Renamed_Field);
}
else
{
err = z.inflate(flush_Renamed_Field);
}
if (err != zlibConst.Z_OK && err != zlibConst.Z_STREAM_END)
{
throw new ZStreamException((compress?"de":"in") + "flating: " + z.msg);
}
out_Renamed.Write(buf, 0, bufsize - z.avail_out);
}while (z.avail_in > 0 || z.avail_out == 0);
}