From 2a6e052a62b1f96c898311cee16923c458b44b88 Mon Sep 17 00:00:00 2001 From: Natalia Portillo Date: Wed, 4 Oct 2023 09:48:09 +0100 Subject: [PATCH] Simplify `IDictionary` accesses. --- Aaru.Core/Devices/Dumping/Sbc/Dump.cs | 8 ++++---- Aaru.Core/Media/CompactDisc.cs | 3 +-- Aaru.Decoders | 2 +- Aaru.Filesystems/AppleDOS/Dir.cs | 7 ++----- Aaru.Filesystems/ISO9660/Dir.cs | 5 ++--- Aaru.Images/Alcohol120/Read.cs | 3 +-- Aaru.Images/BlindWrite4/Read.cs | 14 ++++++-------- Aaru.Images/CDRDAO/Read.cs | 10 ++++------ Aaru.Images/CloneCD/Read.cs | 3 +-- 9 files changed, 22 insertions(+), 33 deletions(-) diff --git a/Aaru.Core/Devices/Dumping/Sbc/Dump.cs b/Aaru.Core/Devices/Dumping/Sbc/Dump.cs index 79fc34899..8516b18a6 100644 --- a/Aaru.Core/Devices/Dumping/Sbc/Dump.cs +++ b/Aaru.Core/Devices/Dumping/Sbc/Dump.cs @@ -786,8 +786,8 @@ partial class Dump ReadSbcData(blocks, blocksToRead, blockSize, currentTry, extents, ref currentSpeed, ref minSpeed, ref maxSpeed, ref totalDuration, scsiReader, mhddLog, ibgLog, ref imageWriteDuration, ref newTrim, ref dvdDecrypt, - mediaTags.ContainsKey(MediaTagType.DVD_DiscKey_Decrypted) - ? mediaTags[MediaTagType.DVD_DiscKey_Decrypted] + mediaTags.TryGetValue(MediaTagType.DVD_DiscKey_Decrypted, out byte[] tag) + ? tag : null); } @@ -860,8 +860,8 @@ partial class Dump _retryPasses > 0 && Settings.Settings.Current.EnableDecryption && _titleKeys && - mediaTags.ContainsKey(MediaTagType.DVD_DiscKey_Decrypted)) - RetryTitleKeys(dvdDecrypt, mediaTags[MediaTagType.DVD_DiscKey_Decrypted], ref totalDuration); + mediaTags.TryGetValue(MediaTagType.DVD_DiscKey_Decrypted, out byte[] mediaTag)) + RetryTitleKeys(dvdDecrypt, mediaTag, ref totalDuration); #endregion Error handling diff --git a/Aaru.Core/Media/CompactDisc.cs b/Aaru.Core/Media/CompactDisc.cs index e6fe8cae6..b22883bec 100644 --- a/Aaru.Core/Media/CompactDisc.cs +++ b/Aaru.Core/Media/CompactDisc.cs @@ -427,8 +427,7 @@ public static class CompactDisc // When we are dumping we calculate the pregap in reverse from index 1 back. // When we are not, we go from index 0. - if(!smallestPregapLbaPerTrack.ContainsKey(trackNo)) - smallestPregapLbaPerTrack[trackNo] = dumping ? 1 : 0; + smallestPregapLbaPerTrack.TryAdd(trackNo, dumping ? 1 : 0); uint firstTrackNumberInSameSession = tracks. Where(t => t.Session == tracks[i].Session). diff --git a/Aaru.Decoders b/Aaru.Decoders index 58394ad73..d3efb5822 160000 --- a/Aaru.Decoders +++ b/Aaru.Decoders @@ -1 +1 @@ -Subproject commit 58394ad73deece613e617b9f1ac750fc6845b6ba +Subproject commit d3efb58222c5e73047663d0142511e657a1c743d diff --git a/Aaru.Filesystems/AppleDOS/Dir.cs b/Aaru.Filesystems/AppleDOS/Dir.cs index ee55c167e..4e14da449 100644 --- a/Aaru.Filesystems/AppleDOS/Dir.cs +++ b/Aaru.Filesystems/AppleDOS/Dir.cs @@ -164,11 +164,8 @@ public sealed partial class AppleDOS string filename = StringHandlers.SpacePaddedToString(filenameB, _encoding); - if(!_catalogCache.ContainsKey(filename)) - _catalogCache.Add(filename, ts); - - if(!_fileTypeCache.ContainsKey(filename)) - _fileTypeCache.Add(filename, (byte)(entry.typeAndFlags & 0x7F)); + _catalogCache.TryAdd(filename, ts); + _fileTypeCache.TryAdd(filename, (byte)(entry.typeAndFlags & 0x7F)); if((entry.typeAndFlags & 0x80) == 0x80 && !_lockedFiles.Contains(filename)) diff --git a/Aaru.Filesystems/ISO9660/Dir.cs b/Aaru.Filesystems/ISO9660/Dir.cs index beabf9801..fcdb6198f 100644 --- a/Aaru.Filesystems/ISO9660/Dir.cs +++ b/Aaru.Filesystems/ISO9660/Dir.cs @@ -351,8 +351,7 @@ public sealed partial class ISO9660 continue; } - if(!entries.ContainsKey(entry.Filename)) - entries.Add(entry.Filename, entry); + entries.TryAdd(entry.Filename, entry); entryOff += record.length; } @@ -1123,7 +1122,7 @@ public sealed partial class ISO9660 while(currentPiece < pieces.Length) { PathTableEntryInternal currentEntry = _pathTable.FirstOrDefault(p => p.Parent == currentParent && - p.Name.Equals(pieces[currentPiece], StringComparison.CurrentCultureIgnoreCase)); + p.Name.Equals(pieces[currentPiece], StringComparison.CurrentCultureIgnoreCase)); if(currentEntry is null) break; diff --git a/Aaru.Images/Alcohol120/Read.cs b/Aaru.Images/Alcohol120/Read.cs index 3f52d4dd0..a17e9ff2c 100644 --- a/Aaru.Images/Alcohol120/Read.cs +++ b/Aaru.Images/Alcohol120/Read.cs @@ -242,8 +242,7 @@ public sealed partial class Alcohol120 track.startLba = 0; } - if(!sesToc.ContainsKey(track.point)) - sesToc.Add(track.point, track); + sesToc.TryAdd(track.point, track); if(track.point < 0xA0) _alcTracks.Add(track.point, track); diff --git a/Aaru.Images/BlindWrite4/Read.cs b/Aaru.Images/BlindWrite4/Read.cs index aed0aa525..af376a7e4 100644 --- a/Aaru.Images/BlindWrite4/Read.cs +++ b/Aaru.Images/BlindWrite4/Read.cs @@ -509,14 +509,14 @@ public sealed partial class BlindWrite4 track.Filter = filtersList.GetFilter(Path.Combine(imageFilter.ParentFolder, bwTrack.filename.ToLower(CultureInfo. - CurrentCulture))); + CurrentCulture))); if(track.Filter != null) break; track.Filter = filtersList.GetFilter(Path.Combine(imageFilter.ParentFolder, bwTrack.filename.ToUpper(CultureInfo. - CurrentCulture))); + CurrentCulture))); if(track.Filter != null) break; @@ -535,7 +535,7 @@ public sealed partial class BlindWrite4 StringSplitOptions. RemoveEmptyEntries). Last().ToLower(CultureInfo. - CurrentCulture))); + CurrentCulture))); if(track.Filter != null) break; @@ -545,7 +545,7 @@ public sealed partial class BlindWrite4 StringSplitOptions. RemoveEmptyEntries). Last().ToUpper(CultureInfo. - CurrentCulture))); + CurrentCulture))); track.Filter = _dataFilter; } while(true); @@ -685,11 +685,9 @@ public sealed partial class BlindWrite4 else _offsetMap[track.Sequence] = 0; - if(!_offsetMap.ContainsKey(track.Sequence)) - _offsetMap.Add(track.Sequence, track.StartSector); + _offsetMap.TryAdd(track.Sequence, track.StartSector); - if(!_trackFlags.ContainsKey(track.Sequence)) - _trackFlags.Add(track.Sequence, (byte)(bwTrack.adrCtl & 0x0F)); + _trackFlags.TryAdd(track.Sequence, (byte)(bwTrack.adrCtl & 0x0F)); if(bwTrack.lastSector > _imageInfo.Sectors) _imageInfo.Sectors = bwTrack.lastSector + 1; diff --git a/Aaru.Images/CDRDAO/Read.cs b/Aaru.Images/CDRDAO/Read.cs index 4471dbaba..3a69a8987 100644 --- a/Aaru.Images/CDRDAO/Read.cs +++ b/Aaru.Images/CDRDAO/Read.cs @@ -232,9 +232,8 @@ public sealed partial class Cdrdao { currentSector += currentTrack.Sectors; - if(currentTrack.Pregap != currentTrack.Sectors && - !currentTrack.Indexes.ContainsKey(1)) - currentTrack.Indexes.Add(1, currentTrack.StartSector + currentTrack.Pregap); + if(currentTrack.Pregap != currentTrack.Sectors) + currentTrack.Indexes.TryAdd(1, currentTrack.StartSector + currentTrack.Pregap); _discimage.Tracks.Add(currentTrack); @@ -569,9 +568,8 @@ public sealed partial class Cdrdao if(currentTrack.Sequence != 0) { - if(currentTrack.Pregap != currentTrack.Sectors && - !currentTrack.Indexes.ContainsKey(1)) - currentTrack.Indexes.Add(1, currentTrack.StartSector + currentTrack.Pregap); + if(currentTrack.Pregap != currentTrack.Sectors) + currentTrack.Indexes.TryAdd(1, currentTrack.StartSector + currentTrack.Pregap); _discimage.Tracks.Add(currentTrack); } diff --git a/Aaru.Images/CloneCD/Read.cs b/Aaru.Images/CloneCD/Read.cs index 6595767a8..4c327a655 100644 --- a/Aaru.Images/CloneCD/Read.cs +++ b/Aaru.Images/CloneCD/Read.cs @@ -553,8 +553,7 @@ public sealed partial class CloneCd else currentTrack.Type = TrackType.Audio; - if(!_trackFlags.ContainsKey(descriptor.POINT)) - _trackFlags.Add(descriptor.POINT, descriptor.CONTROL); + _trackFlags.TryAdd(descriptor.POINT, descriptor.CONTROL); if(_subFilter != null) {