Commits

Anonymous committed d0ac30f

[PATCH] fetch.c: cleanups

Clean-ups suggested by Sergey Vlasov and acked by Daniel Barkalow.

Signed-off-by: Junio C Hamano <junkio@cox.net>

Comments (0)

Files changed (1)

 	return 0;
 }
 
-struct commit_list *complete = NULL;
+#define COMPLETE	1U
+static struct commit_list *complete = NULL;
 
 static int process_commit(struct commit *commit)
 {
 		return -1;
 
 	while (complete && complete->item->date >= commit->date) {
-		pop_most_recent_commit(&complete, 1);
+		pop_most_recent_commit(&complete, COMPLETE);
 	}
 		
 
-	if (commit->object.flags & 1)
+	if (commit->object.flags & COMPLETE)
 		return 0;
 
 	memcpy(current_commit_sha1, commit->object.sha1, 20);
 
 static int mark_complete(const char *path, const unsigned char *sha1)
 {
-	struct object *obj = parse_object(sha1);
-	while (obj->type == tag_type) {
-		obj = ((struct tag *) obj)->tagged;
-		parse_object(obj->sha1);
-	}
-	if (obj->type == commit_type) {
-		obj->flags |= 1;
-		insert_by_date((struct commit *) obj, &complete);
+	struct commit *commit = lookup_commit_reference_gently(sha1, 1);
+	if (commit) {
+		commit->object.flags |= COMPLETE;
+		insert_by_date(commit, &complete);
 	}
 	return 0;
 }