sd-bus: when disconnecting a slot, also reset its memory
authorLennart Poettering <lennart@poettering.net>
Mon, 18 Dec 2017 20:58:14 +0000 (21:58 +0100)
committerLennart Poettering <lennart@poettering.net>
Fri, 5 Jan 2018 12:58:32 +0000 (13:58 +0100)
Yes, we aren#t accessing this anymore after, but it's still nicer if
this is actually guaranteed.

src/libsystemd/sd-bus/bus-slot.c

index f7c9bfd..9a56371 100644 (file)
@@ -104,7 +104,7 @@ void bus_slot_disconnect(sd_bus_slot *slot) {
                 slot->bus->match_callbacks_modified = true;
                 bus_match_remove(&slot->bus->match_callbacks, &slot->match_callback);
 
-                free(slot->match_callback.match_string);
+                slot->match_callback.match_string = mfree(slot->match_callback.match_string);
 
                 break;
 
@@ -179,7 +179,7 @@ void bus_slot_disconnect(sd_bus_slot *slot) {
                         }
                 }
 
-                free(slot->node_vtable.interface);
+                slot->node_vtable.interface = mfree(slot->node_vtable.interface);
 
                 if (slot->node_vtable.node) {
                         LIST_REMOVE(vtables, slot->node_vtable.node->vtables, &slot->node_vtable);