]> git.alsa-project.org Git - alsa-utils.git/commitdiff
aplay, alsactl, topology: fix discards const from pointer target
authorRudi Heitbaum <rudi@heitbaum.com>
Fri, 20 Feb 2026 11:10:24 +0000 (11:10 +0000)
committerJaroslav Kysela <perex@perex.cz>
Mon, 25 May 2026 09:30:25 +0000 (11:30 +0200)
Since glibc-2.43:

For ISO C23, the functions bsearch, memchr, strchr, strpbrk, strrchr,
strstr, wcschr, wcspbrk, wcsrchr, wcsstr and wmemchr that return pointers
into their input arrays now have definitions as macros that return a
pointer to a const-qualified type when the input argument is a pointer
to a const-qualified type.

https://lists.gnu.org/archive/html/info-gnu/2026-01/msg00005.html

Closes: https://github.com/alsa-project/alsa-utils/pull/322
Signed-off-by: Rudi Heitbaum <rudi@heitbaum.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
alsactl/init_parse.c
aplay/aplay.c
topology/pre-process-dapm.c
topology/pre-process-object.c

index a437392b6061a1c7cc95d661578b21e70e19a58a..aa2c40f9f2cf7f616b97cbccc209d2e0eb5682e4 100644 (file)
@@ -692,7 +692,7 @@ dbvalue:
                int err, index = 0;
                snd_hctl_elem_t *elem;
                snd_ctl_elem_id_t *id;
-               char *pos = strchr(attr, ' ');
+               const char *pos = strchr(attr, ' ');
                if (pos)
                        index = strtol(pos, NULL, 0);
                err = snd_ctl_elem_id_malloc(&id);
@@ -1281,7 +1281,7 @@ static char *new_root_dir(const char *filename)
 /* return non-zero if the file name has the extension ".conf" */
 static int conf_name_filter(const struct dirent *d)
 {
-       char *ext = strrchr(d->d_name, '.');
+       const char *ext = strrchr(d->d_name, '.');
        return ext && !strcmp(ext, ".conf");
 }
 
index 74ec94789599ce67aae75921b86a6cab7e6dfd3d..20fde77d1d16470eea6efadaf2e3b66155147e4f 100644 (file)
@@ -3219,7 +3219,7 @@ static int new_capture_file(char *name, char *namebuf, size_t namelen,
  */
 int create_path(const char *path)
 {
-       char *start;
+       const char *start;
        mode_t mode = S_IRWXU | S_IRGRP | S_IXGRP | S_IROTH | S_IXOTH;
 
        if (path[0] == '/')
index 78944a6d98013b8299293461c230b07e3ac73510..985bef711180041c166c103f7ef86f8146e99a8a 100644 (file)
@@ -168,7 +168,8 @@ static int tplg_pp_get_widget_name(struct tplg_pre_processor *tplg_pp,
 {
        snd_config_iterator_t i, next;
        snd_config_t *temp_cfg, *child, *class_cfg, *n;
-       char *class_name, *args, *widget_name;
+       const char *args;
+       char *class_name, *widget_name;
        int ret;
 
        /* get class name */
@@ -221,8 +222,8 @@ static int tplg_pp_get_widget_name(struct tplg_pre_processor *tplg_pp,
 
        /* construct widget name using the constructor argument values */
        snd_config_for_each(i, next, temp_cfg) {
-               const char *id;
-               char *arg, *remaining, *temp;
+               const char *id, *remaining;
+               char *arg, *temp;
 
                n = snd_config_iterator_entry(i);
                if (snd_config_get_string(n, &id) < 0)
index de088a60f2cad6584d5438812c91ab68f2e1cd20..d7649077fc86e4f736c4764cea6e4806675c4a08 100644 (file)
@@ -542,8 +542,8 @@ static int tplg_pp_add_object_tuple_section(struct tplg_pre_processor *tplg_pp,
                                            const char *token_ref, const char *array_name)
 {
        snd_config_t *top, *tuple_cfg, *child, *cfg, *new;
-       const char *id;
-       char *token, *type, *str;
+       const char *id, *type;
+       char *token, *str;
        long tuple_value;
        int ret;