diff --git a/stepmania/src/RageSound.cpp b/stepmania/src/RageSound.cpp index 44a876024b..248b97eafd 100644 --- a/stepmania/src/RageSound.cpp +++ b/stepmania/src/RageSound.cpp @@ -187,12 +187,13 @@ bool RageSound::Load( CString sSoundFilePath, int precache ) pSound = new RageSoundReader_Silence; } - /* Try to precache. */ - if( precache ) - RageSoundReader_Preload::PreloadSound( pSound ); - LoadSoundReader( pSound ); + /* Try to precache. Do this after calling LoadSoundReader() to put the + * sound in this->Sample, so we preload after resampling. */ + if( precache ) + RageSoundReader_Preload::PreloadSound( Sample ); + m_sFilePath = sSoundFilePath; m_Mutex.SetName( ssprintf("RageSound (%s)", Basename(sSoundFilePath).c_str() ) );