abspath: add absolute_pathdup()

Add a function that returns a buffer containing the absolute path of its
argument and a semantic patch for its intended use.  It avoids an extra
string copy to a static buffer.

Signed-off-by: Rene Scharfe <l.s.r@web.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
René Scharfe
2017-01-26 18:47:45 +01:00
committed by Junio C Hamano
parent c3808ca698
commit b1edb40f25
3 changed files with 14 additions and 0 deletions

View File

@@ -152,6 +152,13 @@ const char *absolute_path(const char *path)
return sb.buf;
}
char *absolute_pathdup(const char *path)
{
struct strbuf sb = STRBUF_INIT;
strbuf_add_absolute_path(&sb, path);
return strbuf_detach(&sb, NULL);
}
/*
* Unlike prefix_path, this should be used if the named file does
* not have to interact with index entry; i.e. name of a random file