aboutsummaryrefslogtreecommitdiffstats
path: root/channels/chan_agent.c
diff options
context:
space:
mode:
Diffstat (limited to 'channels/chan_agent.c')
-rw-r--r--channels/chan_agent.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/channels/chan_agent.c b/channels/chan_agent.c
index 4eeffe99c..2db3faf18 100644
--- a/channels/chan_agent.c
+++ b/channels/chan_agent.c
@@ -1113,7 +1113,7 @@ static int read_agent_config(void)
AST_LIST_TRAVERSE_SAFE_END
AST_LIST_UNLOCK(&agents);
ast_config_destroy(cfg);
- return 0;
+ return 1;
}
static int check_availability(struct agent_pvt *newlyavailable, int needlock)
@@ -2547,6 +2547,11 @@ static int load_module(void)
ast_log(LOG_ERROR, "Unable to register channel class 'Agent'\n");
return -1;
}
+ /* Read in the config */
+ if (!read_agent_config())
+ return AST_MODULE_LOAD_DECLINE;
+ if (persistent_agents)
+ reload_agents();
/* Dialplan applications */
ast_register_application(app, login_exec, synopsis, descrip);
ast_register_application(app2, callback_exec, synopsis2, descrip2);
@@ -2565,10 +2570,6 @@ static int load_module(void)
/* Dialplan Functions */
ast_custom_function_register(&agent_function);
- /* Read in the config */
- read_agent_config();
- if (persistent_agents)
- reload_agents();
return 0;
}