aboutsummaryrefslogtreecommitdiffstats
path: root/apps/app_chanspy.c
diff options
context:
space:
mode:
authorrussell <russell@f38db490-d61c-443f-a65b-d21fe96a405b>2008-03-18 22:36:02 +0000
committerrussell <russell@f38db490-d61c-443f-a65b-d21fe96a405b>2008-03-18 22:36:02 +0000
commit9b38fdc83b0a66a0cbd6767a6d57315cbe378635 (patch)
treeca64caffa749233513cca45124c491305228e202 /apps/app_chanspy.c
parent93531c68a25e6424e8f8b93f4bf3c944fdc53440 (diff)
Merged revisions 109763 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r109763 | russell | 2008-03-18 17:34:42 -0500 (Tue, 18 Mar 2008) | 3 lines Fix one place where the chanspy datastore isn't removed from a channel. (issue #12243, reported by atis, patch by me) ........ git-svn-id: http://svn.digium.com/svn/asterisk/trunk@109764 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'apps/app_chanspy.c')
-rw-r--r--apps/app_chanspy.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/apps/app_chanspy.c b/apps/app_chanspy.c
index ab056e0aa..f37de3889 100644
--- a/apps/app_chanspy.c
+++ b/apps/app_chanspy.c
@@ -714,8 +714,10 @@ static int common_exec(struct ast_channel *chan, const struct ast_flags *flags,
res = ast_streamfile(chan, peer_name, chan->language);
if (!res)
res = ast_waitstream(chan, "");
- if (res)
+ if (res) {
+ chanspy_ds_free(peer_chanspy_ds);
break;
+ }
} else
res = ast_say_character_str(chan, peer_name, "", chan->language);
if ((num = atoi(ptr)))
@@ -731,6 +733,7 @@ static int common_exec(struct ast_channel *chan, const struct ast_flags *flags,
goto exit;
} else if (res == -2) {
res = 0;
+ chanspy_ds_free(peer_chanspy_ds);
goto exit;
} else if (res > 1 && spec) {
struct ast_channel *next;