Alsa-Devel Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/2] ALSA: snd-usb: mixer: propagate errors up the call chain
@ 2013-03-19 20:09 Daniel Mack
  2013-03-19 20:09 ` [PATCH 2/2] ALSA: snd-usb: mixer: ignore -EINVAL in snd_usb_mixer_controls() Daniel Mack
  2013-03-20  7:45 ` [PATCH 1/2] ALSA: snd-usb: mixer: propagate errors up the call chain Takashi Iwai
  0 siblings, 2 replies; 3+ messages in thread
From: Daniel Mack @ 2013-03-19 20:09 UTC (permalink / raw)
  To: alsa-devel; +Cc: tiwai, hegge, clemens, Daniel Mack

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>
---
 sound/usb/mixer.c | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/sound/usb/mixer.c b/sound/usb/mixer.c
index 638e7f7..db30d02 100644
--- a/sound/usb/mixer.c
+++ b/sound/usb/mixer.c
@@ -715,8 +715,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);
@@ -1356,8 +1357,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 */
-- 
1.8.1.4

^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2013-03-20  7:45 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-03-19 20:09 [PATCH 1/2] ALSA: snd-usb: mixer: propagate errors up the call chain Daniel Mack
2013-03-19 20:09 ` [PATCH 2/2] ALSA: snd-usb: mixer: ignore -EINVAL in snd_usb_mixer_controls() Daniel Mack
2013-03-20  7:45 ` [PATCH 1/2] ALSA: snd-usb: mixer: propagate errors up the call chain Takashi Iwai

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox