Title: [136464] trunk/Source/WebKit2
Revision
136464
Author
[email protected]
Date
2012-12-03 18:22:49 -0800 (Mon, 03 Dec 2012)

Log Message

Make it easier to add more web process initialization parameters
https://bugs.webkit.org/show_bug.cgi?id=103942

Reviewed by Andreas Kling.

Add a WebProcessInitializationParameters struct to make it easier to add more initialization
parameters in the future. Also, fix naming and spelling errors.

* WebProcess/mac/WebProcessInitialization.h:
(WebProcessInitializationParameters):
(WebKit):
* WebProcess/mac/WebProcessInitialization.mm:
(WebKit::initializeWebProcess):
* WebProcess/mac/WebProcessMainMac.mm:
(WebKit::WebProcessMain):
* WebProcess/mac/WebProcessServiceEntryPoints.h:
* WebProcess/mac/WebProcessServiceEntryPoints.mm:
(WebKit::WebProcessServiceEventHandler):
(webProcessServiceMain):
(initializeWebProcessForWebProcessServiceForWebKitDevelopment):
* WebProcessService/WebProcessServiceMain.mm:
(main):
* WebProcessServiceForWebKitDevelopment/WebProcessServiceForWebKitDevelopmentMain.mm:
(WebProcessServiceForWebKitDevelopmentEventHandler):

Modified Paths

Diff

Modified: trunk/Source/WebKit2/ChangeLog (136463 => 136464)


--- trunk/Source/WebKit2/ChangeLog	2012-12-04 02:19:13 UTC (rev 136463)
+++ trunk/Source/WebKit2/ChangeLog	2012-12-04 02:22:49 UTC (rev 136464)
@@ -1,3 +1,30 @@
+2012-12-03  Anders Carlsson  <[email protected]>
+
+        Make it easier to add more web process initialization parameters
+        https://bugs.webkit.org/show_bug.cgi?id=103942
+
+        Reviewed by Andreas Kling.
+
+        Add a WebProcessInitializationParameters struct to make it easier to add more initialization
+        parameters in the future. Also, fix naming and spelling errors.
+
+        * WebProcess/mac/WebProcessInitialization.h:
+        (WebProcessInitializationParameters):
+        (WebKit):
+        * WebProcess/mac/WebProcessInitialization.mm:
+        (WebKit::initializeWebProcess):
+        * WebProcess/mac/WebProcessMainMac.mm:
+        (WebKit::WebProcessMain):
+        * WebProcess/mac/WebProcessServiceEntryPoints.h:
+        * WebProcess/mac/WebProcessServiceEntryPoints.mm:
+        (WebKit::WebProcessServiceEventHandler):
+        (webProcessServiceMain):
+        (initializeWebProcessForWebProcessServiceForWebKitDevelopment):
+        * WebProcessService/WebProcessServiceMain.mm:
+        (main):
+        * WebProcessServiceForWebKitDevelopment/WebProcessServiceForWebKitDevelopmentMain.mm:
+        (WebProcessServiceForWebKitDevelopmentEventHandler):
+
 2012-12-03  Tim Horton  <[email protected]>
 
         PDFPlugin: <embed> and <object> PDFs affect their parent frame's page scale

Modified: trunk/Source/WebKit2/WebProcess/mac/WebProcessInitialization.h (136463 => 136464)


--- trunk/Source/WebKit2/WebProcess/mac/WebProcessInitialization.h	2012-12-04 02:19:13 UTC (rev 136463)
+++ trunk/Source/WebKit2/WebProcess/mac/WebProcessInitialization.h	2012-12-04 02:22:49 UTC (rev 136464)
@@ -27,11 +27,17 @@
 #define WebProcessInitialization_h
 
 #include "Connection.h"
+#include <wtf/text/WTFString.h>
 
 namespace WebKit {
 
-void InitializeWebProcess(const String& clientIdentifier, CoreIPC::Connection::Identifier connectionIdentifier);
+struct WebProcessInitializationParameters {
+    String clientIdentifier;
+    CoreIPC::Connection::Identifier connectionIdentifier;
+};
 
+void initializeWebProcess(const WebProcessInitializationParameters&);
+
 } // namespace WebKit
 
 #endif // WebProcessInitialization_h

Modified: trunk/Source/WebKit2/WebProcess/mac/WebProcessInitialization.mm (136463 => 136464)


--- trunk/Source/WebKit2/WebProcess/mac/WebProcessInitialization.mm	2012-12-04 02:19:13 UTC (rev 136463)
+++ trunk/Source/WebKit2/WebProcess/mac/WebProcessInitialization.mm	2012-12-04 02:22:49 UTC (rev 136464)
@@ -37,22 +37,21 @@
 
 namespace WebKit {
 
-void InitializeWebProcess(const String& clientIdentifier, CoreIPC::Connection::Identifier connectionIdentifier)
+void initializeWebProcess(const WebProcessInitializationParameters& parameters)
 {
-    NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
+    @autoreleasepool {
+        InitWebCoreSystemInterface();
+        JSC::initializeThreading();
+        WTF::initializeMainThread();
+        RunLoop::initializeMainRunLoop();
 
-    InitWebCoreSystemInterface();
-    JSC::initializeThreading();
-    WTF::initializeMainThread();
-    RunLoop::initializeMainRunLoop();
-
-    WebProcess::shared().initializeShim();
-    WebProcess::shared().initializeSandbox(clientIdentifier);
-    WebProcess::shared().initialize(connectionIdentifier, RunLoop::main());
-
-    WKAXRegisterRemoteApp();
-
-    [pool drain];
+        WebProcess& webProcess = WebProcess::shared();
+        webProcess.initializeShim();
+        webProcess.initializeSandbox(parameters.clientIdentifier);
+        webProcess.initialize(parameters.connectionIdentifier, RunLoop::main());
+        
+        WKAXRegisterRemoteApp();
+    }
 }
 
 } // namespace WebKit

Modified: trunk/Source/WebKit2/WebProcess/mac/WebProcessMainMac.mm (136463 => 136464)


--- trunk/Source/WebKit2/WebProcess/mac/WebProcessMainMac.mm	2012-12-04 02:19:13 UTC (rev 136463)
+++ trunk/Source/WebKit2/WebProcess/mac/WebProcessMainMac.mm	2012-12-04 02:22:49 UTC (rev 136464)
@@ -185,7 +185,10 @@
     [[NSApplication sharedApplication] _installAutoreleasePoolsOnCurrentThreadIfNecessary];
 #endif
 
-    InitializeWebProcess(clientIdentifier, CoreIPC::Connection::Identifier(serverPort));
+    WebProcessInitializationParameters parameters;
+    parameters.clientIdentifier = clientIdentifier;
+    parameters.connectionIdentifier = serverPort;
+    initializeWebProcess(parameters);
 
     RunLoop::run();
 

Modified: trunk/Source/WebKit2/WebProcess/mac/WebProcessServiceEntryPoints.h (136463 => 136464)


--- trunk/Source/WebKit2/WebProcess/mac/WebProcessServiceEntryPoints.h	2012-12-04 02:19:13 UTC (rev 136463)
+++ trunk/Source/WebKit2/WebProcess/mac/WebProcessServiceEntryPoints.h	2012-12-04 02:22:49 UTC (rev 136464)
@@ -36,12 +36,12 @@
 
 // This entry point is used for the installed WebProcessService, which does not
 // need to be re-execed, or mess around with DYLD.
-WK_EXPORT int WebProcessServiceMain(int argc, char** argv);
+WK_EXPORT int webProcessServiceMain(int argc, char** argv);
 
 // This entry point is used for the WebProcessServiceForWebKitDevelopment
 // which needs to be re-exec, and can't link directly to WebKit2 requiring
 // some DYLD fiddling.
-WK_EXPORT void InitializeWebProcessForWebProcessServiceForWebKitDevelopment(const char* clientIdentifer, xpc_connection_t connection, mach_port_t serverPort);
+WK_EXPORT void initializeWebProcessForWebProcessServiceForWebKitDevelopment(const char* clientIdentifier, xpc_connection_t, mach_port_t serverPort);
 
 #ifdef __cplusplus
 }; // extern "C"

Modified: trunk/Source/WebKit2/WebProcess/mac/WebProcessServiceEntryPoints.mm (136463 => 136464)


--- trunk/Source/WebKit2/WebProcess/mac/WebProcessServiceEntryPoints.mm	2012-12-04 02:19:13 UTC (rev 136463)
+++ trunk/Source/WebKit2/WebProcess/mac/WebProcessServiceEntryPoints.mm	2012-12-04 02:22:49 UTC (rev 136464)
@@ -60,7 +60,10 @@
                 xpc_connection_send_message(xpc_dictionary_get_remote_connection(event), reply);
                 xpc_release(reply);
 
-                InitializeWebProcess(String(xpc_dictionary_get_string(event, "client-identifier")), CoreIPC::Connection::Identifier(xpc_dictionary_copy_mach_send(event, "server-port"), peer));
+                WebProcessInitializationParameters parameters;
+                parameters.clientIdentifier = xpc_dictionary_get_string(event, "client-identifier");
+                parameters.connectionIdentifier = xpc_dictionary_copy_mach_send(event, "server-port");
+                initializeWebProcess(parameters);
             }
         }
     });
@@ -70,7 +73,7 @@
 
 } // namespace WebKit
 
-int WebProcessServiceMain(int argc, char** argv)
+int webProcessServiceMain(int argc, char** argv)
 {
     // Remove the WebProcess shim from the DYLD_INSERT_LIBRARIES environment variable so any processes spawned by
     // the WebProcess don't try to insert the shim and crash.
@@ -80,13 +83,16 @@
     return 0;
 }
 
-void InitializeWebProcessForWebProcessServiceForWebKitDevelopment(const char* clientIdentifer, xpc_connection_t connection, mach_port_t serverPort)
+void initializeWebProcessForWebProcessServiceForWebKitDevelopment(const char* clientIdentifier, xpc_connection_t connection, mach_port_t serverPort)
 {
     // Remove the WebProcess shim from the DYLD_INSERT_LIBRARIES environment variable so any processes spawned by
     // the WebProcess don't try to insert the shim and crash.
     WebKit::EnvironmentUtilities::stripValuesEndingWithString("DYLD_INSERT_LIBRARIES", "/WebProcessShim.dylib");
 
-    WebKit::InitializeWebProcess(String(clientIdentifer), CoreIPC::Connection::Identifier(serverPort, connection));
+    WebKit::WebProcessInitializationParameters parameters;
+    parameters.clientIdentifier = clientIdentifier;
+    parameters.connectionIdentifier = CoreIPC::Connection::Identifier(serverPort, connection);
+    initializeWebProcess(parameters);
 }
 
 #endif // HAVE(XPC)

Modified: trunk/Source/WebKit2/WebProcessService/WebProcessServiceMain.mm (136463 => 136464)


--- trunk/Source/WebKit2/WebProcessService/WebProcessServiceMain.mm	2012-12-04 02:19:13 UTC (rev 136463)
+++ trunk/Source/WebKit2/WebProcessService/WebProcessServiceMain.mm	2012-12-04 02:22:49 UTC (rev 136464)
@@ -31,7 +31,7 @@
 
 int main(int argc, char** argv)
 {
-    return WebProcessServiceMain(argc, argv);
+    return webProcessServiceMain(argc, argv);
 }
 
 #else

Modified: trunk/Source/WebKit2/WebProcessServiceForWebKitDevelopment/WebProcessServiceForWebKitDevelopmentMain.mm (136463 => 136464)


--- trunk/Source/WebKit2/WebProcessServiceForWebKitDevelopment/WebProcessServiceForWebKitDevelopmentMain.mm	2012-12-04 02:19:13 UTC (rev 136463)
+++ trunk/Source/WebKit2/WebProcessServiceForWebKitDevelopment/WebProcessServiceForWebKitDevelopmentMain.mm	2012-12-04 02:22:49 UTC (rev 136464)
@@ -124,7 +124,7 @@
                 }
 
                 typedef void (*InitializeWebProcessFunction)(const char* clientIdentifer, xpc_connection_t connection, mach_port_t serverPort);
-                InitializeWebProcessFunction InitializeWebProcessFunctionPtr = reinterpret_cast<InitializeWebProcessFunction>(dlsym(frameworkLibrary, "InitializeWebProcessForWebProcessServiceForWebKitDevelopment"));
+                InitializeWebProcessFunction InitializeWebProcessFunctionPtr = reinterpret_cast<InitializeWebProcessFunction>(dlsym(frameworkLibrary, "initializeWebProcessForWebProcessServiceForWebKitDevelopment"));
                 if (!InitializeWebProcessFunctionPtr) {
                     NSLog(@"Unable to find entry point in WebKit2.framework: %s\n", dlerror());
                     exit(EXIT_FAILURE);
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to