free(c->slice);
strv_free(c->cmdline_array);
- strv_free(c->well_known_names_array);
+ strv_free(c->well_known_names);
}
_public_ sd_bus_creds *sd_bus_creds_ref(sd_bus_creds *c) {
free(c->capability);
free(c->label);
free(c->unique_name);
- free(c->well_known_names);
free(c);
}
} else {
assert_return(well_known_names, -EINVAL);
assert_return(c->mask & SD_BUS_CREDS_WELL_KNOWN_NAMES, -ENODATA);
- assert(c->well_known_names);
-
- if (!c->well_known_names_array) {
- c->well_known_names_array = strv_parse_nulstr(c->well_known_names, c->well_known_names_size);
- if (!c->well_known_names_array)
- return -ENOMEM;
- }
-
- *well_known_names = c->well_known_names_array;
+ *well_known_names = c->well_known_names;
return 0;
}
}
if (c->mask & mask & SD_BUS_CREDS_WELL_KNOWN_NAMES) {
- n->well_known_names = memdup(c->well_known_names, c->well_known_names_size);
+ n->well_known_names = strv_copy(c->well_known_names);
if (!n->well_known_names)
return -ENOMEM;
-
- n->well_known_names_size = c->well_known_names_size;
}
/* Get more data */