From: Zbigniew Jędrzejewski-Szmek Date: Sun, 12 Feb 2017 17:40:09 +0000 (-0500) Subject: core/manager: make manager_load_unit*() functions always take output arg X-Git-Tag: v233~107^2~2 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=7a6a095a9ef6ec014a23a231e5d11e8a2ef0fe17;p=thirdparty%2Fsystemd.git core/manager: make manager_load_unit*() functions always take output arg We were inconsistent, manager_load_unit_prepare() would crash if _ret was ever NULL. But none of the callers use NULL. So simplify things and require it to be non-NULL. --- diff --git a/src/core/manager.c b/src/core/manager.c index e4da945777b..0f8f808b4a2 100644 --- a/src/core/manager.c +++ b/src/core/manager.c @@ -1481,6 +1481,7 @@ int manager_load_unit_prepare( assert(m); assert(name || path); + assert(_ret); /* This will prepare the unit for loading, but not actually * load anything from disk. */ @@ -1528,8 +1529,7 @@ int manager_load_unit_prepare( unit_add_to_dbus_queue(ret); unit_add_to_gc_queue(ret); - if (_ret) - *_ret = ret; + *_ret = ret; return 0; } @@ -1544,6 +1544,7 @@ int manager_load_unit( int r; assert(m); + assert(_ret); /* This will load the service information files, but not actually * start any services or anything. */ @@ -1554,8 +1555,7 @@ int manager_load_unit( manager_dispatch_load_queue(m); - if (_ret) - *_ret = unit_follow_merge(*_ret); + *_ret = unit_follow_merge(*_ret); return 0; }