If null pointer is given to g_isi_client_destroy it segfaults. Currently this is happening when signal 15 is sent to ofonod. --- diff --git a/gisi/client.c b/gisi/client.c index b12dc85..a12640d 100644 --- a/gisi/client.c +++ b/gisi/client.c @@ -143,6 +143,8 @@ void g_isi_client_destroy(GIsiClient *client) { unsigned id; + if (!client) + return; g_source_remove(client->source); for (id = 0; id < 256; id++) if (client->timeout[id] > 0)