diff options
| -rw-r--r-- | find-modules/sip_generator.py | 6 | 
1 files changed, 4 insertions, 2 deletions
| diff --git a/find-modules/sip_generator.py b/find-modules/sip_generator.py index 1ebaba61..8dcab566 100644 --- a/find-modules/sip_generator.py +++ b/find-modules/sip_generator.py @@ -129,7 +129,7 @@ class SipGenerator(object):          #          source = h_file          self.unpreprocessed_source = [] -        with open(source, "rU") as f: +        with open(source, "rb") as f:              for line in f:                  self.unpreprocessed_source.append(line) @@ -739,6 +739,7 @@ class SipGenerator(object):          :param extent:              The range of text required.          """ +        # Extent columns are specified in bytes          extract = self.unpreprocessed_source[extent.start.line - 1:extent.end.line]          if extent.start.line == extent.end.line:              extract[0] = extract[0][extent.start.column - 1:extent.end.column - 1] @@ -747,8 +748,9 @@ class SipGenerator(object):              extract[-1] = extract[-1][:extent.end.column - 1]          #          # Return a single line of text. +        # Replace all kinds of newline variants (DOS, UNIX, MAC style) by single spaces          # -        return "".join(extract).replace("\n", " ") +        return b''.join(extract).decode('utf-8').replace("\r\n", " ").replace("\n", " ").replace("\r", " ")      @staticmethod      def _report_ignoring(parent, child, text=None): | 
