| Index: webkit/browser/appcache/appcache_update_job.cc
|
| diff --git a/webkit/browser/appcache/appcache_update_job.cc b/webkit/browser/appcache/appcache_update_job.cc
|
| index 3d4a4b20f469c3e47dd8515f35fb80c49d3fda6a..e4796536511cf526d060b2f453e673bf70b4342c 100644
|
| --- a/webkit/browser/appcache/appcache_update_job.cc
|
| +++ b/webkit/browser/appcache/appcache_update_job.cc
|
| @@ -1235,10 +1235,12 @@ void AppCacheUpdateJob::OnResponseInfoLoaded(
|
| const std::string name = "vary";
|
| std::string value;
|
| void* iter = NULL;
|
| - if (!http_info->headers.get() ||
|
| - http_info->headers->RequiresValidation(http_info->request_time,
|
| - http_info->response_time,
|
| - base::Time::Now()) ||
|
| + base::Time freshness_expiry = base::Time();
|
| + if (http_info->headers) {
|
| + freshness_expiry = http_info->headers->GetFreshnessExpiry(
|
| + http_info->request_time, http_info->response_time);
|
| + }
|
| + if (freshness_expiry <= base::Time::Now() ||
|
| http_info->headers->EnumerateHeader(&iter, name, &value)) {
|
| LoadFromNewestCacheFailed(url, response_info);
|
| } else {
|
|
|