From: Keith Cascio Date: Tue, 17 Feb 2009 02:59:00 +0000 (-0800) Subject: Fix neglect of diff_setup()/diff_setup_done() symmetry. X-Git-Tag: v1.6.3-rc0~228 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=e752f4bba24afe964eb42d6c2b8bf06cc77c9ce4;p=git.git Fix neglect of diff_setup()/diff_setup_done() symmetry. Code that calls diff_setup(), including via init_revisions(), should later call diff_setup_done(), possibly via setup_revisions(). Failure to do so could cause errors, especially in the future when we add responsibilities to diff_setup_done(). This instance causes no known errors with the present code. But it resulted in an error with an experimental patch. Signed-off-by: Keith Cascio Signed-off-by: Junio C Hamano --- diff --git a/builtin-checkout.c b/builtin-checkout.c index 20b34ce6e..c315f6339 100644 --- a/builtin-checkout.c +++ b/builtin-checkout.c @@ -295,6 +295,8 @@ static void show_local_changes(struct object *head) init_revisions(&rev, NULL); rev.abbrev = 0; rev.diffopt.output_format |= DIFF_FORMAT_NAME_STATUS; + if (diff_setup_done(&rev.diffopt) < 0) + die("diff_setup_done failed"); add_pending_object(&rev, head, NULL); run_diff_index(&rev, 0); }