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

Unified Diff: chrome/browser/password_manager/password_store_mac.cc

Issue 2318303002: Remove stl_util's STLDeleteContainerPairSecondPointers. (Closed)
Patch Set: fix Created 4 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/password_manager/password_store_mac.cc
diff --git a/chrome/browser/password_manager/password_store_mac.cc b/chrome/browser/password_manager/password_store_mac.cc
index d49db61b24448806b4aff038b6c0bedea6b8833b..64942b6523e7656945eb5690ba64f3b17f2cfac6 100644
--- a/chrome/browser/password_manager/password_store_mac.cc
+++ b/chrome/browser/password_manager/password_store_mac.cc
@@ -17,9 +17,9 @@
#include "base/mac/foundation_util.h"
#include "base/mac/mac_logging.h"
#include "base/macros.h"
+#include "base/memory/ptr_util.h"
#include "base/message_loop/message_loop.h"
#include "base/metrics/histogram_macros.h"
-#include "base/stl_util.h"
#include "base/strings/string_util.h"
#include "base/strings/utf_string_conversions.h"
#include "chrome/browser/mac/security_wrappers.h"
@@ -325,7 +325,7 @@ PasswordForm::Scheme SchemeForAuthType(SecAuthenticationType auth_type) {
}
bool FillPasswordFormFromKeychainItem(const AppleKeychain& keychain,
- const SecKeychainItemRef& keychain_item,
+ SecKeychainItemRef keychain_item,
PasswordForm* form,
bool extract_password_data) {
DCHECK(form);
@@ -457,7 +457,7 @@ bool FillPasswordFormFromKeychainItem(const AppleKeychain& keychain,
}
bool HasChromeCreatorCode(const AppleKeychain& keychain,
- const SecKeychainItemRef& keychain_item) {
+ SecKeychainItemRef keychain_item) {
SecKeychainAttributeInfo attr_info;
UInt32 tags[] = {kSecCreatorItemAttr};
attr_info.count = arraysize(tags);
@@ -576,15 +576,14 @@ std::vector<ItemFormPair> ExtractAllKeychainItemAttributesIntoPasswordForms(
MacKeychainPasswordFormAdapter keychain_adapter(&keychain);
*keychain_items = keychain_adapter.GetAllPasswordFormKeychainItems();
std::vector<ItemFormPair> item_form_pairs;
- for (std::vector<SecKeychainItemRef>::iterator i = keychain_items->begin();
- i != keychain_items->end(); ++i) {
- PasswordForm* form_without_password = new PasswordForm();
+ for (const auto& keychain_item : *keychain_items) {
+ std::unique_ptr<PasswordForm> form_without_password =
+ base::MakeUnique<PasswordForm>();
internal_keychain_helpers::FillPasswordFormFromKeychainItem(
- keychain,
- *i,
- form_without_password,
+ keychain, keychain_item, form_without_password.get(),
false); // Load password attributes, but not password data.
- item_form_pairs.push_back(std::make_pair(&(*i), form_without_password));
+ item_form_pairs.push_back(
+ std::make_pair(keychain_item, std::move(form_without_password)));
}
return item_form_pairs;
}
@@ -625,8 +624,6 @@ void GetPasswordsForForms(const AppleKeychain& keychain,
});
database_forms->swap(unused_db_forms);
- base::STLDeleteContainerPairSecondPointers(item_form_pairs.begin(),
- item_form_pairs.end());
for (SecKeychainItemRef item : keychain_items) {
keychain.Free(item);
}
@@ -699,7 +696,7 @@ ScopedVector<autofill::PasswordForm> ExtractPasswordsMergeableWithForm(
// returned forms.
std::unique_ptr<PasswordForm> form_with_password(new PasswordForm());
FillPasswordFormFromKeychainItem(
- keychain, *(i->first), form_with_password.get(),
+ keychain, i->first, form_with_password.get(),
true); // Load password attributes and data.
// Do not include blacklisted items found in the keychain.
if (!form_with_password->blacklisted_by_user)
@@ -745,8 +742,7 @@ bool MacKeychainPasswordFormAdapter::HasPasswordsMergeableWithForm(
std::vector<SecKeychainItemRef> matches =
MatchingKeychainItems(query_form.signon_realm, query_form.scheme,
NULL, username.c_str());
- for (std::vector<SecKeychainItemRef>::iterator i = matches.begin();
- i != matches.end(); ++i) {
+ for (auto i = matches.begin(); i != matches.end(); ++i) {
Nico 2016/09/22 15:56:11 for-each?
Avi (use Gerrit) 2016/09/22 19:17:17 Done.
keychain_->Free(*i);
}
@@ -881,8 +877,7 @@ SecKeychainItemRef MacKeychainPasswordFormAdapter::KeychainItemForForm(
return NULL;
}
// Free all items after the first, since we won't be returning them.
- for (std::vector<SecKeychainItemRef>::iterator i = matches.begin() + 1;
- i != matches.end(); ++i) {
+ for (auto i = matches.begin() + 1; i != matches.end(); ++i) {
Nico 2016/09/22 15:56:11 for-each?
Avi (use Gerrit) 2016/09/22 19:17:17 Done.
Avi (use Gerrit) 2016/09/23 14:53:26 Nope; this is from +1 to end.
keychain_->Free(*i);
}
return matches[0];
@@ -942,7 +937,8 @@ SecAuthenticationType MacKeychainPasswordFormAdapter::AuthTypeForScheme(
}
bool MacKeychainPasswordFormAdapter::SetKeychainItemPassword(
- const SecKeychainItemRef& keychain_item, const std::string& password) {
+ SecKeychainItemRef keychain_item,
+ const std::string& password) {
OSStatus result = keychain_->ItemModifyAttributesAndData(keychain_item, NULL,
password.size(),
password.c_str());
@@ -950,7 +946,8 @@ bool MacKeychainPasswordFormAdapter::SetKeychainItemPassword(
}
bool MacKeychainPasswordFormAdapter::SetKeychainItemCreatorCode(
- const SecKeychainItemRef& keychain_item, OSType creator_code) {
+ SecKeychainItemRef keychain_item,
+ OSType creator_code) {
SecKeychainAttribute attr = { kSecCreatorItemAttr, sizeof(creator_code),
&creator_code };
SecKeychainAttributeList attrList = { 1, &attr };
@@ -1040,8 +1037,6 @@ PasswordStoreMac::MigrationResult PasswordStoreMac::ImportFromKeychain(
DCHECK(removed);
}
}
- base::STLDeleteContainerPairSecondPointers(item_form_pairs.begin(),
- item_form_pairs.end());
for (SecKeychainItemRef item : keychain_items)
keychain->Free(item);

Powered by Google App Engine
This is Rietveld 408576698