Fix re-setting track end when correctly reading a new subchannel that changes the next track start.

Fixes generation of wrong images when dumping multisession discs.
This commit is contained in:
2021-07-04 20:22:46 +01:00
parent 4784a6c101
commit 7d289dc9e3

View File

@@ -418,7 +418,8 @@ namespace Aaru.Core.Media
tracks[i].TrackStartSector -= (ulong)dif;
smallestPregapLbaPerTrack[trackNo] = qPos;
if(i > 0)
if(i > 0 &&
tracks[i - 1].TrackEndSector >= tracks[i].TrackStartSector)
tracks[i - 1].TrackEndSector = tracks[i].TrackStartSector - 1;
dumpLog?.
@@ -438,7 +439,8 @@ namespace Aaru.Core.Media
tracks[i].TrackPregap = (ulong)qPos;
tracks[i].TrackStartSector -= tracks[i].TrackPregap - oldPregap;
if(i > 0)
if(i > 0 &&
tracks[i - 1].TrackEndSector >= tracks[i].TrackStartSector)
tracks[i - 1].TrackEndSector = tracks[i].TrackStartSector - 1;
dumpLog?.