[Spice-commits] server/snd_worker.c

Hans de Goede jwrdegoede at kemper.freedesktop.org
Fri Apr 5 07:35:25 PDT 2013


 server/snd_worker.c |    5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

New commits:
commit 71315b2e0983afaca7e6e681bf1ecff01ca3ed9f
Author: Hans de Goede <hdegoede at redhat.com>
Date:   Mon Apr 1 22:10:55 2013 +0200

    snd_worker: Don't send empty audio-volume messages
    
    If no volume has been set it, we end up sending a volume message with
    audio-volume for 0 channels (iow an empty message). This is not useful
    and triggers the following warning in spice-gtk:
    
    (remote-viewer:8726): GSpice-WARNING **: set_sink_input_volume() failed:
    Invalid argument
    
    Signed-off-by: Hans de Goede <hdegoede at redhat.com>

diff --git a/server/snd_worker.c b/server/snd_worker.c
index bc7be51..010c152 100644
--- a/server/snd_worker.c
+++ b/server/snd_worker.c
@@ -1100,6 +1100,7 @@ static void on_new_playback_channel(SndWorker *worker)
 {
     PlaybackChannel *playback_channel =
         SPICE_CONTAINEROF(worker->connection, PlaybackChannel, base);
+    SpicePlaybackState *st = SPICE_CONTAINEROF(worker, SpicePlaybackState, worker);
 
     spice_assert(playback_channel);
 
@@ -1107,7 +1108,9 @@ static void on_new_playback_channel(SndWorker *worker)
     if (playback_channel->base.active) {
         snd_set_command((SndChannel *)playback_channel, SND_PLAYBACK_CTRL_MASK);
     }
-    snd_set_command((SndChannel *)playback_channel, SND_PLAYBACK_VOLUME_MASK);
+    if (st->volume.volume_nchannels) {
+        snd_set_command((SndChannel *)playback_channel, SND_PLAYBACK_VOLUME_MASK);
+    }
     if (playback_channel->base.active) {
         reds_disable_mm_timer();
     }


More information about the Spice-commits mailing list