Chromium Code Reviews| Index: content/browser/leveldb_wrapper_impl.cc |
| diff --git a/content/browser/leveldb_wrapper_impl.cc b/content/browser/leveldb_wrapper_impl.cc |
| index b7cb71358edf77fa4c743f6ba965c6d4369cc624..7a6c587bed454ef7416ad514c43f6a463ad8459f 100644 |
| --- a/content/browser/leveldb_wrapper_impl.cc |
| +++ b/content/browser/leveldb_wrapper_impl.cc |
| @@ -216,12 +216,12 @@ void LevelDBWrapperImpl::Get(const std::vector<uint8_t>& key, |
| callback.Run(true, found->second); |
| } |
| -void LevelDBWrapperImpl::GetAll(const std::string& source, |
| - const GetAllCallback& callback) { |
| +void LevelDBWrapperImpl::GetAll( |
| + mojom::LevelDBWrapperGetAllCallbackAssociatedPtrInfo complete_callback, |
| + const GetAllCallback& callback) { |
| if (!map_) { |
| - LoadMap( |
| - base::Bind(&LevelDBWrapperImpl::GetAll, base::Unretained(this), |
| - source, callback)); |
| + LoadMap(base::Bind(&LevelDBWrapperImpl::GetAll, base::Unretained(this), |
| + base::Passed(std::move(complete_callback)), callback)); |
|
dcheng
2016/12/22 07:21:47
Nit: base::Passed(&complete_callback)
Marijn Kruisselbrink
2016/12/22 17:12:19
I find the std::move version of base::Passed more
|
| return; |
| } |
| @@ -233,10 +233,11 @@ void LevelDBWrapperImpl::GetAll(const std::string& source, |
| all.push_back(std::move(kv)); |
| } |
| callback.Run(leveldb::mojom::DatabaseError::OK, std::move(all)); |
| - observers_.ForAllPtrs( |
| - [source](mojom::LevelDBObserver* observer) { |
| - observer->GetAllComplete(source); |
| - }); |
| + if (complete_callback.is_valid()) { |
| + mojom::LevelDBWrapperGetAllCallbackAssociatedPtr complete_ptr; |
| + complete_ptr.Bind(std::move(complete_callback)); |
| + complete_ptr->Complete(true); |
| + } |
| } |
| void LevelDBWrapperImpl::OnConnectionError() { |