aboutsummaryrefslogtreecommitdiffstats
path: root/channels/chan_misdn.c
diff options
context:
space:
mode:
authorcrichter <crichter@f38db490-d61c-443f-a65b-d21fe96a405b>2006-10-21 12:35:13 +0000
committercrichter <crichter@f38db490-d61c-443f-a65b-d21fe96a405b>2006-10-21 12:35:13 +0000
commit3222639fcd8e3512ac6ccbf4f0ed8b7e316194be (patch)
tree35d99a846ca3693e084fbc1c6168563ec8407f89 /channels/chan_misdn.c
parent05fe0a9a08212696283f2092507dc52fab3a9e83 (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.c7
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)
{