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



/branches/13/include/asterisk/bridge.h
<https://reviewboard.asterisk.org/r/4382/#comment24858>

    push_peek should not use push's typedef.  It should use its own in case 
they need to diverge since they are called for slightly different purposes.



/branches/13/main/bridge.c
<https://reviewboard.asterisk.org/r/4382/#comment24859>

    This comment is not correct for the join case.  How about:
    Allow subclass to peek at the swap channel before joining the bridge.



/branches/13/res/stasis/stasis_bridge.c
<https://reviewboard.asterisk.org/r/4382/#comment24857>

    This is not true anymore.
    



/branches/13/res/stasis/stasis_bridge.c
<https://reviewboard.asterisk.org/r/4382/#comment24860>

    The channel cannot be pushed.


- rmudgett


On Jan. 28, 2015, 1:35 p.m., Scott Griepentrog wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviewboard.asterisk.org/r/4382/
> -----------------------------------------------------------
> 
> (Updated Jan. 28, 2015, 1:35 p.m.)
> 
> 
> Review request for Asterisk Developers.
> 
> 
> Bugs: ASTERISK-24649
>     https://issues.asterisk.org/jira/browse/ASTERISK-24649
> 
> 
> Repository: Asterisk
> 
> 
> Description
> -------
> 
> During an attended transfer of a channel in stasis, where a local channel is 
> used to replace (swap in for) a PJSIP channel, there is a race condition.  
> The PJSIP REFER transfer has been initiated (ast_bridge_impart) but will be 
> completed later on another thread (bridge_channel_ind_thread), however, prior 
> to the stasis bridging callback (bridge_stasis_push) being called the PJSIP 
> channel is hungup, which allows the stasis app loop to exit, deleting the 
> stasis control.  That prevents the stasis bridge callback from getting the 
> app name from the channel being replaced (swap).
> 
> This patch adds a new stasis bridge callback push_peek, which is called from 
> the ast_bridge_impart() thread.  This allows the new 
> bridge_stasis_push_peek() function to copy the stasis app name from the 
> originating channel before the PJSIP channel can be hungup.
> 
> 
> Diffs
> -----
> 
>   /branches/13/res/stasis/stasis_bridge.c 431296 
>   /branches/13/main/bridge.c 431296 
>   /branches/13/include/asterisk/bridge.h 431296 
> 
> Diff: https://reviewboard.asterisk.org/r/4382/diff/
> 
> 
> Testing
> -------
> 
> Running 
> tests/rest_api/external_interaction/attended_transfer/stasis_bridge_to_stasis_app
>  now does not result in an occasional failure.
> 
> 
> Thanks,
> 
> Scott Griepentrog
> 
>

-- 
_____________________________________________________________________
-- 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