mirror of
https://github.com/systemd/systemd.git
synced 2026-07-13 02:51:14 +00:00
specifier: use _cleanup_
This commit is contained in:
@@ -464,7 +464,8 @@ int specifier_var_tmp_dir(char specifier, const void *data, const char *root, co
|
||||
}
|
||||
|
||||
int specifier_escape_strv(char **l, char ***ret) {
|
||||
char **z, **p, **q;
|
||||
_cleanup_strv_free_ char **z = NULL;
|
||||
char **p, **q;
|
||||
|
||||
assert(ret);
|
||||
|
||||
@@ -480,14 +481,12 @@ int specifier_escape_strv(char **l, char ***ret) {
|
||||
for (p = l, q = z; *p; p++, q++) {
|
||||
|
||||
*q = specifier_escape(*p);
|
||||
if (!*q) {
|
||||
strv_free(z);
|
||||
if (!*q)
|
||||
return -ENOMEM;
|
||||
}
|
||||
}
|
||||
|
||||
*q = NULL;
|
||||
*ret = z;
|
||||
*ret = TAKE_PTR(z);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user