From e03f0f9572a4cdd53baa2b1667467fa74e972af0 Mon Sep 17 00:00:00 2001 From: Corey Farrell Date: Mon, 19 Feb 2018 03:49:45 -0500 Subject: [PATCH] config: Fix locking for extconfig reload. Expand locking to include full reload process for extconfig to ensure nothing can read the config mappings between clearing and reloading. Change-Id: I378316bad04f1b599ea82d0fef62b8978a644b92 --- main/config.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/main/config.c b/main/config.c index 3fbbacf746..118b9586ed 100644 --- a/main/config.c +++ b/main/config.c @@ -2839,8 +2839,6 @@ static void clear_config_maps(void) { struct ast_config_map *map; - SCOPED_MUTEX(lock, &config_lock); - while (config_maps) { map = config_maps; config_maps = config_maps->next; @@ -2894,6 +2892,7 @@ int read_config_maps(void) char *driver, *table, *database, *textpri, *stringp, *tmp; struct ast_flags flags = { CONFIG_FLAG_NOREALTIME }; int pri; + SCOPED_MUTEX(lock, &config_lock); clear_config_maps(); -- 2.47.2