[gnome-continuous-yocto/gnomeostree-3.28-rocko: 1117/8267] lib/oe/package_manager: keep platform_extra and default_platform_extra lists ordered



commit 58643b74eef6acfe4099b9f722d2a3f873623acd
Author: Bill Randle <william c randle intel com>
Date:   Fri Jun 24 21:22:31 2016 -0700

    lib/oe/package_manager: keep platform_extra and default_platform_extra lists ordered
    
    In RpmPM:insert_feeds_uris, the paths are kept in sets, which are unordered,
    but they are later used to set the priority for the Smart channels, so
    unexpected results could occur. Change the sets to lists and use the same
    code as in create_configs() to add items to the list, rather than the set
    operators.
    
    [YOCTO #9717]
    
    (From OE-Core rev: ce4137f4bb955207fede0c4ef338835d9a461f59)
    
    Signed-off-by: Bill Randle <william c randle intel com>
    Signed-off-by: Ross Burton <ross burton intel com>
    Signed-off-by: Richard Purdie <richard purdie linuxfoundation org>

 meta/lib/oe/package_manager.py |   13 +++++++------
 1 files changed, 7 insertions(+), 6 deletions(-)
---
diff --git a/meta/lib/oe/package_manager.py b/meta/lib/oe/package_manager.py
index 717246d..2004a42 100644
--- a/meta/lib/oe/package_manager.py
+++ b/meta/lib/oe/package_manager.py
@@ -700,18 +700,19 @@ class RpmPM(PackageManager):
             arch_list = self.feed_archs.split()
         else:
             # List must be prefered to least preferred order
-            default_platform_extra = set()
-            platform_extra = set()
+            default_platform_extra = list()
+            platform_extra = list()
             bbextendvariant = self.d.getVar('BBEXTENDVARIANT', True) or ""
             for mlib in self.ml_os_list:
                 for arch in self.ml_prefix_list[mlib]:
                     plt = arch.replace('-', '_') + '-.*-' + self.ml_os_list[mlib]
                     if mlib == bbextendvariant:
-                            default_platform_extra.add(plt)
+                        if plt not in default_platform_extra:
+                            default_platform_extra.append(plt)
                     else:
-                            platform_extra.add(plt)
-
-            platform_extra = platform_extra.union(default_platform_extra)
+                        if plt not in platform_extra:
+                            platform_extra.append(plt)
+            platform_extra = default_platform_extra + platform_extra
 
             for canonical_arch in platform_extra:
                 arch = canonical_arch.split('-')[0]


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]