mirror of
https://github.com/u-boot/u-boot.git
synced 2025-05-09 03:21:51 +00:00
binman: Handle repeated bytes for Python 3
The method of multiplying a character by a number works well for creating a repeated string in Python 2. But in Python 3 we need to use bytes() instead, to avoid unicode problems, since 'bytes' is no-longer just an alias of 'str'. Create a function to handle this detail and call it from the relevant places in binman. Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
parent
6d1d641864
commit
e6d85ff9f2
6 changed files with 50 additions and 25 deletions
|
@ -7,6 +7,7 @@ import command
|
|||
import glob
|
||||
import os
|
||||
import shutil
|
||||
import sys
|
||||
import tempfile
|
||||
|
||||
import tout
|
||||
|
@ -239,3 +240,21 @@ def WriteFile(fname, data):
|
|||
#(fname, len(data), len(data)))
|
||||
with open(Filename(fname), 'wb') as fd:
|
||||
fd.write(data)
|
||||
|
||||
def GetBytes(byte, size):
|
||||
"""Get a string of bytes of a given size
|
||||
|
||||
This handles the unfortunate different between Python 2 and Python 2.
|
||||
|
||||
Args:
|
||||
byte: Numeric byte value to use
|
||||
size: Size of bytes/string to return
|
||||
|
||||
Returns:
|
||||
A bytes type with 'byte' repeated 'size' times
|
||||
"""
|
||||
if sys.version_info[0] >= 3:
|
||||
data = bytes([byte]) * size
|
||||
else:
|
||||
data = chr(byte) * size
|
||||
return data
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue