> On June 5, 2014, 5:45 p.m., Mark Michelson wrote:
> > /branches/12/main/channel.c, lines 10156-10161
> > <https://reviewboard.asterisk.org/r/3585/diff/1/?file=59219#file59219line10156>
> >
> >     I reccomend re-writing this to be:
> >     
> >     hangup_flags = ast_channel_softhangup_internal_flag(chan);
> >     hangup_test = hangup_flags & (AST_SOFTHANGUP_ASYNCGOTO | 
> > AST_SOFTHANGUP_UNBRIDGE);
> >     
> >     return (hangup_test && (hangup_test == hangup_flags));
> >     
> >     
> >     It's certainly easier to expand on this if it turns out a third flag 
> > needs to be considered.

Oh and feel free to re-name those variables if you wish. I was just jotting 
down the idea quickly.


- Mark


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/3585/#review12053
-----------------------------------------------------------


On June 4, 2014, 4:43 p.m., Matt Jordan wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviewboard.asterisk.org/r/3585/
> -----------------------------------------------------------
> 
> (Updated June 4, 2014, 4:43 p.m.)
> 
> 
> Review request for Asterisk Developers.
> 
> 
> Repository: Asterisk
> 
> 
> Description
> -------
> 
> This patch is a re-do of review 3535.
> 
> When review request 3535 was merged, a major problem with it was uncovered. 
> UNBRIDGE soft hangup flags have a catastrophic effect on the pbx core if they 
> leak out from the bridge layer: the channel gets hung up. With the number of 
> threads involved in a blind transfer, and with the initial patch, it was 
> likely that this would occur. This caused a large number of test failures
> 
> This patch is nearly identical with the one proposed in review 3535, save for 
> the following changes:
>  - We explicitly clear the UNBRIDGE flag when setting an after goto on a 
> channel in a bridge
>  - Defensively, if we encounter an UNBRIDGE flag in the pbx core, we handle it
> 
> 
> Diffs
> -----
> 
>   /branches/12/main/pbx.c 414996 
>   /branches/12/main/framehook.c 414996 
>   /branches/12/main/channel.c 414996 
>   /branches/12/main/bridge_channel.c 414996 
>   /branches/12/main/bridge_after.c 414996 
>   /branches/12/include/asterisk/channel.h 414996 
>   /branches/12/bridges/bridge_native_rtp.c 414996 
> 
> Diff: https://reviewboard.asterisk.org/r/3585/diff/
> 
> 
> Testing
> -------
> 
> The blind transfer tests for PJSIP now pass (fingers crossed). See review 
> 3586.
> 
> 
> Thanks,
> 
> Matt Jordan
> 
>

-- 
_____________________________________________________________________
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

Reply via email to