diff options
author | Fan, ZhijuX <zhijux.fan@intel.com> | 2019-03-29 13:53:40 +0800 |
---|---|---|
committer | Feng, Bob C <bob.c.feng@intel.com> | 2019-04-01 13:37:19 +0800 |
commit | 1c27ec42363515bda97468dccf57a01c6e66d01e (patch) | |
tree | 3694f14b657c8bc02b750eacf6ac2b5fa4ba6731 /BaseTools/Source/Python/Capsule | |
parent | 58742d79457e71fba75d72e79050ba43915e3ed6 (diff) | |
download | edk2-1c27ec42363515bda97468dccf57a01c6e66d01e.tar.gz edk2-1c27ec42363515bda97468dccf57a01c6e66d01e.tar.bz2 edk2-1c27ec42363515bda97468dccf57a01c6e66d01e.zip |
BaseTools:Coding problems caused by special characters
BZ:https://bugzilla.tianocore.org/show_bug.cgi?id=1670
During BaseTools compiling under Chinese or Japanese
language Windows, python exception occurring.
UnicodeDecodeError: 'ascii' codec can't decode byte 0xbd
in position 3528: ordinal not in range(128)
Cc: Bob Feng <bob.c.feng@intel.com>
Cc: Liming Gao <liming.gao@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Zhiju.Fan <zhijux.fan@intel.com>
Reviewed-by: Bob Feng <bob.c.feng@intel.com>
Diffstat (limited to 'BaseTools/Source/Python/Capsule')
-rw-r--r-- | BaseTools/Source/Python/Capsule/GenerateCapsule.py | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/BaseTools/Source/Python/Capsule/GenerateCapsule.py b/BaseTools/Source/Python/Capsule/GenerateCapsule.py index 7b08918857..5ce5daef68 100644 --- a/BaseTools/Source/Python/Capsule/GenerateCapsule.py +++ b/BaseTools/Source/Python/Capsule/GenerateCapsule.py @@ -94,7 +94,7 @@ def SignPayloadSignTool (Payload, ToolPath, PfxFile): if Process.returncode != 0:
shutil.rmtree (TempDirectoryName)
- print (Result[1].decode())
+ print (Result[1].decode(encoding='utf-8', errors='ignore'))
raise ValueError ('GenerateCapsule: error: signtool failed.')
#
@@ -132,12 +132,12 @@ def SignPayloadOpenSsl (Payload, ToolPath, SignerPrivateCertFile, OtherPublicCer try:
Process = subprocess.Popen (Command, stdin = subprocess.PIPE, stdout = subprocess.PIPE, stderr = subprocess.PIPE, shell = True)
Result = Process.communicate(input = Payload)
- Signature = Result[0]
+ Signature = Result[0].decode(encoding='utf-8', errors='ignore')
except:
raise ValueError ('GenerateCapsule: error: can not run openssl.')
if Process.returncode != 0:
- print (Result[1].decode())
+ print (Result[1].decode(encoding='utf-8', errors='ignore'))
raise ValueError ('GenerateCapsule: error: openssl failed.')
return Signature
@@ -186,7 +186,7 @@ def VerifyPayloadOpenSsl (Payload, CertData, ToolPath, SignerPrivateCertFile, Ot if Process.returncode != 0:
shutil.rmtree (TempDirectoryName)
- print (Result[1].decode())
+ print (Result[1].decode(encoding='utf-8', errors='ignore'))
raise ValueError ('GenerateCapsule: error: openssl failed.')
shutil.rmtree (TempDirectoryName)
|