Skip to content

Commit b198a12

Browse files
authored
Merge pull request #374 from davidbrochart/conda_track_features
Move feature minimization to pool_buildversioncmp()
2 parents b582c65 + 893b348 commit b198a12

1 file changed

Lines changed: 10 additions & 10 deletions

File tree

src/policy.c

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -836,8 +836,14 @@ move_installed_to_front(Pool *pool, Queue *plist)
836836
static int
837837
pool_buildversioncmp(Pool *pool, Solvable *s1, Solvable *s2)
838838
{
839-
const char *bv1 = solvable_lookup_str(s1, SOLVABLE_BUILDVERSION);
840-
const char *bv2 = solvable_lookup_str(s2, SOLVABLE_BUILDVERSION);
839+
const char *bv1, *bv2;
840+
unsigned int cnt1, cnt2;
841+
cnt1 = solvable_lookup_count(s1, SOLVABLE_TRACK_FEATURES);
842+
cnt2 = solvable_lookup_count(s2, SOLVABLE_TRACK_FEATURES);
843+
if (cnt1 != cnt2)
844+
return cnt1 > cnt2 ? -1 : 1;
845+
bv1 = solvable_lookup_str(s1, SOLVABLE_BUILDVERSION);
846+
bv2 = solvable_lookup_str(s2, SOLVABLE_BUILDVERSION);
841847
if (!bv1 && !bv2)
842848
return 0;
843849
return pool_evrcmp_str(pool, bv1 ? bv1 : "" , bv2 ? bv2 : "", EVRCMP_COMPARE);
@@ -846,14 +852,8 @@ pool_buildversioncmp(Pool *pool, Solvable *s1, Solvable *s2)
846852
static int
847853
pool_buildflavorcmp(Pool *pool, Solvable *s1, Solvable *s2)
848854
{
849-
const char *f1, *f2;
850-
unsigned int cnt1, cnt2;
851-
cnt1 = solvable_lookup_count(s1, SOLVABLE_TRACK_FEATURES);
852-
cnt2 = solvable_lookup_count(s2, SOLVABLE_TRACK_FEATURES);
853-
if (cnt1 != cnt2)
854-
return cnt1 > cnt2 ? -1 : 1;
855-
f1 = solvable_lookup_str(s1, SOLVABLE_BUILDFLAVOR);
856-
f2 = solvable_lookup_str(s2, SOLVABLE_BUILDFLAVOR);
855+
const char *f1 = solvable_lookup_str(s1, SOLVABLE_BUILDFLAVOR);
856+
const char *f2 = solvable_lookup_str(s2, SOLVABLE_BUILDFLAVOR);
857857
if (!f1 && !f2)
858858
return 0;
859859
return pool_evrcmp_str(pool, f1 ? f1 : "" , f2 ? f2 : "", EVRCMP_COMPARE);

0 commit comments

Comments
 (0)