Merge branch 'rs/combine-diff-zero-context-at-the-beginning' into maint
authorJunio C Hamano <gitster@pobox.com>
Thu, 26 Apr 2012 17:35:25 +0000 (10:35 -0700)
committerJunio C Hamano <gitster@pobox.com>
Thu, 26 Apr 2012 17:35:26 +0000 (10:35 -0700)
An age-old corner case bug in combine diff (only triggered with -U0
and the hunk at the beginning of the file needs to be shown) has been
fixed.

By René Scharfe
* rs/combine-diff-zero-context-at-the-beginning:
combine-diff: fix loop index underflow

combine-diff.c
index a2e8dcf8553ff15d7cfed8f8ec4735185ec162bb..978668036835e16df4b6bfd37a7b1e9f8494cf07 100644 (file)
@@ -423,7 +423,7 @@ static int make_hunks(struct sline *sline, unsigned long cnt,
                                                     hunk_begin, j);
                                la = (la + context < cnt + 1) ?
                                        (la + context) : cnt + 1;
-                               while (j <= --la) {
+                               while (la && j <= --la) {
                                        if (sline[la].flag & mark) {
                                                contin = 1;
                                                break;