Chromium Code Reviews| Index: components/history/core/browser/typed_url_sync_metadata_database.cc |
| diff --git a/components/history/core/browser/typed_url_sync_metadata_database.cc b/components/history/core/browser/typed_url_sync_metadata_database.cc |
| index f0b2ce6ddf35795ceef3f0449fdbe316c368f44b..2b7ab9bb7b750be362333c765ed17c473b0c89da 100644 |
| --- a/components/history/core/browser/typed_url_sync_metadata_database.cc |
| +++ b/components/history/core/browser/typed_url_sync_metadata_database.cc |
| @@ -4,8 +4,8 @@ |
| #include "components/history/core/browser/typed_url_sync_metadata_database.h" |
| +#include "base/big_endian.h" |
| #include "base/logging.h" |
| -#include "base/strings/string_number_conversions.h" |
| #include "sql/statement.h" |
| namespace history { |
| @@ -55,9 +55,8 @@ bool TypedURLSyncMetadataDatabase::UpdateSyncMetadata( |
| << "Only the TYPED_URLS model type is supported"; |
| int64_t storage_key_int = 0; |
| - if (!base::StringToInt64(storage_key, &storage_key_int)) { |
| - return false; |
| - } |
| + base::ReadBigEndian(storage_key.data(), &storage_key_int); |
|
pavely
2017/06/01 20:49:18
When deserializing could you DCHECK that size of s
Gang Wu
2017/06/02 00:00:24
Done.
|
| + |
| sql::Statement s(GetDB().GetUniqueStatement( |
| "INSERT OR REPLACE INTO typed_url_sync_metadata " |
| "(storage_key, value) VALUES(?, ?)")); |
| @@ -74,9 +73,8 @@ bool TypedURLSyncMetadataDatabase::ClearSyncMetadata( |
| << "Only the TYPED_URLS model type is supported"; |
| int64_t storage_key_int = 0; |
| - if (!base::StringToInt64(storage_key, &storage_key_int)) { |
| - return false; |
| - } |
| + base::ReadBigEndian(storage_key.data(), &storage_key_int); |
| + |
| sql::Statement s(GetDB().GetUniqueStatement( |
| "DELETE FROM typed_url_sync_metadata WHERE storage_key=?")); |
| s.BindInt64(0, storage_key_int); |
| @@ -122,7 +120,8 @@ bool TypedURLSyncMetadataDatabase::GetAllSyncEntityMetadata( |
| "SELECT storage_key, value FROM typed_url_sync_metadata")); |
| while (s.Step()) { |
| - std::string storage_key = base::Int64ToString(s.ColumnInt64(0)); |
| + std::string storage_key(8, 0); |
|
pavely
2017/06/01 20:49:18
Same comment as in typed_url_sync_bridge.cc
Gang Wu
2017/06/02 00:00:24
Done.
|
| + base::WriteBigEndian(&storage_key[0], s.ColumnInt64(0)); |
| std::string serialized_metadata = s.ColumnString(1); |
| sync_pb::EntityMetadata entity_metadata; |
| if (entity_metadata.ParseFromString(serialized_metadata)) { |