GLib doesn't like NULL pointers. cleanup() may be invoked more than once after successful setup, first from dhcpv6_callback() and then from __connman_ipv6pd_cleanup() --- src/ipv6pd.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/src/ipv6pd.c b/src/ipv6pd.c index 5ecda38..0d221f0 100644 --- a/src/ipv6pd.c +++ b/src/ipv6pd.c @@ -165,8 +165,10 @@ static void cleanup(void) timer_uplink = 0; } - g_hash_table_destroy(timer_hash); - timer_hash = NULL; + if (timer_hash) { + g_hash_table_destroy(timer_hash); + timer_hash = NULL; + } if (prefixes) { g_slist_free_full(prefixes, g_free); -- 1.8.3.2 _______________________________________________ connman mailing list connman@connman.net https://lists.connman.net/mailman/listinfo/connman