CueParser: Ignore zero pregap when index 0 is set

This commit is contained in:
Connor McLaughlin 2021-05-23 20:33:55 +10:00
parent 5556d8221b
commit 8f639070c9

View file

@ -406,13 +406,6 @@ bool File::CompleteLastTrack(u32 line_number, Common::Error* error)
return false;
}
const MSF* index0 = m_current_track->GetIndex(0);
if (index0 && m_current_track->zero_pregap.has_value())
{
SetError(line_number, error, "Zero pregap and index 0 specified in track %u", m_current_track->number);
return false;
}
// check indices
for (const auto& [index_number, index_msf] : m_current_track->indices)
{
@ -428,6 +421,13 @@ bool File::CompleteLastTrack(u32 line_number, Common::Error* error)
}
}
const MSF* index0 = m_current_track->GetIndex(0);
if (index0 && m_current_track->zero_pregap.has_value())
{
Log_WarningPrintf("Zero pregap and index 0 specified in track %u, ignoring zero pregap", m_current_track->number);
m_current_track->zero_pregap.reset();
}
m_current_track->start = *index1;
m_tracks.push_back(std::move(m_current_track.value()));