From a0a0d8c6e521866d1ada7c1774f74f09e8da70c3 Mon Sep 17 00:00:00 2001 From: William Deegan Date: Thu, 24 Aug 2017 15:19:14 -0700 Subject: PY2/3 get_contents() was returning empty string instead of empty bytes when file doesn't exist. get_text_contents() was then trying to call decode on a string object... Fixed. get_contents() now returns empty byte string --- src/engine/SCons/Node/__init__.py | 2 +- src/engine/SCons/Tool/qt.py | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/engine/SCons/Node/__init__.py b/src/engine/SCons/Node/__init__.py index 0409d3b2..e1867522 100644 --- a/src/engine/SCons/Node/__init__.py +++ b/src/engine/SCons/Node/__init__.py @@ -211,7 +211,7 @@ def get_contents_dir(node): def get_contents_file(node): if not node.rexists(): - return '' + return b'' fname = node.rfile().get_abspath() try: with open(fname, "rb") as fp: diff --git a/src/engine/SCons/Tool/qt.py b/src/engine/SCons/Tool/qt.py index 5f99054f..77269a83 100644 --- a/src/engine/SCons/Tool/qt.py +++ b/src/engine/SCons/Tool/qt.py @@ -144,6 +144,8 @@ class _Automoc(object): # c or fortran source continue #cpp_contents = comment.sub('', cpp.get_text_contents()) + if debug: + print("scons: qt: Getting contents of %s" % cpp) cpp_contents = cpp.get_text_contents() h=None for h_ext in header_extensions: -- cgit v1.2.1