]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
Stop the stream after waitstream returns so that our formats get restored. (issue...
authorJoshua Colp <jcolp@digium.com>
Thu, 28 Sep 2006 16:13:55 +0000 (16:13 +0000)
committerJoshua Colp <jcolp@digium.com>
Thu, 28 Sep 2006 16:13:55 +0000 (16:13 +0000)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@43891 65c4cc65-6c06-0410-ace0-fbb531ad65f3

apps/app_meetme.c

index 891fc3655274d317de914b04c73b10599685c04d..a29289ed86561b58a14dc4a5fb8abfc9c11ec1d3 100644 (file)
@@ -936,6 +936,7 @@ static int conf_run(struct ast_channel *chan, struct ast_conference *conf, int c
                if (conf->users == 2) { 
                        if (!ast_streamfile(chan,"conf-onlyone",chan->language)) {
                                res = ast_waitstream(chan, AST_DIGIT_ANY);
+                               ast_stopstream(chan);
                                if (res > 0)
                                        keepplaying=0;
                                else if (res == -1)
@@ -944,6 +945,7 @@ static int conf_run(struct ast_channel *chan, struct ast_conference *conf, int c
                } else { 
                        if (!ast_streamfile(chan, "conf-thereare", chan->language)) {
                                res = ast_waitstream(chan, AST_DIGIT_ANY);
+                               ast_stopstream(chan);
                                if (res > 0)
                                        keepplaying=0;
                                else if (res == -1)
@@ -958,6 +960,7 @@ static int conf_run(struct ast_channel *chan, struct ast_conference *conf, int c
                        }
                        if (keepplaying && !ast_streamfile(chan, "conf-otherinparty", chan->language)) {
                                res = ast_waitstream(chan, AST_DIGIT_ANY);
+                               ast_stopstream(chan);
                                if (res > 0)
                                        keepplaying=0;
                                else if (res == -1) 
@@ -1986,8 +1989,10 @@ static int conf_exec(struct ast_channel *chan, void *data)
                                                                break;
                                                        } else {
                                                                /* Pin invalid */
-                                                               if (!ast_streamfile(chan, "conf-invalidpin", chan->language))
+                                                               if (!ast_streamfile(chan, "conf-invalidpin", chan->language)) {
                                                                        res = ast_waitstream(chan, AST_DIGIT_ANY);
+                                                                       ast_stopstream(chan);
+                                                               }
                                                                else {
                                                                        ast_log(LOG_WARNING, "Couldn't play invalid pin msg!\n");
                                                                        break;