private bool TryEnsureByte()
{
if (_stream == null)
return false;
DiagnosticUtility.DebugAssert(_offsetMax < _windowOffsetMax, "");
if (_offsetMax >= _buffer.Length)
return TryEnsureBytes(1);
int b = _stream.ReadByte();
if (b == -1)
return false;
_buffer[_offsetMax++] = (byte)b;
return true;
}