Fix up some PBX logic that became broken. The code would exit prematurely when it should have been collecting more digits.

(closes issue #11175)
Reported by: pj


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89072 65c4cc65-6c06-0410-ace0-fbb531ad65f3
1.6.0
Joshua Colp 18 years ago
parent 7c56918262
commit f440f8ba48

@ -2541,12 +2541,11 @@ static int __ast_pbx_run(struct ast_channel *c)
pos = 0;
dst_exten[pos++] = digit = res;
dst_exten[pos] = '\0';
}
if (res == AST_PBX_KEEPALIVE) {
} else if (res == AST_PBX_KEEPALIVE) {
ast_debug(1, "Spawn extension (%s,%s,%d) exited KEEPALIVE on '%s'\n", c->context, c->exten, c->priority, c->name);
ast_verb(2, "Spawn extension (%s, %s, %d) exited KEEPALIVE on '%s'\n", c->context, c->exten, c->priority, c->name);
error = 1;
}
} else {
ast_debug(1, "Spawn extension (%s,%s,%d) exited non-zero on '%s'\n", c->context, c->exten, c->priority, c->name);
ast_verb(2, "Spawn extension (%s, %s, %d) exited non-zero on '%s'\n", c->context, c->exten, c->priority, c->name);
@ -2573,6 +2572,7 @@ static int __ast_pbx_run(struct ast_channel *c)
break;
}
}
}
if (error)
break;

Loading…
Cancel
Save