mirror of
https://github.com/aaru-dps/Aaru.git
synced 2025-12-16 19:24:25 +00:00
Do not calculate root position for CD-i, not needed.
This commit is contained in:
@@ -243,20 +243,26 @@ namespace DiscImageChef.Filesystems.ISO9660
|
|||||||
if(jolietvd != null)
|
if(jolietvd != null)
|
||||||
decodedJolietVD = DecodeJolietDescriptor(jolietvd.Value);
|
decodedJolietVD = DecodeJolietDescriptor(jolietvd.Value);
|
||||||
|
|
||||||
uint rootLocation = HighSierra ? hsvd.Value.root_directory_record.extent : pvd.Value.root_directory_record.extent;
|
uint rootLocation = 0;
|
||||||
uint rootSize = 0;
|
uint rootSize = 0;
|
||||||
|
|
||||||
if(HighSierra)
|
// No need to read root on CD-i, as extensions are not supported...
|
||||||
|
if(!CDi)
|
||||||
{
|
{
|
||||||
rootSize = hsvd.Value.root_directory_record.size / hsvd.Value.logical_block_size;
|
rootLocation = HighSierra ? hsvd.Value.root_directory_record.extent : pvd.Value.root_directory_record.extent;
|
||||||
if(hsvd.Value.root_directory_record.size % hsvd.Value.logical_block_size > 0)
|
|
||||||
rootSize++;
|
if(HighSierra)
|
||||||
}
|
{
|
||||||
else
|
rootSize = hsvd.Value.root_directory_record.size / hsvd.Value.logical_block_size;
|
||||||
{
|
if(hsvd.Value.root_directory_record.size % hsvd.Value.logical_block_size > 0)
|
||||||
rootSize = pvd.Value.root_directory_record.size / pvd.Value.logical_block_size;
|
rootSize++;
|
||||||
if(pvd.Value.root_directory_record.size % pvd.Value.logical_block_size > 0)
|
}
|
||||||
rootSize++;
|
else
|
||||||
|
{
|
||||||
|
rootSize = pvd.Value.root_directory_record.size / pvd.Value.logical_block_size;
|
||||||
|
if(pvd.Value.root_directory_record.size % pvd.Value.logical_block_size > 0)
|
||||||
|
rootSize++;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
byte[] root_dir = imagePlugin.ReadSectors(rootLocation + partition.Start, rootSize);
|
byte[] root_dir = imagePlugin.ReadSectors(rootLocation + partition.Start, rootSize);
|
||||||
|
|||||||
Reference in New Issue
Block a user