aboutsummaryrefslogtreecommitdiffstats
path: root/channels/chan_zap.c
diff options
context:
space:
mode:
authormarkster <markster@f38db490-d61c-443f-a65b-d21fe96a405b>2004-06-17 14:51:44 +0000
committermarkster <markster@f38db490-d61c-443f-a65b-d21fe96a405b>2004-06-17 14:51:44 +0000
commit05245ff00bbc5a28d6d79bfeab2908f46f67bdfd (patch)
tree31557bf1a7af9f3191a962d9f1c0ae17eb8c9991 /channels/chan_zap.c
parentf66298ca84c818ac625d481f0f0c49ca4b949dae (diff)
Implement proper locking on INFO_RECEIVED
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@3237 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels/chan_zap.c')
-rwxr-xr-xchannels/chan_zap.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/channels/chan_zap.c b/channels/chan_zap.c
index c98957e34..0303be131 100755
--- a/channels/chan_zap.c
+++ b/channels/chan_zap.c
@@ -6965,6 +6965,7 @@ static void *pri_dchannel(void *vpri)
} else {
chanpos = pri_fixup_principle(pri, chanpos, e->ring.call);
if (chanpos > -1) {
+ ast_mutex_lock(&pri->pvts[x]->lock);
/* queue DTMF frame if the PBX for this call was already started (we're forwarding INFORMATION further on */
if (pri->overlapdial && pri->pvts[chanpos]->call==e->ring.call && pri->pvts[chanpos]->owner) {
/* how to do that */
@@ -6979,6 +6980,7 @@ static void *pri_dchannel(void *vpri)
}
}
}
+ ast_mutex_unlock(&pri->pvts[x]->lock);
}
}
break;