diff options
author | Mark Spencer <markster@digium.com> | 2004-01-10 23:47:46 +0000 |
---|---|---|
committer | Mark Spencer <markster@digium.com> | 2004-01-10 23:47:46 +0000 |
commit | 5bd726380ca9b55913d41a79ae94046616131dff (patch) | |
tree | ce793a5abf90edd6085b770f3a9f6e1fc717f61b /channels | |
parent | 2e3400f8990c98a6d06447ff87144b1c76315ce5 (diff) |
When rejecting a call, free up the channel (bug #661)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@1922 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'channels')
-rwxr-xr-x | channels/chan_zap.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/channels/chan_zap.c b/channels/chan_zap.c index 3826e16af..9fc73eb62 100755 --- a/channels/chan_zap.c +++ b/channels/chan_zap.c @@ -1804,7 +1804,7 @@ static int zt_hangup(struct ast_channel *ast) if (!p->alreadyhungup) { res = pri_disconnect(p->pri->pri, p->call, PRI_CAUSE_NORMAL_CLEARING); } else { - pri_release(p->pri->pri, p->call, -1); + pri(p->pri->pri, p->call, -1); p->call = NULL; p->alreadyhungup = 0; } @@ -6148,7 +6148,7 @@ static void *pri_dchannel(void *vpri) #else pri_release(pri->pri, e->ring.call, PRI_CAUSE_SWITCH_CONGESTION); #endif - pri->pvt[chan]->call = 0; + pri->pvt[chan]->call = NULL; } } else { if ((!strlen(pri->pvt[chan]->exten) || ast_matchmore_extension(NULL, pri->pvt[chan]->context, pri->pvt[chan]->exten, 1, pri->pvt[chan]->callerid)) && !e->ring.complete) @@ -6163,6 +6163,7 @@ static void *pri_dchannel(void *vpri) #else pri_release(pri->pri, e->ring.call, PRI_CAUSE_UNALLOCATED); #endif + pri->pvt[chan]->call = NULL; } } } else |