diff options
author | Dan Carpenter <dan.carpenter@oracle.com> | 2013-07-31 04:52:44 -0400 |
---|---|---|
committer | Mark Brown <broonie@linaro.org> | 2013-07-31 07:19:25 -0400 |
commit | 46a02c978fbc79de856d0fe7a8c1d4fc620796e0 (patch) | |
tree | 4819c58be76a1c2b9ea19ef1aa0d9bed94ae5318 | |
parent | 39eb5fd13dff8d3d04489fe3f59e0d22bf89041e (diff) |
ASoC: dapm: using freed pointer in dapm_kcontrol_add_widget()
There is a typo here so we end up using the old freed pointer instead of
the newly allocated one. (If the "n" is zero then the code works,
obviously).
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Acked-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Mark Brown <broonie@linaro.org>
-rw-r--r-- | sound/soc/soc-dapm.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/sound/soc/soc-dapm.c b/sound/soc/soc-dapm.c index 9abb3b21f1fd..d74c3560d556 100644 --- a/sound/soc/soc-dapm.c +++ b/sound/soc/soc-dapm.c | |||
@@ -225,13 +225,13 @@ static int dapm_kcontrol_add_widget(struct snd_kcontrol *kcontrol, | |||
225 | 225 | ||
226 | new_data = krealloc(data, sizeof(*data) + sizeof(widget) * n, | 226 | new_data = krealloc(data, sizeof(*data) + sizeof(widget) * n, |
227 | GFP_KERNEL); | 227 | GFP_KERNEL); |
228 | if (!data) | 228 | if (!new_data) |
229 | return -ENOMEM; | 229 | return -ENOMEM; |
230 | 230 | ||
231 | data->wlist.widgets[n - 1] = widget; | 231 | new_data->wlist.widgets[n - 1] = widget; |
232 | data->wlist.num_widgets = n; | 232 | new_data->wlist.num_widgets = n; |
233 | 233 | ||
234 | kcontrol->private_data = data; | 234 | kcontrol->private_data = new_data; |
235 | 235 | ||
236 | return 0; | 236 | return 0; |
237 | } | 237 | } |