mirror of
https://github.com/followmsi/android_kernel_google_msm.git
synced 2024-11-06 23:17:41 +00:00
ALSA: snd-usb: mixer: propagate errors up the call chain
commit 4d7b86c98e
upstream.
In check_input_term() and parse_audio_feature_unit(), propagate the
error value that has been returned by a failing function instead of
-EINVAL. That helps cleaning up the error pathes in the mixer.
Signed-off-by: Daniel Mack <zonque@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
e97814511e
commit
184f526252
1 changed files with 6 additions and 4 deletions
|
@ -711,8 +711,9 @@ static int check_input_term(struct mixer_build *state, int id, struct usb_audio_
|
|||
case UAC2_CLOCK_SELECTOR: {
|
||||
struct uac_selector_unit_descriptor *d = p1;
|
||||
/* call recursively to retrieve the channel info */
|
||||
if (check_input_term(state, d->baSourceID[0], term) < 0)
|
||||
return -ENODEV;
|
||||
err = check_input_term(state, d->baSourceID[0], term);
|
||||
if (err < 0)
|
||||
return err;
|
||||
term->type = d->bDescriptorSubtype << 16; /* virtual type */
|
||||
term->id = id;
|
||||
term->name = uac_selector_unit_iSelector(d);
|
||||
|
@ -1263,8 +1264,9 @@ static int parse_audio_feature_unit(struct mixer_build *state, int unitid, void
|
|||
return err;
|
||||
|
||||
/* determine the input source type and name */
|
||||
if (check_input_term(state, hdr->bSourceID, &iterm) < 0)
|
||||
return -EINVAL;
|
||||
err = check_input_term(state, hdr->bSourceID, &iterm);
|
||||
if (err < 0)
|
||||
return err;
|
||||
|
||||
master_bits = snd_usb_combine_bytes(bmaControls, csize);
|
||||
/* master configuration quirks */
|
||||
|
|
Loading…
Reference in a new issue