Add support for negative sectors to read and write sector calls in images.

This commit is contained in:
2025-10-23 03:07:43 +01:00
parent 0c19fe1b11
commit 69738f5f1a
289 changed files with 2676 additions and 1352 deletions

View File

@@ -53,7 +53,7 @@ public sealed partial class exFAT
{
if(12 + partition.Start >= partition.End) return false;
ErrorNumber errno = imagePlugin.ReadSector(0 + partition.Start, out byte[] vbrSector, out _);
ErrorNumber errno = imagePlugin.ReadSector(0 + partition.Start, false, out byte[] vbrSector, out _);
if(errno != ErrorNumber.NoError) return false;
@@ -73,20 +73,20 @@ public sealed partial class exFAT
var sb = new StringBuilder();
metadata = new FileSystem();
ErrorNumber errno = imagePlugin.ReadSector(0 + partition.Start, out byte[] vbrSector, out _);
ErrorNumber errno = imagePlugin.ReadSector(0 + partition.Start, false, out byte[] vbrSector, out _);
if(errno != ErrorNumber.NoError) return;
VolumeBootRecord vbr = Marshal.ByteArrayToStructureLittleEndian<VolumeBootRecord>(vbrSector);
errno = imagePlugin.ReadSector(9 + partition.Start, out byte[] parametersSector, out _);
errno = imagePlugin.ReadSector(9 + partition.Start, false, out byte[] parametersSector, out _);
if(errno != ErrorNumber.NoError) return;
OemParameterTable parametersTable =
Marshal.ByteArrayToStructureLittleEndian<OemParameterTable>(parametersSector);
errno = imagePlugin.ReadSector(11 + partition.Start, out byte[] chkSector, out _);
errno = imagePlugin.ReadSector(11 + partition.Start, false, out byte[] chkSector, out _);
if(errno != ErrorNumber.NoError) return;