diff options
author | Tobias Mueller <muelli@cryptobitch.de> | 2019-11-27 21:06:42 +0100 |
---|---|---|
committer | Tobias Mueller <muelli@cryptobitch.de> | 2019-11-27 21:20:57 +0100 |
commit | a36f8846731f07ec7ff38cfa3ff1a233ea929481 (patch) | |
tree | 162a16ccf137f7ade6d0e34fbec3ffaf503d64e6 | |
parent | b53a0d9a8dd224ecc0d1185826a57d104ce0ee46 (diff) | |
download | gvfs-a36f8846731f07ec7ff38cfa3ff1a233ea929481.tar.gz |
dnssd: guard avahi_client_free to prevent freeing NULL
This should not happen, but somehow the global_client ends up
being NULL.
In daemon/gvfsbackenddnssd.c the call to avahi_client_free in
the finalize function is similarly guarded.
-rw-r--r-- | common/gvfsdnssdresolver.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/common/gvfsdnssdresolver.c b/common/gvfsdnssdresolver.c index 7db7ef5f..7aa2cfcb 100644 --- a/common/gvfsdnssdresolver.c +++ b/common/gvfsdnssdresolver.c @@ -176,7 +176,10 @@ free_global_avahi_client (void) g_list_foreach (resolvers, (GFunc) remove_client_from_resolver, NULL); /* Destroy client */ - avahi_client_free (global_client); + if (global_client) + { + avahi_client_free (global_client); + } global_client = NULL; avahi_initialized = FALSE; } |