fix crash when selecting random with no songs loaded (don't show random at all)
This commit is contained in:
@@ -559,19 +559,17 @@ void MusicWheel::BuildWheelItemDatas( vector<WheelItemData> &arrayWheelItemDatas
|
|||||||
{
|
{
|
||||||
if( SHOW_ROULETTE )
|
if( SHOW_ROULETTE )
|
||||||
arrayWheelItemDatas.push_back( WheelItemData(TYPE_ROULETTE, NULL, "", NULL, RageColor(1,0,0,1)) );
|
arrayWheelItemDatas.push_back( WheelItemData(TYPE_ROULETTE, NULL, "", NULL, RageColor(1,0,0,1)) );
|
||||||
if( SHOW_RANDOM )
|
/* Only add TYPE_PORTAL if there's at least one song on the list. */
|
||||||
|
bool bFoundAnySong = false;
|
||||||
|
for( unsigned i=0; !bFoundAnySong && i < arrayWheelItemDatas.size(); i++ )
|
||||||
|
if( arrayWheelItemDatas[i].m_Type == TYPE_SONG )
|
||||||
|
bFoundAnySong = true;
|
||||||
|
|
||||||
|
if( SHOW_RANDOM && bFoundAnySong )
|
||||||
arrayWheelItemDatas.push_back( WheelItemData(TYPE_RANDOM, NULL, "", NULL, RageColor(1,0,0,1)) );
|
arrayWheelItemDatas.push_back( WheelItemData(TYPE_RANDOM, NULL, "", NULL, RageColor(1,0,0,1)) );
|
||||||
|
|
||||||
if( SHOW_PORTAL )
|
if( SHOW_PORTAL && bFoundAnySong )
|
||||||
{
|
arrayWheelItemDatas.push_back( WheelItemData(TYPE_PORTAL, NULL, "", NULL, RageColor(1,0,0,1)) );
|
||||||
/* Only add TYPE_PORTAL if there's at least one song on the list. */
|
|
||||||
bool bFoundAnySong = false;
|
|
||||||
for( unsigned i=0; !bFoundAnySong && i < arrayWheelItemDatas.size(); i++ )
|
|
||||||
if( arrayWheelItemDatas[i].m_Type == TYPE_SONG )
|
|
||||||
bFoundAnySong = true;
|
|
||||||
if( bFoundAnySong )
|
|
||||||
arrayWheelItemDatas.push_back( WheelItemData(TYPE_PORTAL, NULL, "", NULL, RageColor(1,0,0,1)) );
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if( GAMESTATE->IsExtraStage() || GAMESTATE->IsExtraStage2() )
|
if( GAMESTATE->IsExtraStage() || GAMESTATE->IsExtraStage2() )
|
||||||
|
|||||||
Reference in New Issue
Block a user