diff options
author | Matthew Fredrickson <creslin@digium.com> | 2008-06-11 17:50:17 +0000 |
---|---|---|
committer | Matthew Fredrickson <creslin@digium.com> | 2008-06-11 17:50:17 +0000 |
commit | 463934753199be8743409d08cc9365f18286bc39 (patch) | |
tree | ed1f488eafe1ed5cfe484c2742d38ab7f00974f1 | |
parent | 99c2f1c9f7cca681d6a70a37fccf85a8d660f414 (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
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@121857 65c4cc65-6c06-0410-ace0-fbb531ad65f3
-rw-r--r-- | channels/chan_zap.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/channels/chan_zap.c b/channels/chan_zap.c index daeb7cf50..495791478 100644 --- a/channels/chan_zap.c +++ b/channels/chan_zap.c @@ -9456,11 +9456,18 @@ static void *ss7_linkset(void *data) } p = linkset->pvts[chanpos]; ast_mutex_lock(&p->lock); + p->inservice = 1; 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; case ISUP_EVENT_GRS: |