internal void Update(ISODirectoryRecord record) { _header.directoryRecordLBA = record.LBA; for (int i = 0; i < _header.entryCount; i++) { _subEntries[i].Update(record.SubEntries[i]); } }
private void InternalRead(BinaryReader reader) { reader.Seek(CVM_HEADER_SIZE + ISO_RESERVED_SIZE, SeekOrigin.Begin); byte sectorType = reader.ReadByte(); while (sectorType != ID_PRIM_VOLUME_DESC) { reader.Seek(ISO_BLOCKSIZE - 1, SeekOrigin.Current); sectorType = reader.ReadByte(); } reader.Seek(ISO_ROOTDIRECTORY_OFFSET - 1, SeekOrigin.Current); _rootDirectory = new ISODirectoryRecord(reader, null); }
internal void Update(ISODirectoryRecord record) { if (_header.name != record.Name) { Console.WriteLine("Warning: CVM entry name mismatch! Expected: \"{0}\" Got: \"{1}\"", _header.name, record.Name); } _header.size = record.Size; _header.LBA = record.LBA; if (_dirList != null) { _dirList.Update(record); } }