diff -r ed54fb0a10b6 src/newgrf_sound.cpp --- a/src/newgrf_sound.cpp Thu Jun 23 21:33:42 2011 +0200 +++ b/src/newgrf_sound.cpp Thu Jun 23 21:36:33 2011 +0200 @@ -66,7 +66,8 @@ if (callback == CALLBACK_FAILED) return false; if (callback >= ORIGINAL_SAMPLE_COUNT) { callback -= ORIGINAL_SAMPLE_COUNT; - if (callback > file->num_sounds) return false; + /* If the GRF asked to play an invalid sound, play nothing as indicated by the specs */ + if (callback > file->num_sounds) return true; callback += file->sound_offset; }