mirror of git://git.sysmocom.de/ofono
sim: Fix crash
aid_sessions was not properly reset to NULL when freed: Program received signal SIGSEGV, Segmentation fault. __ofono_watchlist_free (watchlist=0x0) at src/watch.c:91 91 for (l = watchlist->items; l; l = l->next) { (gdb) bt func=0x4ceca0 <aid_session_free>, user_data=0x0) at /var/tmp/portage/dev-libs/glib-2.50.3-r1/work/glib-2.50.3/glib/gslist.c:878 free_func=0x4ceca0 <aid_session_free>) at /var/tmp/portage/dev-libs/glib-2.50.3-r1/work/glib-2.50.3/glib/gslist.c:172 at src/sim.c:2605 user_data=<optimized out>) at plugins/phonesim.c:511 func=0x49c8a0 <at_notify_call_callback>, user_data=0x7fffffffdbc0) at /var/tmp/portage/dev-libs/glib-2.50.3-r1/work/glib-2.50.3/glib/gslist.c:878 chat=0x7b70b0) at gatchat/gatchat.c:417
This commit is contained in:
parent
b5ad34faab
commit
984d88492d
|
@ -2601,8 +2601,10 @@ static void sim_free_main_state(struct ofono_sim *sim)
|
|||
if (sim->impi)
|
||||
g_free(sim->impi);
|
||||
|
||||
if (sim->aid_sessions)
|
||||
if (sim->aid_sessions) {
|
||||
g_slist_free_full(sim->aid_sessions, aid_session_free);
|
||||
sim->aid_sessions = NULL;
|
||||
}
|
||||
|
||||
sim->initialized = false;
|
||||
sim->wait_initialized = false;
|
||||
|
|
Loading…
Reference in New Issue