From bed29d94d90663ab161e5832677dae9dd4d4be13 Mon Sep 17 00:00:00 2001 From: "gbillock@chromium.org" Date: Thu, 22 Dec 2011 19:25:51 +0000 Subject: Update webdata files to take advantage of DLOG(FATAL) in sql/Statement and Connection. R=shess@chromium.org BUG= TEST=webdata/*Test*.* Review URL: http://codereview.chromium.org/8966003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@115574 0039d316-1c4b-4281-b951-d872f2087c98 --- chrome/browser/webdata/autofill_table.cc | 424 +++++---------------- chrome/browser/webdata/autofill_table.h | 5 +- chrome/browser/webdata/autofill_table_unittest.cc | 46 +-- chrome/browser/webdata/keyword_table.cc | 24 +- chrome/browser/webdata/logins_table.cc | 48 +-- chrome/browser/webdata/logins_table_win.cc | 28 +- chrome/browser/webdata/token_service_table.cc | 27 +- chrome/browser/webdata/web_apps_table.cc | 33 +- chrome/browser/webdata/web_apps_table.h | 4 + .../webdata/web_database_migration_unittest.cc | 5 +- chrome/browser/webdata/web_intents_table.cc | 9 +- 11 files changed, 163 insertions(+), 490 deletions(-) (limited to 'chrome/browser/webdata') diff --git a/chrome/browser/webdata/autofill_table.cc b/chrome/browser/webdata/autofill_table.cc index 4e9ea0b..60f3431 100644 --- a/chrome/browser/webdata/autofill_table.cc +++ b/chrome/browser/webdata/autofill_table.cc @@ -139,12 +139,11 @@ bool AddAutofillProfileNamesToProfile(sql::Connection* db, "SELECT guid, first_name, middle_name, last_name " "FROM autofill_profile_names " "WHERE guid=?")); - if (!s) { - NOTREACHED() << "Statement prepare failed"; - return false; - } s.BindString(0, profile->guid()); + if (!s.is_valid()) + return false; + std::vector first_names; std::vector middle_names; std::vector last_names; @@ -154,6 +153,9 @@ bool AddAutofillProfileNamesToProfile(sql::Connection* db, middle_names.push_back(s.ColumnString16(2)); last_names.push_back(s.ColumnString16(3)); } + if (!s.Succeeded()) + return false; + profile->SetMultiInfo(NAME_FIRST, first_names); profile->SetMultiInfo(NAME_MIDDLE, middle_names); profile->SetMultiInfo(NAME_LAST, last_names); @@ -166,17 +168,19 @@ bool AddAutofillProfileEmailsToProfile(sql::Connection* db, "SELECT guid, email " "FROM autofill_profile_emails " "WHERE guid=?")); - if (!s) { - NOTREACHED() << "Statement prepare failed"; - return false; - } s.BindString(0, profile->guid()); + if (!s.is_valid()) + return false; + std::vector emails; while (s.Step()) { DCHECK_EQ(profile->guid(), s.ColumnString(0)); emails.push_back(s.ColumnString16(1)); } + if (!s.Succeeded()) + return false; + profile->SetMultiInfo(EMAIL_ADDRESS, emails); return true; } @@ -187,19 +191,22 @@ bool AddAutofillProfilePhonesToProfile(sql::Connection* db, "SELECT guid, type, number " "FROM autofill_profile_phones " "WHERE guid=? AND type=?")); - if (!s) { - NOTREACHED() << "Statement prepare failed"; - return false; - } - s.BindString(0, profile->guid()); + // Value used to be either [(0, phone), (1, fax)] but fax has been removed. + s.BindString(0, profile->guid()); s.BindInt(1, 0); + if (!s.is_valid()) + return false; + std::vector numbers; while (s.Step()) { DCHECK_EQ(profile->guid(), s.ColumnString(0)); numbers.push_back(s.ColumnString16(2)); } + if (!s.Succeeded()) + return false; + profile->SetMultiInfo(PHONE_HOME_WHOLE_NUMBER, numbers); return true; } @@ -221,19 +228,13 @@ bool AddAutofillProfileNames(const AutofillProfile& profile, "INSERT INTO autofill_profile_names" " (guid, first_name, middle_name, last_name) " "VALUES (?,?,?,?)")); - if (!s) { - NOTREACHED(); - return false; - } s.BindString(0, profile.guid()); s.BindString16(1, first_names[i]); s.BindString16(2, middle_names[i]); s.BindString16(3, last_names[i]); - if (!s.Run()) { - NOTREACHED(); + if (!s.Run()) return false; - } } return true; } @@ -249,18 +250,13 @@ bool AddAutofillProfileEmails(const AutofillProfile& profile, "INSERT INTO autofill_profile_emails" " (guid, email) " "VALUES (?,?)")); - if (!s) { - NOTREACHED(); - return false; - } s.BindString(0, profile.guid()); s.BindString16(1, emails[i]); - if (!s.Run()) { - NOTREACHED(); + if (!s.Run()) return false; - } } + return true; } @@ -275,19 +271,13 @@ bool AddAutofillProfilePhones(const AutofillProfile& profile, "INSERT INTO autofill_profile_phones" " (guid, type, number) " "VALUES (?,?,?)")); - if (!s) { - NOTREACHED(); - return false; - } s.BindString(0, profile.guid()); // Value used to be either [(0, phone), (1, fax)] but fax has been removed. s.BindInt(1, 0); s.BindString16(2, numbers[i]); - if (!s.Run()) { - NOTREACHED(); + if (!s.Run()) return false; - } } return true; @@ -310,34 +300,22 @@ bool AddAutofillProfilePieces(const AutofillProfile& profile, bool RemoveAutofillProfilePieces(const std::string& guid, sql::Connection* db) { sql::Statement s1(db->GetUniqueStatement( "DELETE FROM autofill_profile_names WHERE guid = ?")); - if (!s1) { - NOTREACHED() << "Statement prepare failed"; - return false; - } - s1.BindString(0, guid); + if (!s1.Run()) return false; sql::Statement s2(db->GetUniqueStatement( "DELETE FROM autofill_profile_emails WHERE guid = ?")); - if (!s2) { - NOTREACHED() << "Statement prepare failed"; - return false; - } - s2.BindString(0, guid); + if (!s2.Run()) return false; sql::Statement s3(db->GetUniqueStatement( "DELETE FROM autofill_profile_phones WHERE guid = ?")); - if (!s3) { - NOTREACHED() << "Statement prepare failed"; - return false; - } - s3.BindString(0, guid); + return s3.Run(); } @@ -387,11 +365,6 @@ bool AutofillTable::GetFormValuesForElementName(const string16& name, "WHERE name = ? " "ORDER BY count DESC " "LIMIT ?")); - if (!s) { - NOTREACHED() << "Statement prepare failed"; - return false; - } - s.BindString16(0, name); s.BindInt(1, limit); } else { @@ -406,11 +379,6 @@ bool AutofillTable::GetFormValuesForElementName(const string16& name, "value_lower < ? " "ORDER BY count DESC " "LIMIT ?")); - if (!s) { - NOTREACHED() << "Statement prepare failed"; - return false; - } - s.BindString16(0, name); s.BindString16(1, prefix_lower); s.BindString16(2, next_prefix); @@ -434,10 +402,6 @@ bool AutofillTable::RemoveFormElementsAddedBetween( "SELECT DISTINCT a.pair_id, a.name, a.value " "FROM autofill_dates ad JOIN autofill a ON ad.pair_id = a.pair_id " "WHERE ad.date_created >= ? AND ad.date_created < ?")); - if (!s) { - NOTREACHED() << "Statement 1 prepare failed"; - return false; - } s.BindInt64(0, delete_begin.ToTimeT()); s.BindInt64(1, delete_end.is_null() ? @@ -450,11 +414,8 @@ bool AutofillTable::RemoveFormElementsAddedBetween( s.ColumnString16(1), s.ColumnString16(2))); } - - if (!s.Succeeded()) { - NOTREACHED(); + if (!s.Succeeded()) return false; - } for (AutofillElementList::iterator itr = elements.begin(); itr != elements.end(); itr++) { @@ -482,10 +443,6 @@ bool AutofillTable::RemoveFormElementForTimeRange(int64 pair_id, sql::Statement s(db_->GetUniqueStatement( "DELETE FROM autofill_dates WHERE pair_id = ? AND " "date_created >= ? AND date_created < ?")); - if (!s) { - NOTREACHED() << "Statement 1 prepare failed"; - return false; - } s.BindInt64(0, pair_id); s.BindInt64(1, delete_begin.is_null() ? 0 : delete_begin.ToTimeT()); s.BindInt64(2, delete_end.is_null() ? std::numeric_limits::max() : @@ -523,17 +480,18 @@ bool AutofillTable::GetIDAndCountOfFormElement( const FormField& element, int64* pair_id, int* count) { + DCHECK(pair_id); + DCHECK(count); + sql::Statement s(db_->GetUniqueStatement( "SELECT pair_id, count FROM autofill " "WHERE name = ? AND value = ?")); - if (!s) { - NOTREACHED() << "Statement prepare failed"; - return false; - } - s.BindString16(0, element.name); s.BindString16(1, element.value); + if (!s.is_valid()) + return false; + *pair_id = 0; *count = 0; @@ -546,13 +504,9 @@ bool AutofillTable::GetIDAndCountOfFormElement( } bool AutofillTable::GetCountOfFormElement(int64 pair_id, int* count) { + DCHECK(count); sql::Statement s(db_->GetUniqueStatement( "SELECT count FROM autofill WHERE pair_id = ?")); - if (!s) { - NOTREACHED() << "Statement prepare failed"; - return false; - } - s.BindInt64(0, pair_id); if (s.Step()) { @@ -565,38 +519,23 @@ bool AutofillTable::GetCountOfFormElement(int64 pair_id, int* count) { bool AutofillTable::SetCountOfFormElement(int64 pair_id, int count) { sql::Statement s(db_->GetUniqueStatement( "UPDATE autofill SET count = ? WHERE pair_id = ?")); - if (!s) { - NOTREACHED() << "Statement prepare failed"; - return false; - } - s.BindInt(0, count); s.BindInt64(1, pair_id); - if (!s.Run()) { - NOTREACHED(); - return false; - } - return true; + return s.Run(); } bool AutofillTable::InsertFormElement(const FormField& element, int64* pair_id) { + DCHECK(pair_id); sql::Statement s(db_->GetUniqueStatement( "INSERT INTO autofill (name, value, value_lower) VALUES (?,?,?)")); - if (!s) { - NOTREACHED() << "Statement prepare failed"; - return false; - } - s.BindString16(0, element.name); s.BindString16(1, element.value); s.BindString16(2, base::i18n::ToLower(element.value)); - if (!s.Run()) { - NOTREACHED(); + if (!s.Run()) return false; - } *pair_id = db_->GetLastInsertRowId(); return true; @@ -607,20 +546,10 @@ bool AutofillTable::InsertPairIDAndDate(int64 pair_id, sql::Statement s(db_->GetUniqueStatement( "INSERT INTO autofill_dates " "(pair_id, date_created) VALUES (?, ?)")); - if (!s) { - NOTREACHED() << "Statement prepare failed"; - return false; - } - s.BindInt64(0, pair_id); s.BindInt64(1, date_created.ToTimeT()); - if (!s.Run()) { - NOTREACHED(); - return false; - } - - return true; + return s.Run(); } bool AutofillTable::AddFormFieldValuesTime( @@ -649,14 +578,14 @@ bool AutofillTable::AddFormFieldValuesTime( bool AutofillTable::ClearAutofillEmptyValueElements() { sql::Statement s(db_->GetUniqueStatement( "SELECT pair_id FROM autofill WHERE TRIM(value)= \"\"")); - if (!s) { - NOTREACHED() << "Statement prepare failed"; + if (!s.is_valid()) return false; - } std::set ids; while (s.Step()) ids.insert(s.ColumnInt64(0)); + if (!s.Succeeded()) + return false; bool success = true; for (std::set::const_iterator iter = ids.begin(); iter != ids.end(); @@ -674,11 +603,6 @@ bool AutofillTable::GetAllAutofillEntries(std::vector* entries) { "SELECT name, value, date_created FROM autofill a JOIN " "autofill_dates ad ON a.pair_id=ad.pair_id")); - if (!s) { - NOTREACHED() << "Statement prepare failed"; - return false; - } - bool first_entry = true; AutofillKey* current_key_ptr = NULL; std::vector