[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 8/9] ossaudio: disable poll mode can't be reached
From: |
Volker Rümelin |
Subject: |
[PATCH 8/9] ossaudio: disable poll mode can't be reached |
Date: |
Thu, 23 Jan 2020 08:49:42 +0100 |
Currently there is no way to disable poll mode in
oss_enable_out and oss_enable_in when it was enabled before.
The enable code path always resets the poll mode state variable.
Fixes: b027a538c6 "oss: Remove unused error handling of
qemu_set_fd_handler"
Signed-off-by: Volker Rümelin <address@hidden>
---
audio/ossaudio.c | 14 +++++---------
1 file changed, 5 insertions(+), 9 deletions(-)
diff --git a/audio/ossaudio.c b/audio/ossaudio.c
index 39a6fc09e5..f88d076ec2 100644
--- a/audio/ossaudio.c
+++ b/audio/ossaudio.c
@@ -579,14 +579,12 @@ static void oss_enable_out(HWVoiceOut *hw, bool enable)
AudiodevOssPerDirectionOptions *opdo = oss->dev->u.oss.out;
if (enable) {
- bool poll_mode = opdo->try_poll;
+ hw->poll_mode = opdo->try_poll;
ldebug("enabling voice\n");
- if (poll_mode) {
+ if (hw->poll_mode) {
oss_poll_out(hw);
- poll_mode = 0;
}
- hw->poll_mode = poll_mode;
if (!oss->mmapped) {
return;
@@ -708,17 +706,15 @@ static void oss_enable_in(HWVoiceIn *hw, bool enable)
AudiodevOssPerDirectionOptions *opdo = oss->dev->u.oss.out;
if (enable) {
- bool poll_mode = opdo->try_poll;
+ hw->poll_mode = opdo->try_poll;
- if (poll_mode) {
+ if (hw->poll_mode) {
oss_poll_in(hw);
- poll_mode = 0;
}
- hw->poll_mode = poll_mode;
} else {
if (hw->poll_mode) {
- hw->poll_mode = 0;
qemu_set_fd_handler (oss->fd, NULL, NULL, NULL);
+ hw->poll_mode = 0;
}
}
}
--
2.16.4
- [PATCH 0/9] more audio fixes and improvements, Volker Rümelin, 2020/01/23
- [PATCH 1/9] audio: fix audio_generic_write, Volker Rümelin, 2020/01/23
- [PATCH 2/9] audio: fix audio_generic_read, Volker Rümelin, 2020/01/23
- [PATCH 3/9] paaudio: remove unused variables, Volker Rümelin, 2020/01/23
- [PATCH 5/9] audio: fix bug 1858488, Volker Rümelin, 2020/01/23
- [PATCH 4/9] audio: prevent SIGSEGV in AUD_get_buffer_size_out, Volker Rümelin, 2020/01/23
- [PATCH 7/9] ossaudio: prevent SIGPFE in oss_write, Volker Rümelin, 2020/01/23
- [PATCH 6/9] ossaudio: prevent SIGSEGV in oss_enable_out, Volker Rümelin, 2020/01/23
- [PATCH 8/9] ossaudio: disable poll mode can't be reached,
Volker Rümelin <=
- [PATCH 9/9] audio: audio_generic_get_buffer_in should honor *size, Volker Rümelin, 2020/01/23
- Re: [PATCH 0/9] more audio fixes and improvements, Mark Cave-Ayland, 2020/01/27