diff options
author | crichter <crichter@f38db490-d61c-443f-a65b-d21fe96a405b> | 2006-10-21 12:35:13 +0000 |
---|---|---|
committer | crichter <crichter@f38db490-d61c-443f-a65b-d21fe96a405b> | 2006-10-21 12:35:13 +0000 |
commit | 3222639fcd8e3512ac6ccbf4f0ed8b7e316194be (patch) | |
tree | 35d99a846ca3693e084fbc1c6168563ec8407f89 /channels/chan_misdn.c | |
parent | 05fe0a9a08212696283f2092507dc52fab3a9e83 (diff) |
fixed issue, that if chan_misdn is loaded and couldn't be initialized it would cause a segfault after 'reload'. Reported by Drew/Matt thx.
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.2@45808 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels/chan_misdn.c')
-rw-r--r-- | channels/chan_misdn.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/channels/chan_misdn.c b/channels/chan_misdn.c index f8e1675a5..4264ceda0 100644 --- a/channels/chan_misdn.c +++ b/channels/chan_misdn.c @@ -64,6 +64,7 @@ char global_tracefile[BUFFERSIZE+1]; +static int g_config_initialized=0; struct misdn_jb{ int size; @@ -706,6 +707,11 @@ static char *misdn_get_ch_state(struct chan_list *p) static void reload_config(void) { int i, cfg_debug; + + if (!g_config_initialized) { + ast_log(LOG_WARNING, "chan_misdn is not initialized properly, still reloading ?\n"); + return ; + } free_robin_list(); misdn_cfg_reload(); @@ -4091,7 +4097,6 @@ cb_events(enum event_e event, struct misdn_bchannel *bc, void *user_data) *******************************************/ -static int g_config_initialized=0; int load_module(void) { |