diff --git a/src/Sound/fg_fx.cxx b/src/Sound/fg_fx.cxx index 5840456c3..9a8fe0a6f 100644 --- a/src/Sound/fg_fx.cxx +++ b/src/Sound/fg_fx.cxx @@ -139,8 +139,9 @@ FGFX::update (double dt) // still playing, do nothing is_playing = true; } else { - // current message finished, remove - smgr->remove( msgid ); + // current message finished, stop and remove + smgr->stop( msgid ); // removes source + smgr->remove( msgid ); // removes buffer } } if ( !is_playing ) {