Changeset 192761 in webkit
- Timestamp:
- Nov 24, 2015 12:01:35 AM (8 years ago)
- Location:
- trunk
- Files:
-
- 8 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebKit2/ChangeLog
r192756 r192761 1 2015-11-23 Carlos Garcia Campos <cgarcia@igalia.com> 2 3 [GTK] Use the network process unconditionally 4 https://bugs.webkit.org/show_bug.cgi?id=151541 5 6 Reviewed by Alex Christensen. 7 8 Make the shared secondary process model become multiple secondary 9 process model with a limit of 1 web process. Use the same options 10 when creating a context with legacy configuration (unit tests and 11 inspector proxy). 12 13 * NetworkProcess/gtk/NetworkProcessMainGtk.cpp: 14 * UIProcess/API/APIProcessPoolConfiguration.cpp: 15 (API::ProcessPoolConfiguration::createWithLegacyOptions): 16 * UIProcess/API/gtk/WebKitWebContext.cpp: 17 (webkitWebContextConstructed): 18 (webkit_web_context_set_process_model): 19 (webkit_web_context_get_process_model): 20 (webkit_web_context_set_web_process_count_limit): 21 (webkit_web_context_get_web_process_count_limit): 22 (toWebKitProcessModel): Deleted. 23 * UIProcess/gtk/WebInspectorProxyGtk.cpp: 24 * UIProcess/gtk/WebProcessPoolGtk.cpp: 25 (WebKit::WebProcessPool::setIgnoreTLSErrors): 26 (WebKit::WebProcessPool::platformInitializeWebProcess): 27 1 28 2015-11-23 Brian Burg <bburg@apple.com> 2 29 -
trunk/Source/WebKit2/NetworkProcess/gtk/NetworkProcessMainGtk.cpp
r192697 r192761 44 44 return true; 45 45 } 46 47 void platformFinalize() override48 {49 #if !ENABLE(NETWORK_CACHE)50 if (SoupCache* soupCache = SoupNetworkSession::defaultSession().cache()) {51 soup_cache_flush(soupCache);52 soup_cache_dump(soupCache);53 }54 #endif55 }56 46 }; 57 47 -
trunk/Source/WebKit2/UIProcess/API/APIProcessPoolConfiguration.cpp
r192673 r192761 42 42 43 43 configuration->m_shouldHaveLegacyDataStore = true; 44 #if PLATFORM(GTK) 45 // FIXME: Remove this ifdef once all ports have switched to use always NetworkProcess. 46 // See https://bugs.webkit.org/show_bug.cgi?id=151418. 47 configuration->m_processModel = WebKit::ProcessModelMultipleSecondaryProcesses; 48 configuration->m_maximumProcessCount = 1; 49 configuration->m_useNetworkProcess = true; 50 #else 44 51 configuration->m_processModel = WebKit::ProcessModelSharedSecondaryProcess; 45 52 configuration->m_useNetworkProcess = false; 53 #endif 46 54 configuration->m_cacheModel = WebKit::CacheModelDocumentViewer; 47 55 -
trunk/Source/WebKit2/UIProcess/API/gtk/WebKitWebContext.cpp
r192673 r192761 180 180 CString faviconDatabaseDirectory; 181 181 WebKitTLSErrorsPolicy tlsErrorsPolicy; 182 WebKitProcessModel processModel; 183 unsigned processCountLimit; 182 184 183 185 HashMap<uint64_t, WebKitWebView*> webViews; … … 193 195 194 196 WEBKIT_DEFINE_TYPE(WebKitWebContext, webkit_web_context, G_TYPE_OBJECT) 195 196 static inline WebKit::ProcessModel toProcessModel(WebKitProcessModel webKitProcessModel)197 {198 switch (webKitProcessModel) {199 case WEBKIT_PROCESS_MODEL_SHARED_SECONDARY_PROCESS:200 return ProcessModelSharedSecondaryProcess;201 case WEBKIT_PROCESS_MODEL_MULTIPLE_SECONDARY_PROCESSES:202 return ProcessModelMultipleSecondaryProcesses;203 default:204 ASSERT_NOT_REACHED();205 return ProcessModelSharedSecondaryProcess;206 }207 }208 209 static inline WebKitProcessModel toWebKitProcessModel(WebKit::ProcessModel processModel)210 {211 switch (processModel) {212 case ProcessModelSharedSecondaryProcess:213 return WEBKIT_PROCESS_MODEL_SHARED_SECONDARY_PROCESS;214 case ProcessModelMultipleSecondaryProcesses:215 return WEBKIT_PROCESS_MODEL_MULTIPLE_SECONDARY_PROCESSES;216 default:217 ASSERT_NOT_REACHED();218 return WEBKIT_PROCESS_MODEL_SHARED_SECONDARY_PROCESS;219 }220 }221 197 222 198 static const char* injectedBundleDirectory() … … 286 262 API::ProcessPoolConfiguration configuration; 287 263 configuration.setInjectedBundlePath(WebCore::filenameToString(bundleFilename.get())); 288 configuration.setProcessModel(ProcessModelSharedSecondaryProcess); 289 configuration.setUseNetworkProcess(false); 264 configuration.setMaximumProcessCount(1); 290 265 291 266 WebKitWebContext* webContext = WEBKIT_WEB_CONTEXT(object); … … 1170 1145 g_return_if_fail(WEBKIT_IS_WEB_CONTEXT(context)); 1171 1146 1172 ProcessModel newProcessModel(toProcessModel(processModel)); 1173 1174 if (newProcessModel == context->priv->context->processModel()) 1147 if (processModel == context->priv->processModel) 1175 1148 return; 1176 1149 1177 context->priv->context->setUsesNetworkProcess(newProcessModel == ProcessModelMultipleSecondaryProcesses); 1178 context->priv->context->setProcessModel(newProcessModel); 1150 context->priv->processModel = processModel; 1151 switch (context->priv->processModel) { 1152 case WEBKIT_PROCESS_MODEL_SHARED_SECONDARY_PROCESS: 1153 context->priv->context->setMaximumNumberOfProcesses(1); 1154 break; 1155 case WEBKIT_PROCESS_MODEL_MULTIPLE_SECONDARY_PROCESSES: 1156 context->priv->context->setMaximumNumberOfProcesses(context->priv->processCountLimit); 1157 break; 1158 } 1179 1159 } 1180 1160 … … 1194 1174 g_return_val_if_fail(WEBKIT_IS_WEB_CONTEXT(context), WEBKIT_PROCESS_MODEL_SHARED_SECONDARY_PROCESS); 1195 1175 1196 return toWebKitProcessModel(context->priv->context->processModel());1176 return context->priv->processModel; 1197 1177 } 1198 1178 … … 1215 1195 g_return_if_fail(WEBKIT_IS_WEB_CONTEXT(context)); 1216 1196 1217 if ( limit == context->priv->context->configuration().maximumProcessCount())1197 if (context->priv->processCountLimit == limit) 1218 1198 return; 1219 1199 1220 context->priv->context->setMaximumNumberOfProcesses(limit); 1200 context->priv->processCountLimit = limit; 1201 if (context->priv->processModel != WEBKIT_PROCESS_MODEL_SHARED_SECONDARY_PROCESS) 1202 context->priv->context->setMaximumNumberOfProcesses(limit); 1221 1203 } 1222 1204 … … 1235 1217 g_return_val_if_fail(WEBKIT_IS_WEB_CONTEXT(context), 0); 1236 1218 1237 return context->priv-> context->configuration().maximumProcessCount();1219 return context->priv->processCountLimit; 1238 1220 } 1239 1221 -
trunk/Source/WebKit2/UIProcess/gtk/WebInspectorProxyGtk.cpp
r191284 r192761 32 32 #include "WebKitWebViewBasePrivate.h" 33 33 #include "WebPageGroup.h" 34 #include "WebProcessPool.h" 34 35 #include "WebProcessProxy.h" 35 36 #include <WebCore/FileSystem.h> -
trunk/Source/WebKit2/UIProcess/gtk/WebProcessPoolGtk.cpp
r192697 r192761 96 96 } 97 97 98 if (!usesNetworkProcess()) {99 parameters.urlSchemesRegisteredForCustomProtocols = supplement<WebSoupCustomProtocolRequestManager>()->registeredSchemesForCustomProtocols();100 101 supplement<WebCookieManagerProxy>()->getCookiePersistentStorage(parameters.cookiePersistentStoragePath, parameters.cookiePersistentStorageType);102 parameters.cookieAcceptPolicy = m_initialHTTPCookieAcceptPolicy;103 104 parameters.ignoreTLSErrors = m_ignoreTLSErrors;105 parameters.diskCacheDirectory = m_configuration->diskCacheDirectory();106 }107 108 98 parameters.memoryCacheDisabled = m_memoryCacheDisabled || cacheModel() == CacheModelDocumentViewer; 109 99 } … … 147 137 { 148 138 m_ignoreTLSErrors = ignoreTLSErrors; 149 if ( usesNetworkProcess() && networkProcess()) {139 if (networkProcess()) 150 140 networkProcess()->send(Messages::NetworkProcess::SetIgnoreTLSErrors(m_ignoreTLSErrors), 0); 151 return;152 }153 sendToAllProcesses(Messages::WebProcess::SetIgnoreTLSErrors(m_ignoreTLSErrors));154 141 } 155 142 -
trunk/Tools/ChangeLog
r192747 r192761 1 2015-11-23 Carlos Garcia Campos <cgarcia@igalia.com> 2 3 [GTK] Use the network process unconditionally 4 https://bugs.webkit.org/show_bug.cgi?id=151541 5 6 Reviewed by Alex Christensen. 7 8 Fix TestInspectorServer test. Do not assume we already have the 9 title we want when the page has been loaded, since the title is 10 changed afterwards. So, check if the title has already been set, 11 and if not wait for it. 12 13 * TestWebKitAPI/Tests/WebKit2Gtk/TestInspectorServer.cpp: 14 (openRemoteDebuggingSession): 15 1 16 2015-11-23 Alex Christensen <achristensen@webkit.org> 2 17 -
trunk/Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestInspectorServer.cpp
r185502 r192761 238 238 test->waitUntilLoadFinished(); 239 239 240 javascriptResult = test->runJavaScriptAndWaitUntilFinished("document.title", &error.outPtr()); 241 g_assert(javascriptResult); 242 g_assert(!error.get()); 243 244 GUniquePtr<char> title(WebViewTest::javascriptResultToCString(javascriptResult)); 245 g_assert_cmpstr(title.get(), ==, "127.0.0.1"); 240 const char* title = webkit_web_view_get_title(test->m_webView); 241 if (!title || !*title) 242 test->waitUntilTitleChanged(); 243 g_assert_cmpstr(webkit_web_view_get_title(test->m_webView), ==, "127.0.0.1"); 246 244 } 247 245
Note: See TracChangeset
for help on using the changeset viewer.