core: check for redundant operation before doing allocation

This commit is contained in:
Lennart Poettering 2019-03-19 13:01:12 +01:00
parent cbe83389d5
commit 5210387ea6
1 changed files with 4 additions and 6 deletions

View File

@ -1568,15 +1568,14 @@ int unit_set_cgroup_path(Unit *u, const char *path) {
assert(u);
if (streq_ptr(u->cgroup_path, path))
return 0;
if (path) {
p = strdup(path);
if (!p)
return -ENOMEM;
} else
p = NULL;
if (streq_ptr(u->cgroup_path, p))
return 0;
}
if (p) {
r = hashmap_put(u->manager->cgroup_unit, p, u);
@ -1585,7 +1584,6 @@ int unit_set_cgroup_path(Unit *u, const char *path) {
}
unit_release_cgroup(u);
u->cgroup_path = TAKE_PTR(p);
return 1;