revert my changes that converted the jb on the channel to be dynamically

allocated. These changes caused crashes when using a channel type that did
not support the jitterbuffer. Instead of fixing why it's crashing, I'm going
to implement this in a better way next week. The way I did it caused a
jitterbuffer to be allocated on every channel where the channel type supported
jitterbuffers, even if they were disabled.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@35746 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Russell Bryant
2006-06-23 16:49:12 +00:00
parent b8518110da
commit c8ceb92a4f
12 changed files with 79 additions and 138 deletions

View File

@@ -1478,6 +1478,8 @@ static struct ast_channel *mgcp_new(struct mgcp_subchannel *sub, int state)
if (i->amaflags)
tmp->amaflags = i->amaflags;
sub->owner = tmp;
ast_atomic_fetchadd_int(&__mod_desc->usecnt, +1);
ast_update_use_count();
tmp->callgroup = i->callgroup;
tmp->pickupgroup = i->pickupgroup;
ast_string_field_set(tmp, call_forward, i->call_forward);
@@ -1488,28 +1490,22 @@ static struct ast_channel *mgcp_new(struct mgcp_subchannel *sub, int state)
if (!i->adsi)
tmp->adsicpe = AST_ADSI_UNAVAILABLE;
tmp->priority = 1;
/* Configure the new channel jb */
if (sub->rtp) {
if (ast_jb_configure(tmp, &global_jbconf)) {
ast_hangup(tmp);
sub->owner = NULL;
return NULL;
}
}
if (state != AST_STATE_DOWN) {
if (ast_pbx_start(tmp)) {
ast_log(LOG_WARNING, "Unable to start PBX on %s\n", tmp->name);
ast_hangup(tmp);
sub->owner = NULL;
return NULL;
tmp = NULL;
}
}
/* SC: verbose level check */
if (option_verbose > 2) {
ast_verbose(VERBOSE_PREFIX_3 "MGCP mgcp_new(%s) created in state: %s\n",
tmp->name, ast_state2str(state));
}
ast_atomic_fetchadd_int(&__mod_desc->usecnt, +1);
ast_update_use_count();
/* Configure the new channel jb */
if (tmp && sub && sub->rtp)
ast_jb_configure(tmp, &global_jbconf);
} else {
ast_log(LOG_WARNING, "Unable to allocate channel structure\n");
}