diff options
author | William Deegan <bill@baddogconsulting.com> | 2017-08-23 22:21:14 (GMT) |
---|---|---|
committer | William Deegan <bill@baddogconsulting.com> | 2017-08-23 22:21:14 (GMT) |
commit | 38acad8afd2f64dd6e126e359f9d25be177aff2a (patch) | |
tree | 287025f92b7b2aa2cbf1efd0039e9d795c1b58d1 /src/engine | |
parent | 06509092b4874d87680fd714927c5a3061528e13 (diff) | |
download | SCons-38acad8afd2f64dd6e126e359f9d25be177aff2a.zip SCons-38acad8afd2f64dd6e126e359f9d25be177aff2a.tar.gz SCons-38acad8afd2f64dd6e126e359f9d25be177aff2a.tar.bz2 |
Handle decode errors by backslashing character. Should only throw exception if content is not a byte type now
Diffstat (limited to 'src/engine')
-rw-r--r-- | src/engine/SCons/Node/FS.py | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/engine/SCons/Node/FS.py b/src/engine/SCons/Node/FS.py index 638819a..606ecfd 100644 --- a/src/engine/SCons/Node/FS.py +++ b/src/engine/SCons/Node/FS.py @@ -2654,9 +2654,9 @@ class File(Base): if contents[:len(codecs.BOM_UTF16_BE)] == codecs.BOM_UTF16_BE: return contents[len(codecs.BOM_UTF16_BE):].decode('utf-16-be') try: - return contents.decode() + return contents.decode('utf-8',errors='backslashreplace') except (UnicodeDecodeError, AttributeError) as e: - return contents.decode('utf-8') + return contents def get_content_hash(self): |