Title: [198051] trunk/Source/WebKit2
- Revision
- 198051
- Author
- [email protected]
- Date
- 2016-03-11 15:24:00 -0800 (Fri, 11 Mar 2016)
Log Message
Regression(r198040): WebKit2.DocumentStartUserScriptAlertCrashTest API test is crashing in debug
https://bugs.webkit.org/show_bug.cgi?id=155382
Reviewed by Alexey Proskuryakov.
r198040 introduced an assertion to make sure we never call
applicationBundleIsEqualTo() before setApplicationBundleIdentifier()
is called. This new assertion found a bug as it turns out we were
calling setApplicationBundleIdentifier() too late during the
WebProcess initialization and some runtime applications checks were
already done by then.
To address the problem, this patch moves the
setApplicationBundleIdentifier() call as early as possible during
the WebProcess and the NetworkProcess initialization. It also moves
it to the Cocoa specific files for clarity.
* NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::initializeNetworkProcess):
* NetworkProcess/cocoa/NetworkProcessCocoa.mm:
(WebKit::NetworkProcess::platformInitializeNetworkProcessCocoa):
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::initializeWebProcess):
* WebProcess/cocoa/WebProcessCocoa.mm:
(WebKit::WebProcess::platformInitializeWebProcess):
Modified Paths
Diff
Modified: trunk/Source/WebKit2/ChangeLog (198050 => 198051)
--- trunk/Source/WebKit2/ChangeLog 2016-03-11 23:15:08 UTC (rev 198050)
+++ trunk/Source/WebKit2/ChangeLog 2016-03-11 23:24:00 UTC (rev 198051)
@@ -1,3 +1,31 @@
+2016-03-11 Chris Dumez <[email protected]>
+
+ Regression(r198040): WebKit2.DocumentStartUserScriptAlertCrashTest API test is crashing in debug
+ https://bugs.webkit.org/show_bug.cgi?id=155382
+
+ Reviewed by Alexey Proskuryakov.
+
+ r198040 introduced an assertion to make sure we never call
+ applicationBundleIsEqualTo() before setApplicationBundleIdentifier()
+ is called. This new assertion found a bug as it turns out we were
+ calling setApplicationBundleIdentifier() too late during the
+ WebProcess initialization and some runtime applications checks were
+ already done by then.
+
+ To address the problem, this patch moves the
+ setApplicationBundleIdentifier() call as early as possible during
+ the WebProcess and the NetworkProcess initialization. It also moves
+ it to the Cocoa specific files for clarity.
+
+ * NetworkProcess/NetworkProcess.cpp:
+ (WebKit::NetworkProcess::initializeNetworkProcess):
+ * NetworkProcess/cocoa/NetworkProcessCocoa.mm:
+ (WebKit::NetworkProcess::platformInitializeNetworkProcessCocoa):
+ * WebProcess/WebProcess.cpp:
+ (WebKit::WebProcess::initializeWebProcess):
+ * WebProcess/cocoa/WebProcessCocoa.mm:
+ (WebKit::WebProcess::platformInitializeWebProcess):
+
2016-03-11 Enrica Casucci <[email protected]>
Use only selected text for Look up.
Modified: trunk/Source/WebKit2/NetworkProcess/NetworkProcess.cpp (198050 => 198051)
--- trunk/Source/WebKit2/NetworkProcess/NetworkProcess.cpp 2016-03-11 23:15:08 UTC (rev 198050)
+++ trunk/Source/WebKit2/NetworkProcess/NetworkProcess.cpp 2016-03-11 23:24:00 UTC (rev 198051)
@@ -215,7 +215,6 @@
setCanHandleHTTPSServerTrustEvaluation(parameters.canHandleHTTPSServerTrustEvaluation);
#if PLATFORM(COCOA) || USE(CFNETWORK)
- setApplicationBundleIdentifier(parameters.uiProcessBundleIdentifier);
SessionTracker::setIdentifierBase(parameters.uiProcessBundleIdentifier);
#endif
Modified: trunk/Source/WebKit2/NetworkProcess/cocoa/NetworkProcessCocoa.mm (198050 => 198051)
--- trunk/Source/WebKit2/NetworkProcess/cocoa/NetworkProcessCocoa.mm 2016-03-11 23:15:08 UTC (rev 198050)
+++ trunk/Source/WebKit2/NetworkProcess/cocoa/NetworkProcessCocoa.mm 2016-03-11 23:24:00 UTC (rev 198051)
@@ -34,6 +34,7 @@
#import <WebCore/NetworkStorageSession.h>
#import <WebCore/PublicSuffix.h>
#import <WebCore/ResourceRequestCFNet.h>
+#import <WebCore/RuntimeApplicationChecks.h>
#import <WebCore/SecurityOrigin.h>
#import <WebCore/SecurityOriginData.h>
#import <WebKitSystemInterface.h>
@@ -67,6 +68,8 @@
void NetworkProcess::platformInitializeNetworkProcessCocoa(const NetworkProcessCreationParameters& parameters)
{
+ WebCore::setApplicationBundleIdentifier(parameters.uiProcessBundleIdentifier);
+
#if PLATFORM(IOS)
SandboxExtension::consumePermanently(parameters.cookieStorageDirectoryExtensionHandle);
SandboxExtension::consumePermanently(parameters.containerCachesDirectoryExtensionHandle);
Modified: trunk/Source/WebKit2/WebProcess/WebProcess.cpp (198050 => 198051)
--- trunk/Source/WebKit2/WebProcess/WebProcess.cpp 2016-03-11 23:15:08 UTC (rev 198050)
+++ trunk/Source/WebKit2/WebProcess/WebProcess.cpp 2016-03-11 23:24:00 UTC (rev 198051)
@@ -347,7 +347,6 @@
enableSmoothedLayerText(parameters.enabledSmoothedLayerText);
#if PLATFORM(COCOA) || USE(CFNETWORK)
- setApplicationBundleIdentifier(parameters.uiProcessBundleIdentifier);
SessionTracker::setIdentifierBase(parameters.uiProcessBundleIdentifier);
#endif
Modified: trunk/Source/WebKit2/WebProcess/cocoa/WebProcessCocoa.mm (198050 => 198051)
--- trunk/Source/WebKit2/WebProcess/cocoa/WebProcessCocoa.mm 2016-03-11 23:15:08 UTC (rev 198050)
+++ trunk/Source/WebKit2/WebProcess/cocoa/WebProcessCocoa.mm 2016-03-11 23:24:00 UTC (rev 198051)
@@ -52,6 +52,7 @@
#import <WebCore/MemoryPressureHandler.h>
#import <WebCore/NSAccessibilitySPI.h>
#import <WebCore/PageCache.h>
+#import <WebCore/RuntimeApplicationChecks.h>
#import <WebCore/pthreadSPI.h>
#import <WebCore/VNodeTracker.h>
#import <WebCore/WebCoreNSURLExtras.h>
@@ -128,6 +129,8 @@
void WebProcess::platformInitializeWebProcess(WebProcessCreationParameters&& parameters)
{
+ WebCore::setApplicationBundleIdentifier(parameters.uiProcessBundleIdentifier);
+
#if ENABLE(SANDBOX_EXTENSIONS)
SandboxExtension::consumePermanently(parameters.uiProcessBundleResourcePathExtensionHandle);
SandboxExtension::consumePermanently(parameters.webSQLDatabaseDirectoryExtensionHandle);
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes