diff --git a/Aaru.Core/Logging/SubchannelLog.cs b/Aaru.Core/Logging/SubchannelLog.cs index eb29c2fca..b20e505f9 100644 --- a/Aaru.Core/Logging/SubchannelLog.cs +++ b/Aaru.Core/Logging/SubchannelLog.cs @@ -164,12 +164,18 @@ namespace Aaru.Core.Logging if(raw) for(uint i = 12 * block; i < (12 * block) + 12; i++) { - if(r[i] == 0 && - s[i] == 0 && - t[i] == 0 && - u[i] == 0 && - v[i] == 0 && - w[i] == 0) + if((r[i] == 0 && + s[i] == 0 && + t[i] == 0 && + u[i] == 0 && + v[i] == 0 && + w[i] == 0) || + (r[i] == 0xFF && + s[i] == 0xFF && + t[i] == 0xFF && + u[i] == 0xFF && + v[i] == 0xFF && + w[i] == 0xFF)) continue; rwEmpty = false; @@ -261,4 +267,4 @@ namespace Aaru.Core.Logging _logSw.Flush(); } } -} \ No newline at end of file +} diff --git a/Aaru.Core/Media/CompactDisc.cs b/Aaru.Core/Media/CompactDisc.cs index 33d24ba26..b2172e647 100644 --- a/Aaru.Core/Media/CompactDisc.cs +++ b/Aaru.Core/Media/CompactDisc.cs @@ -100,15 +100,9 @@ namespace Aaru.Core.Media pWeight++; } - for(int rw = subPos + 24; rw < subPos + 96; rw++) - { - if(deSub[rw] == 0) - continue; - - rwOk = false; - - break; - } + if(!deSub.Skip(subPos + 24).Take(96 - 24).All(rw => (rw == 0)) && + !deSub.Skip(subPos + 24).Take(96 - 24).All(rw => (rw == 0xFF))) + rwOk = false; bool rwPacket = false; bool cdtextPacket = false; @@ -1501,4 +1495,4 @@ namespace Aaru.Core.Media endProgress?.Invoke(); } } -} \ No newline at end of file +}