зеркало из https://github.com/microsoft/git.git
argv-array: implement argv_array_pushv()
When we have a null-terminated array, it would be useful to convert it or append it to an argv_array for further manipulation. Implement argv_array_pushv() which will push a null-terminated array of strings on to an argv_array. Signed-off-by: Paul Tan <pyokagan@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Родитель
ffad85c599
Коммит
85b343245b
|
@ -46,6 +46,9 @@ Functions
|
|||
Format a string and push it onto the end of the array. This is a
|
||||
convenience wrapper combining `strbuf_addf` and `argv_array_push`.
|
||||
|
||||
`argv_array_pushv`::
|
||||
Push a null-terminated array of strings onto the end of the array.
|
||||
|
||||
`argv_array_pop`::
|
||||
Remove the final element from the array. If there are no
|
||||
elements in the array, do nothing.
|
||||
|
|
|
@ -49,6 +49,12 @@ void argv_array_pushl(struct argv_array *array, ...)
|
|||
va_end(ap);
|
||||
}
|
||||
|
||||
void argv_array_pushv(struct argv_array *array, const char **argv)
|
||||
{
|
||||
for (; *argv; argv++)
|
||||
argv_array_push(array, *argv);
|
||||
}
|
||||
|
||||
void argv_array_pop(struct argv_array *array)
|
||||
{
|
||||
if (!array->argc)
|
||||
|
|
|
@ -17,6 +17,7 @@ __attribute__((format (printf,2,3)))
|
|||
void argv_array_pushf(struct argv_array *, const char *fmt, ...);
|
||||
LAST_ARG_MUST_BE_NULL
|
||||
void argv_array_pushl(struct argv_array *, ...);
|
||||
void argv_array_pushv(struct argv_array *, const char **);
|
||||
void argv_array_pop(struct argv_array *);
|
||||
void argv_array_clear(struct argv_array *);
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче