Fix revision walk for commits with the same dates
authorKacper Kornet <draenog@pld-linux.org>
Fri, 22 Mar 2013 18:38:19 +0000 (19:38 +0100)
committerJunio C Hamano <gitster@pobox.com>
Fri, 22 Mar 2013 23:15:48 +0000 (16:15 -0700)
commitc19d1b4e840535c5fc27077194e8ac219c02644c
treeff7664c14ec5cd8dd0548b285b916771455f2c74
parent15999998fbda60552742275570947431b57108ae
Fix revision walk for commits with the same dates

Logic in still_interesting function allows to stop the commits
traversing if the oldest processed commit is not older then the
youngest commit on the list to process and the list contains only
commits marked as not interesting ones. It can be premature when dealing
with a set of coequal commits. For example git rev-list A^! --not B
provides wrong answer if all commits in the range A..B had the same
commit time and there are more then 7 of them.

To fix this problem the relevant part of the logic in still_interesting
is changed to: the walk can be stopped if the oldest processed commit is
younger then the youngest commit on the list to processed.

Signed-off-by: Kacper Kornet <draenog@pld-linux.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
revision.c
t/t6009-rev-list-parent.sh