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

Side by Side Diff: webkit/forms/password_form_dom_manager.cc

Issue 10907021: Fix a memory leak in PasswordGenerationManager. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 3 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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 #include "webkit/forms/password_form_dom_manager.h" 5 #include "webkit/forms/password_form_dom_manager.h"
6 6
7 #include "base/logging.h" 7 #include "base/logging.h"
8 #include "third_party/WebKit/Source/WebKit/chromium/public/WebInputElement.h" 8 #include "third_party/WebKit/Source/WebKit/chromium/public/WebInputElement.h"
9 #include "third_party/WebKit/Source/WebKit/chromium/public/WebPasswordFormData.h " 9 #include "third_party/WebKit/Source/WebKit/chromium/public/WebPasswordFormData.h "
10 #include "webkit/forms/form_field.h" 10 #include "webkit/forms/form_field.h"
11 11
12 using WebKit::WebFormElement; 12 using WebKit::WebFormElement;
13 using WebKit::WebInputElement; 13 using WebKit::WebInputElement;
14 using WebKit::WebPasswordFormData; 14 using WebKit::WebPasswordFormData;
15 15
16 namespace webkit { 16 namespace webkit {
17 namespace forms { 17 namespace forms {
18 18
19 PasswordFormFillData::PasswordFormFillData() : wait_for_username(false) { 19 PasswordFormFillData::PasswordFormFillData() : wait_for_username(false) {
20 } 20 }
21 21
22 PasswordFormFillData::~PasswordFormFillData() { 22 PasswordFormFillData::~PasswordFormFillData() {
23 } 23 }
24 24
25 PasswordForm* PasswordFormDomManager::CreatePasswordForm( 25 scoped_ptr<PasswordForm> PasswordFormDomManager::CreatePasswordForm(
26 const WebFormElement& webform) { 26 const WebFormElement& webform) {
27 WebPasswordFormData web_password_form(webform); 27 WebPasswordFormData web_password_form(webform);
28 if (web_password_form.isValid()) 28 if (web_password_form.isValid())
29 return new PasswordForm(web_password_form); 29 return scoped_ptr<PasswordForm>(new PasswordForm(web_password_form));
30 return NULL; 30 return scoped_ptr<PasswordForm>();
31 } 31 }
32 32
33 // static 33 // static
34 void PasswordFormDomManager::InitFillData( 34 void PasswordFormDomManager::InitFillData(
35 const PasswordForm& form_on_page, 35 const PasswordForm& form_on_page,
36 const PasswordFormMap& matches, 36 const PasswordFormMap& matches,
37 const PasswordForm* const preferred_match, 37 const PasswordForm* const preferred_match,
38 bool wait_for_username_before_autofill, 38 bool wait_for_username_before_autofill,
39 PasswordFormFillData* result) { 39 PasswordFormFillData* result) {
40 // Note that many of the |FormField| members are not initialized for 40 // Note that many of the |FormField| members are not initialized for
(...skipping 16 matching lines...) Expand all
57 // Copy additional username/value pairs. 57 // Copy additional username/value pairs.
58 PasswordFormMap::const_iterator iter; 58 PasswordFormMap::const_iterator iter;
59 for (iter = matches.begin(); iter != matches.end(); iter++) { 59 for (iter = matches.begin(); iter != matches.end(); iter++) {
60 if (iter->second != preferred_match) 60 if (iter->second != preferred_match)
61 result->additional_logins[iter->first] = iter->second->password_value; 61 result->additional_logins[iter->first] = iter->second->password_value;
62 } 62 }
63 } 63 }
64 64
65 } // namespace forms 65 } // namespace forms
66 } // namespace webkit 66 } // namespace webkit
OLDNEW
« tools/valgrind/memcheck/suppressions.txt ('K') | « webkit/forms/password_form_dom_manager.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698