qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [6627] Avoid running audio ctl's when vm is not running
@ 2009-02-18 20:44 malc
  0 siblings, 0 replies; only message in thread
From: malc @ 2009-02-18 20:44 UTC (permalink / raw)
  To: qemu-devel

Revision: 6627
          http://svn.sv.gnu.org/viewvc/?view=rev&root=qemu&revision=6627
Author:   malc
Date:     2009-02-18 20:44:04 +0000 (Wed, 18 Feb 2009)

Log Message:
-----------
Avoid running audio ctl's when vm is not running

Modified Paths:
--------------
    trunk/audio/audio.c
    trunk/audio/audio_int.h

Modified: trunk/audio/audio.c
===================================================================
--- trunk/audio/audio.c	2009-02-16 15:47:27 UTC (rev 6626)
+++ trunk/audio/audio.c	2009-02-18 20:44:04 UTC (rev 6627)
@@ -1127,6 +1127,7 @@
 
     hw = sw->hw;
     if (sw->active != on) {
+        AudioState *s = &glob_audio_state;
         SWVoiceOut *temp_sw;
         SWVoiceCap *sc;
 
@@ -1134,7 +1135,9 @@
             hw->pending_disable = 0;
             if (!hw->enabled) {
                 hw->enabled = 1;
-                hw->pcm_ops->ctl_out (hw, VOICE_ENABLE);
+                if (s->vm_running) {
+                    hw->pcm_ops->ctl_out (hw, VOICE_ENABLE);
+                }
             }
         }
         else {
@@ -1170,12 +1173,15 @@
 
     hw = sw->hw;
     if (sw->active != on) {
+        AudioState *s = &glob_audio_state;
         SWVoiceIn *temp_sw;
 
         if (on) {
             if (!hw->enabled) {
                 hw->enabled = 1;
-                hw->pcm_ops->ctl_in (hw, VOICE_ENABLE);
+                if (s->vm_running) {
+                    hw->pcm_ops->ctl_in (hw, VOICE_ENABLE);
+                }
             }
             sw->total_hw_samples_acquired = hw->total_samples_captured;
         }
@@ -1623,6 +1629,7 @@
     HWVoiceIn *hwi = NULL;
     int op = running ? VOICE_ENABLE : VOICE_DISABLE;
 
+    s->vm_running = running;
     while ((hwo = audio_pcm_hw_find_any_enabled_out (s, hwo))) {
         hwo->pcm_ops->ctl_out (hwo, op);
     }

Modified: trunk/audio/audio_int.h
===================================================================
--- trunk/audio/audio_int.h	2009-02-16 15:47:27 UTC (rev 6626)
+++ trunk/audio/audio_int.h	2009-02-18 20:44:04 UTC (rev 6627)
@@ -192,6 +192,7 @@
     LIST_HEAD (cap_listhead, CaptureVoiceOut) cap_head;
     int nb_hw_voices_out;
     int nb_hw_voices_in;
+    int vm_running;
 };
 
 extern struct audio_driver no_audio_driver;

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2009-02-18 20:44 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-02-18 20:44 [Qemu-devel] [6627] Avoid running audio ctl's when vm is not running malc

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).