lib/strv: add strv_extendv()
Signed-off-by: Karel Zak <kzak@redhat.com>
This commit is contained in:
parent
d5358bbb6b
commit
de8d3863c8
|
@ -13,6 +13,7 @@ unsigned strv_length(char * const *l);
|
|||
int strv_extend_strv(char ***a, char **b);
|
||||
int strv_extend_strv_concat(char ***a, char **b, const char *suffix);
|
||||
int strv_extend(char ***l, const char *value);
|
||||
int strv_extendv(char ***l, const char *format, va_list ap);
|
||||
int strv_extendf(char ***l, const char *format, ...)
|
||||
__attribute__ ((__format__ (__printf__, 2, 0)));
|
||||
int strv_push(char ***l, char *value);
|
||||
|
|
11
lib/strv.c
11
lib/strv.c
|
@ -373,6 +373,17 @@ int strv_extendf(char ***l, const char *format, ...) {
|
|||
return strv_consume(l, x);
|
||||
}
|
||||
|
||||
int strv_extendv(char ***l, const char *format, va_list ap) {
|
||||
char *x;
|
||||
int r;
|
||||
|
||||
r = vasprintf(&x, format, ap);
|
||||
if (r < 0)
|
||||
return -ENOMEM;
|
||||
|
||||
return strv_consume(l, x);
|
||||
}
|
||||
|
||||
char **strv_reverse(char **l) {
|
||||
unsigned n, i;
|
||||
|
||||
|
|
Loading…
Reference in New Issue