dect
/
linux-2.6
Archived
13
0
Fork 0

sound: oxygen: fix NULL pointer dereference when loading snd-oxygen

Check that model->control_filter is set before trying to call it.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
Clemens Ladisch 2008-06-16 14:13:52 +02:00 committed by Takashi Iwai
parent 066519068a
commit 9f9115d880
1 changed files with 7 additions and 5 deletions

View File

@ -936,11 +936,13 @@ static int add_controls(struct oxygen *chip,
for (i = 0; i < count; ++i) {
template = controls[i];
err = chip->model->control_filter(&template);
if (err < 0)
return err;
if (err == 1)
continue;
if (chip->model->control_filter) {
err = chip->model->control_filter(&template);
if (err < 0)
return err;
if (err == 1)
continue;
}
if (!strcmp(template.name, "Master Playback Volume") &&
chip->model->dac_tlv) {
template.tlv.p = chip->model->dac_tlv;