From: Takashi Iwai Date: Fri, 17 Sep 2004 17:36:18 +0000 (+0000) Subject: [alsa-lib] Avoid zero division X-Git-Tag: v1.0.7~20 X-Git-Url: https://git.alsa-project.org/?a=commitdiff_plain;h=83a533d1a7f4c00c31d190effe41a8d8462aab42;p=alsa-lib.git [alsa-lib] Avoid zero division Check the invalid parameters in snd_pcm_sw_params() beforehand to avoid zero division. --- 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");