Changeset 167143 in webkit


Ignore:
Timestamp:
Apr 11, 2014 1:33:26 PM (10 years ago)
Author:
psolanki@apple.com
Message:

[iOS WebKit2]: Share NSURLCache directory for webkit processes
https://bugs.webkit.org/show_bug.cgi?id=131513
<rdar://problem/16420859>

Reviewed by Alexey Proskuryakov.

Use iOS specific NSURLCache API to share the cache directory used by the networking process,
web process and Safari.

  • NetworkProcess/cocoa/NetworkProcessCocoa.mm:

(WebKit::NetworkProcess::platformInitializeNetworkProcessCocoa):

  • WebProcess/cocoa/WebProcessCocoa.mm:

(WebKit::WebProcess::platformInitializeWebProcess):

Location:
trunk/Source/WebKit2
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebKit2/ChangeLog

    r167141 r167143  
     12014-04-11  Pratik Solanki  <psolanki@apple.com>
     2
     3        [iOS WebKit2]: Share NSURLCache directory for webkit processes
     4        https://bugs.webkit.org/show_bug.cgi?id=131513
     5        <rdar://problem/16420859>
     6
     7        Reviewed by Alexey Proskuryakov.
     8
     9        Use iOS specific NSURLCache API to share the cache directory used by the networking process,
     10        web process and Safari.
     11
     12        * NetworkProcess/cocoa/NetworkProcessCocoa.mm:
     13        (WebKit::NetworkProcess::platformInitializeNetworkProcessCocoa):
     14        * WebProcess/cocoa/WebProcessCocoa.mm:
     15        (WebKit::WebProcess::platformInitializeWebProcess):
     16
    1172014-04-11  Alexey Proskuryakov  <ap@apple.com>
    218
  • trunk/Source/WebKit2/NetworkProcess/cocoa/NetworkProcessCocoa.mm

    r166597 r167143  
    4545#endif
    4646
     47#if PLATFORM(IOS)
     48@interface NSURLCache (WKDetails)
     49-(id)_initWithMemoryCapacity:(NSUInteger)memoryCapacity diskCapacity:(NSUInteger)diskCapacity relativePath:(NSString *)path;
     50@end
     51#endif
     52
    4753namespace WebKit {
    4854
     
    5561void NetworkProcess::platformInitializeNetworkProcessCocoa(const NetworkProcessCreationParameters& parameters)
    5662{
     63#if PLATFORM(IOS)
     64    if (!parameters.uiProcessBundleIdentifier.isNull()) {
     65        [NSURLCache setSharedURLCache:adoptNS([[NSURLCache alloc]
     66            _initWithMemoryCapacity:parameters.nsURLCacheMemoryCapacity
     67            diskCapacity:parameters.nsURLCacheDiskCapacity
     68            relativePath:parameters.uiProcessBundleIdentifier]).get()];
     69    }
     70#else
    5771    m_diskCacheDirectory = parameters.diskCacheDirectory;
    5872
    5973    if (!m_diskCacheDirectory.isNull()) {
    6074        SandboxExtension::consumePermanently(parameters.diskCacheDirectoryExtensionHandle);
    61 #if PLATFORM(IOS)
    62         NSString *diskCachePath = nil;
    63 #else
    64         NSString *diskCachePath = parameters.diskCacheDirectory;
    65 #endif
    6675        [NSURLCache setSharedURLCache:adoptNS([[NSURLCache alloc]
    6776            initWithMemoryCapacity:parameters.nsURLCacheMemoryCapacity
    6877            diskCapacity:parameters.nsURLCacheDiskCapacity
    69             diskPath:diskCachePath]).get()];
     78            diskPath:parameters.diskCacheDirectory]).get()];
    7079    }
     80#endif
    7181
    7282#if PLATFORM(IOS) || __MAC_OS_X_VERSION_MIN_REQUIRED >= 1090
  • trunk/Source/WebKit2/WebProcess/cocoa/WebProcessCocoa.mm

    r167110 r167143  
    5454#import <stdio.h>
    5555
     56#if PLATFORM(IOS)
     57@interface NSURLCache (WKDetails)
     58-(id)_initWithMemoryCapacity:(NSUInteger)memoryCapacity diskCapacity:(NSUInteger)diskCapacity relativePath:(NSString *)path;
     59@end
     60#endif
     61
    5662using namespace WebCore;
    5763
     
    165171    // NSURLCache, which it can disable to save memory.
    166172    if (!usesNetworkProcess()) {
     173#if PLATFORM(IOS)
     174        if (!parameters.uiProcessBundleIdentifier.isNull()) {
     175            [NSURLCache setSharedURLCache:adoptNS([[NSURLCache alloc]
     176                _initWithMemoryCapacity:parameters.nsURLCacheMemoryCapacity
     177                diskCapacity:parameters.nsURLCacheDiskCapacity
     178                relativePath:parameters.uiProcessBundleIdentifier]).get()];
     179        }
     180#else
    167181        if (!parameters.diskCacheDirectory.isNull()) {
    168 #if PLATFORM(IOS)
    169             NSString *diskCachePath = nil;
    170 #else
    171             NSString *diskCachePath = parameters.diskCacheDirectory;
    172 #endif
    173182            [NSURLCache setSharedURLCache:adoptNS([[NSURLCache alloc]
    174183                initWithMemoryCapacity:parameters.nsURLCacheMemoryCapacity
    175184                diskCapacity:parameters.nsURLCacheDiskCapacity
    176                 diskPath:diskCachePath]).get()];
     185                diskPath:parameters.diskCacheDirectory]).get()];
    177186        }
     187#endif
    178188    }
    179189
Note: See TracChangeset for help on using the changeset viewer.