[asterisk-commits] rmudgett: trunk r358532 - in /trunk: ./ channels/sig_ss7.c
SVN commits to the Asterisk project
asterisk-commits at lists.digium.com
Wed Mar 7 12:33:15 CST 2012
Author: rmudgett
Date: Wed Mar 7 12:33:12 2012
New Revision: 358532
URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=358532
Log:
Change directly setting _softhangup in sig_ss7.c to use ast_softhangup_nolock().
Update to:
(issue ASTERISK-19372)
........
Merged revisions 358530 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 358531 from http://svn.asterisk.org/svn/asterisk/branches/10
Modified:
trunk/ (props changed)
trunk/channels/sig_ss7.c
Propchange: trunk/
------------------------------------------------------------------------------
Binary property 'branch-10-merged' - no diff available.
Modified: trunk/channels/sig_ss7.c
URL: http://svnview.digium.com/svn/asterisk/trunk/channels/sig_ss7.c?view=diff&rev=358532&r1=358531&r2=358532
==============================================================================
--- trunk/channels/sig_ss7.c (original)
+++ trunk/channels/sig_ss7.c Wed Mar 7 12:33:12 2012
@@ -459,8 +459,11 @@
for (i = 0; i < linkset->numchans; i++) {
if (linkset->pvts[i] && (linkset->pvts[i]->dpc == dpc && ((linkset->pvts[i]->cic >= startcic) && (linkset->pvts[i]->cic <= endcic)))) {
sig_ss7_lock_private(linkset->pvts[i]);
- if (linkset->pvts[i]->owner)
- ast_channel_softhangup_internal_flag_add(linkset->pvts[i]->owner, AST_SOFTHANGUP_DEV);
+ sig_ss7_lock_owner(linkset, i);
+ if (linkset->pvts[i]->owner) {
+ ast_softhangup_nolock(linkset->pvts[i]->owner, AST_SOFTHANGUP_DEV);
+ ast_channel_unlock(linkset->pvts[i]->owner);
+ }
sig_ss7_unlock_private(linkset->pvts[i]);
}
}
@@ -1673,7 +1676,7 @@
case AST_CONTROL_BUSY:
if (p->call_level < SIG_SS7_CALL_LEVEL_CONNECT) {
ast_channel_hangupcause_set(chan, AST_CAUSE_USER_BUSY);
- ast_channel_softhangup_internal_flag_add(chan, AST_SOFTHANGUP_DEV);
+ ast_softhangup_nolock(chan, AST_SOFTHANGUP_DEV);
res = 0;
break;
}
@@ -1737,7 +1740,7 @@
case AST_CONTROL_INCOMPLETE:
if (p->call_level < SIG_SS7_CALL_LEVEL_CONNECT) {
ast_channel_hangupcause_set(chan, AST_CAUSE_INVALID_NUMBER_FORMAT);
- ast_channel_softhangup_internal_flag_add(chan, AST_SOFTHANGUP_DEV);
+ ast_softhangup_nolock(chan, AST_SOFTHANGUP_DEV);
res = 0;
break;
}
@@ -1747,7 +1750,7 @@
case AST_CONTROL_CONGESTION:
if (p->call_level < SIG_SS7_CALL_LEVEL_CONNECT) {
ast_channel_hangupcause_set(chan, AST_CAUSE_CONGESTION);
- ast_channel_softhangup_internal_flag_add(chan, AST_SOFTHANGUP_DEV);
+ ast_softhangup_nolock(chan, AST_SOFTHANGUP_DEV);
res = 0;
break;
}
More information about the asterisk-commits
mailing list