diff options
author | Colin Walters <walters@verbum.org> | 2010-01-28 17:09:15 -0500 |
---|---|---|
committer | Colin Walters <walters@verbum.org> | 2010-01-28 17:09:15 -0500 |
commit | 7a4cd46284dd634c165b5c4eb23606b7c0ff4ade (patch) | |
tree | bf0390d7c05896f538e8c6739108bb3d681f8ef7 /bus/bus.c | |
parent | 1e82db47431fb19b78f8943c17d63227156e2432 (diff) | |
parent | b93476ce07acce83ff3b396616bb8a0eaf719916 (diff) | |
download | dbus-7a4cd46284dd634c165b5c4eb23606b7c0ff4ade.tar.gz |
Merge branch 'my-dbus-1.2'
Conflicts:
bus/Makefile.am
dbus/dbus-sysdeps-util-unix.c
dbus/dbus-transport.c
test/test-service.c
Diffstat (limited to 'bus/bus.c')
-rw-r--r-- | bus/bus.c | 23 |
1 files changed, 14 insertions, 9 deletions
@@ -444,6 +444,8 @@ process_config_every_time (BusContext *context, /* get our limits and timeout lengths */ bus_config_parser_get_limits (parser, &context->limits); + if (context->policy) + bus_policy_unref (context->policy); context->policy = bus_config_parser_steal_policy (parser); _dbus_assert (context->policy != NULL); @@ -507,21 +509,24 @@ process_config_every_time (BusContext *context, dbus_free(context->servicehelper); context->servicehelper = s; } - + /* Create activation subsystem */ - new_activation = bus_activation_new (context, &full_address, - dirs, error); - if (new_activation == NULL) + if (context->activation) + { + if (!bus_activation_reload (context->activation, &full_address, dirs, error)) + goto failed; + } + else + { + context->activation = bus_activation_new (context, &full_address, dirs, error); + } + + if (context->activation == NULL) { _DBUS_ASSERT_ERROR_IS_SET (error); goto failed; } - if (is_reload) - bus_activation_unref (context->activation); - - context->activation = new_activation; - /* Drop existing conf-dir watches (if applicable) */ if (is_reload) |