Changeset 180947 in webkit


Ignore:
Timestamp:
Mar 3, 2015 12:10:07 PM (9 years ago)
Author:
Antti Koivisto
Message:

Cache shrink leaves behind empty partition directories
https://bugs.webkit.org/show_bug.cgi?id=142217

Reviewed by Andreas Kling.

  • NetworkProcess/cache/NetworkCacheFileSystemPosix.h:

(WebKit::traverseCacheFiles):

No need for std::function.

  • NetworkProcess/cache/NetworkCacheStorageCocoa.mm:

(WebKit::NetworkCacheStorage::shrinkIfNeeded):

After shrink traverse through the partition directories and try to delete them.
System knows if they are actually empty.

Location:
trunk/Source/WebKit2
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebKit2/ChangeLog

    r180946 r180947  
     12015-03-03  Antti Koivisto  <antti@apple.com>
     2
     3        Cache shrink leaves behind empty partition directories
     4        https://bugs.webkit.org/show_bug.cgi?id=142217
     5
     6        Reviewed by Andreas Kling.
     7
     8        * NetworkProcess/cache/NetworkCacheFileSystemPosix.h:
     9        (WebKit::traverseCacheFiles):
     10
     11            No need for std::function.
     12
     13        * NetworkProcess/cache/NetworkCacheStorageCocoa.mm:
     14        (WebKit::NetworkCacheStorage::shrinkIfNeeded):
     15
     16            After shrink traverse through the partition directories and try to delete them.
     17            System knows if they are actually empty.
     18
    1192015-03-03  Anders Carlsson  <andersca@apple.com>
    220
  • trunk/Source/WebKit2/NetworkProcess/cache/NetworkCacheFileSystemPosix.h

    r179804 r180947  
    5454}
    5555
    56 inline void traverseCacheFiles(const String& cachePath, std::function<void (const String& fileName, const String& partitionPath)> function)
     56template <typename Function>
     57inline void traverseCacheFiles(const String& cachePath, const Function& function)
    5758{
    5859    traverseDirectory(cachePath, DT_DIR, [&cachePath, &function](const String& subdirName) {
  • trunk/Source/WebKit2/NetworkProcess/cache/NetworkCacheStorageCocoa.mm

    r180894 r180947  
    696696            });
    697697        });
     698
     699        // Let system figure out if they are really empty.
     700        traverseDirectory(cachePath, DT_DIR, [&cachePath](const String& subdirName) {
     701            auto partitionPath = WebCore::pathByAppendingComponent(cachePath, subdirName);
     702            WebCore::deleteEmptyDirectory(partitionPath);
     703        });
     704
    698705        m_shrinkInProgress = false;
    699706
Note: See TracChangeset for help on using the changeset viewer.