Index: components/history/core/browser/history_backend.h |
diff --git a/components/history/core/browser/history_backend.h b/components/history/core/browser/history_backend.h |
index 026d1f3e4175f67b19ec3515853487b7affdfa7b..4747695807f5dff18aeea5385056069059a143df 100644 |
--- a/components/history/core/browser/history_backend.h |
+++ b/components/history/core/browser/history_backend.h |
@@ -325,6 +325,11 @@ class HistoryBackend : public base::RefCountedThreadSafe<HistoryBackend>, |
const GURL& icon_url, |
const std::vector<SkBitmap>& bitmaps); |
+ bool SetLastResortFavicons(const GURL& page_url, |
+ favicon_base::IconType icon_type, |
+ const GURL& icon_url, |
+ const std::vector<SkBitmap>& bitmaps); |
+ |
void SetFaviconsOutOfDateForPage(const GURL& page_url); |
void SetImportedFavicons( |
@@ -514,6 +519,11 @@ class HistoryBackend : public base::RefCountedThreadSafe<HistoryBackend>, |
FRIEND_TEST_ALL_PREFIXES(HistoryBackendTest, SetFaviconsReplaceBitmapData); |
FRIEND_TEST_ALL_PREFIXES(HistoryBackendTest, |
SetFaviconsSameFaviconURLForTwoPages); |
+ FRIEND_TEST_ALL_PREFIXES(HistoryBackendTest, SetLastResortFaviconsForEmptyDB); |
+ FRIEND_TEST_ALL_PREFIXES(HistoryBackendTest, |
+ SetLastResortFaviconsForPageInDB); |
+ FRIEND_TEST_ALL_PREFIXES(HistoryBackendTest, |
+ SetLastResortFaviconsForIconInDB); |
FRIEND_TEST_ALL_PREFIXES(HistoryBackendTest, |
UpdateFaviconMappingsAndFetchNoChange); |
FRIEND_TEST_ALL_PREFIXES(HistoryBackendTest, MergeFaviconPageURLNotInDB); |
@@ -659,6 +669,16 @@ class HistoryBackend : public base::RefCountedThreadSafe<HistoryBackend>, |
// Favicons ------------------------------------------------------------------ |
+ // If |bitmaps_are_expired| is true, the icon for |icon_url| will be modified |
+ // only if it's not present in the database. In that case, it will be |
+ // initially set as expired. Returns whether the new bitmaps were actually |
+ // written. |
+ bool SetFaviconsImpl(const GURL& page_url, |
+ favicon_base::IconType icon_type, |
+ const GURL& icon_url, |
+ const std::vector<SkBitmap>& bitmaps, |
+ bool bitmaps_are_expired); |
+ |
// Used by both UpdateFaviconMappingsAndFetch and GetFavicons. |
// If |page_url| is non-null, the icon urls for |page_url| (and all |
// redirects) are set to the subset of |icon_urls| for which icons are |