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>
This commit is contained in:
parent
2199ff5ce6
commit
70cc20daef
|
@ -29,6 +29,7 @@
|
|||
from __future__ import print_function
|
||||
import os
|
||||
import sys, logging
|
||||
import codecs
|
||||
|
||||
# mangle syspath to allow easy import of modules
|
||||
sys.path.insert(0, os.path.join(os.path.dirname(os.path.dirname(os.path.abspath(__file__))),
|
||||
|
@ -117,7 +118,8 @@ class FileReadEventsServerConnection():
|
|||
try:
|
||||
event_data = json.loads(line.strip())
|
||||
event_class = _import_class(event_data['class'])
|
||||
event_object = pickle.loads(json.loads(event_data['vars']))
|
||||
event_str = event_data['vars'].encode('utf-8')
|
||||
event_object = pickle.loads(codecs.decode(event_str, 'base64'))
|
||||
except ValueError as e:
|
||||
print("Failed loading ", line)
|
||||
raise e
|
||||
|
|
Loading…
Reference in New Issue