diff --git a/Aaru.Core/Devices/Dumping/CompactDisc/Dump.cs b/Aaru.Core/Devices/Dumping/CompactDisc/Dump.cs
index 449c720b2..e6aa287fe 100644
--- a/Aaru.Core/Devices/Dumping/CompactDisc/Dump.cs
+++ b/Aaru.Core/Devices/Dumping/CompactDisc/Dump.cs
@@ -63,55 +63,55 @@ sealed partial class Dump
/// Dumps a compact disc
void CompactDisc()
{
- ExtentsULong audioExtents; // Extents with audio sectors
- ulong blocks; // Total number of positive sectors
- uint blockSize; // Size of the read sector in bytes
- CdOffset cdOffset; // Read offset from database
- byte[] cmdBuf; // Data buffer
- DumpHardwareType currentTry = null; // Current dump hardware try
- double currentSpeed = 0; // Current read speed
- int? discOffset = null; // Disc write offset
- DateTime dumpStart = DateTime.UtcNow; // Time of dump start
- DateTime end; // Time of operation end
- ExtentsULong extents = null; // Extents
- bool hiddenData; // Hidden track is data
- IbgLog ibgLog; // IMGBurn log
- double imageWriteDuration = 0; // Duration of image write
- long lastSector; // Last sector number
+ ExtentsULong audioExtents; // Extents with audio sectors
+ ulong blocks; // Total number of positive sectors
+ uint blockSize; // Size of the read sector in bytes
+ CdOffset cdOffset; // Read offset from database
+ byte[] cmdBuf; // Data buffer
+ DumpHardwareType currentTry = null; // Current dump hardware try
+ double currentSpeed = 0; // Current read speed
+ int? discOffset = null; // Disc write offset
+ DateTime dumpStart = DateTime.UtcNow; // Time of dump start
+ DateTime end; // Time of operation end
+ ExtentsULong extents = null; // Extents
+ bool hiddenData; // Hidden track is data
+ IbgLog ibgLog; // IMGBurn log
+ double imageWriteDuration = 0; // Duration of image write
+ long lastSector; // Last sector number
var leadOutExtents = new ExtentsULong(); // Lead-out extents
- Dictionary leadOutStarts = new(); // Lead-out starts
- double maxSpeed = double.MinValue; // Maximum speed
- MhddLog mhddLog; // MHDD log
- double minSpeed = double.MaxValue; // Minimum speed
- bool newTrim; // Is trim a new one?
- var offsetBytes = 0; // Read offset
- var read6 = false; // Device supports READ(6)
- var read10 = false; // Device supports READ(10)
- var read12 = false; // Device supports READ(12)
- var read16 = false; // Device supports READ(16)
- bool readcd; // Device supports READ CD
- bool ret; // Image writing return status
- const uint sectorSize = 2352; // Full sector size
- var sectorsForOffset = 0; // Sectors needed to fix offset
- var sense = true; // Sense indicator
- int sessions; // Number of sessions in disc
- DateTime start; // Start of operation
- SubchannelLog subLog = null; // Subchannel log
- uint subSize; // Subchannel size in bytes
- TrackSubchannelType subType; // Track subchannel type
- var supportsLongSectors = true; // Supports reading EDC and ECC
- bool supportsPqSubchannel; // Supports reading PQ subchannel
- bool supportsRwSubchannel; // Supports reading RW subchannel
- byte[] tmpBuf; // Temporary buffer
- FullTOC.CDFullTOC? toc; // Full CD TOC
- double totalDuration = 0; // Total commands duration
- Dictionary trackFlags = new(); // Track flags
- Track[] tracks; // Tracks in disc
- int firstTrackLastSession; // Number of first track in last session
- bool hiddenTrack; // Disc has a hidden track before track 1
- MmcSubchannel supportedSubchannel; // Drive's maximum supported subchannel
- MmcSubchannel desiredSubchannel; // User requested subchannel
- var bcdSubchannel = false; // Subchannel positioning is in BCD
+ Dictionary leadOutStarts = new(); // Lead-out starts
+ double maxSpeed = double.MinValue; // Maximum speed
+ MhddLog mhddLog; // MHDD log
+ double minSpeed = double.MaxValue; // Minimum speed
+ bool newTrim; // Is trim a new one?
+ var offsetBytes = 0; // Read offset
+ var read6 = false; // Device supports READ(6)
+ var read10 = false; // Device supports READ(10)
+ var read12 = false; // Device supports READ(12)
+ var read16 = false; // Device supports READ(16)
+ var readcd = true; // Device supports READ CD
+ bool ret; // Image writing return status
+ const uint sectorSize = 2352; // Full sector size
+ var sectorsForOffset = 0; // Sectors needed to fix offset
+ var sense = true; // Sense indicator
+ int sessions; // Number of sessions in disc
+ DateTime start; // Start of operation
+ SubchannelLog subLog = null; // Subchannel log
+ uint subSize = 0; // Subchannel size in bytes
+ TrackSubchannelType subType = TrackSubchannelType.None; // Track subchannel type
+ var supportsLongSectors = true; // Supports reading EDC and ECC
+ bool supportsPqSubchannel; // Supports reading PQ subchannel
+ bool supportsRwSubchannel; // Supports reading RW subchannel
+ byte[] tmpBuf; // Temporary buffer
+ FullTOC.CDFullTOC? toc; // Full CD TOC
+ double totalDuration = 0; // Total commands duration
+ Dictionary trackFlags = new(); // Track flags
+ Track[] tracks; // Tracks in disc
+ int firstTrackLastSession; // Number of first track in last session
+ bool hiddenTrack; // Disc has a hidden track before track 1
+ MmcSubchannel supportedSubchannel; // Drive's maximum supported subchannel
+ MmcSubchannel desiredSubchannel; // User requested subchannel
+ var bcdSubchannel = false; // Subchannel positioning is in BCD
Dictionary isrcs = new();
string mcn = null;
HashSet subchannelExtents = new();
@@ -338,13 +338,6 @@ sealed partial class Dump
readcd = true;
break;
- default:
- _dumpLog.WriteLine("Handling subchannel type {0} not supported, exiting...", supportedSubchannel);
-
- StoppingErrorMessage?.Invoke($"Handling subchannel type {supportedSubchannel
- } not supported, exiting...");
-
- return;
}
switch(desiredSubchannel)
diff --git a/Aaru.Core/Devices/Dumping/CompactDisc/Error.cs b/Aaru.Core/Devices/Dumping/CompactDisc/Error.cs
index cd468db74..69f980609 100644
--- a/Aaru.Core/Devices/Dumping/CompactDisc/Error.cs
+++ b/Aaru.Core/Devices/Dumping/CompactDisc/Error.cs
@@ -559,7 +559,6 @@ partial class Dump
supportedPlextorSubchannel = supportedSubchannel switch
{
- MmcSubchannel.None => PlextorSubchannel.None,
MmcSubchannel.Raw => PlextorSubchannel.All,
MmcSubchannel.Q16 => PlextorSubchannel.Q16,
MmcSubchannel.Rw => PlextorSubchannel.Pack,
diff --git a/Aaru.Images/BlindWrite4/Read.cs b/Aaru.Images/BlindWrite4/Read.cs
index 3a694f00d..f43d0d8c5 100644
--- a/Aaru.Images/BlindWrite4/Read.cs
+++ b/Aaru.Images/BlindWrite4/Read.cs
@@ -962,9 +962,9 @@ public sealed partial class BlindWrite4
if(length + sectorAddress > aaruTrack.EndSector - aaruTrack.StartSector + 1)
return ErrorNumber.OutOfRange;
- uint sectorOffset;
- uint sectorSize;
- uint sectorSkip;
+ uint sectorOffset = 0;
+ uint sectorSize = 0;
+ uint sectorSkip = 0;
if(aaruTrack.Type == CommonTypes.Enums.TrackType.Data)
return ErrorNumber.NotSupported;
@@ -1054,7 +1054,6 @@ public sealed partial class BlindWrite4
break;
}
- default: return ErrorNumber.NotSupported;
}
break;
@@ -1091,7 +1090,6 @@ public sealed partial class BlindWrite4
break;
}
- default: return ErrorNumber.NotSupported;
}
break;
diff --git a/Aaru.Images/CDRDAO/Read.cs b/Aaru.Images/CDRDAO/Read.cs
index 31fb8fbcc..d8e40529e 100644
--- a/Aaru.Images/CDRDAO/Read.cs
+++ b/Aaru.Images/CDRDAO/Read.cs
@@ -1097,9 +1097,9 @@ public sealed partial class Cdrdao
if(length > aaruTrack.Sectors)
return ErrorNumber.OutOfRange;
- uint sectorOffset;
- uint sectorSize;
- uint sectorSkip = 0;
+ uint sectorOffset = 0;
+ uint sectorSize = 0;
+ uint sectorSkip = 0;
if(!aaruTrack.Subchannel &&
tag == SectorTagType.CdSectorSubchannel)
@@ -1236,7 +1236,6 @@ public sealed partial class Cdrdao
break;
}
- default: return ErrorNumber.NotSupported;
}
break;
diff --git a/Aaru.Images/CDRWin/Read.cs b/Aaru.Images/CDRWin/Read.cs
index 0bfafbf2e..3aa6eb8b7 100644
--- a/Aaru.Images/CDRWin/Read.cs
+++ b/Aaru.Images/CDRWin/Read.cs
@@ -1869,9 +1869,9 @@ public sealed partial class CdrWin
if(length > aaruTrack.Sectors)
return ErrorNumber.OutOfRange;
- uint sectorOffset;
- uint sectorSize;
- uint sectorSkip;
+ uint sectorOffset = 0;
+ uint sectorSize = 0;
+ uint sectorSkip = 0;
switch(tag)
{
@@ -1968,7 +1968,6 @@ public sealed partial class CdrWin
break;
}
- default: return ErrorNumber.NotSupported;
}
break;
@@ -2037,7 +2036,6 @@ public sealed partial class CdrWin
break;
}
- default: return ErrorNumber.NotSupported;
}
break;
diff --git a/Aaru.Images/CHD/Read.cs b/Aaru.Images/CHD/Read.cs
index 31bdc73cd..bff4dd36c 100644
--- a/Aaru.Images/CHD/Read.cs
+++ b/Aaru.Images/CHD/Read.cs
@@ -1621,7 +1621,6 @@ public sealed partial class Chd
{
case SectorTagType.CdSectorSync:
case SectorTagType.CdSectorHeader:
- case SectorTagType.CdSectorSubchannel:
case SectorTagType.CdSectorEcc:
case SectorTagType.CdSectorEccP:
case SectorTagType.CdSectorEccQ: return ErrorNumber.NotSupported;
diff --git a/Aaru.Images/CloneCD/Read.cs b/Aaru.Images/CloneCD/Read.cs
index 0197292f5..89ab3161a 100644
--- a/Aaru.Images/CloneCD/Read.cs
+++ b/Aaru.Images/CloneCD/Read.cs
@@ -1101,9 +1101,9 @@ public sealed partial class CloneCd
default: return ErrorNumber.NotSupported;
}
- uint sectorOffset;
- uint sectorSize;
- uint sectorSkip;
+ uint sectorOffset = 0;
+ uint sectorSize = 0;
+ uint sectorSkip = 0;
switch(aaruTrack.Type)
{
@@ -1159,7 +1159,6 @@ public sealed partial class CloneCd
break;
}
- default: return ErrorNumber.NotSupported;
}
break;
@@ -1188,7 +1187,6 @@ public sealed partial class CloneCd
break;
}
- default: return ErrorNumber.NotSupported;
}
break;
@@ -1252,7 +1250,6 @@ public sealed partial class CloneCd
break;
}
- default: return ErrorNumber.NotSupported;
}
break;
diff --git a/Aaru.Images/GDI/Read.cs b/Aaru.Images/GDI/Read.cs
index 7277a7aa0..79b5a9430 100644
--- a/Aaru.Images/GDI/Read.cs
+++ b/Aaru.Images/GDI/Read.cs
@@ -555,9 +555,9 @@ public sealed partial class Gdi
if(length > aaruTrack.Sectors)
return ErrorNumber.OutOfRange;
- uint sectorOffset;
- uint sectorSize;
- uint sectorSkip;
+ uint sectorOffset = 0;
+ uint sectorSize = 0;
+ uint sectorSkip = 0;
switch(tag)
{
@@ -605,8 +605,6 @@ public sealed partial class Gdi
break;
}
- case SectorTagType.CdSectorSubchannel:
- case SectorTagType.CdSectorSubHeader: return ErrorNumber.NotSupported;
case SectorTagType.CdSectorEcc:
{
sectorOffset = 2076;
@@ -639,7 +637,6 @@ public sealed partial class Gdi
break;
}
- default: return ErrorNumber.NotSupported;
}
break;
diff --git a/Aaru.Images/Nero/Read.cs b/Aaru.Images/Nero/Read.cs
index 3bc2cf9a6..619a8de20 100644
--- a/Aaru.Images/Nero/Read.cs
+++ b/Aaru.Images/Nero/Read.cs
@@ -1757,9 +1757,9 @@ public sealed partial class Nero
if(length > aaruTrack.Sectors)
return ErrorNumber.OutOfRange;
- uint sectorOffset;
- uint sectorSize;
- uint sectorSkip;
+ uint sectorOffset = 0;
+ uint sectorSize = 0;
+ uint sectorSkip = 0;
switch(tag)
{
@@ -1820,8 +1820,6 @@ public sealed partial class Nero
break;
}
-
- default: return ErrorNumber.NotSupported;
}
break;
@@ -1888,8 +1886,6 @@ public sealed partial class Nero
break;
}
-
- default: return ErrorNumber.NotSupported;
}
break;
@@ -2014,8 +2010,6 @@ public sealed partial class Nero
break;
}
-
- default: return ErrorNumber.NotSupported;
}
break;
diff --git a/Aaru.Tests/Partitions/PartitionSchemeTest.cs b/Aaru.Tests/Partitions/PartitionSchemeTest.cs
index e193d7f14..bf6b0ffff 100644
--- a/Aaru.Tests/Partitions/PartitionSchemeTest.cs
+++ b/Aaru.Tests/Partitions/PartitionSchemeTest.cs
@@ -29,6 +29,8 @@ public abstract class PartitionSchemeTest
// ReSharper disable once ConditionIsAlwaysTrueOrFalse
// It arrives here...
if(!exists)
+
+ // ReSharper disable once HeuristicUnreachableCode
continue;
var filtersList = new FiltersList();
diff --git a/Aaru.sln.DotSettings b/Aaru.sln.DotSettings
index 2014fa432..762b94d06 100644
--- a/Aaru.sln.DotSettings
+++ b/Aaru.sln.DotSettings
@@ -302,6 +302,7 @@
WARNING
WARNING
WARNING
+ True
False
<?xml version="1.0" encoding="utf-16"?>
<Patterns xmlns="urn:schemas-jetbrains-com:member-reordering-patterns">