diff --git a/main/config.c b/main/config.c
index 3fbbacf7465b70382b5f16be8cf1081a3477a456..118b9586ed42b73f0f36650732fe64bdc4f808db 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();