From 6b7f7980746f21f676b9dbdceda4048c9d022403 Mon Sep 17 00:00:00 2001 From: "levin@chromium.org" Date: Sat, 21 Jan 2012 03:32:29 +0000 Subject: [PATCH] The leaky DC check should use adoptPtr as a signal instead of OwnPtr to get less false positives. https://bugs.webkit.org/show_bug.cgi?id=76752 Reviewed by Eric Seidel. * Scripts/webkitpy/style/checkers/cpp.py: (check_for_leaky_patterns): * Scripts/webkitpy/style/checkers/cpp_unittest.py: (LeakyPatternTest.test_create_dc): (LeakyPatternTest.test_create_compatible_dc): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105567 268f45cc-cd09-0410-ab3c-d52691b4dbfc --- Tools/ChangeLog | 13 +++++++++++++ Tools/Scripts/webkitpy/style/checkers/cpp.py | 6 +++--- Tools/Scripts/webkitpy/style/checkers/cpp_unittest.py | 8 ++++---- 3 files changed, 20 insertions(+), 7 deletions(-) diff --git a/Tools/ChangeLog b/Tools/ChangeLog index 5405468..a7641ce 100644 --- a/Tools/ChangeLog +++ b/Tools/ChangeLog @@ -1,3 +1,16 @@ +2012-01-20 David Levin + + The leaky DC check should use adoptPtr as a signal instead of OwnPtr to get less false positives. + https://bugs.webkit.org/show_bug.cgi?id=76752 + + Reviewed by Eric Seidel. + + * Scripts/webkitpy/style/checkers/cpp.py: + (check_for_leaky_patterns): + * Scripts/webkitpy/style/checkers/cpp_unittest.py: + (LeakyPatternTest.test_create_dc): + (LeakyPatternTest.test_create_compatible_dc): + 2012-01-20 Shawn Singh Changed my status in commiters.py diff --git a/Tools/Scripts/webkitpy/style/checkers/cpp.py b/Tools/Scripts/webkitpy/style/checkers/cpp.py index 9fa9ff5..039fc76 100644 --- a/Tools/Scripts/webkitpy/style/checkers/cpp.py +++ b/Tools/Scripts/webkitpy/style/checkers/cpp.py @@ -1,7 +1,7 @@ #!/usr/bin/python # -*- coding: utf-8 -*- # -# Copyright (C) 2009, 2010 Google Inc. All rights reserved. +# Copyright (C) 2009, 2010, 2012 Google Inc. All rights reserved. # Copyright (C) 2009 Torch Mobile Inc. # Copyright (C) 2009 Apple Inc. All rights reserved. # Copyright (C) 2010 Chris Jerdonek (cjerdonek@webkit.org) @@ -1680,10 +1680,10 @@ def check_for_leaky_patterns(clean_lines, line_number, function_state, error): 'memory leaks.' % matched_get_dc.group('function_name')) matched_create_dc = search(r'\b(?PCreate(Compatible)?DC)\s*\(', line) - matched_own_dc = search(r'\bOwnPtr\\s+', line) + matched_own_dc = search(r'\badoptPtr\b', line) if matched_create_dc and not matched_own_dc: error(line_number, 'runtime/leaky_pattern', 5, - 'Use OwnPtr when calling %s to avoid potential ' + 'Use adoptPtr and OwnPtr when calling %s to avoid potential ' 'memory leaks.' % matched_create_dc.group('function_name')) diff --git a/Tools/Scripts/webkitpy/style/checkers/cpp_unittest.py b/Tools/Scripts/webkitpy/style/checkers/cpp_unittest.py index 0e02ffb..65ad1d6 100644 --- a/Tools/Scripts/webkitpy/style/checkers/cpp_unittest.py +++ b/Tools/Scripts/webkitpy/style/checkers/cpp_unittest.py @@ -3365,20 +3365,20 @@ class LeakyPatternTest(CppStyleTestBase): def test_create_dc(self): self.assert_leaky_pattern_check( 'HDC dc2 = ::CreateDC();', - 'Use OwnPtr when calling CreateDC to avoid potential ' + 'Use adoptPtr and OwnPtr when calling CreateDC to avoid potential ' 'memory leaks. [runtime/leaky_pattern] [5]') self.assert_leaky_pattern_check( - 'OwnPtr dc2 = adoptPtr(CreateDC());', + 'adoptPtr(CreateDC());', '') def test_create_compatible_dc(self): self.assert_leaky_pattern_check( 'HDC dc2 = CreateCompatibleDC(dc);', - 'Use OwnPtr when calling CreateCompatibleDC to avoid potential ' + 'Use adoptPtr and OwnPtr when calling CreateCompatibleDC to avoid potential ' 'memory leaks. [runtime/leaky_pattern] [5]') self.assert_leaky_pattern_check( - 'OwnPtr dc2 = adoptPtr(CreateCompatibleDC(dc));', + 'adoptPtr(CreateCompatibleDC(dc));', '') -- 2.7.4