Commit 59215a0706517dc63811870d561e92d4c2fe4328
1 parent
ae46dbd0
fixed olevba if vba_code is TEXT
Showing
2 changed files
with
6 additions
and
2 deletions
oletools/olevba.py
| ... | ... | @@ -2433,6 +2433,8 @@ class VBA_Parser(object): |
| 2433 | 2433 | """ |
| 2434 | 2434 | log.info('Opening text file %s' % self.filename) |
| 2435 | 2435 | # directly store the source code: |
| 2436 | + if isinstance(data,bytes): | |
| 2437 | + data=data.decode('utf8','replace') | |
| 2436 | 2438 | self.vba_code_all_modules = data |
| 2437 | 2439 | self.contains_macros = True |
| 2438 | 2440 | # set type only if parsing succeeds |
| ... | ... | @@ -2943,7 +2945,9 @@ class VBA_Parser_CLI(VBA_Parser): |
| 2943 | 2945 | for (subfilename, stream_path, vba_filename, vba_code) in self.extract_all_macros(): |
| 2944 | 2946 | if hide_attributes: |
| 2945 | 2947 | # hide attribute lines: |
| 2946 | - vba_code_filtered = filter_vba(vba_code.decode('utf-8','replace')) | |
| 2948 | + if isinstance(vba_code,bytes): | |
| 2949 | + vba_code =vba_code.decode('utf-8','replace') | |
| 2950 | + vba_code_filtered = filter_vba(vba_code) | |
| 2947 | 2951 | else: |
| 2948 | 2952 | vba_code_filtered = vba_code |
| 2949 | 2953 | print('-' * 79) | ... | ... |
oletools/thirdparty/olefile/olefile2.py
| ... | ... | @@ -1004,7 +1004,7 @@ class OleFileIO: |
| 1004 | 1004 | TIFF files). |
| 1005 | 1005 | """ |
| 1006 | 1006 | |
| 1007 | - def __init__(self, filename = None, raise_defects=DEFECT_FATAL): | |
| 1007 | + def __init__(self, filename = None, raise_defects=DEFECT_FATAL): | |
| 1008 | 1008 | """ |
| 1009 | 1009 | Constructor for OleFileIO class. |
| 1010 | 1010 | ... | ... |