summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys/src/9/pc/audiohda.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/sys/src/9/pc/audiohda.c b/sys/src/9/pc/audiohda.c
index 96970db15..56c7e08c6 100644
--- a/sys/src/9/pc/audiohda.c
+++ b/sys/src/9/pc/audiohda.c
@@ -511,7 +511,13 @@ static uint
getoutamprange(Widget *w)
{
uint r;
- r = cmd(w->id, Getparm, Outampcap);
+
+ if((w->cap & Woutampcap) == 0)
+ return 0;
+ if((w->cap & Wampovrcap) == 0)
+ r = cmd(w->fg->id, Getparm, Outampcap);
+ else
+ r = cmd(w->id, Getparm, Outampcap);
return (r >> 8) & 0x7f;
}