diff options
author | russell <russell@f38db490-d61c-443f-a65b-d21fe96a405b> | 2008-12-16 21:13:18 +0000 |
---|---|---|
committer | russell <russell@f38db490-d61c-443f-a65b-d21fe96a405b> | 2008-12-16 21:13:18 +0000 |
commit | 4aeddfd80047fff8e09e250f6ffb4a093df129f0 (patch) | |
tree | f9715ff252de664da07a6c7022801c25343cef87 /apps/app_macro.c | |
parent | a74f55fee1b040f3682cd2185ea92aa6a5a2e39e (diff) |
Merged revisions 164877 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk
................
r164877 | russell | 2008-12-16 15:12:49 -0600 (Tue, 16 Dec 2008) | 14 lines
Merged revisions 164876 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r164876 | russell | 2008-12-16 15:10:44 -0600 (Tue, 16 Dec 2008) | 6 lines
Do not dereference the channel if AST_PBX_KEEPALIVE has been returned.
This is a bug I noticed while looking at the code for app_macro. This return code
means that another thread has assumed ownership of the channel and it can no longer
be touched. (I hate this return code with a passion, by the way.)
........
................
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.6.0@164878 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'apps/app_macro.c')
-rw-r--r-- | apps/app_macro.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/apps/app_macro.c b/apps/app_macro.c index b087ad36b..68bbf16a4 100644 --- a/apps/app_macro.c +++ b/apps/app_macro.c @@ -307,8 +307,8 @@ static int _macro_exec(struct ast_channel *chan, void *data, int exclusive) case AST_PBX_KEEPALIVE: ast_debug(2, "Spawn extension (%s,%s,%d) exited KEEPALIVE in macro %s on '%s'\n", chan->context, chan->exten, chan->priority, macro, chan->name); ast_verb(2, "Spawn extension (%s, %s, %d) exited KEEPALIVE in macro '%s' on '%s'\n", chan->context, chan->exten, chan->priority, macro, chan->name); + dead = 1; goto out; - break; default: ast_debug(2, "Spawn extension (%s,%s,%d) exited non-zero on '%s' in macro '%s'\n", chan->context, chan->exten, chan->priority, chan->name, macro); ast_verb(2, "Spawn extension (%s, %s, %d) exited non-zero on '%s' in macro '%s'\n", chan->context, chan->exten, chan->priority, chan->name, macro); |