]> git.alsa-project.org Git - alsa-lib.git/commitdiff
Check error values
authorTakashi Iwai <tiwai@suse.de>
Fri, 21 Jan 2005 19:35:26 +0000 (19:35 +0000)
committerTakashi Iwai <tiwai@suse.de>
Fri, 21 Jan 2005 19:35:26 +0000 (19:35 +0000)
Check error values from some functions which were ignored.

src/confmisc.c

index a11326fea3de412d1e47197a83a3da2e7c75c0a4..981c9efc5013b1ea1e2cc4bf959cdbaf435d83d0 100644 (file)
@@ -268,7 +268,12 @@ int snd_func_getenv(snd_config_t **dst, snd_config_t *root, snd_config_t *src,
                        }
                        if (i == idx) {
                                idx++;
-                               snd_config_get_string(n, &ptr);
+                               err = snd_config_get_string(n, &ptr);
+                               if (err < 0) {
+                                       SNDERR("invalid string for id %s", id);
+                                       err = -EINVAL;
+                                       goto __error;
+                               }
                                env = getenv(ptr);
                                if (env != NULL && *env != '\0') {
                                        res = strdup(env);
@@ -404,8 +409,13 @@ int snd_func_concat(snd_config_t **dst, snd_config_t *root, snd_config_t *src,
                        }
                        if (i == idx) {
                                idx++;
-                               snd_config_get_ascii(n, &ptr);
-                                       len1 = strlen(ptr);
+                               err = snd_config_get_ascii(n, &ptr);
+                               if (err < 0) {
+                                       SNDERR("invalid ascii string for id %s", id);
+                                       err = -EINVAL;
+                                       goto __error;
+                               }
+                               len1 = strlen(ptr);
                                tmp = realloc(res, len + len1 + 1);
                                if (tmp == NULL) {
                                        free(ptr);