From: Takashi Iwai Date: Fri, 25 Aug 2006 09:39:34 +0000 (+0200) Subject: [ALSA] Return error if no user TLV is defined X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=18c1c3f694105ab2a6f43e054e23f9a751b2f869;p=openwrt%2Fstaging%2Fblogic.git [ALSA] Return error if no user TLV is defined Retrun error to user TLV_READ ioctl if no TLV is defined. (Until now, nothing was written and rerunred successfully.) Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela --- diff --git a/sound/core/control.c b/sound/core/control.c index 3030aaa6d2c5..6973a9686b67 100644 --- a/sound/core/control.c +++ b/sound/core/control.c @@ -951,6 +951,8 @@ static int snd_ctl_elem_user_tlv(struct snd_kcontrol *kcontrol, ue->tlv_data = new_data; ue->tlv_data_size = size; } else { + if (! ue->tlv_data_size || ! ue->tlv_data) + return -ENXIO; if (size < ue->tlv_data_size) return -ENOSPC; if (copy_to_user(tlv, ue->tlv_data, ue->tlv_data_size))