2 --- x/lib/depends.c 2009/05/15 13:40:58 1.445
3 +++ y/lib/depends.c 2009/08/22 22:12:02 1.446
8 - /* Mark the package as queued. */
9 - rpmteTSI(p)->tsi_queued = 1;
11 if ((*rp) == NULL) { /* 1st element */
12 /*@-dependenttrans@*/ /* FIX: double indirection */
14 @@ -2238,6 +2235,12 @@
15 /* XXX Insure removed after added. */
16 if (rpmteType(p) == TR_REMOVED && rpmteType(p) != rpmteType(q))
19 + /* XXX Follow all previous generations in the queue. */
20 + if (rpmteTSI(p)->tsi_queued > rpmteTSI(q)->tsi_queued)
23 + /* XXX Within a generation, queue behind more "important". */
24 if (rpmteTSI(q)->tsi_qcnt <= rpmteTSI(p)->tsi_qcnt)
29 if (rpmteTSI(p)->tsi_count != 0)
32 + /* Mark the package as queued. */
33 + rpmteTSI(p)->tsi_queued = orderingCount + 1;
34 rpmteTSI(p)->tsi_suc = NULL;
35 addQ(p, &q, &r, prefcolor);
38 (void) rpmteSetParent(p, q);
39 (void) rpmteSetDegree(q, rpmteDegree(q)+1);
41 + /* Mark the package as queued. */
42 + rpmteTSI(p)->tsi_queued = orderingCount + 1;
43 /* XXX TODO: add control bit. */
44 rpmteTSI(p)->tsi_suc = NULL;
45 /*@-nullstate@*/ /* XXX FIX: rpmteTSI(q)->tsi_suc can be NULL. */