diff options
author | Daniel Mack <github@zonque.org> | 2015-07-31 15:03:49 +0200 |
---|---|---|
committer | Daniel Mack <github@zonque.org> | 2015-07-31 15:03:49 +0200 |
commit | 832089af55fc739d5ea7cec8cb8212344c80aa74 (patch) | |
tree | 0886bd7524357bb5033470a48c7b3aa7ebcd2cee /src/bus-proxyd/proxy.c | |
parent | 0810bc568ace619b16e440805e93256730d45541 (diff) | |
parent | 11f254be0c27b1944a1df8e7c14d83e56ebe7d9b (diff) |
Merge pull request #805 from dvdhrm/proxy-activation
bus-proxy: make StartServiceByName synchronous
Diffstat (limited to 'src/bus-proxyd/proxy.c')
-rw-r--r-- | src/bus-proxyd/proxy.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/bus-proxyd/proxy.c b/src/bus-proxyd/proxy.c index c37b09b9c0..b3ec048d03 100644 --- a/src/bus-proxyd/proxy.c +++ b/src/bus-proxyd/proxy.c @@ -261,9 +261,18 @@ int proxy_new(Proxy **out, int in_fd, int out_fd, const char *destination) { } Proxy *proxy_free(Proxy *p) { + ProxyActivation *activation; + if (!p) return NULL; + while ((activation = p->activations)) { + LIST_REMOVE(activations_by_proxy, p->activations, activation); + sd_bus_message_unref(activation->request); + sd_bus_slot_unref(activation->slot); + free(activation); + } + sd_bus_flush_close_unref(p->local_bus); sd_bus_flush_close_unref(p->destination_bus); set_free_free(p->owned_names); |