From: Michael Wood Date: Tue, 3 Feb 2015 14:20:12 +0000 (+0000) Subject: report-error: Catch un-readable log data X-Git-Tag: 2015-4~583 X-Git-Url: https://code.ossystems.io/gitweb?a=commitdiff_plain;h=787ffc5e12f1639aa5e0917bb23deced53a0478e;p=openembedded-core.git report-error: Catch un-readable log data If a log data cannot be decoded to utf-8 or read then handle this gracefully. This can happen if a log file contains binary or something goes wrong with the file open process. Signed-off-by: Michael Wood Signed-off-by: Richard Purdie --- diff --git a/meta/classes/report-error.bbclass b/meta/classes/report-error.bbclass index 8b30422edf..5f155e332b 100644 --- a/meta/classes/report-error.bbclass +++ b/meta/classes/report-error.bbclass @@ -47,9 +47,13 @@ python errorreport_handler () { taskdata['package'] = e.data.expand("${PF}") taskdata['task'] = task if log: - logFile = open(log, 'r') - taskdata['log'] = logFile.read() - logFile.close() + try: + logFile = open(log, 'r') + taskdata['log'] = logFile.read().decode('utf-8') + logFile.close() + except: + taskdata['log'] = "Unable to read log file" + else: taskdata['log'] = "No Log" jsondata = json.loads(errorreport_getdata(e))