mirror of
https://github.com/aaru-dps/Aaru.git
synced 2025-12-16 19:24:25 +00:00
Second try at fixing #634
This commit is contained in:
@@ -411,6 +411,14 @@ namespace Aaru.Core.Media
|
||||
if(!smallestPregapLbaPerTrack.ContainsKey(trackNo))
|
||||
smallestPregapLbaPerTrack[trackNo] = dumping ? 1 : 0;
|
||||
|
||||
uint firstTrackNumberInSameSession = tracks.
|
||||
Where(t => t.TrackSession ==
|
||||
tracks[i].TrackSession).
|
||||
Min(t => t.TrackSequence);
|
||||
|
||||
if(tracks[i].TrackSequence == firstTrackNumberInSameSession)
|
||||
break;
|
||||
|
||||
if(qPos < smallestPregapLbaPerTrack[trackNo])
|
||||
{
|
||||
int dif = smallestPregapLbaPerTrack[trackNo] - qPos;
|
||||
@@ -418,23 +426,6 @@ namespace Aaru.Core.Media
|
||||
tracks[i].TrackStartSector -= (ulong)dif;
|
||||
smallestPregapLbaPerTrack[trackNo] = qPos;
|
||||
|
||||
uint firstTrackNumberInSameSession = tracks.
|
||||
Where(t => t.TrackSession ==
|
||||
tracks[i].TrackSession).
|
||||
Min(t => t.TrackSequence);
|
||||
|
||||
if(tracks[i].TrackSequence == firstTrackNumberInSameSession)
|
||||
{
|
||||
if(tracks[i].TrackPregap != 151)
|
||||
status = true;
|
||||
|
||||
dif = (int)(tracks[i].TrackPregap - 150);
|
||||
tracks[i].TrackPregap -= (ulong)dif;
|
||||
tracks[i].TrackStartSector += (ulong)dif;
|
||||
|
||||
continue;
|
||||
}
|
||||
|
||||
if(i > 0 &&
|
||||
tracks[i - 1].TrackEndSector >= tracks[i].TrackStartSector)
|
||||
tracks[i - 1].TrackEndSector = tracks[i].TrackStartSector - 1;
|
||||
|
||||
Reference in New Issue
Block a user