From 59215a0706517dc63811870d561e92d4c2fe4328 Mon Sep 17 00:00:00 2001 From: Sébastien Larinier Date: Fri, 22 Jul 2016 12:46:06 +0200 Subject: [PATCH] fixed olevba if vba_code is TEXT --- oletools/olevba.py | 6 +++++- oletools/thirdparty/olefile/olefile2.py | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/oletools/olevba.py b/oletools/olevba.py index b36d312..e3358db 100755 --- a/oletools/olevba.py +++ b/oletools/olevba.py @@ -2433,6 +2433,8 @@ class VBA_Parser(object): """ log.info('Opening text file %s' % self.filename) # directly store the source code: + if isinstance(data,bytes): + data=data.decode('utf8','replace') self.vba_code_all_modules = data self.contains_macros = True # set type only if parsing succeeds @@ -2943,7 +2945,9 @@ class VBA_Parser_CLI(VBA_Parser): for (subfilename, stream_path, vba_filename, vba_code) in self.extract_all_macros(): if hide_attributes: # hide attribute lines: - vba_code_filtered = filter_vba(vba_code.decode('utf-8','replace')) + if isinstance(vba_code,bytes): + vba_code =vba_code.decode('utf-8','replace') + vba_code_filtered = filter_vba(vba_code) else: vba_code_filtered = vba_code print('-' * 79) diff --git a/oletools/thirdparty/olefile/olefile2.py b/oletools/thirdparty/olefile/olefile2.py index 7f5ab0e..c57a82b 100644 --- a/oletools/thirdparty/olefile/olefile2.py +++ b/oletools/thirdparty/olefile/olefile2.py @@ -1004,7 +1004,7 @@ class OleFileIO: TIFF files). """ - def __init__(self, filename = None, raise_defects=DEFECT_FATAL): + def __init__(self, filename = None, raise_defects=DEFECT_FATAL): """ Constructor for OleFileIO class. -- libgit2 0.21.4