Trace and quote with argv: get rid of unneeded count argument.
Now that str_buf takes care of all the allocations, there is no more gain to pass an argument count. So this patch removes the "count" argument from: - "sq_quote_argv" - "trace_argv_printf" and all the callers. Signed-off-by: Christian Couder <chriscool@tuxfamily.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
41650765de
commit
b319ce4c14
@ -327,7 +327,7 @@ static int cmd_parseopt(int argc, const char **argv, const char *prefix)
|
||||
keep_dashdash ? PARSE_OPT_KEEP_DASHDASH : 0);
|
||||
|
||||
strbuf_addf(&parsed, " --");
|
||||
sq_quote_argv(&parsed, argv, argc, 0);
|
||||
sq_quote_argv(&parsed, argv, 0);
|
||||
puts(parsed.buf);
|
||||
return 0;
|
||||
}
|
||||
|
2
cache.h
2
cache.h
@ -620,7 +620,7 @@ extern void alloc_report(void);
|
||||
|
||||
/* trace.c */
|
||||
extern void trace_printf(const char *format, ...);
|
||||
extern void trace_argv_printf(const char **argv, int count, const char *format, ...);
|
||||
extern void trace_argv_printf(const char **argv, const char *format, ...);
|
||||
|
||||
/* convert.c */
|
||||
/* returns 1 if *dst was used */
|
||||
|
@ -80,7 +80,7 @@ int execv_git_cmd(const char **argv)
|
||||
tmp = argv[0];
|
||||
argv[0] = cmd.buf;
|
||||
|
||||
trace_argv_printf(argv, -1, "trace: exec:");
|
||||
trace_argv_printf(argv, "trace: exec:");
|
||||
|
||||
/* execvp() can only ever return if it fails */
|
||||
execvp(cmd.buf, (char **)argv);
|
||||
|
6
git.c
6
git.c
@ -169,7 +169,7 @@ static int handle_alias(int *argcp, const char ***argv)
|
||||
|
||||
strbuf_init(&buf, PATH_MAX);
|
||||
strbuf_addstr(&buf, alias_string);
|
||||
sq_quote_argv(&buf, (*argv) + 1, *argcp - 1, PATH_MAX);
|
||||
sq_quote_argv(&buf, (*argv) + 1, PATH_MAX);
|
||||
free(alias_string);
|
||||
alias_string = buf.buf;
|
||||
}
|
||||
@ -198,7 +198,7 @@ static int handle_alias(int *argcp, const char ***argv)
|
||||
if (!strcmp(alias_command, new_argv[0]))
|
||||
die("recursive alias: %s", alias_command);
|
||||
|
||||
trace_argv_printf(new_argv, count,
|
||||
trace_argv_printf(new_argv,
|
||||
"trace: alias expansion: %s =>",
|
||||
alias_command);
|
||||
|
||||
@ -252,7 +252,7 @@ static int run_command(struct cmd_struct *p, int argc, const char **argv)
|
||||
if (p->option & NEED_WORK_TREE)
|
||||
setup_work_tree();
|
||||
|
||||
trace_argv_printf(argv, argc, "trace: built-in: git");
|
||||
trace_argv_printf(argv, "trace: built-in: git");
|
||||
|
||||
status = p->fn(argc, argv, prefix);
|
||||
if (status)
|
||||
|
13
quote.c
13
quote.c
@ -56,20 +56,13 @@ void sq_quote_print(FILE *stream, const char *src)
|
||||
fputc('\'', stream);
|
||||
}
|
||||
|
||||
void sq_quote_argv(struct strbuf *dst, const char** argv, int count,
|
||||
size_t maxlen)
|
||||
void sq_quote_argv(struct strbuf *dst, const char** argv, size_t maxlen)
|
||||
{
|
||||
int i;
|
||||
|
||||
/* Count argv if needed. */
|
||||
if (count < 0) {
|
||||
for (count = 0; argv[count]; count++)
|
||||
; /* just counting */
|
||||
}
|
||||
|
||||
/* Copy into destination buffer. */
|
||||
strbuf_grow(dst, 32 * count);
|
||||
for (i = 0; i < count; ++i) {
|
||||
strbuf_grow(dst, 255);
|
||||
for (i = 0; argv[i]; ++i) {
|
||||
strbuf_addch(dst, ' ');
|
||||
sq_quote_buf(dst, argv[i]);
|
||||
if (maxlen && dst->len > maxlen)
|
||||
|
3
quote.h
3
quote.h
@ -31,8 +31,7 @@
|
||||
extern void sq_quote_print(FILE *stream, const char *src);
|
||||
|
||||
extern void sq_quote_buf(struct strbuf *, const char *src);
|
||||
extern void sq_quote_argv(struct strbuf *, const char **argv, int count,
|
||||
size_t maxlen);
|
||||
extern void sq_quote_argv(struct strbuf *, const char **argv, size_t maxlen);
|
||||
|
||||
/* This unwraps what sq_quote() produces in place, but returns
|
||||
* NULL if the input does not look like what sq_quote would have
|
||||
|
4
trace.c
4
trace.c
@ -93,7 +93,7 @@ void trace_printf(const char *fmt, ...)
|
||||
close(fd);
|
||||
}
|
||||
|
||||
void trace_argv_printf(const char **argv, int count, const char *fmt, ...)
|
||||
void trace_argv_printf(const char **argv, const char *fmt, ...)
|
||||
{
|
||||
struct strbuf buf;
|
||||
va_list ap;
|
||||
@ -117,7 +117,7 @@ void trace_argv_printf(const char **argv, int count, const char *fmt, ...)
|
||||
}
|
||||
strbuf_setlen(&buf, len);
|
||||
|
||||
sq_quote_argv(&buf, argv, count, 0);
|
||||
sq_quote_argv(&buf, argv, 0);
|
||||
strbuf_addch(&buf, '\n');
|
||||
write_or_whine_pipe(fd, buf.buf, buf.len, err_msg);
|
||||
strbuf_release(&buf);
|
||||
|
Loading…
Reference in New Issue
Block a user