diff options
author | Ed Bartosh <ed.bartosh@linux.intel.com> | 2016-07-06 12:00:31 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2016-07-08 09:57:28 +0100 |
commit | 70cc20daef087b2dd1567168c9091be0476fefc8 (patch) | |
tree | 9d764f7db7e0c1fac4828909fd11d3210cb45d84 /bitbake/bin | |
parent | 2199ff5ce69d8b90dff8306ffe8f0f5693b39645 (diff) | |
download | poky-70cc20daef087b2dd1567168c9091be0476fefc8.tar.gz |
bitbake: eventreplay: fix event loading code
Event objects are represented by base64-encoded strings in
the event file and can't be loaded by existing eventreplay code.
Fixed the code of loading events from file by decoding base64 strings
into the binary form and loading them with pickle.load.
[YOCTO #9585]
(Bitbake rev: a55c280c167f84caed6518119246e5a55f56cfd4)
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Elliot Smith <elliot.smith@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/bin')
-rwxr-xr-x | bitbake/bin/toaster-eventreplay | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/bitbake/bin/toaster-eventreplay b/bitbake/bin/toaster-eventreplay index 03b5dde938..a1072988ac 100755 --- a/bitbake/bin/toaster-eventreplay +++ b/bitbake/bin/toaster-eventreplay | |||
@@ -29,6 +29,7 @@ | |||
29 | from __future__ import print_function | 29 | from __future__ import print_function |
30 | import os | 30 | import os |
31 | import sys, logging | 31 | import sys, logging |
32 | import codecs | ||
32 | 33 | ||
33 | # mangle syspath to allow easy import of modules | 34 | # mangle syspath to allow easy import of modules |
34 | sys.path.insert(0, os.path.join(os.path.dirname(os.path.dirname(os.path.abspath(__file__))), | 35 | sys.path.insert(0, os.path.join(os.path.dirname(os.path.dirname(os.path.abspath(__file__))), |
@@ -117,7 +118,8 @@ class FileReadEventsServerConnection(): | |||
117 | try: | 118 | try: |
118 | event_data = json.loads(line.strip()) | 119 | event_data = json.loads(line.strip()) |
119 | event_class = _import_class(event_data['class']) | 120 | event_class = _import_class(event_data['class']) |
120 | event_object = pickle.loads(json.loads(event_data['vars'])) | 121 | event_str = event_data['vars'].encode('utf-8') |
122 | event_object = pickle.loads(codecs.decode(event_str, 'base64')) | ||
121 | except ValueError as e: | 123 | except ValueError as e: |
122 | print("Failed loading ", line) | 124 | print("Failed loading ", line) |
123 | raise e | 125 | raise e |