aboutsummaryrefslogtreecommitdiffstats
path: root/main
diff options
context:
space:
mode:
authormmichelson <mmichelson@f38db490-d61c-443f-a65b-d21fe96a405b>2008-07-30 18:31:47 +0000
committermmichelson <mmichelson@f38db490-d61c-443f-a65b-d21fe96a405b>2008-07-30 18:31:47 +0000
commitfbe012b91663ffbea1fa64624173defd22ef3815 (patch)
tree976bf88641dce3dd850375a20f458466d084ab12 /main
parentb6685e27b8434e70009bfb030de1d973c3b4146c (diff)
Fix a spot where a function could return without bringing
a channel out of autoservice. git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@134475 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'main')
-rw-r--r--main/app.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/main/app.c b/main/app.c
index c9fdb4f0c..bad03e09b 100644
--- a/main/app.c
+++ b/main/app.c
@@ -227,8 +227,12 @@ int ast_dtmf_stream(struct ast_channel *chan, struct ast_channel *peer, const ch
res = ast_waitfor(chan, 100);
/* ast_waitfor will return the number of remaining ms on success */
- if (res < 0)
+ if (res < 0) {
+ if (peer) {
+ ast_autoservice_stop(peer);
+ }
return res;
+ }
if (ast_opt_transmit_silence) {
silgen = ast_channel_start_silence_generator(chan);