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

Unified Diff: components/password_manager/core/browser/statistics_table.cc

Issue 2552263002: Pass InteractionStats by value (Closed)
Patch Set: ={} Created 4 years 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: components/password_manager/core/browser/statistics_table.cc
diff --git a/components/password_manager/core/browser/statistics_table.cc b/components/password_manager/core/browser/statistics_table.cc
index 0b6cc2cc0c4b7a8fe1bf9c779d5e088414bebe7e..e03ba5bed9a2fef48ec54911f2951db68dac0243 100644
--- a/components/password_manager/core/browser/statistics_table.cc
+++ b/components/password_manager/core/browser/statistics_table.cc
@@ -37,13 +37,13 @@ bool operator==(const InteractionsStats& lhs, const InteractionsStats& rhs) {
}
const InteractionsStats* FindStatsByUsername(
- const std::vector<const InteractionsStats*>& stats,
+ const std::vector<InteractionsStats>& stats,
const base::string16& username) {
auto it = std::find_if(stats.begin(), stats.end(),
- [&username](const InteractionsStats* element) {
- return username == element->username_value;
+ [&username](const InteractionsStats& element) {
+ return username == element.username_value;
});
- return it == stats.end() ? nullptr : *it;
+ return it == stats.end() ? nullptr : &*it;
}
StatisticsTable::StatisticsTable() : db_(nullptr) {
@@ -106,22 +106,21 @@ bool StatisticsTable::RemoveRow(const GURL& domain) {
return s.Run();
}
-std::vector<std::unique_ptr<InteractionsStats>> StatisticsTable::GetRows(
- const GURL& domain) {
+std::vector<InteractionsStats> StatisticsTable::GetRows(const GURL& domain) {
if (!domain.is_valid())
- return std::vector<std::unique_ptr<InteractionsStats>>();
+ return std::vector<InteractionsStats>();
const char query[] =
"SELECT origin_domain, username_value, "
"dismissal_count, update_time FROM stats WHERE origin_domain == ?";
sql::Statement s(db_->GetCachedStatement(SQL_FROM_HERE, query));
s.BindString(0, domain.spec());
- std::vector<std::unique_ptr<InteractionsStats>> result;
+ std::vector<InteractionsStats> result;
while (s.Step()) {
- result.push_back(base::WrapUnique(new InteractionsStats));
- result.back()->origin_domain = GURL(s.ColumnString(COLUMN_ORIGIN_DOMAIN));
- result.back()->username_value = s.ColumnString16(COLUMN_USERNAME);
- result.back()->dismissal_count = s.ColumnInt(COLUMN_DISMISSALS);
- result.back()->update_time =
+ result.push_back(InteractionsStats());
+ result.back().origin_domain = GURL(s.ColumnString(COLUMN_ORIGIN_DOMAIN));
+ result.back().username_value = s.ColumnString16(COLUMN_USERNAME);
+ result.back().dismissal_count = s.ColumnInt(COLUMN_DISMISSALS);
+ result.back().update_time =
base::Time::FromInternalValue(s.ColumnInt64(COLUMN_DATE));
}
return result;

Powered by Google App Engine
This is Rietveld 408576698