Merge "sounds_index: Avoid repeatedly reindexing." into 13

This commit is contained in:
Jenkins2
2017-12-07 12:43:44 -06:00
committed by Gerrit Code Review
2 changed files with 11 additions and 5 deletions
+6 -1
View File
@@ -4701,9 +4701,14 @@ static void asterisk_daemon(int isroot, const char *runuser, const char *rungrou
check_init(init_manager(), "Asterisk Manager Interface");
check_init(ast_enum_init(), "ENUM Support");
check_init(ast_cc_init(), "Call Completion Supplementary Services");
check_init(ast_sounds_index_init(), "Sounds Indexer");
check_init(load_modules(0), "Module");
/*
* This is initialized after the dynamic modules load to avoid repeatedly
* reindexing sounds for every format module load.
*/
check_init(ast_sounds_index_init(), "Sounds Indexer");
/* loads the cli_permissoins.conf file needed to implement cli restrictions. */
ast_cli_perms_init(0);
+5 -4
View File
@@ -285,13 +285,15 @@ static void sounds_cleanup(void)
static void format_update_cb(void *data, struct stasis_subscription *sub,
struct stasis_message *message)
{
ast_sounds_reindex();
/* Reindexing during shutdown is pointless. */
if (!ast_shutting_down()) {
ast_sounds_reindex();
}
}
int ast_sounds_index_init(void)
{
int res = 0;
sounds_index = NULL;
if (ast_sounds_reindex()) {
return -1;
}
@@ -328,6 +330,5 @@ int ast_sounds_index_init(void)
struct ast_media_index *ast_sounds_get_index(void)
{
ao2_ref(sounds_index, +1);
return sounds_index;
return ao2_bump(sounds_index);
}