tree-wide: use strv_free_and_replace() macro

This commit is contained in:
Yu Watanabe 2018-05-10 00:34:46 +09:00
parent 947f9f01a1
commit 130d3d22e9
9 changed files with 24 additions and 63 deletions

View file

@ -2023,9 +2023,7 @@ int bus_exec_context_set_transient_property(
if (!e) if (!e)
return -ENOMEM; return -ENOMEM;
strv_free(c->environment); strv_free_and_replace(c->environment, e);
c->environment = e;
unit_write_settingf(u, flags, name, "Environment=%s", joined); unit_write_settingf(u, flags, name, "Environment=%s", joined);
} }
} }
@ -2059,9 +2057,7 @@ int bus_exec_context_set_transient_property(
if (!e) if (!e)
return -ENOMEM; return -ENOMEM;
strv_free(c->unset_environment); strv_free_and_replace(c->unset_environment, e);
c->unset_environment = e;
unit_write_settingf(u, flags, name, "UnsetEnvironment=%s", joined); unit_write_settingf(u, flags, name, "UnsetEnvironment=%s", joined);
} }
} }

View file

@ -1287,10 +1287,7 @@ static int setup_pam(
if (!barrier_place_and_sync(&barrier)) if (!barrier_place_and_sync(&barrier))
log_error("PAM initialization failed"); log_error("PAM initialization failed");
strv_free(*env); return strv_free_and_replace(*env, e);
*env = e;
return 0;
fail: fail:
if (pam_code != PAM_SUCCESS) { if (pam_code != PAM_SUCCESS) {
@ -3379,8 +3376,7 @@ static int exec_child(
return log_oom(); return log_oom();
} }
strv_free(accum_env); strv_free_and_replace(accum_env, ee);
accum_env = ee;
} }
final_argv = replace_env_argv(argv, accum_env); final_argv = replace_env_argv(argv, accum_env);
@ -4492,10 +4488,7 @@ int exec_command_set(ExecCommand *c, const char *path, ...) {
free(c->path); free(c->path);
c->path = p; c->path = p;
strv_free(c->argv); return strv_free_and_replace(c->argv, l);
c->argv = l;
return 0;
} }
int exec_command_append(ExecCommand *c, const char *path, ...) { int exec_command_append(ExecCommand *c, const char *path, ...) {

View file

@ -97,8 +97,7 @@ int locale_setup(char ***environment) {
goto finish; goto finish;
} }
strv_free(*environment); strv_free_and_replace(*environment, e);
*environment = e;
} }
r = 0; r = 0;

View file

