Changeset 126551 in webkit
- Timestamp:
- Aug 24, 2012 12:45:50 AM (12 years ago)
- Location:
- trunk/Source/WebCore
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r126548 r126551 1 2012-08-24 Sergio Villar Senin <svillar@igalia.com> 2 3 [GTK] Purge unused favicons from IconDatabase after 30 days 4 https://bugs.webkit.org/show_bug.cgi?id=82346 5 6 Reviewed by Gustavo Noronha Silva. 7 8 Favicons will be removed from the icon database after not being used 9 for more than 30 days. This will keep the database size under 10 control. 11 12 * loader/icon/IconDatabase.cpp: 13 (WebCore): 14 (WebCore::IconDatabase::performURLImport): filter icons older than 15 30 days. 16 1 17 2012-08-23 Sheriff Bot <webkit.review.bot@gmail.com> 2 18 -
trunk/Source/WebCore/loader/icon/IconDatabase.cpp
r120694 r126551 73 73 74 74 static bool checkIntegrityOnOpen = false; 75 76 #if PLATFORM(GTK) 77 // We are not interested in icons that have been unused for more than 78 // 30 days, delete them even if they have not been explicitly released. 79 static const int notUsedIconExpirationTime = 60*60*24*30; 80 #endif 75 81 76 82 #if !LOG_DISABLED || !ERROR_DISABLED … … 1258 1264 ASSERT_ICON_SYNC_THREAD(); 1259 1265 1260 SQLiteStatement query(m_syncDB, "SELECT PageURL.url, IconInfo.url, IconInfo.stamp FROM PageURL INNER JOIN IconInfo ON PageURL.iconID=IconInfo.iconID;"); 1266 # if PLATFORM(GTK) 1267 // Do not import icons not used in the last 30 days. They will be automatically pruned later if nobody retains them. 1268 // Note that IconInfo.stamp is only set when the icon data is retrieved from the server (and thus is not updated whether 1269 // we use it or not). This code works anyway because the IconDatabase downloads icons again if they are older than 4 days, 1270 // so if the timestamp goes back in time more than those 30 days we can be sure that the icon was not used at all. 1271 String importQuery = String::format("SELECT PageURL.url, IconInfo.url, IconInfo.stamp FROM PageURL INNER JOIN IconInfo ON PageURL.iconID=IconInfo.iconID WHERE IconInfo.stamp > %.0f;", floor(currentTime() - notUsedIconExpirationTime)); 1272 #else 1273 String importQuery("SELECT PageURL.url, IconInfo.url, IconInfo.stamp FROM PageURL INNER JOIN IconInfo ON PageURL.iconID=IconInfo.iconID;"); 1274 #endif 1275 1276 SQLiteStatement query(m_syncDB, importQuery); 1261 1277 1262 1278 if (query.prepare() != SQLResultOk) {
Note: See TracChangeset
for help on using the changeset viewer.