diff options
| author | jacqueline <me@jacqueline.id.au> | 2023-06-21 13:37:50 +1000 |
|---|---|---|
| committer | jacqueline <me@jacqueline.id.au> | 2023-06-21 13:37:50 +1000 |
| commit | 23ecff10112ffd8cace0a0f41f4abd45222af2d8 (patch) | |
| tree | 193d53cbc8aae4c7bc33746807fddb1e30d6f2ba /src/audio/stream_info.cpp | |
| parent | 8fed966c96be9d18fe7be758ee6a49a62ebab125 (diff) | |
| download | tangara-fw-23ecff10112ffd8cace0a0f41f4abd45222af2d8.tar.gz | |
Fix spurious stream starts
Diffstat (limited to 'src/audio/stream_info.cpp')
| -rw-r--r-- | src/audio/stream_info.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/audio/stream_info.cpp b/src/audio/stream_info.cpp index 2337b3a3..748cb9ef 100644 --- a/src/audio/stream_info.cpp +++ b/src/audio/stream_info.cpp @@ -30,6 +30,9 @@ void InputStream::consume(std::size_t bytes) const { void InputStream::mark_consumer_finished() const { raw_->info->is_consumer_finished = true; + if (is_producer_finished()) { + raw_->info->format = std::monostate(); + } } bool InputStream::is_producer_finished() const { @@ -71,6 +74,9 @@ cpp::span<std::byte> OutputStream::data() const { void OutputStream::mark_producer_finished() const { raw_->info->is_producer_finished = true; + if (is_consumer_finished()) { + raw_->info->format = std::monostate(); + } } bool OutputStream::is_consumer_finished() const { |
