diff options
author | Matthew Ranostay <mranostay@embeddedalley.com> | 2008-12-20 17:36:28 -0500 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2008-12-20 17:48:44 -0500 |
commit | f8ccbf65afde5df81a6238b9dc92868fbbd397f7 (patch) | |
tree | 1f8749dbc837980c46e105ddb510de9d69bfd3c1 /sound/pci | |
parent | 8326e32c1e148820d50dc460e1cb4a6cb6884ff2 (diff) |
ALSA: hda: dinput_mux check
Add check to determine if dinput_mux is set by any of patch_stac*() functions,
otherwise a invalid pointer my be referenced causing gibberish to mixer values.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci')
-rw-r--r-- | sound/pci/hda/patch_sigmatel.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/sound/pci/hda/patch_sigmatel.c b/sound/pci/hda/patch_sigmatel.c index e2941cd8aeea..7ee4d4df8932 100644 --- a/sound/pci/hda/patch_sigmatel.c +++ b/sound/pci/hda/patch_sigmatel.c | |||
@@ -3589,7 +3589,8 @@ static int stac92xx_parse_auto_config(struct hda_codec *codec, hda_nid_t dig_out | |||
3589 | spec->mixers[spec->num_mixers++] = spec->kctls.list; | 3589 | spec->mixers[spec->num_mixers++] = spec->kctls.list; |
3590 | 3590 | ||
3591 | spec->input_mux = &spec->private_imux; | 3591 | spec->input_mux = &spec->private_imux; |
3592 | spec->dinput_mux = &spec->private_dimux; | 3592 | if (!spec->dinput_mux) |
3593 | spec->dinput_mux = &spec->private_dimux; | ||
3593 | spec->sinput_mux = &spec->private_smux; | 3594 | spec->sinput_mux = &spec->private_smux; |
3594 | spec->mono_mux = &spec->private_mono_mux; | 3595 | spec->mono_mux = &spec->private_mono_mux; |
3595 | spec->amp_mux = &spec->private_amp_mux; | 3596 | spec->amp_mux = &spec->private_amp_mux; |