Commit ef55f674 authored by David Reid's avatar David Reid

Merge branch 'dev'

parents 66b5ccb5 0f5cb782
This diff is collapsed.
/*
Audio playback and capture library. Choice of public domain or MIT-0. See license statements at the end of this file.
miniaudio - v0.10.37 - 2021-07-06
miniaudio - v0.10.38 - 2021-07-14
David Reid - mackron@gmail.com
......@@ -20,7 +20,7 @@ extern "C" {
#define MA_VERSION_MAJOR 0
#define MA_VERSION_MINOR 10
#define MA_VERSION_REVISION 37
#define MA_VERSION_REVISION 38
#define MA_VERSION_STRING MA_XSTRINGIFY(MA_VERSION_MAJOR) "." MA_XSTRINGIFY(MA_VERSION_MINOR) "." MA_XSTRINGIFY(MA_VERSION_REVISION)
#if defined(_MSC_VER) && !defined(__clang__)
......@@ -2384,6 +2384,8 @@ struct ma_context
ma_proc pa_stream_get_device_name;
ma_proc pa_stream_set_write_callback;
ma_proc pa_stream_set_read_callback;
ma_proc pa_stream_set_suspended_callback;
ma_proc pa_stream_is_suspended;
ma_proc pa_stream_flush;
ma_proc pa_stream_drain;
ma_proc pa_stream_is_corked;
......
This diff is collapsed.
......@@ -13397,7 +13397,7 @@ MA_API ma_result ma_engine_play_sound_ex(ma_engine* pEngine, const char* pFilePa
ma_uint32 soundFlags = 0;
for (pNextSound = pEngine->pInlinedSoundHead; pNextSound != NULL; pNextSound = pNextSound->pNext) {
if (c89atomic_load_8(&pNextSound->sound.atEnd)) {
if (ma_sound_at_end(&pNextSound->sound)) {
/*
The sound is at the end which means it's available for recycling. All we need to do
is uninitialize it and reinitialize it. All we're doing is recycling memory.
......@@ -13413,6 +13413,10 @@ MA_API ma_result ma_engine_play_sound_ex(ma_engine* pEngine, const char* pFilePa
We actually want to detach the sound from the list here. The reason is because we want the sound
to be in a consistent state at the non-recycled case to simplify the logic below.
*/
if (pEngine->pInlinedSoundHead == pSound) {
pEngine->pInlinedSoundHead = pSound->pNext;
}
if (pSound->pPrev != NULL) {
pSound->pPrev->pNext = pSound->pNext;
}
......@@ -13470,7 +13474,7 @@ MA_API ma_result ma_engine_play_sound_ex(ma_engine* pEngine, const char* pFilePa
result = ma_sound_start(&pSound->sound);
if (result != MA_SUCCESS) {
/* Failed to start the sound. We need to mark it for recycling and return an error. */
pSound->sound.atEnd = MA_TRUE;
c89atomic_exchange_8(&pSound->sound.atEnd, MA_TRUE);
return result;
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment