aboutsummaryrefslogtreecommitdiffstats
path: root/channels/chan_dahdi.c
diff options
context:
space:
mode:
authorjpeeler <jpeeler@f38db490-d61c-443f-a65b-d21fe96a405b>2008-06-12 17:39:38 +0000
committerjpeeler <jpeeler@f38db490-d61c-443f-a65b-d21fe96a405b>2008-06-12 17:39:38 +0000
commit420c59e7642edfb8f456265d31416ba8435722ee (patch)
tree50127c347358c7fa46c474a99b2311864518762b /channels/chan_dahdi.c
parent935de4dc2c5aa51d957f176d1c594f6c0a55d0b2 (diff)
Make sure we hangup any calls we have and NULL out the ss7call value when we get a reset circuit message. Fixes crash bug. (from mattf r121857, moving from chan_zap to chan_dahdi)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@122243 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels/chan_dahdi.c')
-rw-r--r--channels/chan_dahdi.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/channels/chan_dahdi.c b/channels/chan_dahdi.c
index d0d5fba51..cbd1bf201 100644
--- a/channels/chan_dahdi.c
+++ b/channels/chan_dahdi.c
@@ -9425,6 +9425,10 @@ static void *ss7_linkset(void *data)
p->remotelyblocked = 0;
dpc = p->dpc;
isup_set_call_dpc(e->rsc.call, dpc);
+ if (p->ss7call)
+ p->ss7call = NULL;
+ if (p->owner)
+ p->owner->_softhangup |= AST_SOFTHANGUP_DEV;
ast_mutex_unlock(&p->lock);
isup_rlc(ss7, e->rsc.call);
break;