From 2e8787593f92965544159bdaa3232d4f8b29004f Mon Sep 17 00:00:00 2001 From: Paul Eggleton Date: Wed, 11 Jul 2018 16:56:50 +0200 Subject: 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]. (From OE-Core rev: 801b705957dc683030d11393f43407d0b3506b6a) Signed-off-by: Paul Eggleton Signed-off-by: Ross Burton Signed-off-by: Richard Purdie --- meta/classes/buildhistory.bbclass | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'meta/classes/buildhistory.bbclass') 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()) filelist.sort() - pkginfo.filelist = " ".join(filelist) + pkginfo.filelist = " ".join([shlex.quote(x) for x in filelist]) pkginfo.size = int(pkgdata['PKGSIZE']) -- cgit v1.2.3-54-g00ecf