networkd: manager - free bus after own objects

Freeing links/addresses may trigger sending signals over the bus, so let's make sure
the bus stays around until our own objects have been freed.
This commit is contained in:
Tom Gundersen 2015-10-09 21:36:04 +02:00
parent f0213e3796
commit 7d20d3759e
1 changed files with 8 additions and 8 deletions

View File

@ -477,14 +477,6 @@ void manager_free(Manager *m) {
free(m->state_file);
sd_event_source_unref(m->udev_event_source);
udev_monitor_unref(m->udev_monitor);
udev_unref(m->udev);
sd_bus_unref(m->bus);
sd_bus_slot_unref(m->prepare_for_sleep_slot);
sd_event_source_unref(m->bus_retry_event_source);
while ((link = hashmap_first(m->links)))
link_unref(link);
hashmap_free(m->links);
@ -504,6 +496,14 @@ void manager_free(Manager *m) {
sd_netlink_unref(m->rtnl);
sd_event_unref(m->event);
sd_event_source_unref(m->udev_event_source);
udev_monitor_unref(m->udev_monitor);
udev_unref(m->udev);
sd_bus_unref(m->bus);
sd_bus_slot_unref(m->prepare_for_sleep_slot);
sd_event_source_unref(m->bus_retry_event_source);
free(m);
}