diff --git a/src/mod/event_handlers/mod_erlang_event/handle_msg.c b/src/mod/event_handlers/mod_erlang_event/handle_msg.c index cf0d3a3048..981bd1b6b6 100644 --- a/src/mod/event_handlers/mod_erlang_event/handle_msg.c +++ b/src/mod/event_handlers/mod_erlang_event/handle_msg.c @@ -490,7 +490,7 @@ static switch_status_t handle_msg_sendmsg(listener_t *listener, int arity, ei_x_ } } - /* release the lock returned by switch_core_locate_session */ + /* release the lock returned by switch_core_session_locate */ switch_core_session_rwunlock(session); } else { @@ -579,14 +579,13 @@ static switch_status_t handle_msg_handlecall(listener_t *listener, erlang_msg *m ei_x_encode_atom(rbuf, "error"); ei_x_encode_atom(rbuf, "session_attach_failed"); } + /* release the lock returned by switch_core_session_locate */ + switch_core_session_rwunlock(session); } else { ei_x_encode_tuple_header(rbuf, 2); ei_x_encode_atom(rbuf, "error"); ei_x_encode_atom(rbuf, "badsession"); } - /* release the lock returned by switch_core_locate_session */ - switch_core_session_rwunlock(session); - } else { ei_x_encode_tuple_header(rbuf, 2); ei_x_encode_atom(rbuf, "error");