public ZlibBaseStream(System.IO.Stream stream, ZlibStreamFlavor flavor, bool leaveOpen) : base() { this._flushMode = FlushType.None; //this._workingBuffer = new byte[WORKING_BUFFER_SIZE_DEFAULT]; this._stream = stream; this._leaveOpen = leaveOpen; this._flavor = flavor; // workitem 7159 if (flavor == ZlibStreamFlavor.GZIP) { crc = new CRC32(); } }
// This ctor is private - no validation is done here. This is to allow the use // of a (specific) negative value for the _lengthLimit, to indicate that there // is no length set. So we validate the length limit in those ctors that use an // explicit param, otherwise we don't validate, because it could be our special // value. private CrcCalculatorStream(bool leaveOpen, Int64 length, System.IO.Stream stream) : base() { _innerStream = stream; _Crc32 = new CRC32(); _lengthLimit = length; _leaveOpen = leaveOpen; }