diff options
author | Junio C Hamano <gitster@pobox.com> | 2014-07-28 22:30:41 +0400 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2014-07-28 22:30:41 +0400 |
commit | ad524f834a9acaaaceeb846d00ea609f79333a3d (patch) | |
tree | 2b6a49037e48602c34dea27d19e0668ed8c35724 /builtin | |
parent | 919eb8acea61fc461e69e2383e6290b4c3991c96 (diff) | |
parent | 31bb6d37f992128eca3707d4f58ec61425742e81 (diff) |
Merge branch 'jk/misc-fixes-maint'
* jk/misc-fixes-maint:
apply: avoid possible bogus pointer
fix memory leak parsing core.commentchar
transport: fix leaks in refs_from_alternate_cb
free ref string returned by dwim_ref
receive-pack: don't copy "dir" parameter
Diffstat (limited to 'builtin')
-rw-r--r-- | builtin/apply.c | 2 | ||||
-rw-r--r-- | builtin/receive-pack.c | 4 | ||||
-rw-r--r-- | builtin/rev-parse.c | 1 | ||||
-rw-r--r-- | builtin/show-branch.c | 1 |
4 files changed, 5 insertions, 3 deletions
diff --git a/builtin/apply.c b/builtin/apply.c index 9f8f5bac07..be2b4ce2fd 100644 --- a/builtin/apply.c +++ b/builtin/apply.c @@ -1075,7 +1075,7 @@ static int gitdiff_index(const char *line, struct patch *patch) line = ptr + 2; ptr = strchr(line, ' '); - eol = strchr(line, '\n'); + eol = strchrnul(line, '\n'); if (!ptr || eol < ptr) ptr = eol; diff --git a/builtin/receive-pack.c b/builtin/receive-pack.c index 92561bffc1..f93ac454b4 100644 --- a/builtin/receive-pack.c +++ b/builtin/receive-pack.c @@ -1122,7 +1122,7 @@ int cmd_receive_pack(int argc, const char **argv, const char *prefix) int advertise_refs = 0; int stateless_rpc = 0; int i; - char *dir = NULL; + const char *dir = NULL; struct command *commands; struct sha1_array shallow = SHA1_ARRAY_INIT; struct sha1_array ref = SHA1_ARRAY_INIT; @@ -1157,7 +1157,7 @@ int cmd_receive_pack(int argc, const char **argv, const char *prefix) } if (dir) usage(receive_pack_usage); - dir = xstrdup(arg); + dir = arg; } if (!dir) usage(receive_pack_usage); diff --git a/builtin/rev-parse.c b/builtin/rev-parse.c index 8102aaa924..d85e08cc9c 100644 --- a/builtin/rev-parse.c +++ b/builtin/rev-parse.c @@ -151,6 +151,7 @@ static void show_rev(int type, const unsigned char *sha1, const char *name) error("refname '%s' is ambiguous", name); break; } + free(full); } else { show_with_type(type, name); } diff --git a/builtin/show-branch.c b/builtin/show-branch.c index 5fd4e4e488..298c95e3f8 100644 --- a/builtin/show-branch.c +++ b/builtin/show-branch.c @@ -777,6 +777,7 @@ int cmd_show_branch(int ac, const char **av, const char *prefix) sprintf(nth_desc, "%s@{%d}", *av, base+i); append_ref(nth_desc, sha1, 1); } + free(ref); } else if (all_heads + all_remotes) snarf_refs(all_heads, all_remotes); |