Indeed, it seems that terminate_call() triggers ending of the dialog, which call backs deletion of call structure from cnxcc. But after the part ending of the dialog, cnxcc executes __notify_call_termination(&call->sip_data), accessing the data of the call just deleted.

For me, it looks like __notify_call_termination(&call->sip_data) should be executed before ending the dialog via MI in terminate_call(), or at least, the fake msg needed inside __notify_call_termination() has to be built before.

Maybe @caruizdiaz can review and propose a fix, being the architect and developer of the module.


Reply to this email directly or view it on GitHub.