| Index: chrome/browser/ui/app_list/search/webstore/webstore_provider.cc
|
| diff --git a/chrome/browser/ui/app_list/search/webstore/webstore_provider.cc b/chrome/browser/ui/app_list/search/webstore/webstore_provider.cc
|
| index 973fc2e9a2b5fbb1250203c45be7596e9a3bbf06..b22b397bc19f959794e1c065d559c0312879d735 100644
|
| --- a/chrome/browser/ui/app_list/search/webstore/webstore_provider.cc
|
| +++ b/chrome/browser/ui/app_list/search/webstore/webstore_provider.cc
|
| @@ -53,12 +53,13 @@ void WebstoreProvider::Start(const base::string16& query) {
|
| }
|
|
|
| query_ = UTF16ToUTF8(query);
|
| - const base::DictionaryValue* cached_result = cache_.Get(query_);
|
| - if (cached_result) {
|
| - ProcessWebstoreSearchResults(cached_result);
|
| + const CacheResult result = cache_->Get(WebserviceCache::WEBSTORE, query_);
|
| + if (result.second) {
|
| + ProcessWebstoreSearchResults(result.second);
|
| if (!webstore_search_fetched_callback_.is_null())
|
| webstore_search_fetched_callback_.Run();
|
| - return;
|
| + if (result.first == FRESH)
|
| + return;
|
| }
|
|
|
| if (UseWebstoreSearch()) {
|
| @@ -96,7 +97,7 @@ void WebstoreProvider::StartQuery() {
|
| void WebstoreProvider::OnWebstoreSearchFetched(
|
| scoped_ptr<base::DictionaryValue> json) {
|
| ProcessWebstoreSearchResults(json.get());
|
| - cache_.Put(query_, json.Pass());
|
| + cache_->Put(WebserviceCache::WEBSTORE, query_, json.Pass());
|
|
|
| if (!webstore_search_fetched_callback_.is_null())
|
| webstore_search_fetched_callback_.Run();
|
|
|