On Tue, 06 Aug 2019 08:13:06 +0200,
Wenwen Wang wrote:
> 
> In add_new_ctl(), a mixer element structure is allocated through kzalloc()
> and the pointer is saved to 'elem'. Later on, a new alsa control element is
> created and added to this structure. In case the add process fails, i.e.,
> the return value of snd_usb_mixer_add_control() is less than 0, the
> allocated structure is not freed, leading to a memory leak.
> 
> To fix the above issue, free 'elem' before returning the error.
> 
> Signed-off-by: Wenwen Wang <wen...@cs.uga.edu>

It's a false-positive.  snd_ctl_add() behaves differently from others,
it releases the given kctl at the error.  And in this case, elem
already gets freed by kctl->private_free callback.


thanks,

Takashi

Reply via email to