Revision: 27802
http://sourceforge.net/p/bibdesk/svn/27802
Author: hofman
Date: 2022-08-14 17:42:02 +0000 (Sun, 14 Aug 2022)
Log Message:
-----------
remove all icons that don't have a poge linked to it after removing old pages
Modified Paths:
--------------
trunk/bibdesk/BDSKWebIconDatabase.m
Modified: trunk/bibdesk/BDSKWebIconDatabase.m
===================================================================
--- trunk/bibdesk/BDSKWebIconDatabase.m 2022-08-14 09:35:23 UTC (rev 27801)
+++ trunk/bibdesk/BDSKWebIconDatabase.m 2022-08-14 17:42:02 UTC (rev 27802)
@@ -159,27 +159,24 @@
NSMutableSet *bookmarkURLs = [NSMutableSet set];
addAllURLStrings(bookmarkURLs, [[BDSKBookmarkController
sharedBookmarkController] bookmarkRoot]);
NSMutableArray *pagesToRemove = [NSMutableArray array];
- NSMutableSet *iconsToRemove = [NSMutableSet set];
NSMutableSet *iconsToKeep = [NSMutableSet set];
- NSSet *iconURLStrings = [NSSet setWithArray:[icons allKeys]];
+ NSMutableSet *iconURLStrings = [NSMutableSet setWithArray:[icons allKeys]];
[pages enumerateKeysAndObjectsUsingBlock:^(NSString *key, id obj, BOOL
*stop){
- NSString *iconURLString = [obj objectForKey:ICONURL_KEY];
- if ([bookmarkURLs containsObject:key] == NO && -[[obj
objectForKey:LASTVISITED_KEY] timeIntervalSinceNow] > limit) {
- [pagesToRemove addObject:key];
- [iconsToRemove addObject:iconURLString];
- } else if ((iconURLString = [iconURLStrings member:iconURLString])) {
+ NSString *iconURLString;
+ if (([bookmarkURLs containsObject:key] || -[[obj
objectForKey:LASTVISITED_KEY] timeIntervalSinceNow] <= limit) &&
+ (iconURLString = [iconURLStrings member:[obj
objectForKey:ICONURL_KEY]])) {
[iconsToKeep addObject:iconURLString];
- [pages setObject:iconURLString forKey:ICONURL_KEY];
+ [obj setObject:iconURLString forKey:ICONURL_KEY];
NSDate *date = [obj objectForKey:LASTVISITED_KEY];
if (date)
- [pages setObject:date forKey:LASTVISITED_KEY];
+ [obj setObject:date forKey:LASTVISITED_KEY];
} else {
[pagesToRemove addObject:key];
}
}];
- [iconsToRemove minusSet:iconsToKeep];
+ [iconURLStrings minusSet:iconsToKeep];
[pages removeObjectsForKeys:pagesToRemove];
- [icons removeObjectsForKeys:[iconsToRemove allObjects]];
+ [icons removeObjectsForKeys:[iconURLStrings allObjects]];
}
- (void)handleApplicationWillTerminate:(NSNotification *)notification {
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
_______________________________________________
Bibdesk-commit mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bibdesk-commit