summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLibravatar Ramsay Jones <ramsay@ramsay1.demon.co.uk>2012-09-04 18:30:21 +0100
committerLibravatar Junio C Hamano <gitster@pobox.com>2012-09-04 13:34:46 -0700
commitd292bfaf356338b41e14e40ce4dbd6b9c8d600ec (patch)
treede4467f56e9d534169cd05b6a25e4a8e6ca60a73
parentpath.c: Use vsnpath() in the implementation of git_path() (diff)
downloadtgif-d292bfaf356338b41e14e40ce4dbd6b9c8d600ec.tar.xz
Call git_pathdup() rather than xstrdup(git_path("..."))
In addition to updating the two xstrdup(git_path("...")) call sites with git_pathdup(), we also fix a memory leak by freeing the memory allocated to the ADD_EDIT.patch 'file' in the edit_patch() function. Signed-off-by: Ramsay Jones <ramsay@ramsay1.demon.co.uk> Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r--bisect.c2
-rw-r--r--builtin/add.c3
2 files changed, 3 insertions, 2 deletions
diff --git a/bisect.c b/bisect.c
index 48acf73391..1aad49b1a6 100644
--- a/bisect.c
+++ b/bisect.c
@@ -833,7 +833,7 @@ static int check_ancestors(const char *prefix)
*/
static void check_good_are_ancestors_of_bad(const char *prefix, int no_checkout)
{
- char *filename = xstrdup(git_path("BISECT_ANCESTORS_OK"));
+ char *filename = git_pathdup("BISECT_ANCESTORS_OK");
struct stat st;
int fd;
diff --git a/builtin/add.c b/builtin/add.c
index 89dce56a24..2fc2677422 100644
--- a/builtin/add.c
+++ b/builtin/add.c
@@ -260,7 +260,7 @@ int interactive_add(int argc, const char **argv, const char *prefix, int patch)
static int edit_patch(int argc, const char **argv, const char *prefix)
{
- char *file = xstrdup(git_path("ADD_EDIT.patch"));
+ char *file = git_pathdup("ADD_EDIT.patch");
const char *apply_argv[] = { "apply", "--recount", "--cached",
NULL, NULL };
struct child_process child;
@@ -303,6 +303,7 @@ static int edit_patch(int argc, const char **argv, const char *prefix)
die (_("Could not apply '%s'"), file);
unlink(file);
+ free(file);
return 0;
}