Kaynağa Gözat

swupdate.bbclass: fix SWUPDATE_IMAGES_NOAPPEND_MACHINE parsing

The SWUPDATE_IMAGES_NOAPPEND_MACHINE check is incorrect and always takes
the 'elif' branch. This is because the allowed values for
SWUPDATE_IMAGES_NOAPPEND_MACHINE are "0", "1" or unset. The first two
values are strings, and getVarFlag() returns them as strings, but the code
checks for boolean.

Keep the allowed values to "0", "1" or unset as per the documentation and
to keep backward compatibility, and fix by comparing with strings instead
of booleans.

Fixes: b6534bbc2781 ("swupdate: simplify find images added to swu")
Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
Acked-by: Stefano Babic <sbabic@denx.de>
Luca Ceresoli 4 yıl önce
ebeveyn
işleme
9ea2a7bd06
1 değiştirilmiş dosya ile 2 ekleme ve 2 silme
  1. 2 2
      classes/swupdate.bbclass

+ 2 - 2
classes/swupdate.bbclass

@@ -137,9 +137,9 @@ python do_swuimage () {
         encrypted = (d.getVarFlag("SWUPDATE_IMAGES_ENCRYPTED", image, True) or "")
         if fstypes:
             noappend_machine = d.getVarFlag("SWUPDATE_IMAGES_NOAPPEND_MACHINE", image, True)
-            if noappend_machine == False:  # Search for a file explicitely with MACHINE
+            if noappend_machine == "0":  # Search for a file explicitely with MACHINE
                 imagebases = [ image + '-' + d.getVar('MACHINE', True) ]
-            elif noappend_machine == True:  # Search for a file explicitely without MACHINE
+            elif noappend_machine == "1":  # Search for a file explicitely without MACHINE
                 imagebases = [ image ]
             else:  # None, means auto mode. Just try to find an image file with MACHINE or without MACHINE
                 imagebases = [ image + '-' + d.getVar('MACHINE', True), image ]