diff options
author | Kristian Høgsberg <krh@redhat.com> | 2007-12-04 02:25:46 -0500 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2007-12-04 01:20:06 -0800 |
commit | 2d324efad6a8f4808c5eec8fd299b79ab80a7ba3 (patch) | |
tree | 787221dd3f0d967e6d7d55fc19ce8c85bc6ade89 /builtin-fetch.c | |
parent | 0240e21aae9263e961710dccd463d84f1049f597 (diff) | |
download | git-2d324efad6a8f4808c5eec8fd299b79ab80a7ba3.tar.gz |
Use a strbuf for copying the command line for the reflog.
Signed-off-by: Kristian Høgsberg <krh@redhat.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'builtin-fetch.c')
-rw-r--r-- | builtin-fetch.c | 24 |
1 files changed, 8 insertions, 16 deletions
diff --git a/builtin-fetch.c b/builtin-fetch.c index de9947e7ac..f6d16fe966 100644 --- a/builtin-fetch.c +++ b/builtin-fetch.c @@ -14,7 +14,7 @@ static const char fetch_usage[] = "git-fetch [-a | --append] [--upload-pack <upl static int append, force, tags, no_tags, update_head_ok, verbose, quiet; static const char *depth; -static char *default_rla = NULL; +static struct strbuf default_rla = STRBUF_INIT; static struct transport *transport; static void unlock_pack(void) @@ -142,7 +142,7 @@ static int s_update_ref(const char *action, static struct ref_lock *lock; if (!rla) - rla = default_rla; + rla = default_rla.buf; snprintf(msg, sizeof(msg), "%s: %s", rla, action); lock = lock_any_ref_for_update(ref->name, check_old ? ref->old_sha1 : NULL, 0); @@ -543,16 +543,19 @@ static void set_option(const char *name, const char *value) int cmd_fetch(int argc, const char **argv, const char *prefix) { struct remote *remote; - int i, j, rla_offset; + int i; static const char **refs = NULL; int ref_nr = 0; - int cmd_len = 0; const char *upload_pack = NULL; int keep = 0; + /* Record the command line for the reflog */ + strbuf_addstr(&default_rla, "fetch"); + for (i = 1; i < argc; i++) + strbuf_addf(&default_rla, " %s", argv[i]); + for (i = 1; i < argc; i++) { const char *arg = argv[i]; - cmd_len += strlen(arg); if (arg[0] != '-') break; @@ -613,17 +616,6 @@ int cmd_fetch(int argc, const char **argv, const char *prefix) usage(fetch_usage); } - for (j = i; j < argc; j++) - cmd_len += strlen(argv[j]); - - default_rla = xmalloc(cmd_len + 5 + argc + 1); - sprintf(default_rla, "fetch"); - rla_offset = strlen(default_rla); - for (j = 1; j < argc; j++) { - sprintf(default_rla + rla_offset, " %s", argv[j]); - rla_offset += strlen(argv[j]) + 1; - } - if (i == argc) remote = remote_get(NULL); else |