소스 검색

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 년 전
부모
커밋
2fe732ce96
1개의 변경된 파일2개의 추가작업 그리고 2개의 파일을 삭제
  1. 2 2
      classes/swupdate.bbclass

+ 2 - 2
classes/swupdate.bbclass

@@ -136,9 +136,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 ]