It seems to be odd to do x=y if x==y. Maybe there's a bug somewhere near this, but as is this is somewhat confusing. Signed-off-by: Rasmus Villemoes <rv@xxxxxxxxxxxxxxxxxx> --- shallow.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/shallow.c b/shallow.c index 5aec5a5..7c28239 100644 --- a/shallow.c +++ b/shallow.c @@ -513,7 +513,7 @@ static void paint_down(struct paint_info *info, const unsigned char *sha1, p->item); if (p->item->object.flags & SEEN) continue; - if (*p_refs == NULL || *p_refs == *refs) + if (*p_refs == NULL) *p_refs = *refs; commit_list_insert(p->item, &head); } -- 2.1.4