diff options
Diffstat (limited to 'subprojects/packagefiles/miniaudio')
| -rw-r--r-- | subprojects/packagefiles/miniaudio/miniaudio_pulse_flush.diff | 36 |
1 files changed, 34 insertions, 2 deletions
diff --git a/subprojects/packagefiles/miniaudio/miniaudio_pulse_flush.diff b/subprojects/packagefiles/miniaudio/miniaudio_pulse_flush.diff index 83be63e..41ea436 100644 --- a/subprojects/packagefiles/miniaudio/miniaudio_pulse_flush.diff +++ b/subprojects/packagefiles/miniaudio/miniaudio_pulse_flush.diff @@ -1,8 +1,40 @@ diff --git a/extras/miniaudio_split/miniaudio.c b/extras/miniaudio_split/miniaudio.c -index 651843b..e0b6f6e 100644 +index bb97e1f..43bf4f1 100644 --- a/extras/miniaudio_split/miniaudio.c +++ b/extras/miniaudio_split/miniaudio.c -@@ -19362,7 +19362,8 @@ static ma_result ma_device_stop__pulse(ma_device* pDevice) +@@ -4763,7 +4763,7 @@ static void ma_thread_wait__posix(ma_thread* pThread) + static ma_result ma_mutex_init__posix(ma_mutex* pMutex) + { + int result; +- ++ + if (pMutex == NULL) { + return MA_INVALID_ARGS; + } +@@ -19374,7 +19374,8 @@ static ma_result ma_device_stop__pulse(ma_device* pDevice) + happens, draining never completes and we get stuck here. For now I'm disabling draining of + the device so we don't just freeze the application. + */ +- #if 0 ++ #if 1 ++ ma_bool32 wasSuccessful = MA_FALSE; + ma_pa_operation* pOP = ((ma_pa_stream_drain_proc)pDevice->pContext->pulse.pa_stream_drain)((ma_pa_stream*)pDevice->pulse.pStreamPlayback, ma_pulse_operation_complete_callback, &wasSuccessful); + ma_wait_for_operation_and_unref__pulse(pDevice->pContext, pDevice->pulse.pMainLoop, pOP); + #endif +diff --git a/miniaudio.h b/miniaudio.h +index a5673ac..cf73a54 100644 +--- a/miniaudio.h ++++ b/miniaudio.h +@@ -16243,7 +16243,7 @@ static void ma_thread_wait__posix(ma_thread* pThread) + static ma_result ma_mutex_init__posix(ma_mutex* pMutex) + { + int result; +- ++ + if (pMutex == NULL) { + return MA_INVALID_ARGS; + } +@@ -30906,7 +30906,8 @@ static ma_result ma_device_stop__pulse(ma_device* pDevice) happens, draining never completes and we get stuck here. For now I'm disabling draining of the device so we don't just freeze the application. */ |