summaryrefslogtreecommitdiff
path: root/poldek-multiarch-x32.patch
blob: 50b71368251bc6fa44e3fe1b16d605ad6b216ea4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
diff --git a/pkg.c b/pkg.c
index 9e1bf9c..ed62efd 100644
--- a/pkg.c
+++ b/pkg.c
@@ -74,8 +74,11 @@ int pkgmod_register_arch(const char *arch)
 
         an_arch->score = pm_architecture_score(arch);
         n_assert(an_arch->score >= 0);
-        if (!an_arch->score)    /* make it most less preferred */
-            an_arch->score = INT_MAX - 1;
+        if (an_arch->score == 0) {
+            /* make it most less preferred, but differ from other zero-scored
+               archs (i686 and x86_64 on x32 case) */
+            an_arch->score = INT_MAX - n_array_size(architecture_a) - 1;
+        }
         DBGF("register %s with score %d\n", arch, an_arch->score);
 
         memcpy(an_arch->arch, arch, len + 1);