| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 "content/browser/net/sqlite_persistent_cookie_store.h" | 5 #include "content/browser/net/sqlite_persistent_cookie_store.h" |
| 6 | 6 |
| 7 #include <list> | 7 #include <list> |
| 8 #include <map> | 8 #include <map> |
| 9 #include <set> | 9 #include <set> |
| 10 #include <utility> | 10 #include <utility> |
| (...skipping 414 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 425 "priority INTEGER NOT NULL DEFAULT %d," | 425 "priority INTEGER NOT NULL DEFAULT %d," |
| 426 "encrypted_value BLOB DEFAULT ''," | 426 "encrypted_value BLOB DEFAULT ''," |
| 427 "firstpartyonly INTEGER NOT NULL DEFAULT 0)", | 427 "firstpartyonly INTEGER NOT NULL DEFAULT 0)", |
| 428 CookiePriorityToDBCookiePriority(net::COOKIE_PRIORITY_DEFAULT))); | 428 CookiePriorityToDBCookiePriority(net::COOKIE_PRIORITY_DEFAULT))); |
| 429 if (!db->Execute(stmt.c_str())) | 429 if (!db->Execute(stmt.c_str())) |
| 430 return false; | 430 return false; |
| 431 | 431 |
| 432 if (!db->Execute("CREATE INDEX domain ON cookies(host_key)")) | 432 if (!db->Execute("CREATE INDEX domain ON cookies(host_key)")) |
| 433 return false; | 433 return false; |
| 434 | 434 |
| 435 #if defined(OS_IOS) |
| 436 // iOS 8.1 and older doesn't support partial indices. iOS 8.2 supports |
| 437 // partial indices. |
| 438 if (!db->Execute("CREATE INDEX is_transient ON cookies(persistent)")) { |
| 439 #else |
| 435 if (!db->Execute( | 440 if (!db->Execute( |
| 436 "CREATE INDEX is_transient ON cookies(persistent) " | 441 "CREATE INDEX is_transient ON cookies(persistent) " |
| 437 "where persistent != 1")) { | 442 "where persistent != 1")) { |
| 443 #endif |
| 438 return false; | 444 return false; |
| 439 } | 445 } |
| 440 | 446 |
| 441 return true; | 447 return true; |
| 442 } | 448 } |
| 443 | 449 |
| 444 } // namespace | 450 } // namespace |
| 445 | 451 |
| 446 void SQLitePersistentCookieStore::Backend::Load( | 452 void SQLitePersistentCookieStore::Backend::Load( |
| 447 const LoadedCallback& loaded_callback) { | 453 const LoadedCallback& loaded_callback) { |
| (...skipping 526 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 974 << "Unable to drop table cookie_times in update to version 9."; | 980 << "Unable to drop table cookie_times in update to version 9."; |
| 975 return false; | 981 return false; |
| 976 } | 982 } |
| 977 | 983 |
| 978 if (!db_->Execute( | 984 if (!db_->Execute( |
| 979 "CREATE INDEX IF NOT EXISTS domain ON cookies(host_key)")) { | 985 "CREATE INDEX IF NOT EXISTS domain ON cookies(host_key)")) { |
| 980 LOG(WARNING) << "Unable to create index domain in update to version 9."; | 986 LOG(WARNING) << "Unable to create index domain in update to version 9."; |
| 981 return false; | 987 return false; |
| 982 } | 988 } |
| 983 | 989 |
| 990 #if defined(OS_IOS) |
| 991 // iOS 8.1 and older doesn't support partial indices. iOS 8.2 supports |
| 992 // partial indices. |
| 984 if (!db_->Execute( | 993 if (!db_->Execute( |
| 985 "CREATE INDEX IF NOT EXISTS is_transient ON cookies(persistent) " | 994 "CREATE INDEX IF NOT EXISTS is_transient ON cookies(persistent)")) { |
| 986 "where persistent != 1")) { | 995 #else |
| 996 if (!db_->Execute( |
| 997 "CREATE INDEX IF NOT EXISTS is_transient ON cookies(persistent) " |
| 998 "where persistent != 1")) { |
| 999 #endif |
| 987 LOG(WARNING) | 1000 LOG(WARNING) |
| 988 << "Unable to create index is_transient in update to version 9."; | 1001 << "Unable to create index is_transient in update to version 9."; |
| 989 return false; | 1002 return false; |
| 990 } | 1003 } |
| 991 ++cur_version; | 1004 ++cur_version; |
| 992 meta_table_.SetVersionNumber(cur_version); | 1005 meta_table_.SetVersionNumber(cur_version); |
| 993 meta_table_.SetCompatibleVersionNumber( | 1006 meta_table_.SetCompatibleVersionNumber( |
| 994 std::min(cur_version, kCompatibleVersionNumber)); | 1007 std::min(cur_version, kCompatibleVersionNumber)); |
| 995 transaction.Commit(); | 1008 transaction.Commit(); |
| 996 UMA_HISTOGRAM_TIMES("Cookie.TimeDatabaseMigrationToV9", | 1009 UMA_HISTOGRAM_TIMES("Cookie.TimeDatabaseMigrationToV9", |
| (...skipping 442 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1439 (config.session_cookie_mode == | 1452 (config.session_cookie_mode == |
| 1440 CookieStoreConfig::RESTORED_SESSION_COOKIES)) { | 1453 CookieStoreConfig::RESTORED_SESSION_COOKIES)) { |
| 1441 cookie_monster->SetPersistSessionCookies(true); | 1454 cookie_monster->SetPersistSessionCookies(true); |
| 1442 } | 1455 } |
| 1443 } | 1456 } |
| 1444 | 1457 |
| 1445 return cookie_monster; | 1458 return cookie_monster; |
| 1446 } | 1459 } |
| 1447 | 1460 |
| 1448 } // namespace content | 1461 } // namespace content |
| OLD | NEW |