@ -338,8 +338,7 @@ static int context_write_data_machine_info(Context *c) {
if (!u) if (!u)
return -ENOMEM; return -ENOMEM;
strv_free(l); strv_free_and_replace(l, u);
l = u;
} }
if (strv_isempty(l)) { if (strv_isempty(l)) {

View file

@ -248,8 +248,7 @@ int dhcp6_lease_set_domains(sd_dhcp6_lease *lease, uint8_t *optval,
if (r < 0) if (r < 0)
return 0; return 0;
strv_free(lease->domains); strv_free_and_replace(lease->domains, domains);
lease->domains = domains;
lease->domains_count = r; lease->domains_count = r;
return r; return r;
@ -308,8 +307,7 @@ int dhcp6_lease_set_ntp(sd_dhcp6_lease *lease, uint8_t *optval, size_t optlen) {
if (r < 0) if (r < 0)
return 0; return 0;
lease->ntp_fqdn = strv_free(lease->ntp_fqdn); strv_free_and_replace(lease->ntp_fqdn, servers);
lease->ntp_fqdn = servers;
lease->ntp_fqdn_count = r; lease->ntp_fqdn_count = r;
break; break;

View file

@ -310,10 +310,7 @@ _public_ int sd_bus_set_exec(sd_bus *bus, const char *path, char *const argv[])
return -ENOMEM; return -ENOMEM;
free_and_replace(bus->exec_path, p); free_and_replace(bus->exec_path, p);
strv_free_and_replace(bus->exec_argv, a);
strv_free(bus->exec_argv);
bus->exec_argv = a;
return 0; return 0;
} }

View file

@ -250,8 +250,7 @@ int locale_write_data(Context *c, char ***settings) {
if (!u) if (!u)
return -ENOMEM; return -ENOMEM;
strv_free(l); strv_free_and_replace(l, u);
l = u;
} }
if (strv_isempty(l)) { if (strv_isempty(l)) {
@ -291,8 +290,7 @@ int vconsole_write_data(Context *c) {
if (!u) if (!u)
return -ENOMEM; return -ENOMEM;
strv_free(l); strv_free_and_replace(l, u);
l = u;
} }
if (isempty(c->vc_keymap_toggle)) if (isempty(c->vc_keymap_toggle))
@ -309,8 +307,7 @@ int vconsole_write_data(Context *c) {
if (!u) if (!u)
return -ENOMEM; return -ENOMEM;
strv_free(l); strv_free_and_replace(l, u);
l = u;
} }
if (strv_isempty(l)) { if (strv_isempty(l)) {

View file

@ -818,9 +818,7 @@ static int parse_argv(int argc, char *argv[]) {
if (!n) if (!n)
return log_oom(); return log_oom();
strv_free(arg_setenv); strv_free_and_replace(arg_setenv, n);
arg_setenv = n;
arg_settings_mask |= SETTING_ENVIRONMENT; arg_settings_mask |= SETTING_ENVIRONMENT;
break; break;
} }
@ -3120,9 +3118,7 @@ static int load_settings(void) {
if ((arg_settings_mask & SETTING_START_MODE) == 0 && if ((arg_settings_mask & SETTING_START_MODE) == 0 &&
settings->start_mode >= 0) { settings->start_mode >= 0) {
arg_start_mode = settings->start_mode; arg_start_mode = settings->start_mode;
strv_free_and_replace(arg_parameters, settings->parameters);
strv_free(arg_parameters);
arg_parameters = TAKE_PTR(settings->parameters);
} }
if ((arg_settings_mask & SETTING_PIVOT_ROOT) == 0 && if ((arg_settings_mask & SETTING_PIVOT_ROOT) == 0 &&
@ -3136,10 +3132,8 @@ static int load_settings(void) {
free_and_replace(arg_chdir, settings->working_directory); free_and_replace(arg_chdir, settings->working_directory);
if ((arg_settings_mask & SETTING_ENVIRONMENT) == 0 && if ((arg_settings_mask & SETTING_ENVIRONMENT) == 0 &&
settings->environment) { settings->environment)
strv_free(arg_setenv); strv_free_and_replace(arg_setenv, settings->environment);
arg_setenv = TAKE_PTR(settings->environment);
}
if ((arg_settings_mask & SETTING_USER) == 0 && if ((arg_settings_mask & SETTING_USER) == 0 &&
settings->user) settings->user)
@ -3215,17 +3209,10 @@ static int load_settings(void) {
arg_network_veth = settings_network_veth(settings); arg_network_veth = settings_network_veth(settings);
arg_private_network = settings_private_network(settings); arg_private_network = settings_private_network(settings);
strv_free(arg_network_interfaces); strv_free_and_replace(arg_network_interfaces, settings->network_interfaces);
arg_network_interfaces = TAKE_PTR(settings->network_interfaces); strv_free_and_replace(arg_network_macvlan, settings->network_macvlan);
strv_free_and_replace(arg_network_ipvlan, settings->network_ipvlan);
strv_free(arg_network_macvlan); strv_free_and_replace(arg_network_veth_extra, settings->network_veth_extra);
arg_network_macvlan = TAKE_PTR(settings->network_macvlan);
strv_free(arg_network_ipvlan);
arg_network_ipvlan = TAKE_PTR(settings->network_ipvlan);
strv_free(arg_network_veth_extra);
arg_network_veth_extra = TAKE_PTR(settings->network_veth_extra);
free_and_replace(arg_network_bridge, settings->network_bridge); free_and_replace(arg_network_bridge, settings->network_bridge);
free_and_replace(arg_network_zone, settings->network_zone); free_and_replace(arg_network_zone, settings->network_zone);
@ -3264,11 +3251,8 @@ static int load_settings(void) {
if (!arg_settings_trusted && !strv_isempty(arg_syscall_whitelist)) if (!arg_settings_trusted && !strv_isempty(arg_syscall_whitelist))
log_warning("Ignoring SystemCallFilter= settings, file %s is not trusted.", p); log_warning("Ignoring SystemCallFilter= settings, file %s is not trusted.", p);
else { else {
strv_free(arg_syscall_whitelist); strv_free_and_replace(arg_syscall_whitelist, settings->syscall_whitelist);
strv_free(arg_syscall_blacklist); strv_free_and_replace(arg_syscall_blacklist, settings->syscall_blacklist);
arg_syscall_whitelist = TAKE_PTR(settings->syscall_whitelist);
arg_syscall_blacklist = TAKE_PTR(settings->syscall_blacklist);
} }
} }

View file

@ -1078,9 +1078,7 @@ static int map_basic(sd_bus *bus, const char *member, sd_bus_message *m, unsigne
if (r < 0) if (r < 0)
return r; return r;
strv_free(*p); return strv_free_and_replace(*p, l);
*p = TAKE_PTR(l);
return 0;
} }
case SD_BUS_TYPE_BOOLEAN: { case SD_BUS_TYPE_BOOLEAN: {