OLD | NEW |
1 #!/usr/bin/env python | 1 #!/usr/bin/env python |
2 # Copyright (c) 2012 The Chromium Authors. All rights reserved. | 2 # Copyright (c) 2012 The Chromium Authors. All rights reserved. |
3 # Use of this source code is governed by a BSD-style license that can be | 3 # Use of this source code is governed by a BSD-style license that can be |
4 # found in the LICENSE file. | 4 # found in the LICENSE file. |
5 | 5 |
6 import argparse | 6 import argparse |
7 from collections import defaultdict | 7 from collections import defaultdict |
8 import os | 8 import os |
9 import re | 9 import re |
10 import subprocess | 10 import subprocess |
(...skipping 110 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
121 cur_supp = supp['common_suppressions'] | 121 cur_supp = supp['common_suppressions'] |
122 if all([re.search("%20Mac%20|mac_valgrind", url) | 122 if all([re.search("%20Mac%20|mac_valgrind", url) |
123 for url in all_reports[r]]): | 123 for url in all_reports[r]]): |
124 # Include mac suppressions if the report is only present on Mac | 124 # Include mac suppressions if the report is only present on Mac |
125 cur_supp += supp['mac_suppressions'] | 125 cur_supp += supp['mac_suppressions'] |
126 elif all([re.search("Windows%20", url) for url in all_reports[r]]): | 126 elif all([re.search("Windows%20", url) for url in all_reports[r]]): |
127 # Include win32 suppressions if the report is only present on Windows | 127 # Include win32 suppressions if the report is only present on Windows |
128 cur_supp += supp['win_suppressions'] | 128 cur_supp += supp['win_suppressions'] |
129 elif all([re.search("Linux%20", url) for url in all_reports[r]]): | 129 elif all([re.search("Linux%20", url) for url in all_reports[r]]): |
130 cur_supp += supp['linux_suppressions'] | 130 cur_supp += supp['linux_suppressions'] |
131 # Separate from OS matches as we want to match "Linux%20Heapcheck" twice: | |
132 if all([re.search("%20Heapcheck", url) | |
133 for url in all_reports[r]]): | |
134 cur_supp += supp['heapcheck_suppressions'] | |
135 if all(["DrMemory" in url for url in all_reports[r]]): | 131 if all(["DrMemory" in url for url in all_reports[r]]): |
136 cur_supp += supp['drmem_suppressions'] | 132 cur_supp += supp['drmem_suppressions'] |
137 if all(["DrMemory%20full" in url for url in all_reports[r]]): | 133 if all(["DrMemory%20full" in url for url in all_reports[r]]): |
138 cur_supp += supp['drmem_full_suppressions'] | 134 cur_supp += supp['drmem_full_suppressions'] |
139 | 135 |
140 # Test if this report is already suppressed | 136 # Test if this report is already suppressed |
141 skip = False | 137 skip = False |
142 for s in cur_supp: | 138 for s in cur_supp: |
143 if s.Match(r.split("\n")): | 139 if s.Match(r.split("\n")): |
144 skip = True | 140 skip = True |
(...skipping 28 matching lines...) Expand all Loading... |
173 PrintTopSymbols(symbol_reports, args.top_symbols) | 169 PrintTopSymbols(symbol_reports, args.top_symbols) |
174 | 170 |
175 else: | 171 else: |
176 print "Congratulations! All reports are suppressed!" | 172 print "Congratulations! All reports are suppressed!" |
177 # TODO(timurrrr): also make sure none of the old suppressions | 173 # TODO(timurrrr): also make sure none of the old suppressions |
178 # were narrowed too much. | 174 # were narrowed too much. |
179 | 175 |
180 | 176 |
181 if __name__ == "__main__": | 177 if __name__ == "__main__": |
182 main(sys.argv[1:]) | 178 main(sys.argv[1:]) |
OLD | NEW |