[Spice-devel] [spice-server v2 03/10] sound: Add sanity checks in snd_{playback, record}_send
Frediano Ziglio
fziglio at redhat.com
Tue Jan 24 13:45:35 UTC 2017
>
> Filter out commands which should not happen. Should it be a
> g_warn_if_fail() or such instead?
>
> Based on a patch from Frediano Ziglio <fziglio at redhat.com>
>
> Signed-off-by: Christophe Fergeau <cfergeau at redhat.com>
> ---
> server/sound.c | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/server/sound.c b/server/sound.c
> index 1f88149..a53ebcd 100644
> --- a/server/sound.c
> +++ b/server/sound.c
> @@ -851,6 +851,9 @@ static void snd_playback_send(void* data)
> return;
> }
>
> + client->command &= SND_PLAYBACK_MODE_MASK|SND_PLAYBACK_PCM_MASK|
> + SND_CTRL_MASK|SND_VOLUME_MUTE_MASK|
> + SND_MIGRATE_MASK|SND_PLAYBACK_LATENCY_MASK;
> while (client->command) {
> if (client->command & SND_PLAYBACK_MODE_MASK) {
> if (!playback_send_mode(playback_client)) {
Maybe all this can be avoided having at the end code like
for (;;) {
// handle this flags
// handle this other
// other...
// all flags processes
client->command = 0;
return;
}
snd_send(client);
> @@ -910,6 +913,7 @@ static void snd_record_send(void* data)
> return;
> }
>
> + client->command &= SND_CTRL_MASK|SND_VOLUME_MUTE_MASK|SND_MIGRATE_MASK;
> while (client->command) {
> if (client->command & SND_CTRL_MASK) {
> if (!snd_record_send_ctl(record_client)) {
Frediano
More information about the Spice-devel
mailing list