From 03f502cf04cdd37485a31f4072c99764bcd78f0c Mon Sep 17 00:00:00 2001 From: Stijn Buys Date: Tue, 13 Jan 2009 19:36:30 +0000 Subject: rewind OpenAL sources before clearing them --- src/audio/sources.cc | 19 +++++-------------- 1 file changed, 5 insertions(+), 14 deletions(-) (limited to 'src/audio/sources.cc') diff --git a/src/audio/sources.cc b/src/audio/sources.cc index 01fbafb..2ec0e26 100644 --- a/src/audio/sources.cc +++ b/src/audio/sources.cc @@ -40,6 +40,11 @@ void Sources::init() void Sources::shutdown() { + // stop all sources + for (size_t index= 0; index < MAXSOURCES; index++) { + alSourceRewind(sources[index]); + } + alDeleteSources(MAXSOURCES, sources); clear(); } @@ -52,20 +57,6 @@ void Sources::clear() for (size_t i=0; i < MAXSOURCES; i++) { source_available[i] = false; } - -} - -void Sources::reset() -{ - for (size_t index= 0; index < MAXSOURCES; index++) { - source_available[index] = true; - alSourceRewind(sources[index]); - } - - // reserve ui sound sources - for (size_t i=0; i < MAXUISOURCES; i++) { - source_available[i] = false; - } } size_t Sources::get() -- cgit v1.2.3