maxremind / idoubs

Automatically exported from code.google.com/p/idoubs
0 stars 0 forks source link

EXC_BAD_ACCESS at tsk_fsm_terminated #171

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
One final thread and query for the day! We experienced some crashes when making 
calls, and were able to reproduce in idoubs:

Issue
EXC_BAD_ACCESS at tsk_fsm_terminated

Summary
idoubs crashes when running tsk_fsm_terminated(); perhaps due to self being an 
invalid pointer (0x2f2f2f65).

We observed that the chunk of memory where the pointer is located is 
overwritten by something else, hence the pointer is invalid and we see 
EXC_BAD_ACCESS.

The memory is consistently overwritten by this string "NgnHistoryService///: 
Invalid database" ("e///" = 0x2f2f2f65), which is caused by NgnDataBase.db 
being missing. So when we attempted to reproduce, we removed this file in the 
compilation process to make it print the string. We aren't sure if this part is 
related to the crash, as freed pointers can contain values of anywhere in the 
program?

Reproduction Steps
Reproduced with idoubs revision 253, doubango revision 1043:

    Run idoubs.
    Keep calling a SIP address where the recipient is not registered. The call will end immediately.
    After trying a number of times, the library crashes.

Logs
Please find attached our logs. Of particular note:

    The crash took place in thread 12, in the function tsk_fsm_terminated(). We believe this is because self is an invalid pointer.
    We have dumped the value of "self" in tsk_fsm_terminated() and in tsip_transac_fsm_act(); see the end of the log.

Original issue reported on code.google.com by boss...@yahoo.fr on 26 Mar 2014 at 3:41