From b40a116b8e048abfea4be54e11090787674e341a Mon Sep 17 00:00:00 2001 From: Jaroslav Kysela Date: Thu, 12 Oct 2006 14:52:07 +0200 Subject: [PATCH] Remove snd_name_list() and snd_name_list_free() functions. These functions were not used in applications anyway. --- src/names.c | 141 +++------------------------------------------------- 1 file changed, 8 insertions(+), 133 deletions(-) diff --git a/src/names.c b/src/names.c index a4363723..3f6e0188 100644 --- a/src/names.c +++ b/src/names.c @@ -35,156 +35,31 @@ #include #include "local.h" -#ifndef DOC_HIDDEN -#define ALSA_NAMES_ENV "ALSA_NAMES_FILE" -#define ALSA_NAMES_PATH1 "/etc/asound.names" -#define ALSA_NAMES_PATH2 "~/.asoundnm" -#endif - -static int names_parse(snd_config_t *top, const char *iface, snd_devname_t **list) -{ - snd_config_iterator_t i, next; - snd_config_iterator_t j, jnext; - char *name, *comment; - const char *id; - snd_devname_t *dn, *last = NULL; - int err; - - err = snd_config_search(top, iface, &top); - if (err < 0) - return err; - snd_config_for_each(i, next, top) { - snd_config_t *n = snd_config_iterator_entry(i); - if (snd_config_get_id(n, &id) < 0) - continue; - name = comment = NULL; - snd_config_for_each(j, jnext, n) { - snd_config_t *m = snd_config_iterator_entry(j); - if (snd_config_get_id(m, &id) < 0) - continue; - if (strcmp(id, "name") == 0) { - err = snd_config_get_string(m, (const char **)&name); - if (err < 0) - continue; - name = strdup(name); - if (name == NULL) { - err = -ENOMEM; - goto _err; - } - continue; - } - if (strcmp(id, "comment") == 0) { - err = snd_config_get_string(m, (const char **)&comment); - if (err < 0) - continue; - comment = strdup(comment); - if (name == NULL) { - err = -ENOMEM; - goto _err; - } - continue; - } - } - if (name != NULL) { - dn = malloc(sizeof(*dn)); - if (dn == NULL) { - err = -ENOMEM; - goto _err; - } - dn->name = name; - dn->comment = comment; - dn->next = NULL; - if (last == NULL) { - *list = dn; - } else { - last->next = dn; - } - last = dn; - } else { - free(comment); - } - } - return 0; - - _err: - free(name); - free(comment); - return err; -} - /** * \brief Give a list of device names and associated comments for selected interface * \param iface a string identifying interface ("pcm", "ctl", "seq", "rawmidi") * \param list result - a pointer to list * \return A non-negative value if successful, otherwise a negative error code. + * \deprecated Since 1.0.14 * * The global configuration files are specified in the environment variable * \c ALSA_NAMES_FILE. */ -int snd_names_list(const char *iface, snd_devname_t **list) +int snd_names_list(const char *iface ATTRIBUTE_UNUSED, + snd_devname_t **list ATTRIBUTE_UNUSED) { - char *file; - snd_config_t *top; - snd_input_t *in; - int err; - - assert(iface); - assert(list); - *list = NULL; - file = getenv(ALSA_NAMES_ENV); - if (file) { - file = strdup(file); - if (file == NULL) - return -ENOMEM; - } else { - err = snd_user_file(ALSA_NAMES_PATH2, &file); - if (err < 0) - return err; - if (access(file, R_OK)) { - file = strdup(ALSA_NAMES_PATH1); - if (file == NULL) - return -ENOMEM; - } - } - top = NULL; - err = snd_config_top(&top); - if (err >= 0) - err = snd_input_stdio_open(&in, file, "r"); - if (err >= 0) { - err = snd_config_load(top, in); - snd_input_close(in); - if (err < 0) { - SNDERR("%s may be old or corrupted: consider to remove or fix it", file); - } else { - err = names_parse(top, iface, list); - if (err < 0) { - snd_names_list_free(*list); - *list = NULL; - } - } - } else { - SNDERR("cannot access file %s", file); - } - if (top) - snd_config_delete(top); - return err >= 0 ? 0 : err; + return -ENXIO; } +link_warning(snd_names_list, "Warning: snd_names_list is deprecated, use snd_device_name_hint"); /** * \brief Release the list of device names * \param list the name list to release + * \deprecated Since 1.0.14 * * Releases the list of device names allocated via #snd_names_list(). */ -void snd_names_list_free(snd_devname_t *list) +void snd_names_list_free(snd_devname_t *list ATTRIBUTE_UNUSED) { - snd_devname_t *next; - - while (list != NULL) { - next = list->next; - free(list->name); - free(list->comment); - free(list); - list = next; - } } +link_warning(snd_names_list_free, "Warning: snd_names_list_free is deprecated, use snd_device_name_free_hint"); -- 2.47.1