Index: chrome/browser/favicon/favicon_service.h |
diff --git a/chrome/browser/favicon/favicon_service.h b/chrome/browser/favicon/favicon_service.h |
index 12ad68834af2e8c2b0c41d159564fd19ade4bf12..bbebdf16ee78cf57b1de8f985f753f9638bc5c32 100644 |
--- a/chrome/browser/favicon/favicon_service.h |
+++ b/chrome/browser/favicon/favicon_service.h |
@@ -8,6 +8,7 @@ |
#include <vector> |
#include "base/callback.h" |
+#include "base/hash_tables.h" |
#include "base/memory/ref_counted.h" |
#include "chrome/browser/common/cancelable_request.h" |
#include "chrome/browser/history/history_types.h" |
@@ -223,7 +224,14 @@ class FaviconService : public CancelableRequestProvider, |
history::IconType icon_type, |
const gfx::Image& image); |
+ // Avoid repeated requests to download missing favicon. |
+ void UnableToDownloadFavicon(const GURL& icon_url); |
+ bool WasUnableToDownloadFavicon(const GURL& icon_url) const; |
+ void ClearUnableToDownloadFavicons(); |
+ |
private: |
+ typedef uint32 MissingFaviconURLHash; |
+ base::hash_set<MissingFaviconURLHash> missing_favicon_urls_; |
HistoryService* history_service_; |
// Helper function for GetFaviconImageForURL(), GetRawFaviconForURL() and |