diff options
author | Patrick Steinhardt <ps@pks.im> | 2017-03-28 09:12:34 +0200 |
---|---|---|
committer | Patrick Steinhardt <ps@pks.im> | 2017-04-04 11:58:46 +0200 |
commit | a76d75021c50315ab52d7a4e60419dc2e64c47e9 (patch) | |
tree | e64c9df5751cf25fc7d4d0556d79c29c2427b0bd | |
parent | cffd616a7205d6b025f3736eb6c0a1ae9c3cd85d (diff) | |
download | libgit2-a76d75021c50315ab52d7a4e60419dc2e64c47e9.tar.gz |
path: short-circuit `git_path_apply_relative` on error
Short-circuit the call to `git_path_resolve_relative` in case
`git_buf_joinpath` returns an error. While this does not fix any
immediate errors, the resulting code is easier to read and handles
potential new error conditions raised by `git_buf_joinpath`.
-rw-r--r-- | src/path.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/path.c b/src/path.c index 9b15c8cf9..b7205a646 100644 --- a/src/path.c +++ b/src/path.c @@ -826,8 +826,8 @@ int git_path_resolve_relative(git_buf *path, size_t ceiling) int git_path_apply_relative(git_buf *target, const char *relpath) { - git_buf_joinpath(target, git_buf_cstr(target), relpath); - return git_path_resolve_relative(target, 0); + return git_buf_joinpath(target, git_buf_cstr(target), relpath) || + git_path_resolve_relative(target, 0); } int git_path_cmp( |