summaryrefslogtreecommitdiff
path: root/channels/chan_h323.c
diff options
context:
space:
mode:
authorRussell Bryant <russell@russellbryant.com>2006-08-16 03:43:47 +0000
committerRussell Bryant <russell@russellbryant.com>2006-08-16 03:43:47 +0000
commit9f9a5f19845e38b8829fdff94837b9b760692404 (patch)
tree98c95aea70e10cb294e357dc51f55ae0e3b448aa /channels/chan_h323.c
parentb6a99250edb1acabf6edea5fd0e49a48d630231b (diff)
move the calls to ast_jb_configure() to before the PBX thread is started on the
channel to remove the theoretical race condition that the channel could get bridged before the channel's jitterbuffer gets configured. This was pointed out by PCadach on IRC. Thanks! git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@39964 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'channels/chan_h323.c')
-rw-r--r--channels/chan_h323.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/channels/chan_h323.c b/channels/chan_h323.c
index cd9f3ecff..1ce5b345e 100644
--- a/channels/chan_h323.c
+++ b/channels/chan_h323.c
@@ -826,6 +826,8 @@ static struct ast_channel *__oh323_new(struct oh323_pvt *pvt, int state, const c
ch->cid.cid_dnid = strdup(pvt->exten);
}
ast_setstate(ch, state);
+ if (pvt->rtp)
+ ast_jb_configure(ch, &global_jbconf);
if (state != AST_STATE_DOWN) {
if (ast_pbx_start(ch)) {
ast_log(LOG_WARNING, "Unable to start PBX on %s\n", ch->name);
@@ -833,10 +835,6 @@ static struct ast_channel *__oh323_new(struct oh323_pvt *pvt, int state, const c
ch = NULL;
}
}
-
- /* Configure the new channel jb */
- if (ch && pvt && pvt->rtp)
- ast_jb_configure(ch, &global_jbconf);
} else {
ast_log(LOG_WARNING, "Unable to allocate channel structure\n");
}