alsa/0067-ucm-the-ucm2-subdirectory-is-driver-name-based.patch
Takashi Iwai 0fcb2a0c4b Accepting request 774837 from home:tiwai:branches:multimedia:libs
- Backport upstream fixes:
  ucm-parser fixes and enhancements, configure script cleanup,
  fixes of 5.6 kernel ABI, O_CLOEXEC flag fix:
  0064-ucm-parser-cosmetic-fixes-in-the-comments.patch
  0065-configure.ac-remove-an-unnecessary-libtool-fix.patch
  0066-ucm-parser-use-correct-filename-in-parser_master_fil.patch
  0067-ucm-the-ucm2-subdirectory-is-driver-name-based.patch
  0068-ucm-implement-RenameDevice-and-RemoveDevice-verb-man.patch
  0069-ucm-fill-missing-device-entries-conflicting-supporte.patch
  0070-control-Remove-access-to-the-deprecated-dimen-fields.patch
  0071-topology-Drop-SNDRV_CTL_ELEM_ACCESS_TIMESTAMP-access.patch
  0072-uapi-Sync-with-5.6-kernel-ABI.patch
  0073-ucm-parser-add-error-message-to-verb_dev_list_add.patch
  0074-do-not-set-close-on-exec-flag-on-descriptor-if-it-wa.patch

OBS-URL: https://build.opensuse.org/request/show/774837
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/alsa?expand=0&rev=267
2020-02-17 11:44:38 +00:00

60 lines
2.0 KiB
Diff

From 71a1367bcabc50f99302d8c76395f1cb84975775 Mon Sep 17 00:00:00 2001
From: Jaroslav Kysela <perex@perex.cz>
Date: Mon, 3 Feb 2020 15:24:19 +0100
Subject: [PATCH 67/74] ucm: the ucm2/ subdirectory is driver name based
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
---
src/ucm/parser.c | 12 +++++++-----
1 file changed, 7 insertions(+), 5 deletions(-)
diff --git a/src/ucm/parser.c b/src/ucm/parser.c
index dbbd381755b1..f576fde429cf 100644
--- a/src/ucm/parser.c
+++ b/src/ucm/parser.c
@@ -1515,7 +1515,7 @@ static int get_card_long_name(snd_use_case_mgr_t *mgr, char *longname)
int card, err;
snd_ctl_t *ctl;
snd_ctl_card_info_t *info;
- const char *_name, *_long_name;
+ const char *_driver, *_name, *_long_name;
snd_ctl_card_info_alloca(&info);
@@ -1535,9 +1535,11 @@ static int get_card_long_name(snd_use_case_mgr_t *mgr, char *longname)
err = get_card_info(mgr, name, &ctl, info);
if (err == 0) {
+ _driver = snd_ctl_card_info_get_driver(info);
_name = snd_ctl_card_info_get_name(info);
_long_name = snd_ctl_card_info_get_longname(info);
- if (!strcmp(card_name, _name) ||
+ if (!strcmp(card_name, _driver) ||
+ !strcmp(card_name, _name) ||
!strcmp(card_name, _long_name)) {
snd_strlcpy(longname, _long_name, MAX_CARD_LONG_NAME);
return 0;
@@ -1560,7 +1562,7 @@ static int get_by_card(snd_use_case_mgr_t *mgr, const char *ctl_name, char *long
{
snd_ctl_t *ctl;
snd_ctl_card_info_t *info;
- const char *_name, *_long_name;
+ const char *_driver, *_long_name;
int err;
snd_ctl_card_info_alloca(&info);
@@ -1569,8 +1571,8 @@ static int get_by_card(snd_use_case_mgr_t *mgr, const char *ctl_name, char *long
if (err)
return err;
- _name = snd_ctl_card_info_get_name(info);
- if (replace_string(&mgr->conf_dir_name, _name) == NULL)
+ _driver = snd_ctl_card_info_get_driver(info);
+ if (replace_string(&mgr->conf_dir_name, _driver) == NULL)
return -ENOMEM;
_long_name = snd_ctl_card_info_get_longname(info);
snd_strlcpy(longname, _long_name, MAX_CARD_LONG_NAME);
--
2.16.4