From 57e2fc4d7f60afea4d4b2c84761324dd99e74a87 Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Sun, 6 Feb 2022 14:45:07 +0100 Subject: checksum: Allow spaces in URI filenames If there are spaces in the URI filenames it can break the code. We already solved this issue once somewhere else in the code so use the same regex trick here as well. We should ultimately refactor this code but at least fix the issue for now. Signed-off-by: Richard Purdie --- lib/bb/checksum.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/lib/bb/checksum.py b/lib/bb/checksum.py index fb8a77f6a..557793d36 100644 --- a/lib/bb/checksum.py +++ b/lib/bb/checksum.py @@ -11,10 +11,13 @@ import os import stat import bb.utils import logging +import re from bb.cache import MultiProcessCache logger = logging.getLogger("BitBake.Cache") +filelist_regex = re.compile(r'(?:(?<=:True)|(?<=:False))\s+') + # mtime cache (non-persistent) # based upon the assumption that files do not change during bitbake run class FileMtimeCache(object): @@ -109,7 +112,12 @@ class FileChecksumCache(MultiProcessCache): return dirchecksums checksums = [] - for pth in filelist.split(): + for pth in filelist_regex.split(filelist): + if not pth: + continue + pth = pth.strip() + if not pth: + continue exist = pth.split(":")[1] if exist == "False": continue -- cgit 1.2.3-korg