From 83a533d1a7f4c00c31d190effe41a8d8462aab42 Mon Sep 17 00:00:00 2001 From: Takashi Iwai Date: Fri, 17 Sep 2004 17:36:18 +0000 Subject: [PATCH] [alsa-lib] Avoid zero division Check the invalid parameters in snd_pcm_sw_params() beforehand to avoid zero division. --- src/pcm/pcm.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/pcm/pcm.c b/src/pcm/pcm.c index 8d7acf35..aaab6c6b 100644 --- a/src/pcm/pcm.c +++ b/src/pcm/pcm.c @@ -819,6 +819,8 @@ int snd_pcm_sw_params(snd_pcm_t *pcm, snd_pcm_sw_params_t *params) { int err; assert(pcm->setup); /* the hw_params must be set at first!!! */ + if (! params->avail_min || ! params->xfer_align) + return -EINVAL; if (params->start_threshold <= pcm->buffer_size && params->start_threshold > (pcm->buffer_size / params->avail_min) * params->avail_min) { SNDERR("snd_pcm_sw_params: params->avail_min problem for start_threshold"); -- 2.47.1