Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 1 | From 58f9dc9bd12a51efa12dbc67e200f4d85cd3da07 Mon Sep 17 00:00:00 2001 |
| 2 | From: Jaroslav Kysela <perex@perex.cz> |
| 3 | Date: Fri, 29 Nov 2019 22:28:26 +0100 |
| 4 | Subject: [PATCH 2/5] ucm: return always at least NULL if no list is available |
| 5 | in snd_use_case_get_list() |
| 6 | |
| 7 | Signed-off-by: Jaroslav Kysela <perex@perex.cz> |
| 8 | |
| 9 | Upstream-Status: Backport |
| 10 | Signed-off-by: Tanu Kaskinen <tanuk@iki.fi> |
| 11 | --- |
| 12 | src/ucm/main.c | 8 ++++++-- |
| 13 | 1 file changed, 6 insertions(+), 2 deletions(-) |
| 14 | |
| 15 | diff --git a/src/ucm/main.c b/src/ucm/main.c |
| 16 | index 252e50d9..b80db65f 100644 |
| 17 | --- a/src/ucm/main.c |
| 18 | +++ b/src/ucm/main.c |
| 19 | @@ -1160,8 +1160,10 @@ static int get_supcon_device_list(snd_use_case_mgr_t *uc_mgr, |
| 20 | |
| 21 | modifier = find_modifier(uc_mgr, verb, name, 0); |
| 22 | if (modifier) { |
| 23 | - if (modifier->dev_list.type != type) |
| 24 | + if (modifier->dev_list.type != type) { |
| 25 | + *list = NULL; |
| 26 | return 0; |
| 27 | + } |
| 28 | return get_list(&modifier->dev_list.list, list, |
| 29 | struct dev_list_node, list, |
| 30 | name); |
| 31 | @@ -1169,8 +1171,10 @@ static int get_supcon_device_list(snd_use_case_mgr_t *uc_mgr, |
| 32 | |
| 33 | device = find_device(uc_mgr, verb, name, 0); |
| 34 | if (device) { |
| 35 | - if (device->dev_list.type != type) |
| 36 | + if (device->dev_list.type != type) { |
| 37 | + *list = NULL; |
| 38 | return 0; |
| 39 | + } |
| 40 | return get_list(&device->dev_list.list, list, |
| 41 | struct dev_list_node, list, |
| 42 | name); |
| 43 | -- |
| 44 | 2.20.1 |
| 45 | |