Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(18)

Side by Side Diff: ui/PRESUBMIT.py

Issue 948223002: Reland "ui: Add another presubmit check to catch two more scoped_ptr usages." (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: fix Created 5 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 # Copyright 2015 The Chromium Authors. All rights reserved. 1 # Copyright 2015 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 """Presubmit script for ui. 5 """Presubmit script for ui.
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
11 INCLUDE_CPP_FILES_ONLY = ( 11 INCLUDE_CPP_FILES_ONLY = (
12 r'.*\.(cc|h|mm)$', 12 r'.*\.(cc|h|mm)$',
13 ) 13 )
14 14
15 def CheckScopedPtr(input_api, output_api, 15 def CheckScopedPtr(input_api, output_api,
16 white_list=INCLUDE_CPP_FILES_ONLY, black_list=None): 16 white_list=INCLUDE_CPP_FILES_ONLY, black_list=None):
17 black_list = tuple(black_list or input_api.DEFAULT_BLACK_LIST) 17 black_list = tuple(black_list or input_api.DEFAULT_BLACK_LIST)
18 source_file_filter = lambda x: input_api.FilterSourceFile(x, 18 source_file_filter = lambda x: input_api.FilterSourceFile(x,
19 white_list, 19 white_list,
20 black_list) 20 black_list)
21 errors = [] 21 errors = []
22 for f in input_api.AffectedSourceFiles(source_file_filter): 22 for f in input_api.AffectedSourceFiles(source_file_filter):
23 for line_number, line in f.ChangedContents(): 23 for line_number, line in f.ChangedContents():
24 # Disallow: 24 # Disallow:
25 # return scoped_ptr<T>(foo);
26 # bar = scoped_ptr<T>(foo);
27 # But allow:
28 # return scoped_ptr<T[]>(foo);
29 # bar = scoped_ptr<T[]>(foo);
30 if input_api.re.search(
31 r'(=|\breturn)\s*scoped_ptr<[^\[\]>]+>\([^)]+\)', line):
32 errors.append(output_api.PresubmitError(
33 ('%s:%d uses explicit scoped_ptr constructor. ' +
34 'Use make_scoped_ptr() instead.') % (f.LocalPath(), line_number)))
35 # Disallow:
25 # scoped_ptr<T>() 36 # scoped_ptr<T>()
26 if input_api.re.search(r'\bscoped_ptr<.*?>\(\)', line): 37 if input_api.re.search(r'\bscoped_ptr<.*?>\(\)', line):
27 errors.append(output_api.PresubmitError( 38 errors.append(output_api.PresubmitError(
28 '%s:%d uses scoped_ptr<T>(). Use nullptr instead.' % 39 '%s:%d uses scoped_ptr<T>(). Use nullptr instead.' %
29 (f.LocalPath(), line_number))) 40 (f.LocalPath(), line_number)))
30 return errors 41 return errors
31 42
32 43
33 def CheckChange(input_api, output_api): 44 def CheckChange(input_api, output_api):
34 results = [] 45 results = []
35 results += CheckScopedPtr(input_api, output_api) 46 results += CheckScopedPtr(input_api, output_api)
36 return results 47 return results
37 48
38 49
39 def CheckChangeOnUpload(input_api, output_api): 50 def CheckChangeOnUpload(input_api, output_api):
40 return CheckChange(input_api, output_api) 51 return CheckChange(input_api, output_api)
41 52
42 53
43 def CheckChangeOnCommit(input_api, output_api): 54 def CheckChangeOnCommit(input_api, output_api):
44 return CheckChange(input_api, output_api) 55 return CheckChange(input_api, output_api)
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698