diff options
Diffstat (limited to 'sha1-file.c')
-rw-r--r-- | sha1-file.c | 13 |
1 files changed, 4 insertions, 9 deletions
diff --git a/sha1-file.c b/sha1-file.c index 616886799e..f2b2465489 100644 --- a/sha1-file.c +++ b/sha1-file.c @@ -676,20 +676,15 @@ void add_to_alternates_memory(const char *reference) char *compute_alternate_path(const char *path, struct strbuf *err) { char *ref_git = NULL; - const char *repo, *ref_git_s; + const char *repo; int seen_error = 0; - ref_git_s = real_path_if_valid(path); - if (!ref_git_s) { + ref_git = real_pathdup(path, 0); + if (!ref_git) { seen_error = 1; strbuf_addf(err, _("path '%s' does not exist"), path); goto out; - } else - /* - * Beware: read_gitfile(), real_path() and mkpath() - * return static buffer - */ - ref_git = xstrdup(ref_git_s); + } repo = read_gitfile(ref_git); if (!repo) |