fixes for 1.2.5
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
This commit is contained in:
parent
7c9baba24d
commit
db4558654a
@ -0,0 +1,84 @@
|
||||
From 78212445de4c8e07873cbc7dff2abcacd031f151 Mon Sep 17 00:00:00 2001
|
||||
From: Jaroslav Kysela <perex@perex.cz>
|
||||
Date: Tue, 1 Jun 2021 17:47:42 +0200
|
||||
Subject: [PATCH 1/2] alsactl: fix the nested iteration
|
||||
|
||||
There may be nested iterations for hw: card names.
|
||||
Handle this card name in snd_card_iterator_sinit().
|
||||
|
||||
BugLink: https://github.com/alsa-project/alsa-lib/issues/142
|
||||
Fixes: eefc2c6 ("alsactl: use card iterator functions for all card loops")
|
||||
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
|
||||
---
|
||||
alsactl/utils.c | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/alsactl/utils.c b/alsactl/utils.c
|
||||
index c79fd95..881b505 100644
|
||||
--- a/alsactl/utils.c
|
||||
+++ b/alsactl/utils.c
|
||||
@@ -247,6 +247,8 @@ int snd_card_iterator_sinit(struct snd_card_iterator *iter, const char *cardname
|
||||
int cardno = -1;
|
||||
|
||||
if (cardname) {
|
||||
+ if (strncmp(cardname, "hw:", 3) == 0)
|
||||
+ cardname += 3;
|
||||
cardno = snd_card_get_index(cardname);
|
||||
if (cardno < 0) {
|
||||
error("Cannot find soundcard '%s'...", cardname);
|
||||
--
|
||||
2.30.2
|
||||
|
||||
|
||||
From 3d7a6facd9e1f962eef6c4ba3aa4cdc22477a6ac Mon Sep 17 00:00:00 2001
|
||||
From: Chao Song <chao.song@linux.intel.com>
|
||||
Date: Mon, 31 May 2021 10:29:57 +0800
|
||||
Subject: [PATCH 2/2] topology: fix potential null pointer from strchr
|
||||
|
||||
This patch adds check to the return pointer from strchr,
|
||||
because it may be null and cause segment fault, if component
|
||||
is not properly constructed.
|
||||
|
||||
Fixes: https://github.com/alsa-project/alsa-utils/pull/91
|
||||
Signed-off-by: Chao Song <chao.song@linux.intel.com>
|
||||
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
|
||||
---
|
||||
topology/pre-process-dapm.c | 5 +++++
|
||||
topology/pre-process-object.c | 5 +++++
|
||||
2 files changed, 10 insertions(+)
|
||||
|
||||
diff --git a/topology/pre-process-dapm.c b/topology/pre-process-dapm.c
|
||||
index 450ca71..dbaf2f1 100644
|
||||
--- a/topology/pre-process-dapm.c
|
||||
+++ b/topology/pre-process-dapm.c
|
||||
@@ -146,6 +146,11 @@ static int tplg_pp_get_widget_name(struct tplg_pre_processor *tplg_pp,
|
||||
|
||||
/* get class name */
|
||||
args = strchr(string, '.');
|
||||
+ if (!args) {
|
||||
+ SNDERR("Error getting class name for %s\n", string);
|
||||
+ return -EINVAL;
|
||||
+ }
|
||||
+
|
||||
class_name = calloc(1, strlen(string) - strlen(args) + 1);
|
||||
if (!class_name)
|
||||
return -ENOMEM;
|
||||
diff --git a/topology/pre-process-object.c b/topology/pre-process-object.c
|
||||
index 09aa375..ac8caec 100644
|
||||
--- a/topology/pre-process-object.c
|
||||
+++ b/topology/pre-process-object.c
|
||||
@@ -492,6 +492,11 @@ static int tplg_pp_add_object_tuple_section(struct tplg_pre_processor *tplg_pp,
|
||||
}
|
||||
|
||||
type = strchr(token_ref, '.');
|
||||
+ if(!type) {
|
||||
+ SNDERR("Error getting type for %s\n", token_ref);
|
||||
+ return -EINVAL;
|
||||
+ }
|
||||
+
|
||||
token = calloc(1, strlen(token_ref) - strlen(type) + 1);
|
||||
if (!token)
|
||||
return -ENOMEM;
|
||||
--
|
||||
2.30.2
|
||||
|
@ -5,7 +5,7 @@
|
||||
Summary: Advanced Linux Sound Architecture (ALSA) utilities
|
||||
Name: alsa-utils
|
||||
Version: %{baseversion}%{?fixversion}
|
||||
Release: 2%{?dist}
|
||||
Release: 3%{?dist}
|
||||
License: GPLv2+
|
||||
URL: http://www.alsa-project.org/
|
||||
Source: ftp://ftp.alsa-project.org/pub/utils/alsa-utils-%{version}.tar.bz2
|
||||
@ -192,6 +192,9 @@ fi
|
||||
%systemd_postun_with_restart alsa-state.service
|
||||
|
||||
%changelog
|
||||
* Thu Jun 3 2021 Jaroslav Kysela <perex@perex.cz> - 1.2.5-3
|
||||
* Fixes for 1.2.5 (alsactl)
|
||||
|
||||
* Mon May 31 2021 Jaroslav Kysela <perex@perex.cz> - 1.2.5-2
|
||||
* Updated to 1.2.5
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user