Suppress warning about pbx structure already existing
authorTilghman Lesher <tilghman@meg.abyt.es>
Fri, 30 May 2008 16:40:13 +0000 (16:40 +0000)
committerTilghman Lesher <tilghman@meg.abyt.es>
Fri, 30 May 2008 16:40:13 +0000 (16:40 +0000)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@119299 65c4cc65-6c06-0410-ace0-fbb531ad65f3

apps/app_stack.c

index 7131a8d..b0f703b 100644 (file)
@@ -451,9 +451,16 @@ static int handle_gosub(struct ast_channel *chan, AGI *agi, int argc, char **arg
                chan->priority = 0;
 
                if ((res = pbx_exec(chan, theapp, gosub_args)) == 0) {
+                       struct ast_pbx *pbx = chan->pbx;
+                       /* Suppress warning about PBX already existing */
+                       chan->pbx = NULL;
                        ast_agi_fdprintf(chan, agi->fd, "100 result=0 Trying...\n");
                        ast_pbx_run(chan);
                        ast_agi_fdprintf(chan, agi->fd, "200 result=0 Gosub complete\n");
+                       if (chan->pbx) {
+                               ast_free(chan->pbx);
+                       }
+                       chan->pbx = pbx;
                } else {
                        ast_agi_fdprintf(chan, agi->fd, "200 result=%d Gosub failed\n", res);
                }