summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--audio/alsaaudio.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/audio/alsaaudio.c b/audio/alsaaudio.c
index 2f6c764dca..f1d573a8fa 100644
--- a/audio/alsaaudio.c
+++ b/audio/alsaaudio.c
@@ -626,8 +626,9 @@ static int alsa_init_out (HWVoiceOut *hw, struct audsettings *as)
     req.period_size = conf.period_size_out;
     req.buffer_size = conf.buffer_size_out;
     req.size_in_usec = conf.size_in_usec_out;
-    req.override_mask = !!conf.period_size_out_overridden
-        | (!!conf.buffer_size_out_overridden << 1);
+    req.override_mask =
+        (conf.period_size_out_overridden ? 1 : 0) |
+        (conf.buffer_size_out_overridden ? 2 : 0);
 
     if (alsa_open (0, &req, &obt, &handle)) {
         return -1;
@@ -706,8 +707,9 @@ static int alsa_init_in (HWVoiceIn *hw, struct audsettings *as)
     req.period_size = conf.period_size_in;
     req.buffer_size = conf.buffer_size_in;
     req.size_in_usec = conf.size_in_usec_in;
-    req.override_mask = !!conf.period_size_in_overridden
-        | (!!conf.buffer_size_in_overridden << 1);
+    req.override_mask =
+        (conf.period_size_in_overridden ? 1 : 0) |
+        (conf.buffer_size_in_overridden ? 2 : 0);
 
     if (alsa_open (1, &req, &obt, &handle)) {
         return -1;