Openembedded Core Discussions
 help / color / mirror / Atom feed
From: Richard Purdie <richard.purdie@linuxfoundation.org>
To: openembedded-core <openembedded-core@lists.openembedded.org>
Subject: [PATCH] image_types.bbclass: We need to preserve order in the types variable and avoid set()
Date: Fri, 02 Mar 2012 12:12:14 +0000	[thread overview]
Message-ID: <1330690334.15224.9.camel@ted> (raw)

If we don't do this, the order can be changed and the variable is
sensitive to the ordering.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
---
diff --git a/meta/classes/image_types.bbclass b/meta/classes/image_types.bbclass
index f756c39..5da2961 100644
--- a/meta/classes/image_types.bbclass
+++ b/meta/classes/image_types.bbclass
@@ -3,20 +3,24 @@ def get_imagecmds(d):
     old_overrides = d.getVar('OVERRIDES', 0)
 
     alltypes = d.getVar('IMAGE_FSTYPES', True).split()
-    types = d.getVar('IMAGE_FSTYPES', True).split()
+    types = []
     ctypes = d.getVar('COMPRESSIONTYPES', True).split()
     cimages = {}
 
     # Filter out all the compressed images from types
-    for type in types:
+    for type in alltypes:
+        basetype = None
         for ctype in ctypes:
             if type.endswith("." + ctype):
                 basetype = type[:-len("." + ctype)]
-                types[types.index(type)] = basetype
+                if basetype not in types:
+                    types.append(basetype)
                 if basetype not in cimages:
                     cimages[basetype] = []
                 cimages[basetype].append(ctype)
                 break
+        if not basetype and type not in types:
+            types.append(type)
 
     # Live and VMDK images will be processed via inheriting
     # bbclass and does not get processed here.
@@ -33,7 +37,7 @@ def get_imagecmds(d):
     if d.getVar('IMAGE_LINK_NAME', True):
         cmds += "	rm -f ${DEPLOY_DIR_IMAGE}/${IMAGE_LINK_NAME}.*"
 
-    for type in set(types):
+    for type in types:
         ccmd = []
         subimages = []
         localdata = bb.data.createCopy(d)





                 reply	other threads:[~2012-03-02 12:20 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1330690334.15224.9.camel@ted \
    --to=richard.purdie@linuxfoundation.org \
    --cc=openembedded-core@lists.openembedded.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox