r297266 - [scan-build-py] fix some line separator issues

Laszlo Nagy via cfe-commits cfe-commits at lists.llvm.org
Wed Mar 8 01:27:53 PST 2017


Author: rizsotto
Date: Wed Mar  8 03:27:53 2017
New Revision: 297266

URL: http://llvm.org/viewvc/llvm-project?rev=297266&view=rev
Log:
[scan-build-py] fix some line separator issues

Differential Revision: https://reviews.llvm.org/D30600

Modified:
    cfe/trunk/tools/scan-build-py/libear/__init__.py
    cfe/trunk/tools/scan-build-py/libscanbuild/report.py

Modified: cfe/trunk/tools/scan-build-py/libear/__init__.py
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/tools/scan-build-py/libear/__init__.py?rev=297266&r1=297265&r2=297266&view=diff
==============================================================================
--- cfe/trunk/tools/scan-build-py/libear/__init__.py (original)
+++ cfe/trunk/tools/scan-build-py/libear/__init__.py Wed Mar  8 03:27:53 2017
@@ -207,9 +207,9 @@ class Configure(object):
             if m:
                 key = m.group(1)
                 if key not in definitions or not definitions[key]:
-                    return '/* #undef {} */\n'.format(key)
+                    return '/* #undef {0} */{1}'.format(key, os.linesep)
                 else:
-                    return '#define {}\n'.format(key)
+                    return '#define {0}{1}'.format(key, os.linesep)
             return line
 
         with open(template, 'r') as src_handle:

Modified: cfe/trunk/tools/scan-build-py/libscanbuild/report.py
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/tools/scan-build-py/libscanbuild/report.py?rev=297266&r1=297265&r2=297266&view=diff
==============================================================================
--- cfe/trunk/tools/scan-build-py/libscanbuild/report.py (original)
+++ cfe/trunk/tools/scan-build-py/libscanbuild/report.py Wed Mar  8 03:27:53 2017
@@ -336,11 +336,12 @@ def parse_crash(filename):
 
     match = re.match(r'(.*)\.info\.txt', filename)
     name = match.group(1) if match else None
-    with open(filename) as handler:
-        lines = handler.readlines()
+    with open(filename, mode='rb') as handler:
+        # this is a workaround to fix windows read '\r\n' as new lines.
+        lines = [line.decode().rstrip() for line in handler.readlines()]
         return {
-            'source': lines[0].rstrip(),
-            'problem': lines[1].rstrip(),
+            'source': lines[0],
+            'problem': lines[1],
             'file': name,
             'info': name + '.info.txt',
             'stderr': name + '.stderr.txt'




More information about the cfe-commits mailing list