diff options
author | Mark Spencer <markster@digium.com> | 2005-02-02 02:20:34 +0000 |
---|---|---|
committer | Mark Spencer <markster@digium.com> | 2005-02-02 02:20:34 +0000 |
commit | b96ba5cae3167fc7353a077eef2b249c589f6b7f (patch) | |
tree | 41f991d646ccf1256c801081c2256f6b5f975834 /apps/app_meetme.c | |
parent | c48522110fb84f99486b0c3057e65e4181a17173 (diff) |
Fix conferencing of non-zap stuff (bug #3488)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@4947 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'apps/app_meetme.c')
-rwxr-xr-x | apps/app_meetme.c | 16 |
1 files changed, 7 insertions, 9 deletions
diff --git a/apps/app_meetme.c b/apps/app_meetme.c index e470b3975..c65378f43 100755 --- a/apps/app_meetme.c +++ b/apps/app_meetme.c @@ -904,7 +904,7 @@ zapretry: goto zapretry; } f = ast_read(c); - if (!f) + if (!f) break; if ((f->frametype == AST_FRAME_VOICE) && (f->subclass == AST_FORMAT_SLINEAR)) { if (confflags & CONFFLAG_MONITORTALKER) { @@ -932,6 +932,10 @@ zapretry: chan->name, chan->uniqueid, conf->confno, user->user_no); } } + if (using_pseudo) { + /* Carefully write */ + careful_write(fd, f->data, f->datalen); + } } else if ((f->frametype == AST_FRAME_DTMF) && (confflags & CONFFLAG_EXIT_CONTEXT)) { char tmp[2]; tmp[0] = f->subclass; @@ -1062,14 +1066,8 @@ zapretry: if (musiconhold) { ast_moh_start(chan, NULL); } - } else if (using_pseudo) { - if (f->frametype == AST_FRAME_VOICE) { - if (f->subclass == AST_FORMAT_SLINEAR) { - /* Carefully write */ - careful_write(fd, f->data, f->datalen); - } else - ast_log(LOG_WARNING, "Huh? Got a non-linear (%d) frame in the conference\n", f->subclass); - } + } else if (option_debug) { + ast_log(LOG_DEBUG, "Got unrecognized frame on channel %s, f->frametype=%d,f->subclass=%d\n",chan->name,f->frametype,f->subclass); } ast_frfree(f); } else if (outfd > -1) { |