diff options
Diffstat (limited to 'intern/audaspace/intern/AUD_C-API.cpp')
-rw-r--r-- | intern/audaspace/intern/AUD_C-API.cpp | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/intern/audaspace/intern/AUD_C-API.cpp b/intern/audaspace/intern/AUD_C-API.cpp index 46bba237cff..a1da90b073e 100644 --- a/intern/audaspace/intern/AUD_C-API.cpp +++ b/intern/audaspace/intern/AUD_C-API.cpp @@ -68,6 +68,7 @@ #include "AUD_SequencerFactory.h" #include "AUD_SequencerEntry.h" #include "AUD_SilenceFactory.h" +#include "AUD_MutexLock.h" #ifdef WITH_SDL #include "AUD_SDLDevice.h" @@ -858,13 +859,12 @@ AUD_Handle *AUD_pauseAfter(AUD_Handle *handle, float seconds) AUD_Reference<AUD_IFactory> silence = new AUD_SilenceFactory; AUD_Reference<AUD_IFactory> limiter = new AUD_LimiterFactory(silence, 0, seconds); - AUD_device->lock(); + AUD_MutexLock lock(*AUD_device); try { AUD_Handle handle2 = AUD_device->play(limiter); if (!handle2.isNull()) { handle2->setStopCallback((stopCallback)pauseSound, handle); - AUD_device->unlock(); return new AUD_Handle(handle2); } } @@ -872,8 +872,6 @@ AUD_Handle *AUD_pauseAfter(AUD_Handle *handle, float seconds) { } - AUD_device->unlock(); - return NULL; } |