diff options
Diffstat (limited to 'Lib/modulefinder.py')
| -rw-r--r-- | Lib/modulefinder.py | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/Lib/modulefinder.py b/Lib/modulefinder.py index 1dbc5bbe12..cd9906c373 100644 --- a/Lib/modulefinder.py +++ b/Lib/modulefinder.py @@ -16,12 +16,13 @@ else: # remain compatible with Python < 2.3 READ_MODE = "r" -LOAD_CONST = chr(dis.opname.index('LOAD_CONST')) -IMPORT_NAME = chr(dis.opname.index('IMPORT_NAME')) -STORE_NAME = chr(dis.opname.index('STORE_NAME')) -STORE_GLOBAL = chr(dis.opname.index('STORE_GLOBAL')) +# XXX Clean up once str8's cstor matches bytes. +LOAD_CONST = str8(chr(dis.opname.index('LOAD_CONST'))) +IMPORT_NAME = str8(chr(dis.opname.index('IMPORT_NAME'))) +STORE_NAME = str8(chr(dis.opname.index('STORE_NAME'))) +STORE_GLOBAL = str8(chr(dis.opname.index('STORE_GLOBAL'))) STORE_OPS = [STORE_NAME, STORE_GLOBAL] -HAVE_ARGUMENT = chr(dis.HAVE_ARGUMENT) +HAVE_ARGUMENT = str8(chr(dis.HAVE_ARGUMENT)) # Modulefinder does a good job at simulating Python's, but it can not # handle __path__ modifications packages make at runtime. Therefore there @@ -367,7 +368,7 @@ class ModuleFinder: consts = co.co_consts LOAD_LOAD_AND_IMPORT = LOAD_CONST + LOAD_CONST + IMPORT_NAME while code: - c = chr(code[0]) + c = str8(chr(code[0])) if c in STORE_OPS: oparg, = unpack('<H', code[1:3]) yield "store", (names[oparg],) |
