[PATCH] diff: fix a possible null pointer dereference
- From
Stefan Beller <stefanbeller@googlemail.com>
- Date
- Aug 8, 2013, 22:11 UTC
- Message-ID
- <1375999913-4912-1-git-send-email-stefanbeller@googlemail.com>
- In-Reply-To
- <7v8v0b96xe.fsf@alter.siamese.dyndns.org>
The condition in the ternary operator was wrong, hence the wrong char pointer could be used as the parameter for show_submodule_summary. one->path may be null, but we definitely need a non null path given to the function.
Signed-off-by: Stefan Beller <stefanbeller@googlemail.com> Acked-By: Johannes Schindelin <Johannes.Schindelin@gmx.de> --- diff.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/diff.c b/diff.c index 80f8439..061694b 100644 --- a/diff.c +++ b/diff.c @@ -2252,7 +2252,7 @@ static void builtin_diff(const char *name_a, (!two->mode || S_ISGITLINK(two->mode))) { const char *del = diff_get_color_opt(o, DIFF_FILE_OLD); const char *add = diff_get_color_opt(o, DIFF_FILE_NEW); - show_submodule_summary(o->file, one ? one->path : two->path, + show_submodule_summary(o->file, one->path ? one->path : two->path, line_prefix, one->sha1, two->sha1, two->dirty_submodule, meta, del, add, reset);
-- 1.8.4.rc1.25.gd121ba2