From: Jyotshna Cherukuri Date: Wed, 11 Feb 2015 20:20:32 +0000 (-0500) Subject: destroy erlang session elements when the outbound erlang processis stopped/terminated X-Git-Tag: v1.4.18~1^2~21^2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=849e90ba733bfe0a2a380fdf26dbff263b3e67b2;p=thirdparty%2Ffreeswitch.git destroy erlang session elements when the outbound erlang processis stopped/terminated --- diff --git a/src/mod/event_handlers/mod_erlang_event/mod_erlang_event.c b/src/mod/event_handlers/mod_erlang_event/mod_erlang_event.c index b1743eb716..0220964607 100644 --- a/src/mod/event_handlers/mod_erlang_event/mod_erlang_event.c +++ b/src/mod/event_handlers/mod_erlang_event/mod_erlang_event.c @@ -1508,6 +1508,9 @@ session_elem_t *attach_call_to_spawned_process(listener_t *listener, char *modul switch_log_printf(SWITCH_CHANNEL_SESSION_LOG(session), SWITCH_LOG_WARNING, "Timed out when waiting for outbound pid %s %s\n", hash, session_element->uuid_str); switch_channel_hangup(channel, SWITCH_CAUSE_DESTINATION_OUT_OF_ORDER); + /* Destroy erlang session elements when the outbound erlang process gets killed for some unknown reason */ + remove_session_elem_from_listener(listener, session_element); + destroy_session_elem(session_element); return NULL; }