Commit Diff


commit - 2d3c9d642ebdfb531ae3b90b48684270f404960a
commit + b9c2d47a3fc981f104e3a5b765d8fe555c9d775a
blob - c87aeadd22be51b99cd7b2a2c28693d4c18c9a66
blob + bc97d41aa4116fc28f2b0c34231050282cfce71a
--- lib/privsep.c
+++ lib/privsep.c
@@ -3660,7 +3660,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);
 			}
 		}