diff options
| author | bunnei <bunneidev@gmail.com> | 2022-11-29 20:32:06 -0800 |
|---|---|---|
| committer | bunnei <bunneidev@gmail.com> | 2022-11-29 20:32:06 -0800 |
| commit | 8fd4e44014119a1c155de64d63d455390f852a22 (patch) | |
| tree | 48a00a3e059d61897d2296f7ebcd29e012404954 /src/audio_core/sink/sink_stream.h | |
| parent | 8f6245be9a344f53cfca6804bf883a491d113dae (diff) | |
audio_core: sink_stream: Hold the suspend lock when process is stalled.
- Prevents us from clashing with other callers trying to un/stall.
Diffstat (limited to 'src/audio_core/sink/sink_stream.h')
| -rw-r--r-- | src/audio_core/sink/sink_stream.h | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/audio_core/sink/sink_stream.h b/src/audio_core/sink/sink_stream.h index 38a4b2f51..5fea72ab7 100644 --- a/src/audio_core/sink/sink_stream.h +++ b/src/audio_core/sink/sink_stream.h @@ -6,6 +6,7 @@ #include <array> #include <atomic> #include <memory> +#include <mutex> #include <span> #include <vector> @@ -240,8 +241,8 @@ private: f32 system_volume{1.0f}; /// Set via IAudioDevice service calls f32 device_volume{1.0f}; - /// True if coretiming has been stalled - bool stalled{false}; + std::mutex stall_guard; + std::unique_lock<std::mutex> stalled_lock; }; using SinkStreamPtr = std::unique_ptr<SinkStream>; |
