diff --git a/direct/src/showutil/pefile.py b/direct/src/showutil/pefile.py index 8e2b5723d1..548c09e1b7 100755 --- a/direct/src/showutil/pefile.py +++ b/direct/src/showutil/pefile.py @@ -112,11 +112,18 @@ class DataResource(object): self.data = None self.code_page = 0 - def get_data(self): - if self.code_page: - return self.data.encode('cp%d' % self.code_page) + @property + def encoding(self): + if self.code_page == 0: + return 'ascii' else: - return self.data + return 'cp%d' % (self.code_page) + + def get_data(self): + return self.data + + def get_text(self, errors='strict'): + return self.data.decode(self.encoding, errors) class IconGroupResource(object): @@ -479,10 +486,6 @@ class ResourceTable(object): entry = IconGroupResource() entry.unpack_from(data) else: - if code_page != 0: - # Decode the data using the provided code page. - data = data.decode("cp%d" % code_page) - entry = DataResource() entry.data = data entry.code_page = code_page