private void ReadSector() { if (_bufferLoaded && _bufferDirty) { WriteSector(); } if (_s.Position != _s.Length) { int num = _s.Read(_buffer, 0, _buffer.Length); if (num != _bufferSize) { Array.Clear(_buffer, num, _buffer.Length - num); } _bufferLoaded = true; _bufferPos = 0; _bufferDirty = false; } }
/// <summary> /// Reads a sector /// </summary> private void ReadSector() { if (_bufferLoaded && _bufferDirty) { WriteSector(); } if (_s.Position == _s.Length) { return; } var bytesRead = _s.Read(_buffer, 0, _buffer.Length); //clean the end of it if (bytesRead != _bufferSize) { Array.Clear(_buffer, bytesRead, _buffer.Length - bytesRead); } _bufferLoaded = true; _bufferPos = 0; _bufferDirty = false; }