aboutsummaryrefslogtreecommitdiff
path: root/alsa.c
diff options
context:
space:
mode:
Diffstat (limited to 'alsa.c')
-rw-r--r--alsa.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/alsa.c b/alsa.c
index 7d310a2..7012fcf 100644
--- a/alsa.c
+++ b/alsa.c
@@ -85,6 +85,9 @@ read_sio(struct sio *sio, unsigned int n)
{
snd_pcm_sframes_t rc;
+ if (n > sio->samples)
+ n = sio->samples;
+
rc = snd_pcm_readi(sio->handle, sio->buffer, sio->samples);
if (rc != sio->samples) {
warnx("audio read error: %s", snd_strerror(rc));