From c28618353b3f5d90e144bef56c52619ad8769520 Mon Sep 17 00:00:00 2001 From: Jaroslav Kysela Date: Tue, 19 Nov 2019 10:55:29 +0100 Subject: [PATCH] conf: check for include path duplicates Signed-off-by: Jaroslav Kysela --- src/conf.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/conf.c b/src/conf.c index f9e9a395..e4306504 100644 --- a/src/conf.c +++ b/src/conf.c @@ -528,6 +528,17 @@ static inline void snd_config_unlock(void) { } static int add_include_path(struct filedesc *fd, const char *dir) { struct include_path *path; + struct filedesc *fd1; + struct list_head *pos; + + /* check, if dir is already registered (also in parents) */ + for (fd1 = fd; fd1; fd1 = fd1->next) { + list_for_each(pos, &fd1->include_paths) { + path = list_entry(pos, struct include_path, list); + if (strcmp(path->dir, dir) == 0) + return 0; + } + } path = calloc(1, sizeof(*path)); if (!path) -- 2.47.1