Merged revisions 273354 via svnmerge from

https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r273354 | jpeeler | 2010-07-01 10:05:43 -0500 (Thu, 01 Jul 2010) | 12 lines
  
  Ensure channel placed in meetme in ringing state is properly hung up.
  
  An outgoing channel placed in meetme while still ringing which was then hung up
  would not exit meetme and the channel was not properly destroyed. Specifically
  checking for this scenario by looking at the appropriate control frames resolves
  the issue.
  
  (closes issue #15871)
  Reported by: Ivan
  Patches: 
        meetme_congestion_trunk_v2.patch uploaded by Ivan (license 229)
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@273355 65c4cc65-6c06-0410-ace0-fbb531ad65f3
certified/1.8.6
Jeff Peeler 15 years ago
parent a1a08a7338
commit bd9ff2829e

@ -3439,6 +3439,18 @@ static int conf_run(struct ast_channel *chan, struct ast_conference *conf, struc
}
} else if (f->frametype == AST_FRAME_NULL) {
/* Ignore NULL frames. It is perfectly normal to get these if the person is muted. */
} else if (f->frametype == AST_FRAME_CONTROL) {
switch (f->subclass.integer) {
case AST_CONTROL_BUSY:
case AST_CONTROL_CONGESTION:
ast_frfree(f);
goto outrun;
break;
default:
ast_debug(1,
"Got ignored control frame on channel %s, f->frametype=%d,f->subclass=%d\n",
chan->name, f->frametype, f->subclass.integer);
}
} else {
ast_debug(1,
"Got unrecognized frame on channel %s, f->frametype=%d,f->subclass=%d\n",

Loading…
Cancel
Save