summaryrefslogtreecommitdiffstats
path: root/meta/classes/buildhistory.bbclass
diff options
context:
space:
mode:
authorPaul Eggleton <paul.eggleton@linux.intel.com>2018-07-11 16:56:51 +0200
committerRichard Purdie <richard.purdie@linuxfoundation.org>2018-07-18 10:18:41 +0100
commit8274ccae0d81d831d8b5d5a943519cbd1e4879dd (patch)
treeff38e0c6a98c9afaf6d765ea7d4271fc6e624272 /meta/classes/buildhistory.bbclass
parent2e8787593f92965544159bdaa3232d4f8b29004f (diff)
downloadpoky-8274ccae0d81d831d8b5d5a943519cbd1e4879dd.tar.gz
classes/buildhistory: properly process escaped chars from pkgdata
All values written out to pkgdata are escaped (see write_if_exists() in package.bbclass). In practice there tend not to be characters that need escaping except in the scriptlets (pkg_preinst, pkg_postinst, pkg_prerm and pkg_postrm) where currently we still see the escape codes in the corresponding files within buildhistory (e.g. \n and \t) and thus also in the output of buildhistory-diff, hindering proper diffing of changes. To fix this, when we read values from pkgdata and write them out to buildhistory, we need to interpret the escape codes by doing the exact reverse of what we do in package.bbclass. (From OE-Core rev: c258379181a438cb01728d223b3d05e0ab205941) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes/buildhistory.bbclass')
-rw-r--r--meta/classes/buildhistory.bbclass2
1 files changed, 1 insertions, 1 deletions
diff --git a/meta/classes/buildhistory.bbclass b/meta/classes/buildhistory.bbclass
index 2e5213e66e..40b292b139 100644
--- a/meta/classes/buildhistory.bbclass
+++ b/meta/classes/buildhistory.bbclass
@@ -245,7 +245,7 @@ python buildhistory_emit_pkghistory() {
245 key = item[0] 245 key = item[0]
246 if key.endswith('_' + pkg): 246 if key.endswith('_' + pkg):
247 key = key[:-len(pkg)-1] 247 key = key[:-len(pkg)-1]
248 pkgdata[key] = item[1] 248 pkgdata[key] = item[1].encode('latin-1').decode('unicode_escape')
249 249
250 pkge = pkgdata.get('PKGE', '0') 250 pkge = pkgdata.get('PKGE', '0')
251 pkgv = pkgdata['PKGV'] 251 pkgv = pkgdata['PKGV']