Summary:ASTERISK-23573: Crash when transferring unbridged call - in bridge_app_subscribed at stasis/app.c
Reporter:Mark Michelson (mmichelson)Labels:
Date Opened:2014-04-02 10:35:46Date Closed:2014-04-22 05:09:49
Versions:12.1.1 Frequency of
Environment:Attachments:( 0) ASTERISK-23573-bt.txt
Description:The way I produced this crash was on  a Switchvox development system, but the circumstances should be replicable on any Asterisk box. I called a busy extension from a Digium phone and was directed to voicemail. When the voicemail greeting started playing, I accidentally pressed the "Park" button on my Digium phone instead of the "End call" button. The result was a crash in Asterisk.

The problem appears to be that a stasis app that was subscribed to bridge events made the assumption that a blind transfer event would always have a non-NULL bridge snapshot with it. However, for blind transfer failures (especially those due to the fact that there is no bridge), this assumption cannot be made. The stasis code needs to be made NULL-safe with regards to bridge snapshots on all types of transfers.
Comments:By: Mark Michelson (mmichelson) 2014-04-02 10:37:40.510-0500

Attaching ASTERISK-23573-bt.txt. This is a backtrace after the crash occurred.