]> git.alsa-project.org Git - alsa-lib.git/commitdiff
Avoid call to params_info if only one format is supported
authorAbramo Bagnara <abramo@alsa-project.org>
Tue, 3 Oct 2000 12:06:45 +0000 (12:06 +0000)
committerAbramo Bagnara <abramo@alsa-project.org>
Tue, 3 Oct 2000 12:06:45 +0000 (12:06 +0000)
src/pcm/pcm_plug.c

index 61bc9676c6daf4189495c9648d26bf73867582b6..61c418d149fcce54621ba120d6a057dcfc8fdb1b 100644 (file)
@@ -516,10 +516,13 @@ static int snd_pcm_plug_params(snd_pcm_t *pcm, snd_pcm_params_t *params)
                slave_format->sfmt = slave_fmt;
        }
        slave_info.req_mask |= SND_PCM_PARAMS_SFMT;
-       err = snd_pcm_params_info(slave, &slave_info);
-       assert(err >= 0);
-       if (err < 0)
-               return err;
+
+       if (slave_info.formats != 1U << slave_format->sfmt) {
+               err = snd_pcm_params_info(slave, &slave_info);
+               assert(err >= 0);
+               if (err < 0)
+                       return err;
+       }
 
        if (format->channels < slave_info.min_channels)
                slave_format->channels = slave_info.min_channels;