mirror of
https://github.com/aaru-dps/Aaru.git
synced 2025-12-16 19:24:25 +00:00
Skip known system use areas.
This commit is contained in:
@@ -266,6 +266,9 @@ namespace DiscImageChef.Filesystems.ISO9660
|
|||||||
byte appleLength = data[systemAreaOff + 2];
|
byte appleLength = data[systemAreaOff + 2];
|
||||||
AppleId appleId = (AppleId)data[systemAreaOff + 3];
|
AppleId appleId = (AppleId)data[systemAreaOff + 3];
|
||||||
|
|
||||||
|
// Old AAIP
|
||||||
|
if(appleId == AppleId.ProDOS && appleLength != 7) goto case AAIP_MAGIC;
|
||||||
|
|
||||||
switch(appleId)
|
switch(appleId)
|
||||||
{
|
{
|
||||||
case AppleId.ProDOS:
|
case AppleId.ProDOS:
|
||||||
@@ -383,6 +386,30 @@ namespace DiscImageChef.Filesystems.ISO9660
|
|||||||
Marshal.SizeOf<CdromXa>());
|
Marshal.SizeOf<CdromXa>());
|
||||||
|
|
||||||
systemAreaOff += Marshal.SizeOf<CdromXa>();
|
systemAreaOff += Marshal.SizeOf<CdromXa>();
|
||||||
|
break;
|
||||||
|
// All of these follow the SUSP indication of 2 bytes for signature 1 byte for length
|
||||||
|
case AAIP_MAGIC:
|
||||||
|
case AMIGA_MAGIC:
|
||||||
|
case RRIP_MAGIC:
|
||||||
|
case RRIP_POSIX_ATTRIBUTES:
|
||||||
|
case RRIP_POSIX_DEV_NO:
|
||||||
|
case RRIP_SYMLINK:
|
||||||
|
case RRIP_NAME:
|
||||||
|
case RRIP_CHILDLINK:
|
||||||
|
case RRIP_PARENTLINK:
|
||||||
|
case RRIP_RELOCATED_DIR:
|
||||||
|
case RRIP_TIMESTAMPS:
|
||||||
|
case RRIP_SPARSE:
|
||||||
|
case SUSP_CONTINUATION:
|
||||||
|
case SUSP_PADDING:
|
||||||
|
case SUSP_INDICATOR:
|
||||||
|
case SUSP_TERMINATOR:
|
||||||
|
case SUSP_REFERENCE:
|
||||||
|
case SUSP_SELECTOR:
|
||||||
|
case ZISO_MAGIC:
|
||||||
|
byte suspLength = data[systemAreaOff + 2];
|
||||||
|
systemAreaOff += suspLength;
|
||||||
|
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
// Cannot continue as we don't know this structure size
|
// Cannot continue as we don't know this structure size
|
||||||
|
|||||||
Reference in New Issue
Block a user