Index: components/offline_pages/background/request_picker.cc |
diff --git a/components/offline_pages/background/request_picker.cc b/components/offline_pages/background/request_picker.cc |
index 23fee192c99f27f8152c66bdb61bc5ae6dfc8664..c6ac59ebb38d5d2a8c1f4c029567cb260bd5aef3 100644 |
--- a/components/offline_pages/background/request_picker.cc |
+++ b/components/offline_pages/background/request_picker.cc |
@@ -114,6 +114,14 @@ bool RequestPicker::RequestConditionsSatisfied(const SavePageRequest& request) { |
if (request.attempt_count() >= policy_->GetMaxRetries()) |
return false; |
+ // If the request is expired, do not consider it. |
+ // TODO(petewil): We need to remove this from the queue. |
+ base::TimeDelta requestAge = base::Time::Now() - request.creation_time(); |
+ if (requestAge > |
+ base::TimeDelta::FromSeconds( |
+ policy_->GetRequestExpirationTimeInSeconds())) |
+ return false; |
+ |
// If this request is not active yet, return false. |
// TODO(petewil): If the only reason we return nothing to do is that we have |
// inactive requests, we still want to try again later after their activation |