diff options
Diffstat (limited to 'src/pcm/pcm_rate.c')
-rw-r--r-- | src/pcm/pcm_rate.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/pcm/pcm_rate.c b/src/pcm/pcm_rate.c index 4e0c7ca7..031a43dc 100644 --- a/src/pcm/pcm_rate.c +++ b/src/pcm/pcm_rate.c @@ -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); |