summaryrefslogtreecommitdiff
path: root/apps
diff options
context:
space:
mode:
authorJoshua Colp <jcolp@digium.com>2006-09-05 17:01:02 +0000
committerJoshua Colp <jcolp@digium.com>2006-09-05 17:01:02 +0000
commit4a7947501edd87a5050ad0124284157ba6a6e711 (patch)
tree62c0d53de5b88f652704f75ecd880813918fdafc /apps
parent4ba458e35218977b94a92505e8a86a3916ce47a4 (diff)
Minor tweak - we need to lock the channel when we are removing the spy from it.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@42021 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'apps')
-rw-r--r--apps/app_chanspy.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/apps/app_chanspy.c b/apps/app_chanspy.c
index d0fdda243..01adbacbe 100644
--- a/apps/app_chanspy.c
+++ b/apps/app_chanspy.c
@@ -370,7 +370,9 @@ static int channel_spy(struct ast_channel *chan, struct ast_channel *spyee, int
/* If a channel still exists on our spy structure then we need to remove ourselves */
if (csth.spy.chan) {
csth.spy.status = CHANSPY_DONE;
+ ast_channel_lock(csth.spy.chan);
ast_channel_spy_remove(csth.spy.chan, &csth.spy);
+ ast_channel_unlock(csth.spy.chan);
}
ast_channel_spy_free(&csth.spy);