Commit Diff


commit - f6a8483bc5151c95d3805edf616c6f23c5093093
commit + 60c45cca65d373ac48ea19fead9e1fd4e469d023
blob - 5aaaa8e2b4a5026b7b0eaf69032bf1917b2f6d90
blob + e580803b5171ab0806bd69d4818151fa6fdd24af
--- lib/privsep.c
+++ lib/privsep.c
@@ -3661,7 +3661,10 @@ got_privsep_recv_painted_commits(struct got_object_id_
 				memcpy(&qid->id, &icommit.id,
 				    sizeof(qid->id));
 				qid->data = (void *)icommit.color;
-				STAILQ_INSERT_TAIL(new_ids, qid, entry);
+				if (icommit.color == 0 /* COLOR_KEEP */)
+					STAILQ_INSERT_TAIL(new_ids, qid, entry);
+				else
+					STAILQ_INSERT_HEAD(new_ids, qid, entry);
 			}
 		}