[OE-core] [PATCH] report-error: Catch un-readable log data

Michael Wood michael.g.wood at intel.com
Fri Jan 30 11:57:45 UTC 2015


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 read process.

Signed-off-by: Michael Wood <michael.g.wood at intel.com>
---
 meta/classes/report-error.bbclass | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/meta/classes/report-error.bbclass b/meta/classes/report-error.bbclass
index 8b30422..750042b 100644
--- a/meta/classes/report-error.bbclass
+++ b/meta/classes/report-error.bbclass
@@ -48,7 +48,11 @@ python errorreport_handler () {
             taskdata['task'] = task
             if log:
                 logFile = open(log, 'r')
-                taskdata['log'] = logFile.read()
+                try:
+                    taskdata['log'] = logFile.read().decode('utf-8')
+                except:
+                    taskdata['log'] = "Unable to read log file"
+
                 logFile.close()
             else:
                 taskdata['log'] = "No Log"
-- 
2.1.0




More information about the Openembedded-core mailing list