Changeset 168999 in webkit
- Timestamp:
- May 17, 2014, 3:31:02 PM (12 years ago)
- Location:
- trunk
- Files:
-
- 16 edited
-
Source/WebKit2/ChangeLog (modified) (1 diff)
-
Source/WebKit2/Shared/WebProcessCreationParameters.cpp (modified) (2 diffs)
-
Source/WebKit2/Shared/WebProcessCreationParameters.h (modified) (1 diff)
-
Source/WebKit2/UIProcess/API/C/WKContext.cpp (modified) (1 diff)
-
Source/WebKit2/UIProcess/API/C/WKContextConfigurationRef.cpp (modified) (2 diffs)
-
Source/WebKit2/UIProcess/API/C/WKContextConfigurationRef.h (modified) (2 diffs)
-
Source/WebKit2/UIProcess/API/C/WKContextPrivate.h (modified) (1 diff)
-
Source/WebKit2/UIProcess/APIContextConfiguration.cpp (modified) (1 diff)
-
Source/WebKit2/UIProcess/APIContextConfiguration.h (modified) (3 diffs)
-
Source/WebKit2/UIProcess/WebContext.cpp (modified) (5 diffs)
-
Source/WebKit2/UIProcess/WebContext.h (modified) (4 diffs)
-
Source/WebKit2/UIProcess/mac/WebContextMac.mm (modified) (2 diffs)
-
Source/WebKit2/WebProcess/WebCoreSupport/WebDatabaseManager.cpp (modified) (1 diff)
-
Source/WebKit2/WebProcess/cocoa/WebProcessCocoa.mm (modified) (1 diff)
-
Tools/ChangeLog (modified) (1 diff)
-
Tools/WebKitTestRunner/TestController.cpp (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebKit2/ChangeLog
r168998 r168999 1 2014-05-17 Anders Carlsson <andersca@apple.com> 2 3 Replace WKContextSetDatabaseDirectory with two WKContextConfiguration parameters 4 https://bugs.webkit.org/show_bug.cgi?id=133033 5 <rdar://problem/16830143> 6 7 Reviewed by Sam Weinig. 8 9 * Shared/WebProcessCreationParameters.cpp: 10 (WebKit::WebProcessCreationParameters::encode): 11 (WebKit::WebProcessCreationParameters::decode): 12 * Shared/WebProcessCreationParameters.h: 13 Rename databaseDirectory to webSQLDatabaseDirectory to better indicate the directory type. 14 15 * UIProcess/API/C/WKContext.cpp: 16 (WKContextSetDatabaseDirectory): Deleted. 17 This is no longer needed. 18 19 * UIProcess/API/C/WKContextConfigurationRef.cpp: 20 (WKContextConfigurationCopyIndexedDBDatabaseDirectory): 21 (WKContextConfigurationSetIndexedDBDatabaseDirectory): 22 (WKContextConfigurationCopyWebSQLDatabaseDirectory): 23 (WKContextConfigurationSetWebSQLDatabaseDirectory): 24 * UIProcess/API/C/WKContextConfigurationRef.h: 25 Add setters and getters. 26 27 * UIProcess/API/C/WKContextPrivate.h: 28 Remove WKContextSetDatabaseDirectory. 29 30 * UIProcess/APIContextConfiguration.cpp: 31 (API::ContextConfiguration::webContextConfiguration): 32 Set m_indexedDBDatabaseDirectory and m_webSQLDatabaseDirectory on the configuration. 33 34 * UIProcess/APIContextConfiguration.h: 35 (API::ContextConfiguration::indexedDBDatabaseDirectory): 36 (API::ContextConfiguration::setIndexedDBDatabaseDirectory): 37 (API::ContextConfiguration::webSQLDatabaseDirectory): 38 (API::ContextConfiguration::setWebSQLDatabaseDirectory): 39 Add getters and setters to the C++ part of WKContextConfigurationRef. 40 41 * UIProcess/WebContext.cpp: 42 (WebKit::WebContext::applyPlatformSpecificConfigurationDefaults): 43 Set webSQLDatabaseDirectory and indexedDBDatabaseDirectory. 44 45 (WebKit::WebContext::WebContext): 46 Initialize m_webSQLDatabaseDirectory and m_indexedDBDatabaseDirectory. 47 48 (WebKit::WebContext::ensureDatabaseProcess): 49 Set parameters.indexedDatabaseDirectory from m_indexedDBDatabaseDirectory. 50 51 (WebKit::WebContext::createNewWebProcess): 52 Set parameters.webSQLDatabaseDirectory from m_webSQLDatabaseDirectory. 53 54 * UIProcess/mac/WebContextMac.mm: 55 (WebKit::WebContext::platformDefaultWebSQLDatabaseDirectory): 56 Rename this to indicate that it's about WebSQL databases. 57 58 (WebKit::WebContext::platformDefaultIndexedDBDatabaseDirectory): 59 Add this. 60 61 * WebProcess/WebCoreSupport/WebDatabaseManager.cpp: 62 (WebKit::WebDatabaseManager::initialize): 63 Update for WebProcessCreationParameters rename. 64 65 * WebProcess/cocoa/WebProcessCocoa.mm: 66 (WebKit::WebProcess::platformInitializeWebProcess): 67 Update for WebProcessCreationParameters rename. 68 1 69 2014-05-17 Brent Fulgham <bfulgham@apple.com> 2 70 -
trunk/Source/WebKit2/Shared/WebProcessCreationParameters.cpp
r168605 r168999 61 61 encoder << applicationCacheDirectory; 62 62 encoder << applicationCacheDirectoryExtensionHandle; 63 encoder << databaseDirectory;64 encoder << databaseDirectoryExtensionHandle;63 encoder << webSQLDatabaseDirectory; 64 encoder << webSQLDatabaseDirectoryExtensionHandle; 65 65 encoder << diskCacheDirectory; 66 66 encoder << diskCacheDirectoryExtensionHandle; … … 147 147 if (!decoder.decode(parameters.applicationCacheDirectoryExtensionHandle)) 148 148 return false; 149 if (!decoder.decode(parameters. databaseDirectory))150 return false; 151 if (!decoder.decode(parameters. databaseDirectoryExtensionHandle))149 if (!decoder.decode(parameters.webSQLDatabaseDirectory)) 150 return false; 151 if (!decoder.decode(parameters.webSQLDatabaseDirectoryExtensionHandle)) 152 152 return false; 153 153 if (!decoder.decode(parameters.diskCacheDirectory)) -
trunk/Source/WebKit2/Shared/WebProcessCreationParameters.h
r168605 r168999 67 67 String applicationCacheDirectory; 68 68 SandboxExtension::Handle applicationCacheDirectoryExtensionHandle; 69 String databaseDirectory;70 SandboxExtension::Handle databaseDirectoryExtensionHandle;69 String webSQLDatabaseDirectory; 70 SandboxExtension::Handle webSQLDatabaseDirectoryExtensionHandle; 71 71 String diskCacheDirectory; 72 72 SandboxExtension::Handle diskCacheDirectoryExtensionHandle; -
trunk/Source/WebKit2/UIProcess/API/C/WKContext.cpp
r168625 r168999 488 488 } 489 489 490 void WKContextSetDatabaseDirectory(WKContextRef contextRef, WKStringRef databaseDirectory)491 {492 toImpl(contextRef)->setDatabaseDirectory(toImpl(databaseDirectory)->string());493 }494 495 490 WK_EXPORT void WKContextSetDiskCacheDirectory(WKContextRef contextRef, WKStringRef diskCacheDirectory) 496 491 { -
trunk/Source/WebKit2/UIProcess/API/C/WKContextConfigurationRef.cpp
r168625 r168999 37 37 } 38 38 39 WKStringRef WKContextConfigurationCopyIndexedDBDatabaseDirectory(WKContextConfigurationRef configuration) 40 { 41 return toCopiedAPI(toImpl(configuration)->indexedDBDatabaseDirectory()); 42 } 43 44 void WKContextConfigurationSetIndexedDBDatabaseDirectory(WKContextConfigurationRef configuration, WKStringRef indexedDBDatabaseDirectory) 45 { 46 toImpl(configuration)->setIndexedDBDatabaseDirectory(toImpl(indexedDBDatabaseDirectory)->string()); 47 } 48 39 49 WKStringRef WKContextConfigurationCopyInjectedBundlePath(WKContextConfigurationRef configuration) 40 50 { … … 56 66 toImpl(configuration)->setLocalStorageDirectory(toImpl(localStorageDirectory)->string()); 57 67 } 68 69 WKStringRef WKContextConfigurationCopyWebSQLDatabaseDirectory(WKContextConfigurationRef configuration) 70 { 71 return toCopiedAPI(toImpl(configuration)->webSQLDatabaseDirectory()); 72 } 73 74 void WKContextConfigurationSetWebSQLDatabaseDirectory(WKContextConfigurationRef configuration, WKStringRef webSQLDatabaseDirectory) 75 { 76 toImpl(configuration)->setWebSQLDatabaseDirectory(toImpl(webSQLDatabaseDirectory)->string()); 77 } -
trunk/Source/WebKit2/UIProcess/API/C/WKContextConfigurationRef.h
r168625 r168999 35 35 WK_EXPORT WKContextConfigurationRef WKContextConfigurationCreate(); 36 36 37 WK_EXPORT WKStringRef WKContextConfigurationCopyIndexedDBDatabaseDirectory(WKContextConfigurationRef configuration); 38 WK_EXPORT void WKContextConfigurationSetIndexedDBDatabaseDirectory(WKContextConfigurationRef configuration, WKStringRef indexedDBDatabaseDirectory); 39 37 40 WK_EXPORT WKStringRef WKContextConfigurationCopyInjectedBundlePath(WKContextConfigurationRef configuration); 38 41 WK_EXPORT void WKContextConfigurationSetInjectedBundlePath(WKContextConfigurationRef configuration, WKStringRef injectedBundlePath); … … 40 43 WK_EXPORT WKStringRef WKContextConfigurationCopyLocalStorageDirectory(WKContextConfigurationRef configuration); 41 44 WK_EXPORT void WKContextConfigurationSetLocalStorageDirectory(WKContextConfigurationRef configuration, WKStringRef localStorageDirectory); 45 46 WK_EXPORT WKStringRef WKContextConfigurationCopyWebSQLDatabaseDirectory(WKContextConfigurationRef configuration); 47 WK_EXPORT void WKContextConfigurationSetWebSQLDatabaseDirectory(WKContextConfigurationRef configuration, WKStringRef webSQLDatabaseDirectory); 42 48 43 49 #ifdef __cplusplus -
trunk/Source/WebKit2/UIProcess/API/C/WKContextPrivate.h
r168625 r168999 64 64 // we should really change these settings to be on WebPreferences and changeable at runtime. 65 65 WK_EXPORT void WKContextSetApplicationCacheDirectory(WKContextRef context, WKStringRef applicationCacheDirectory); 66 WK_EXPORT void WKContextSetDatabaseDirectory(WKContextRef context, WKStringRef databaseDirectory);67 66 WK_EXPORT void WKContextSetDiskCacheDirectory(WKContextRef context, WKStringRef diskCacheDirectory); 68 67 WK_EXPORT void WKContextSetCookieStorageDirectory(WKContextRef context, WKStringRef cookieStorageDirectory); -
trunk/Source/WebKit2/UIProcess/APIContextConfiguration.cpp
r168625 r168999 43 43 WebKit::WebContextConfiguration configuration; 44 44 45 configuration.indexedDBDatabaseDirectory = m_indexedDBDatabaseDirectory; 45 46 configuration.injectedBundlePath = m_injectedBundlePath; 46 47 configuration.localStorageDirectory = m_localStorageDirectory; 48 configuration.webSQLDatabaseDirectory = m_webSQLDatabaseDirectory; 47 49 48 50 WebKit::WebContext::applyPlatformSpecificConfigurationDefaults(configuration); -
trunk/Source/WebKit2/UIProcess/APIContextConfiguration.h
r168625 r168999 44 44 virtual ~ContextConfiguration(); 45 45 46 String indexedDBDatabaseDirectory() const { return m_indexedDBDatabaseDirectory; } 47 void setIndexedDBDatabaseDirectory(const String& indexedDBDatabaseDirectory) { m_indexedDBDatabaseDirectory = indexedDBDatabaseDirectory; } 48 46 49 String injectedBundlePath() const { return m_injectedBundlePath; } 47 50 void setInjectedBundlePath(const String& injectedBundlePath) { m_injectedBundlePath = injectedBundlePath; } … … 50 53 void setLocalStorageDirectory(const String& localStorageDirectory) { m_localStorageDirectory = localStorageDirectory; } 51 54 55 String webSQLDatabaseDirectory() const { return m_webSQLDatabaseDirectory; } 56 void setWebSQLDatabaseDirectory(const String& webSQLDatabaseDirectory) { m_webSQLDatabaseDirectory = webSQLDatabaseDirectory; } 57 52 58 WebKit::WebContextConfiguration webContextConfiguration() const; 53 59 … … 55 61 ContextConfiguration(); 56 62 63 String m_indexedDBDatabaseDirectory; 57 64 String m_injectedBundlePath; 58 65 String m_localStorageDirectory; 66 String m_webSQLDatabaseDirectory; 59 67 }; 60 68 -
trunk/Source/WebKit2/UIProcess/WebContext.cpp
r168628 r168999 125 125 if (!configuration.localStorageDirectory) 126 126 configuration.localStorageDirectory = platformDefaultLocalStorageDirectory(); 127 128 if (!configuration.webSQLDatabaseDirectory) 129 configuration.webSQLDatabaseDirectory = platformDefaultWebSQLDatabaseDirectory(); 130 131 if (!configuration.indexedDBDatabaseDirectory) 132 configuration.indexedDBDatabaseDirectory = platformDefaultIndexedDBDatabaseDirectory(); 127 133 } 128 134 … … 165 171 , m_initialHTTPCookieAcceptPolicy(HTTPCookieAcceptPolicyOnlyFromMainDocumentDomain) 166 172 #endif 173 , m_webSQLDatabaseDirectory(std::move(configuration.webSQLDatabaseDirectory)) 174 , m_indexedDBDatabaseDirectory(std::move(configuration.indexedDBDatabaseDirectory)) 167 175 , m_shouldUseTestingNetworkSession(false) 168 176 , m_processTerminationEnabled(true) … … 450 458 m_databaseProcess = DatabaseProcessProxy::create(this); 451 459 460 ASSERT(!m_indexedDBDatabaseDirectory.isEmpty()); 461 452 462 DatabaseProcessCreationParameters parameters; 453 454 // Indexed databases exist in a subdirectory of the "database directory path." 455 // Currently, the top level of that directory contains entities related to WebSQL databases. 456 // We should fix this, and move WebSQL into a subdirectory (https://bugs.webkit.org/show_bug.cgi?id=124807) 457 // In the meantime, an entity name prefixed with three underscores will not conflict with any WebSQL entities. 458 parameters.indexedDatabaseDirectory = pathByAppendingComponent(databaseDirectory(), "___IndexedDB"); 463 parameters.indexedDatabaseDirectory = m_indexedDBDatabaseDirectory; 464 459 465 SandboxExtension::createHandleForReadWriteDirectory(parameters.indexedDatabaseDirectory, parameters.indexedDatabaseDirectoryExtensionHandle); 460 466 … … 566 572 SandboxExtension::createHandleForReadWriteDirectory(parameters.applicationCacheDirectory, parameters.applicationCacheDirectoryExtensionHandle); 567 573 568 parameters. databaseDirectory = databaseDirectory();569 if (!parameters. databaseDirectory.isEmpty())570 SandboxExtension::createHandleForReadWriteDirectory(parameters. databaseDirectory, parameters.databaseDirectoryExtensionHandle);574 parameters.webSQLDatabaseDirectory = m_webSQLDatabaseDirectory; 575 if (!parameters.webSQLDatabaseDirectory.isEmpty()) 576 SandboxExtension::createHandleForReadWriteDirectory(parameters.webSQLDatabaseDirectory, parameters.webSQLDatabaseDirectoryExtensionHandle); 571 577 572 578 parameters.diskCacheDirectory = diskCacheDirectory(); … … 1125 1131 } 1126 1132 1127 String WebContext::databaseDirectory() const1128 {1129 if (!m_overrideDatabaseDirectory.isEmpty())1130 return m_overrideDatabaseDirectory;1131 1132 return platformDefaultDatabaseDirectory();1133 }1134 1135 1133 void WebContext::setIconDatabasePath(const String& path) 1136 1134 { -
trunk/Source/WebKit2/UIProcess/WebContext.h
r168625 r168999 99 99 String injectedBundlePath; 100 100 String localStorageDirectory; 101 String webSQLDatabaseDirectory; 102 String indexedDBDatabaseDirectory; 101 103 }; 102 104 … … 244 246 245 247 void setApplicationCacheDirectory(const String& dir) { m_overrideApplicationCacheDirectory = dir; } 246 void setDatabaseDirectory(const String& dir) { m_overrideDatabaseDirectory = dir; }247 248 void setIconDatabasePath(const String&); 248 249 String iconDatabasePath() const; … … 410 411 String platformDefaultApplicationCacheDirectory() const; 411 412 412 String databaseDirectory() const;413 String platformDefaultDatabaseDirectory() const;414 415 413 String platformDefaultIconDatabasePath() const; 416 414 417 415 static String platformDefaultLocalStorageDirectory(); 416 static String platformDefaultIndexedDBDatabaseDirectory(); 417 static String platformDefaultWebSQLDatabaseDirectory(); 418 418 419 419 String diskCacheDirectory() const; … … 515 515 516 516 String m_overrideApplicationCacheDirectory; 517 String m_overrideDatabaseDirectory;518 517 String m_overrideIconDatabasePath; 519 518 String m_overrideDiskCacheDirectory; 520 519 String m_overrideCookieStorageDirectory; 520 521 String m_webSQLDatabaseDirectory; 522 String m_indexedDBDatabaseDirectory; 521 523 522 524 bool m_shouldUseTestingNetworkSession; -
trunk/Source/WebKit2/UIProcess/mac/WebContextMac.mm
r168625 r168999 260 260 } 261 261 262 String WebContext::platformDefault DatabaseDirectory() const262 String WebContext::platformDefaultWebSQLDatabaseDirectory() 263 263 { 264 264 NSString *databasesDirectory = [[NSUserDefaults standardUserDefaults] objectForKey:WebDatabaseDirectoryDefaultsKey]; … … 266 266 databasesDirectory = @"~/Library/WebKit/Databases"; 267 267 return [databasesDirectory stringByStandardizingPath]; 268 } 269 270 String WebContext::platformDefaultIndexedDBDatabaseDirectory() 271 { 272 // Indexed databases exist in a subdirectory of the "database directory path." 273 // Currently, the top level of that directory contains entities related to WebSQL databases. 274 // We should fix this, and move WebSQL into a subdirectory (https://bugs.webkit.org/show_bug.cgi?id=124807) 275 // In the meantime, an entity name prefixed with three underscores will not conflict with any WebSQL entities. 276 return pathByAppendingComponent(platformDefaultWebSQLDatabaseDirectory(), "___IndexedDB"); 268 277 } 269 278 -
trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebDatabaseManager.cpp
r160464 r168999 56 56 void WebDatabaseManager::initialize(const WebProcessCreationParameters& parameters) 57 57 { 58 DatabaseManager::manager().initialize(parameters. databaseDirectory);58 DatabaseManager::manager().initialize(parameters.webSQLDatabaseDirectory); 59 59 DatabaseManager::manager().setClient(this); 60 60 } -
trunk/Source/WebKit2/WebProcess/cocoa/WebProcessCocoa.mm
r168984 r168999 162 162 #if ENABLE(SANDBOX_EXTENSIONS) 163 163 SandboxExtension::consumePermanently(parameters.uiProcessBundleResourcePathExtensionHandle); 164 SandboxExtension::consumePermanently(parameters. databaseDirectoryExtensionHandle);164 SandboxExtension::consumePermanently(parameters.webSQLDatabaseDirectoryExtensionHandle); 165 165 SandboxExtension::consumePermanently(parameters.applicationCacheDirectoryExtensionHandle); 166 166 SandboxExtension::consumePermanently(parameters.diskCacheDirectoryExtensionHandle); -
trunk/Tools/ChangeLog
r168970 r168999 1 2014-05-17 Anders Carlsson <andersca@apple.com> 2 3 Replace WKContextSetDatabaseDirectory with two WKContextConfiguration parameters 4 https://bugs.webkit.org/show_bug.cgi?id=133033 5 <rdar://problem/16830143> 6 7 Reviewed by Sam Weinig. 8 9 Set up the WebSQL and IndexedDB directories. 10 11 * WebKitTestRunner/TestController.cpp: 12 (WTR::TestController::initialize): 13 1 14 2014-05-16 Martin Hock <mhock@apple.com> 2 15 -
trunk/Tools/WebKitTestRunner/TestController.cpp
r168961 r168999 336 336 const char separator = '/'; 337 337 338 WKContextConfigurationSetIndexedDBDatabaseDirectory(configuration.get(), toWK(temporaryFolder + separator + "Databases" + separator + "IndexedDB").get()); 338 339 WKContextConfigurationSetLocalStorageDirectory(configuration.get(), toWK(temporaryFolder + separator + "LocalStorage").get()); 340 WKContextConfigurationSetWebSQLDatabaseDirectory(configuration.get(), toWK(temporaryFolder + separator + "Databases" + separator + "WebSQL").get()); 339 341 } 340 342 … … 354 356 // FIXME: These should be migrated to WKContextConfigurationRef. 355 357 WKContextSetApplicationCacheDirectory(m_context.get(), toWK(temporaryFolder + separator + "ApplicationCache").get()); 356 WKContextSetDatabaseDirectory(m_context.get(), toWK(temporaryFolder + separator + "Databases").get());357 358 WKContextSetDiskCacheDirectory(m_context.get(), toWK(temporaryFolder + separator + "Cache").get()); 358 359 WKContextSetCookieStorageDirectory(m_context.get(), toWK(temporaryFolder + separator + "Cookies").get());
Note:
See TracChangeset
for help on using the changeset viewer.