path: root/meta/classes/buildhistory.bbclass
diff options
authorPaul Eggleton <paul.eggleton@linux.intel.com>2018-07-11 15:09:48 +0200
committerPaul Eggleton <paul.eggleton@linux.intel.com>2018-07-11 16:54:17 +0200
commit69f22f2384c53f5cef4cafb5b66f8d25c42247e9 (patch)
tree488f286933add35f4f541bd9fdafa3bc1ecd33ad /meta/classes/buildhistory.bbclass
parent0adb9dd9b48caf4816ce570f521ba40dad8083a9 (diff)
classes/buildhistory: handle packaged files with names containing spaces
The FILELIST field of the package info file in the buildhistory repository is a space-separated list of all of the files in the package. If a name of a file packaged by a recipe contains a space character then of course the result was that we didn't handle its name properly. To fix that, use quotes around any filename containing spaces and at the other end use these quotes to extract the proper entries. Fixes [YOCTO #12742]. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Diffstat (limited to 'meta/classes/buildhistory.bbclass')
1 files changed, 2 insertions, 1 deletions
diff --git a/meta/classes/buildhistory.bbclass b/meta/classes/buildhistory.bbclass
index 63980f72a5..2e5213e66e 100644
--- a/meta/classes/buildhistory.bbclass
+++ b/meta/classes/buildhistory.bbclass
@@ -77,6 +77,7 @@ python buildhistory_emit_pkghistory() {
import re
import json
+ import shlex
import errno
pkghistdir = d.getVar('BUILDHISTORY_DIR_PACKAGE')
@@ -287,7 +288,7 @@ python buildhistory_emit_pkghistory() {
dictval = json.loads(val)
filelist = list(dictval.keys())
- pkginfo.filelist = " ".join(filelist)
+ pkginfo.filelist = " ".join([shlex.quote(x) for x in filelist])
pkginfo.size = int(pkgdata['PKGSIZE'])