Patchwork package_manager: Ensure we don't process directories twice

login
register
mail settings
Submitter Richard Purdie
Date March 26, 2014, 11:40 a.m.
Message ID <1395834012.24890.86.camel@ted>
Download mbox | patch
Permalink /patch/69257/
State Accepted
Commit da097095c6f1bd1785ed770b45be45e458b97d8e
Headers show

Comments

Richard Purdie - March 26, 2014, 11:40 a.m.
Processing directories twice is both pointless and introduces a race condition.
When building the list, ensure duplicates (like "all" and "noarch") are handled
correctly.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
---

Patch

diff --git a/meta/lib/oe/package_manager.py b/meta/lib/oe/package_manager.py
index 0cdf3b0..692528d 100644
--- a/meta/lib/oe/package_manager.py
+++ b/meta/lib/oe/package_manager.py
@@ -178,7 +178,9 @@  class DpkgIndexer(Indexer):
             arch_list = pkg_archs.split()
         sdk_pkg_archs = self.d.getVar('SDK_PACKAGE_ARCHS', True)
         if sdk_pkg_archs is not None:
-            arch_list += sdk_pkg_archs.split()
+            for a in sdk_pkg_archs.split():
+                if a not in pkg_archs:
+                    arch_list.append(a)
 
         apt_ftparchive = bb.utils.which(os.getenv('PATH'), "apt-ftparchive")
         gzip = bb.utils.which(os.getenv('PATH'), "gzip")