# HG changeset patch # User Kristian H?gsberg # Date 1214017989 14400 # Node ID 0c3db660514d7946baae6b9df453970f55e087b8 # Parent 3603b635d6c9a415d92f3328e79de1644e0d58ff When uniquifying properties, also sort them on the owning package. This ensures that whenever two packages provide or (or require, obsolete or conflict) the same property, they appear in the same order in the propertys list of packages. diff -r 3603b635d6c9 -r 0c3db660514d librazor/importer.c --- a/librazor/importer.c Fri Jun 20 22:27:07 2008 -0400 +++ b/librazor/importer.c Fri Jun 20 23:13:09 2008 -0400 @@ -135,8 +135,10 @@ return strcmp(&pool[prop1->name], &pool[prop2->name]); else if (prop1->flags != prop2->flags) return prop1->flags - prop2->flags; + else if (prop1->version != prop2->version) + return razor_versioncmp(&pool[prop1->version], &pool[prop2->version]); else - return razor_versioncmp(&pool[prop1->version], &pool[prop2->version]); + return prop1->packages.list_ptr - prop2->packages.list_ptr; } static uint32_t * diff -r 3603b635d6c9 -r 0c3db660514d librazor/transaction.c --- a/librazor/transaction.c Fri Jun 20 22:27:07 2008 -0400 +++ b/librazor/transaction.c Fri Jun 20 23:13:09 2008 -0400 @@ -649,9 +649,11 @@ rpi->present[rp - rpi->start] |= TRANS_PROPERTY_SATISFIED; - fprintf(stderr, "pulling in %s which provides %s %s %s " + fprintf(stderr, "pulling in %s-%s.%s which provides %s %s %s " "to satisfy %s %s %s\n", ppi->pool + pkg->name, + ppi->pool + pkg->version, + ppi->pool + pkg->arch, ppi->pool + pp->name, razor_property_relation_to_string(pp), ppi->pool + pp->version,