mirror of
https://github.com/signalwire/freeswitch.git
synced 2025-03-13 12:40:17 +00:00
[Core] Fix race between switch_ivr_park_session() and the state machine. switch_core_session_run() wants to clear the CF_TRANSFER flag on state change while parking sets the flag.
This commit is contained in:
parent
2ca0d02531
commit
8e2234a205
@ -3522,8 +3522,8 @@ SWITCH_DECLARE(switch_status_t) switch_ivr_generate_json_cdr(switch_core_session
|
|||||||
SWITCH_DECLARE(void) switch_ivr_park_session(switch_core_session_t *session)
|
SWITCH_DECLARE(void) switch_ivr_park_session(switch_core_session_t *session)
|
||||||
{
|
{
|
||||||
switch_channel_t *channel = switch_core_session_get_channel(session);
|
switch_channel_t *channel = switch_core_session_get_channel(session);
|
||||||
switch_channel_set_state(channel, CS_PARK);
|
|
||||||
switch_channel_set_flag(channel, CF_TRANSFER);
|
switch_channel_set_flag(channel, CF_TRANSFER);
|
||||||
|
switch_channel_set_state(channel, CS_PARK);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user