tree-wide: use free_and_strdup()
Use free_and_strdup() where appropriate and replace equivalent, open-coded versions.
This commit is contained in:
@@ -673,6 +673,7 @@ int unit_name_mangle_with_suffix(const char *name, UnitNameMangle allow_globs, c
|
|||||||
|
|
||||||
int slice_build_parent_slice(const char *slice, char **ret) {
|
int slice_build_parent_slice(const char *slice, char **ret) {
|
||||||
char *s, *dash;
|
char *s, *dash;
|
||||||
|
int r;
|
||||||
|
|
||||||
assert(slice);
|
assert(slice);
|
||||||
assert(ret);
|
assert(ret);
|
||||||
@@ -693,11 +694,9 @@ int slice_build_parent_slice(const char *slice, char **ret) {
|
|||||||
if (dash)
|
if (dash)
|
||||||
strcpy(dash, ".slice");
|
strcpy(dash, ".slice");
|
||||||
else {
|
else {
|
||||||
free(s);
|
r = free_and_strdup(&s, "-.slice");
|
||||||
|
if (r < 0)
|
||||||
s = strdup("-.slice");
|
return r;
|
||||||
if (!s)
|
|
||||||
return -ENOMEM;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
*ret = s;
|
*ret = s;
|
||||||
|
|||||||
+10
-16
@@ -728,9 +728,8 @@ static int parse_argv(int argc, char *argv[]) {
|
|||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
}
|
}
|
||||||
|
|
||||||
free(arg_locale);
|
r = free_and_strdup(&arg_locale, optarg);
|
||||||
arg_locale = strdup(optarg);
|
if (r < 0)
|
||||||
if (!arg_locale)
|
|
||||||
return log_oom();
|
return log_oom();
|
||||||
|
|
||||||
break;
|
break;
|
||||||
@@ -741,9 +740,8 @@ static int parse_argv(int argc, char *argv[]) {
|
|||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
}
|
}
|
||||||
|
|
||||||
free(arg_locale_messages);
|
r = free_and_strdup(&arg_locale_messages, optarg);
|
||||||
arg_locale_messages = strdup(optarg);
|
if (r < 0)
|
||||||
if (!arg_locale_messages)
|
|
||||||
return log_oom();
|
return log_oom();
|
||||||
|
|
||||||
break;
|
break;
|
||||||
@@ -754,19 +752,16 @@ static int parse_argv(int argc, char *argv[]) {
|
|||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
}
|
}
|
||||||
|
|
||||||
free(arg_timezone);
|
r = free_and_strdup(&arg_timezone, optarg);
|
||||||
arg_timezone = strdup(optarg);
|
if (r < 0)
|
||||||
if (!arg_timezone)
|
|
||||||
return log_oom();
|
return log_oom();
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case ARG_ROOT_PASSWORD:
|
case ARG_ROOT_PASSWORD:
|
||||||
free(arg_root_password);
|
r = free_and_strdup(&arg_root_password, optarg);
|
||||||
arg_root_password = strdup(optarg);
|
if (r < 0)
|
||||||
if (!arg_root_password)
|
|
||||||
return log_oom();
|
return log_oom();
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case ARG_ROOT_PASSWORD_FILE:
|
case ARG_ROOT_PASSWORD_FILE:
|
||||||
@@ -785,9 +780,8 @@ static int parse_argv(int argc, char *argv[]) {
|
|||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
}
|
}
|
||||||
|
|
||||||
free(arg_hostname);
|
r = free_and_strdup(&arg_hostname, optarg);
|
||||||
arg_hostname = strdup(optarg);
|
if (r < 0)
|
||||||
if (!arg_hostname)
|
|
||||||
return log_oom();
|
return log_oom();
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|||||||
@@ -727,9 +727,8 @@ static int enumerate_partitions(dev_t devnum) {
|
|||||||
|
|
||||||
boot_nr = nr;
|
boot_nr = nr;
|
||||||
|
|
||||||
free(boot);
|
r = free_and_strdup(&boot, subnode);
|
||||||
boot = strdup(subnode);
|
if (r < 0)
|
||||||
if (!boot)
|
|
||||||
return log_oom();
|
return log_oom();
|
||||||
|
|
||||||
} else if (sd_id128_equal(type_id, GPT_HOME)) {
|
} else if (sd_id128_equal(type_id, GPT_HOME)) {
|
||||||
@@ -741,9 +740,8 @@ static int enumerate_partitions(dev_t devnum) {
|
|||||||
home_nr = nr;
|
home_nr = nr;
|
||||||
home_rw = !(flags & GPT_FLAG_READ_ONLY),
|
home_rw = !(flags & GPT_FLAG_READ_ONLY),
|
||||||
|
|
||||||
free(home);
|
r = free_and_strdup(&home, subnode);
|
||||||
home = strdup(subnode);
|
if (r < 0)
|
||||||
if (!home)
|
|
||||||
return log_oom();
|
return log_oom();
|
||||||
|
|
||||||
} else if (sd_id128_equal(type_id, GPT_SRV)) {
|
} else if (sd_id128_equal(type_id, GPT_SRV)) {
|
||||||
@@ -755,9 +753,8 @@ static int enumerate_partitions(dev_t devnum) {
|
|||||||
srv_nr = nr;
|
srv_nr = nr;
|
||||||
srv_rw = !(flags & GPT_FLAG_READ_ONLY),
|
srv_rw = !(flags & GPT_FLAG_READ_ONLY),
|
||||||
|
|
||||||
free(srv);
|
r = free_and_strdup(&srv, subnode);
|
||||||
srv = strdup(subnode);
|
if (r < 0)
|
||||||
if (!srv)
|
|
||||||
return log_oom();
|
return log_oom();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -896,10 +896,9 @@ static int parse_container_kernel_address(sd_bus *b, const char **p, char **guid
|
|||||||
} else
|
} else
|
||||||
b->nspid = 0;
|
b->nspid = 0;
|
||||||
|
|
||||||
free(b->kernel);
|
r = free_and_strdup(&b->kernel, "/sys/fs/kdbus/0-system/bus");
|
||||||
b->kernel = strdup("/sys/fs/kdbus/0-system/bus");
|
if (r < 0)
|
||||||
if (!b->kernel)
|
return r;
|
||||||
return -ENOMEM;
|
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -372,11 +372,9 @@ static int prop_map_first_of_struct(sd_bus *bus, const char *member, sd_bus_mess
|
|||||||
if (r < 0)
|
if (r < 0)
|
||||||
return r;
|
return r;
|
||||||
|
|
||||||
free(*p);
|
r = free_and_strdup(p, s);
|
||||||
*p = strdup(s);
|
if (r < 0)
|
||||||
|
return r;
|
||||||
if (!*p)
|
|
||||||
return -ENOMEM;
|
|
||||||
} else {
|
} else {
|
||||||
r = sd_bus_message_read_basic(m, contents[0], userdata);
|
r = sd_bus_message_read_basic(m, contents[0], userdata);
|
||||||
if (r < 0)
|
if (r < 0)
|
||||||
|
|||||||
@@ -2059,10 +2059,9 @@ int link_update(Link *link, sd_netlink_message *m) {
|
|||||||
|
|
||||||
link_free_carrier_maps(link);
|
link_free_carrier_maps(link);
|
||||||
|
|
||||||
free(link->ifname);
|
r = free_and_strdup(&link->ifname, ifname);
|
||||||
link->ifname = strdup(ifname);
|
if (r < 0)
|
||||||
if (!link->ifname)
|
return r;
|
||||||
return -ENOMEM;
|
|
||||||
|
|
||||||
r = link_new_carrier_maps(link);
|
r = link_new_carrier_maps(link);
|
||||||
if (r < 0)
|
if (r < 0)
|
||||||
|
|||||||
+2
-3
@@ -503,9 +503,8 @@ static int parse_argv(int argc, char *argv[]) {
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case 'u':
|
case 'u':
|
||||||
free(arg_user);
|
r = free_and_strdup(&arg_user, optarg);
|
||||||
arg_user = strdup(optarg);
|
if (r < 0)
|
||||||
if (!arg_user)
|
|
||||||
return log_oom();
|
return log_oom();
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|||||||
+2
-6
@@ -1129,13 +1129,9 @@ int main(int argc, char* argv[]) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (arg_unit && isempty(description)) {
|
if (arg_unit && isempty(description)) {
|
||||||
free(description);
|
r = free_and_strdup(&description, arg_unit);
|
||||||
description = strdup(arg_unit);
|
if (r < 0)
|
||||||
|
|
||||||
if (!description) {
|
|
||||||
r = log_oom();
|
|
||||||
goto finish;
|
goto finish;
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
arg_description = description;
|
arg_description = description;
|
||||||
|
|||||||
@@ -891,8 +891,10 @@ static int add_user(Item *i) {
|
|||||||
i->uid = p->pw_uid;
|
i->uid = p->pw_uid;
|
||||||
i->uid_set = true;
|
i->uid_set = true;
|
||||||
|
|
||||||
free(i->description);
|
r = free_and_strdup(&i->description, p->pw_gecos);
|
||||||
i->description = strdup(p->pw_gecos);
|
if (r < 0)
|
||||||
|
return log_oom();
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
if (!IN_SET(errno, 0, ENOENT))
|
if (!IN_SET(errno, 0, ENOENT))
|
||||||
@@ -1149,9 +1151,8 @@ static int process_item(Item *i) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (i->gid_path) {
|
if (i->gid_path) {
|
||||||
free(j->gid_path);
|
r = free_and_strdup(&j->gid_path, i->gid_path);
|
||||||
j->gid_path = strdup(i->gid_path);
|
if (r < 0)
|
||||||
if (!j->gid_path)
|
|
||||||
return log_oom();
|
return log_oom();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -2429,8 +2429,7 @@ int udev_rules_apply_to_event(struct udev_rules *rules,
|
|||||||
rules_str(rules, rule->rule.filename_off), rule->rule.filename_line);
|
rules_str(rules, rule->rule.filename_off), rule->rule.filename_line);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
free(event->name);
|
free_and_strdup(&event->name, name_str);
|
||||||
event->name = strdup(name_str);
|
|
||||||
log_debug("NAME '%s' %s:%u",
|
log_debug("NAME '%s' %s:%u",
|
||||||
event->name,
|
event->name,
|
||||||
rules_str(rules, rule->rule.filename_off),
|
rules_str(rules, rule->rule.filename_off),
|
||||||
|
|||||||
Reference in New Issue
Block a user