]> git.alsa-project.org Git - alsa-lib.git/commitdiff
pcm: rate: Add error check for snd_pcm_avail_update()
authorTimo Wischer <twischer@de.adit-jv.com>
Wed, 4 Jul 2018 13:39:49 +0000 (15:39 +0200)
committerTakashi Iwai <tiwai@suse.de>
Wed, 4 Jul 2018 13:41:21 +0000 (15:41 +0200)
Without these changes a negative error code returned by
snd_pcm_avail_update() will be not handled correctly.

With this patch the returned error code of snd_pcm_avail_update() will be
returned by snd_pcm_rate_avail_update().

Signed-off-by: Timo Wischer <twischer@de.adit-jv.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
src/pcm/pcm_rate.c

index 4e0c7ca79e2ad7a8dd35cc1a45dc2d5e47cc94e2..031a43dcba5480adc853be10debe5f91bd6e7a1f 100644 (file)
@@ -970,9 +970,12 @@ static snd_pcm_sframes_t snd_pcm_rate_avail_update(snd_pcm_t *pcm)
 {
        snd_pcm_rate_t *rate = pcm->private_data;
        snd_pcm_t *slave = rate->gen.slave;
-       snd_pcm_uframes_t slave_size;
+       snd_pcm_sframes_t slave_size;
 
        slave_size = snd_pcm_avail_update(slave);
+       if (slave_size < 0)
+               return slave_size;
+
        if (pcm->stream == SND_PCM_STREAM_CAPTURE)
                goto _capture;
        snd_pcm_rate_sync_hwptr(pcm);