aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorhjk <hjk@qt.io>2022-06-22 12:12:27 +0200
committerhjk <hjk@qt.io>2022-06-23 08:26:02 +0000
commit8bb22fa4f3864ce8b4ce00eddd3205ecd416695e (patch)
tree93f7beb3cdc5d4986d5088712ca87172d19bb78c
parentaaf2318a19799bbbc15f925022bddf57f4b1c28f (diff)
Debugger: Fail gracefully on systems without working base64 module
Change-Id: I341b0fdb1c9e32fda3ce80f3e7569cffbb0708d2 Reviewed-by: Rafael Roquetto <rafael.roquetto@qt.io>
-rw-r--r--share/qtcreator/debugger/dumper.py11
1 files changed, 9 insertions, 2 deletions
diff --git a/share/qtcreator/debugger/dumper.py b/share/qtcreator/debugger/dumper.py
index 7a54f7676f6..3f3acbe46da 100644
--- a/share/qtcreator/debugger/dumper.py
+++ b/share/qtcreator/debugger/dumper.py
@@ -29,7 +29,6 @@ import collections
import glob
import struct
import sys
-import base64
import re
import time
import inspect
@@ -45,6 +44,14 @@ except:
"Native combined debugging might not work.")
pass
+try:
+ # That fails on some QNX via Windows installations
+ import base64
+ def hexencode_(s):
+ return base64.b16encode(s).decode('utf8')
+except:
+ def hexencode_(s):
+ return ''.join(["%x" % c for c in s])
if sys.version_info[0] >= 3:
toInteger = int
@@ -550,7 +557,7 @@ class DumperBase():
return s.encode('hex')
if isinstance(s, str):
s = s.encode('utf8')
- return base64.b16encode(s).decode('utf8')
+ return hexencode_(s)
def isQt3Support(self):
# assume no Qt 3 support by default