diff options
| -rw-r--r-- | src/config.c | 22 | 
1 files changed, 22 insertions, 0 deletions
| diff --git a/src/config.c b/src/config.c index b3d6fc69a..e9854731b 100644 --- a/src/config.c +++ b/src/config.c @@ -483,6 +483,28 @@ int git_config_find_global(char *global_config_path, size_t length)  	return 0;  } +int git_config_find_xdr(char *xdr_config_path, size_t length) +{ +	git_buf path  = GIT_BUF_INIT; +	int ret = git_config_find_xdr_r(&path); + +	if (ret < 0) { +		git_buf_free(&path); +		return ret; +	} + +	if (path.size >= length) { +		git_buf_free(&path); +		giterr_set(GITERR_NOMEMORY, +			"Path is to long to fit on the given buffer"); +		return -1; +	} + +	git_buf_copy_cstr(xdr_config_path, length, &path); +	git_buf_free(&path); +	return 0; +} +  int git_config_find_system_r(git_buf *path)  {  	return git_futils_find_system_file(path, GIT_CONFIG_FILENAME_SYSTEM); | 
