mirror of
https://github.com/aaru-dps/Aaru.git
synced 2025-12-16 19:24:25 +00:00
REFACTOR: Unreachable code.
This commit is contained in:
@@ -1384,8 +1384,6 @@ namespace DiscImageChef.CommonTypes
|
|||||||
}
|
}
|
||||||
default: return MediaType.UnknownMO;
|
default: return MediaType.UnknownMO;
|
||||||
}
|
}
|
||||||
|
|
||||||
return MediaType.UnknownMO;
|
|
||||||
}
|
}
|
||||||
// MultiMedia Device
|
// MultiMedia Device
|
||||||
case 0x05:
|
case 0x05:
|
||||||
|
|||||||
@@ -593,47 +593,33 @@ namespace DiscImageChef.DiscImages
|
|||||||
{
|
{
|
||||||
filtersList = new FiltersList();
|
filtersList = new FiltersList();
|
||||||
|
|
||||||
do
|
subFilter = filtersList.GetFilter(Path.Combine(imageFilter.GetParentFolder(), header.SubchannelFile));
|
||||||
{
|
if(subFilter == null)
|
||||||
subFilter =
|
|
||||||
filtersList.GetFilter(Path.Combine(imageFilter.GetParentFolder(), header.SubchannelFile));
|
|
||||||
if(subFilter != null) break;
|
|
||||||
|
|
||||||
subFilter = filtersList.GetFilter(Path.Combine(imageFilter.GetParentFolder(),
|
subFilter = filtersList.GetFilter(Path.Combine(imageFilter.GetParentFolder(),
|
||||||
header.SubchannelFile.ToLower(CultureInfo
|
header.SubchannelFile.ToLower(CultureInfo
|
||||||
.CurrentCulture)));
|
.CurrentCulture)));
|
||||||
if(subFilter != null) break;
|
if(subFilter == null)
|
||||||
|
|
||||||
subFilter = filtersList.GetFilter(Path.Combine(imageFilter.GetParentFolder(),
|
subFilter = filtersList.GetFilter(Path.Combine(imageFilter.GetParentFolder(),
|
||||||
header.SubchannelFile.ToUpper(CultureInfo
|
header.SubchannelFile.ToUpper(CultureInfo
|
||||||
.CurrentCulture)));
|
.CurrentCulture)));
|
||||||
if(subFilter != null) break;
|
if(subFilter == null)
|
||||||
|
|
||||||
subFilter = filtersList.GetFilter(Path.Combine(imageFilter.GetParentFolder(),
|
subFilter = filtersList.GetFilter(Path.Combine(imageFilter.GetParentFolder(),
|
||||||
header.SubchannelFile.Split(new[] {'\\'},
|
header.SubchannelFile.Split(new[] {'\\'},
|
||||||
StringSplitOptions
|
StringSplitOptions
|
||||||
.RemoveEmptyEntries)
|
.RemoveEmptyEntries)
|
||||||
.Last()));
|
.Last()));
|
||||||
if(subFilter != null) break;
|
if(subFilter == null)
|
||||||
|
|
||||||
subFilter = filtersList.GetFilter(Path.Combine(imageFilter.GetParentFolder(),
|
subFilter = filtersList.GetFilter(Path.Combine(imageFilter.GetParentFolder(),
|
||||||
header.SubchannelFile.Split(new[] {'\\'},
|
header.SubchannelFile.Split(new[] {'\\'},
|
||||||
StringSplitOptions
|
StringSplitOptions
|
||||||
.RemoveEmptyEntries)
|
.RemoveEmptyEntries)
|
||||||
.Last().ToLower(CultureInfo.CurrentCulture)));
|
.Last().ToLower(CultureInfo.CurrentCulture)));
|
||||||
if(subFilter != null) break;
|
if(subFilter == null)
|
||||||
|
|
||||||
subFilter = filtersList.GetFilter(Path.Combine(imageFilter.GetParentFolder(),
|
subFilter = filtersList.GetFilter(Path.Combine(imageFilter.GetParentFolder(),
|
||||||
header.SubchannelFile.Split(new[] {'\\'},
|
header.SubchannelFile.Split(new[] {'\\'},
|
||||||
StringSplitOptions
|
StringSplitOptions
|
||||||
.RemoveEmptyEntries)
|
.RemoveEmptyEntries)
|
||||||
.Last().ToUpper(CultureInfo.CurrentCulture)));
|
.Last().ToUpper(CultureInfo.CurrentCulture)));
|
||||||
if(subFilter != null) break;
|
|
||||||
|
|
||||||
subFilter = null;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
while(true);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
tracks = new List<Track>();
|
tracks = new List<Track>();
|
||||||
@@ -808,7 +794,8 @@ namespace DiscImageChef.DiscImages
|
|||||||
session.StartTrack = uint.MaxValue;
|
session.StartTrack = uint.MaxValue;
|
||||||
session.StartSector = uint.MaxValue;
|
session.StartSector = uint.MaxValue;
|
||||||
|
|
||||||
foreach(Track track in tracks.Where(track => track.TrackSession == i)) {
|
foreach(Track track in tracks.Where(track => track.TrackSession == i))
|
||||||
|
{
|
||||||
if(track.TrackSequence < session.StartTrack) session.StartTrack = track.TrackSequence;
|
if(track.TrackSequence < session.StartTrack) session.StartTrack = track.TrackSequence;
|
||||||
if(track.TrackSequence > session.EndTrack) session.StartTrack = track.TrackSequence;
|
if(track.TrackSequence > session.EndTrack) session.StartTrack = track.TrackSequence;
|
||||||
if(track.TrackStartSector < session.StartSector) session.StartSector = track.TrackStartSector;
|
if(track.TrackStartSector < session.StartSector) session.StartSector = track.TrackStartSector;
|
||||||
@@ -929,14 +916,28 @@ namespace DiscImageChef.DiscImages
|
|||||||
|
|
||||||
public override byte[] ReadSectors(ulong sectorAddress, uint length)
|
public override byte[] ReadSectors(ulong sectorAddress, uint length)
|
||||||
{
|
{
|
||||||
foreach(KeyValuePair<uint, ulong> kvp in from kvp in offsetmap where sectorAddress >= kvp.Value from track in tracks where track.TrackSequence == kvp.Key where sectorAddress - kvp.Value < track.TrackEndSector - track.TrackStartSector + 1 select kvp) return ReadSectors(sectorAddress - kvp.Value, length, kvp.Key);
|
foreach(KeyValuePair<uint, ulong> kvp in from kvp in offsetmap
|
||||||
|
where sectorAddress >= kvp.Value
|
||||||
|
from track in tracks
|
||||||
|
where track.TrackSequence == kvp.Key
|
||||||
|
where sectorAddress - kvp.Value <
|
||||||
|
track.TrackEndSector - track.TrackStartSector + 1
|
||||||
|
select kvp)
|
||||||
|
return ReadSectors(sectorAddress - kvp.Value, length, kvp.Key);
|
||||||
|
|
||||||
throw new ArgumentOutOfRangeException(nameof(sectorAddress), "Sector address not found");
|
throw new ArgumentOutOfRangeException(nameof(sectorAddress), "Sector address not found");
|
||||||
}
|
}
|
||||||
|
|
||||||
public override byte[] ReadSectorsTag(ulong sectorAddress, uint length, SectorTagType tag)
|
public override byte[] ReadSectorsTag(ulong sectorAddress, uint length, SectorTagType tag)
|
||||||
{
|
{
|
||||||
foreach(KeyValuePair<uint, ulong> kvp in from kvp in offsetmap where sectorAddress >= kvp.Value from track in tracks where track.TrackSequence == kvp.Key where sectorAddress - kvp.Value < track.TrackEndSector - track.TrackStartSector + 1 select kvp) return ReadSectorsTag(sectorAddress - kvp.Value, length, kvp.Key, tag);
|
foreach(KeyValuePair<uint, ulong> kvp in from kvp in offsetmap
|
||||||
|
where sectorAddress >= kvp.Value
|
||||||
|
from track in tracks
|
||||||
|
where track.TrackSequence == kvp.Key
|
||||||
|
where sectorAddress - kvp.Value <
|
||||||
|
track.TrackEndSector - track.TrackStartSector + 1
|
||||||
|
select kvp)
|
||||||
|
return ReadSectorsTag(sectorAddress - kvp.Value, length, kvp.Key, tag);
|
||||||
|
|
||||||
throw new ArgumentOutOfRangeException(nameof(sectorAddress), "Sector address not found");
|
throw new ArgumentOutOfRangeException(nameof(sectorAddress), "Sector address not found");
|
||||||
}
|
}
|
||||||
@@ -947,7 +948,8 @@ namespace DiscImageChef.DiscImages
|
|||||||
|
|
||||||
_track.TrackSequence = 0;
|
_track.TrackSequence = 0;
|
||||||
|
|
||||||
foreach(Track bwTrack in tracks.Where(bwTrack => bwTrack.TrackSequence == track)) {
|
foreach(Track bwTrack in tracks.Where(bwTrack => bwTrack.TrackSequence == track))
|
||||||
|
{
|
||||||
_track = bwTrack;
|
_track = bwTrack;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@@ -960,8 +962,7 @@ namespace DiscImageChef.DiscImages
|
|||||||
string
|
string
|
||||||
.Format("Requested more sectors ({0}) than present in track ({1}), won't cross tracks",
|
.Format("Requested more sectors ({0}) than present in track ({1}), won't cross tracks",
|
||||||
length + sectorAddress,
|
length + sectorAddress,
|
||||||
_track.TrackEndSector - _track.TrackStartSector +
|
_track.TrackEndSector - _track.TrackStartSector + 1));
|
||||||
1));
|
|
||||||
|
|
||||||
uint sectorOffset;
|
uint sectorOffset;
|
||||||
uint sectorSize;
|
uint sectorSize;
|
||||||
@@ -1027,7 +1028,8 @@ namespace DiscImageChef.DiscImages
|
|||||||
|
|
||||||
_track.TrackSequence = 0;
|
_track.TrackSequence = 0;
|
||||||
|
|
||||||
foreach(Track bwTrack in tracks.Where(bwTrack => bwTrack.TrackSequence == track)) {
|
foreach(Track bwTrack in tracks.Where(bwTrack => bwTrack.TrackSequence == track))
|
||||||
|
{
|
||||||
_track = bwTrack;
|
_track = bwTrack;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@@ -1040,8 +1042,7 @@ namespace DiscImageChef.DiscImages
|
|||||||
string
|
string
|
||||||
.Format("Requested more sectors ({0}) than present in track ({1}), won't cross tracks",
|
.Format("Requested more sectors ({0}) than present in track ({1}), won't cross tracks",
|
||||||
length + sectorAddress,
|
length + sectorAddress,
|
||||||
_track.TrackEndSector - _track.TrackStartSector +
|
_track.TrackEndSector - _track.TrackStartSector + 1));
|
||||||
1));
|
|
||||||
|
|
||||||
uint sectorOffset;
|
uint sectorOffset;
|
||||||
uint sectorSize;
|
uint sectorSize;
|
||||||
@@ -1199,7 +1200,14 @@ namespace DiscImageChef.DiscImages
|
|||||||
|
|
||||||
public override byte[] ReadSectorsLong(ulong sectorAddress, uint length)
|
public override byte[] ReadSectorsLong(ulong sectorAddress, uint length)
|
||||||
{
|
{
|
||||||
foreach(KeyValuePair<uint, ulong> kvp in from kvp in offsetmap where sectorAddress >= kvp.Value from track in tracks where track.TrackSequence == kvp.Key where sectorAddress - kvp.Value < track.TrackEndSector - track.TrackStartSector + 1 select kvp) return ReadSectorsLong(sectorAddress - kvp.Value, length, kvp.Key);
|
foreach(KeyValuePair<uint, ulong> kvp in from kvp in offsetmap
|
||||||
|
where sectorAddress >= kvp.Value
|
||||||
|
from track in tracks
|
||||||
|
where track.TrackSequence == kvp.Key
|
||||||
|
where sectorAddress - kvp.Value <
|
||||||
|
track.TrackEndSector - track.TrackStartSector + 1
|
||||||
|
select kvp)
|
||||||
|
return ReadSectorsLong(sectorAddress - kvp.Value, length, kvp.Key);
|
||||||
|
|
||||||
throw new ArgumentOutOfRangeException(nameof(sectorAddress), "Sector address not found");
|
throw new ArgumentOutOfRangeException(nameof(sectorAddress), "Sector address not found");
|
||||||
}
|
}
|
||||||
@@ -1210,7 +1218,8 @@ namespace DiscImageChef.DiscImages
|
|||||||
|
|
||||||
_track.TrackSequence = 0;
|
_track.TrackSequence = 0;
|
||||||
|
|
||||||
foreach(Track bwTrack in tracks.Where(bwTrack => bwTrack.TrackSequence == track)) {
|
foreach(Track bwTrack in tracks.Where(bwTrack => bwTrack.TrackSequence == track))
|
||||||
|
{
|
||||||
_track = bwTrack;
|
_track = bwTrack;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@@ -1223,8 +1232,7 @@ namespace DiscImageChef.DiscImages
|
|||||||
string
|
string
|
||||||
.Format("Requested more sectors ({0}) than present in track ({1}), won't cross tracks",
|
.Format("Requested more sectors ({0}) than present in track ({1}), won't cross tracks",
|
||||||
length + sectorAddress,
|
length + sectorAddress,
|
||||||
_track.TrackEndSector - _track.TrackStartSector +
|
_track.TrackEndSector - _track.TrackStartSector + 1));
|
||||||
1));
|
|
||||||
|
|
||||||
uint sectorOffset;
|
uint sectorOffset;
|
||||||
uint sectorSize;
|
uint sectorSize;
|
||||||
|
|||||||
@@ -1234,8 +1234,6 @@ namespace DiscImageChef.DiscImages
|
|||||||
sectorOffset = 2048;
|
sectorOffset = 2048;
|
||||||
sectorSize = 96;
|
sectorSize = 96;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
throw new ArgumentException("No tags in image for requested track", nameof(tag));
|
|
||||||
case CDRDAO_TRACK_TYPE_MODE2_FORM2:
|
case CDRDAO_TRACK_TYPE_MODE2_FORM2:
|
||||||
case CDRDAO_TRACK_TYPE_MODE2_MIX:
|
case CDRDAO_TRACK_TYPE_MODE2_MIX:
|
||||||
if(tag != SectorTagType.CdSectorSubchannel)
|
if(tag != SectorTagType.CdSectorSubchannel)
|
||||||
@@ -1244,8 +1242,6 @@ namespace DiscImageChef.DiscImages
|
|||||||
sectorOffset = 2336;
|
sectorOffset = 2336;
|
||||||
sectorSize = 96;
|
sectorSize = 96;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
throw new ArgumentException("No tags in image for requested track", nameof(tag));
|
|
||||||
case CDRDAO_TRACK_TYPE_AUDIO:
|
case CDRDAO_TRACK_TYPE_AUDIO:
|
||||||
if(tag != SectorTagType.CdSectorSubchannel)
|
if(tag != SectorTagType.CdSectorSubchannel)
|
||||||
throw new ArgumentException("No tags in image for requested track", nameof(tag));
|
throw new ArgumentException("No tags in image for requested track", nameof(tag));
|
||||||
@@ -1253,8 +1249,6 @@ namespace DiscImageChef.DiscImages
|
|||||||
sectorOffset = 2352;
|
sectorOffset = 2352;
|
||||||
sectorSize = 96;
|
sectorSize = 96;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
throw new ArgumentException("No tags in image for requested track", nameof(tag));
|
|
||||||
case CDRDAO_TRACK_TYPE_MODE1_RAW:
|
case CDRDAO_TRACK_TYPE_MODE1_RAW:
|
||||||
{
|
{
|
||||||
switch(tag)
|
switch(tag)
|
||||||
@@ -1321,8 +1315,6 @@ namespace DiscImageChef.DiscImages
|
|||||||
sectorOffset = 2352;
|
sectorOffset = 2352;
|
||||||
sectorSize = 96;
|
sectorSize = 96;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
throw new FeatureSupportedButNotImplementedImageException("Feature not yet implemented");
|
|
||||||
default: throw new FeatureSupportedButNotImplementedImageException("Unsupported track type");
|
default: throw new FeatureSupportedButNotImplementedImageException("Unsupported track type");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -112,8 +112,6 @@ namespace DiscImageChef.DiscImages
|
|||||||
case 1255168: return true;
|
case 1255168: return true;
|
||||||
default: return false;
|
default: return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
return true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public override bool OpenImage(Filter imageFilter)
|
public override bool OpenImage(Filter imageFilter)
|
||||||
|
|||||||
@@ -205,9 +205,6 @@ namespace DiscImageChef.Interop
|
|||||||
}
|
}
|
||||||
|
|
||||||
goto default;
|
goto default;
|
||||||
|
|
||||||
return string.Format("10.{0}.{1}", Environment.OSVersion.Version.Major - 4,
|
|
||||||
Environment.OSVersion.Version.Minor);
|
|
||||||
case PlatformID.Win32NT:
|
case PlatformID.Win32NT:
|
||||||
// From Windows 8.1 the reported version is simply falsified...
|
// From Windows 8.1 the reported version is simply falsified...
|
||||||
if(Environment.OSVersion.Version.Major == 6 && Environment.OSVersion.Version.Major >= 2 ||
|
if(Environment.OSVersion.Version.Major == 6 && Environment.OSVersion.Version.Major >= 2 ||
|
||||||
|
|||||||
Reference in New Issue
Block a user