From: Jaroslav Kysela Date: Wed, 2 Jun 2021 17:49:29 +0000 (+0200) Subject: pcm: softvol - fix early exit in add_tlv_info() X-Git-Tag: v1.2.5.1~18 X-Git-Url: https://git.alsa-project.org/?a=commitdiff_plain;h=eabadf545c51d4c88c5f359db73726ec3ac653ba;p=alsa-lib.git pcm: softvol - fix early exit in add_tlv_info() Signed-off-by: Jaroslav Kysela --- diff --git a/src/pcm/pcm_softvol.c b/src/pcm/pcm_softvol.c index e2bdd31a..eea322ca 100644 --- a/src/pcm/pcm_softvol.c +++ b/src/pcm/pcm_softvol.c @@ -711,13 +711,13 @@ static int add_tlv_info(snd_pcm_softvol_t *svol, snd_ctl_elem_info_t *cinfo, unsigned int *old_tlv, size_t old_tlv_size) { unsigned int tlv[4]; - if (sizeof(tlv) <= old_tlv_size && memcmp(tlv, old_tlv, sizeof(tlv)) == 0) - return 0; tlv[SNDRV_CTL_TLVO_TYPE] = SND_CTL_TLVT_DB_SCALE; tlv[SNDRV_CTL_TLVO_LEN] = 2 * sizeof(int); tlv[SNDRV_CTL_TLVO_DB_SCALE_MIN] = (int)(svol->min_dB * 100); tlv[SNDRV_CTL_TLVO_DB_SCALE_MUTE_AND_STEP] = (int)((svol->max_dB - svol->min_dB) * 100 / svol->max_val); + if (sizeof(tlv) <= old_tlv_size && memcmp(tlv, old_tlv, sizeof(tlv)) == 0) + return 0; return snd_ctl_elem_tlv_write(svol->ctl, &cinfo->id, tlv); }