Skip to content

Commit

Permalink
Trace and quote with argv: get rid of unneeded count argument.
Browse files Browse the repository at this point in the history
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>
  • Loading branch information
Christian Couder authored and Junio C Hamano committed Dec 4, 2007
1 parent 4165076 commit b319ce4
Show file tree
Hide file tree
Showing 7 changed files with 12 additions and 20 deletions.
2 changes: 1 addition & 1 deletion builtin-rev-parse.c
Original file line number Diff line number Diff line change
Expand Up @@ -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;
}
Expand Down
2 changes: 1 addition & 1 deletion cache.h
Original file line number Diff line number Diff line change
Expand Up @@ -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 */
Expand Down
2 changes: 1 addition & 1 deletion exec_cmd.c
Original file line number Diff line number Diff line change
Expand Up @@ -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);
Expand Down
6 changes: 3 additions & 3 deletions git.c
Original file line number Diff line number Diff line change
Expand Up @@ -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;
}
Expand Down Expand Up @@ -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);

Expand Down Expand Up @@ -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)
Expand Down
13 changes: 3 additions & 10 deletions quote.c
Original file line number Diff line number Diff line change
Expand Up @@ -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)
Expand Down
3 changes: 1 addition & 2 deletions quote.h
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
4 changes: 2 additions & 2 deletions trace.c
Original file line number Diff line number Diff line change
Expand Up @@ -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;
Expand All @@ -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);
Expand Down

0 comments on commit b319ce4

Please sign in to comment.