Commit Diff


commit - a96e9e6e177a70160e11f3edda1b4fe13b535a50
commit + f0f5557675f0e5e85c086e098478bb6a51e00e68
blob - 8f72aa6c4993b257f992a9300fa14467f7402aa6
blob + 9afa74d1d08cfdfe6e45e1bd1911a37c1585184b
--- lib/pack_create_privsep.c
+++ lib/pack_create_privsep.c
@@ -342,7 +342,10 @@ paint_packed_commits(struct got_object_qid **qid0,
 		qid = STAILQ_FIRST(&next_ids);
 		STAILQ_REMOVE_HEAD(&next_ids, entry);
 		got_pack_paint_commit(qid, color);
-		STAILQ_INSERT_TAIL(ids, qid, entry);
+		if (color == COLOR_KEEP)
+			STAILQ_INSERT_TAIL(ids, qid, entry);
+		else
+			STAILQ_INSERT_HEAD(ids, qid, entry);
 		(*nqueued)++;
 		if (color == COLOR_SKIP)
 			(*nskip)++;