diff options
-rw-r--r-- | src/call.c | 5 |
1 files changed, 3 insertions, 2 deletions
@@ -1028,14 +1028,15 @@ static void sipsess_estab_handler(const struct sip_msg *msg, void *arg) set_state(call, STATE_ESTABLISHED); - call_event_handler(call, CALL_EVENT_ESTABLISHED, call->peer_uri); - call_stream_start(call, true); /* the transferor will hangup this call */ if (call->not) { (void)call_notify_sipfrag(call, 200, "OK"); } + + /* must be done last, the handler might deref this call */ + call_event_handler(call, CALL_EVENT_ESTABLISHED, call->peer_uri); } |