| OLD | NEW |
| 1 # Copyright 2013 The Chromium Authors. All rights reserved. | 1 # Copyright 2013 The Chromium Authors. All rights reserved. |
| 2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
| 3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
| 4 | 4 |
| 5 """Top-level presubmit script for Chromium media component. | 5 """Top-level presubmit script for Chromium media component. |
| 6 | 6 |
| 7 See http://dev.chromium.org/developers/how-tos/depottools/presubmit-scripts | 7 See http://dev.chromium.org/developers/how-tos/depottools/presubmit-scripts |
| 8 for more details about the presubmit API built into depot_tools. | 8 for more details about the presubmit API built into depot_tools. |
| 9 """ | 9 """ |
| 10 | 10 |
| (...skipping 149 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 160 if BASE_TIME_TYPES_RE.search(line): | 160 if BASE_TIME_TYPES_RE.search(line): |
| 161 problems.append('%s:%d' % (f, line_number)) | 161 problems.append('%s:%d' % (f, line_number)) |
| 162 | 162 |
| 163 if problems: | 163 if problems: |
| 164 return [output_api.PresubmitError( | 164 return [output_api.PresubmitError( |
| 165 'base::Time and derived classes should be passed by value and not by\n' | 165 'base::Time and derived classes should be passed by value and not by\n' |
| 166 'const ref, see base/time/time.h for more information.', problems)] | 166 'const ref, see base/time/time.h for more information.', problems)] |
| 167 return [] | 167 return [] |
| 168 | 168 |
| 169 | 169 |
| 170 def _CheckForUseOfLazyInstance(input_api, output_api): |
| 171 """Check that base::LazyInstance is not used.""" |
| 172 |
| 173 problems = [] |
| 174 |
| 175 lazy_instance_re = re.compile(r'(^|\W)base::LazyInstance<') |
| 176 |
| 177 for f in input_api.AffectedSourceFiles(_FilterFile): |
| 178 for line_number, line in f.ChangedContents(): |
| 179 if lazy_instance_re.search(line): |
| 180 problems.append('%s:%d' % (f, line_number)) |
| 181 |
| 182 if problems: |
| 183 return [output_api.PresubmitError( |
| 184 'base::LazyInstance is deprecated; use a thread safe static.', problems)] |
| 185 return [] |
| 186 |
| 187 |
| 170 def _CheckChange(input_api, output_api): | 188 def _CheckChange(input_api, output_api): |
| 171 results = [] | 189 results = [] |
| 172 results.extend(_CheckForUseOfWrongClock(input_api, output_api)) | 190 results.extend(_CheckForUseOfWrongClock(input_api, output_api)) |
| 173 results.extend(_CheckPassByValue(input_api, output_api)) | 191 results.extend(_CheckPassByValue(input_api, output_api)) |
| 174 results.extend(_CheckForHistogramOffByOne(input_api, output_api)) | 192 results.extend(_CheckForHistogramOffByOne(input_api, output_api)) |
| 193 results.extend(_CheckForUseOfLazyInstance(input_api, output_api)) |
| 175 return results | 194 return results |
| 176 | 195 |
| 177 | 196 |
| 178 def CheckChangeOnUpload(input_api, output_api): | 197 def CheckChangeOnUpload(input_api, output_api): |
| 179 return _CheckChange(input_api, output_api) | 198 return _CheckChange(input_api, output_api) |
| 180 | 199 |
| 181 | 200 |
| 182 def CheckChangeOnCommit(input_api, output_api): | 201 def CheckChangeOnCommit(input_api, output_api): |
| 183 return _CheckChange(input_api, output_api) | 202 return _CheckChange(input_api, output_api) |
| OLD | NEW |