summaryrefslogtreecommitdiff
path: root/subprojects/packagefiles/miniaudio
diff options
context:
space:
mode:
Diffstat (limited to 'subprojects/packagefiles/miniaudio')
-rw-r--r--subprojects/packagefiles/miniaudio/miniaudio_pulse_flush.diff36
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.
*/