diff --git a/src/SongUtil.cpp b/src/SongUtil.cpp index f9c8f51e40..9d369abe4c 100644 --- a/src/SongUtil.cpp +++ b/src/SongUtil.cpp @@ -83,14 +83,18 @@ bool SongCriteria::Matches( const Song *pSong ) const if( m_iMaxStagesForSong != -1 && GAMESTATE->GetNumStagesMultiplierForSong(pSong) > m_iMaxStagesForSong ) return false; - if( m_fMaxBPM != -1 && pSong->m_fSpecifiedBPMMax > m_fMaxBPM ) + if(m_fMaxBPM != -1 && m_fMinBPM != -1) { - return false; - } - - if( m_fMinBPM != -1 && pSong->m_fSpecifiedBPMMin < m_fMinBPM ) - { - return false; + DisplayBpms bpms; + pSong->GetDisplayBpms(bpms); + if(bpms.GetMax() > m_fMaxBPM) + { + return false; + } + if(bpms.GetMin() < m_fMinBPM) + { + return false; + } } if( m_fMinDurationSeconds != -1 && pSong->m_fMusicLengthSeconds < m_fMinDurationSeconds )