[oe-commits] [bitbake] 04/05: siggen: Fix check calculation problem with file_checksums

git at git.openembedded.org git at git.openembedded.org
Sat Apr 2 16:16:30 UTC 2016


rpurdie pushed a commit to branch master-next
in repository bitbake.

commit 046c1be7594fae2eec3d1f242ba3e9a85f1a1880
Author: Richard Purdie <richard.purdie at linuxfoundation.org>
AuthorDate: Sat Apr 2 17:10:48 2016 +0100

    siggen: Fix check calculation problem with file_checksums
    
    When I enabled debugging of the checksum code, I found the value calculated
    from siginfo/sigdata files for do_fetch tasks never matched. This was due
    to an error in the way the data was being stored for these, it wasn't ordered
    correctly. This patch fixes things so the checksums calculated from
    siginfo/sigdata files is correct when file checksums are present.
    
    Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
---
 lib/bb/siggen.py | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/lib/bb/siggen.py b/lib/bb/siggen.py
index 114851c..d8ba1d4 100644
--- a/lib/bb/siggen.py
+++ b/lib/bb/siggen.py
@@ -186,8 +186,9 @@ class SignatureGeneratorBasic(SignatureGenerator):
         k = fn + "." + task
         data = dataCache.basetaskhash[k]
         self.runtaskdeps[k] = []
-        self.file_checksum_values[k] = {}
+        self.file_checksum_values[k] = []
         recipename = dataCache.pkg_fn[fn]
+
         for dep in sorted(deps, key=clean_basepath):
             depname = dataCache.pkg_fn[self.pkgnameextract.search(dep).group('fn')]
             if not self.rundep_check(fn, recipename, task, dep, depname, dataCache):
@@ -203,7 +204,7 @@ class SignatureGeneratorBasic(SignatureGenerator):
             else:
                 checksums = bb.fetch2.get_file_checksums(dataCache.file_checksums[fn][task], recipename)
             for (f,cs) in checksums:
-                self.file_checksum_values[k][f] = cs
+                self.file_checksum_values[k].append((f,cs))
                 if cs:
                     data = data + cs
 
@@ -262,7 +263,7 @@ class SignatureGeneratorBasic(SignatureGenerator):
 
         if runtime and k in self.taskhash:
             data['runtaskdeps'] = self.runtaskdeps[k]
-            data['file_checksum_values'] = [(os.path.basename(f), cs) for f,cs in self.file_checksum_values[k].items()]
+            data['file_checksum_values'] = [(os.path.basename(f), cs) for f,cs in self.file_checksum_values[k]]
             data['runtaskhashes'] = {}
             for dep in data['runtaskdeps']:
                 data['runtaskhashes'][dep] = self.taskhash[dep]

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the Openembedded-commits mailing list