Merge from Chromium at DEPS revision r190564
This commit was generated by merge_to_master.py.
Change-Id: Icadecbce29854b8fa25fd335b2c1949b5ca5d170
diff --git a/cc/PRESUBMIT.py b/cc/PRESUBMIT.py
index c876419..319d3b5 100644
--- a/cc/PRESUBMIT.py
+++ b/cc/PRESUBMIT.py
@@ -11,6 +11,7 @@
import re
CC_SOURCE_FILES=(r'^cc/.*\.(cc|h)$',)
+CC_PERF_TEST =(r'^.*_perftest.*\.(cc|h)$',)
def CheckAsserts(input_api, output_api, white_list=CC_SOURCE_FILES, black_list=None):
black_list = tuple(black_list or input_api.DEFAULT_BLACK_LIST)
@@ -38,9 +39,35 @@
items=notreached_files)]
return []
+def CheckSpamLogging(input_api, output_api, white_list=CC_SOURCE_FILES, black_list=None):
+ black_list = tuple(black_list or input_api.DEFAULT_BLACK_LIST)
+ source_file_filter = lambda x: input_api.FilterSourceFile(x, white_list, black_list)
+
+ log_info = []
+ printf = []
+
+ for f in input_api.AffectedSourceFiles(source_file_filter):
+ contents = input_api.ReadFile(f, 'rb')
+ if re.search(r"\bD?LOG\s*\(\s*INFO\s*\)", contents):
+ log_info.append(f.LocalPath())
+ if re.search(r"\bf?printf\(", contents):
+ printf.append(f.LocalPath())
+
+ if log_info:
+ return [output_api.PresubmitError(
+ 'These files spam the console log with LOG(INFO):',
+ items=log_info)]
+ if printf:
+ return [output_api.PresubmitError(
+ 'These files spam the console log with printf/fprintf:',
+ items=printf)]
+ return []
+
+
def CheckChangeOnUpload(input_api, output_api):
results = []
results += CheckAsserts(input_api, output_api)
+ results += CheckSpamLogging(input_api, output_api, black_list=CC_PERF_TEST)
return results
def GetPreferredTrySlaves(project, change):