diff options
author | Boris Egorov <egorov@linux.com> | 2015-01-25 00:07:23 +0600 |
---|---|---|
committer | Boris Egorov <egorov@linux.com> | 2015-01-25 01:40:44 +0600 |
commit | dc5fe00c6562e46c88a5c5b975121c202eae1180 (patch) | |
tree | 844c9fd5525b60f61afaa1e3b4b1c1f33e4afeaf /src/pathspec.c | |
parent | 73c5db7663b16f8aee2176ae8a5a4ed5127d5c35 (diff) | |
download | libgit2-dc5fe00c6562e46c88a5c5b975121c202eae1180.tar.gz |
pathspec: do not try to dereference NULL
pathspec_match_free() should not dereference a NULL passed to it.
I found this issue when I tried to run example log program with
nonexistent branch:
./example/log help
Such call leads to segmentation fault.
Diffstat (limited to 'src/pathspec.c')
-rw-r--r-- | src/pathspec.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/pathspec.c b/src/pathspec.c index 8b469f717..6aef574c8 100644 --- a/src/pathspec.c +++ b/src/pathspec.c @@ -296,6 +296,9 @@ int git_pathspec_matches_path( static void pathspec_match_free(git_pathspec_match_list *m) { + if (!m) + return; + git_pathspec_free(m->pathspec); m->pathspec = NULL; |