From 12eb5b496bc311ebfd1e68921ec7429e709daaca Mon Sep 17 00:00:00 2001 From: Mathieu Bridon Date: Sun, 17 Jun 2018 14:44:46 +0200 Subject: [PATCH] python: Better get character ordinals In Python 2, iterating over a byte-string yields single-byte strings, and we can pass them to ord() to get the corresponding integer. In Python 3, iterating over a byte-string directly yields those integers. Transforming the byte string into a bytearray gives us a list of the integers corresponding to each byte in the string, removing the need to call ord(). This makes the script compatible with both Python 2 and 3. Signed-off-by: Mathieu Bridon Reviewed-by: Eric Engestrom --- src/intel/genxml/gen_zipped_file.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/intel/genxml/gen_zipped_file.py b/src/intel/genxml/gen_zipped_file.py index af2008bea03..1d6bd568246 100644 --- a/src/intel/genxml/gen_zipped_file.py +++ b/src/intel/genxml/gen_zipped_file.py @@ -62,8 +62,8 @@ def main(): print("") print("static const uint8_t compress_genxmls[] = {") print(" ", end='') - for i, c in enumerate(compressed_data, start=1): - print("0x%.2x, " % ord(c), end='\n ' if not i % 12 else '') + for i, c in enumerate(bytearray(compressed_data), start=1): + print("0x%.2x, " % c, end='\n ' if not i % 12 else '') print('\n};') -- 2.30.2