Title: [225655] trunk/Source/WebKit
- Revision
- 225655
- Author
- [email protected]
- Date
- 2017-12-07 16:54:51 -0800 (Thu, 07 Dec 2017)
Log Message
Propagate WebKit2Logging channels to the Web Process
https://bugs.webkit.org/show_bug.cgi?id=180517
Reviewed by Tim Horton.
If you set WebKit2Logging, you want those channels active in both the UI process and
the web process, but without tricky 'defaults' gyrations, setting them in the web process
was hard.
Instead, send them through to the process via WebProcessCreationParameters, as we do
for WebCoreLogging channels.
* Platform/LogInitialization.h:
* Platform/Logging.cpp:
(WebKit::initializeLogChannelsIfNecessary):
* Shared/WebProcessCreationParameters.cpp:
(WebKit::WebProcessCreationParameters::encode const):
(WebKit::WebProcessCreationParameters::decode):
* Shared/WebProcessCreationParameters.h:
* UIProcess/Cocoa/WebProcessPoolCocoa.mm:
(WebKit::WebProcessPool::platformInitializeWebProcess):
* WebProcess/cocoa/WebProcessCocoa.mm:
(WebKit::WebProcess::platformInitializeWebProcess):
Modified Paths
Diff
Modified: trunk/Source/WebKit/ChangeLog (225654 => 225655)
--- trunk/Source/WebKit/ChangeLog 2017-12-08 00:22:55 UTC (rev 225654)
+++ trunk/Source/WebKit/ChangeLog 2017-12-08 00:54:51 UTC (rev 225655)
@@ -1,5 +1,31 @@
2017-12-07 Simon Fraser <[email protected]>
+ Propagate WebKit2Logging channels to the Web Process
+ https://bugs.webkit.org/show_bug.cgi?id=180517
+
+ Reviewed by Tim Horton.
+
+ If you set WebKit2Logging, you want those channels active in both the UI process and
+ the web process, but without tricky 'defaults' gyrations, setting them in the web process
+ was hard.
+
+ Instead, send them through to the process via WebProcessCreationParameters, as we do
+ for WebCoreLogging channels.
+
+ * Platform/LogInitialization.h:
+ * Platform/Logging.cpp:
+ (WebKit::initializeLogChannelsIfNecessary):
+ * Shared/WebProcessCreationParameters.cpp:
+ (WebKit::WebProcessCreationParameters::encode const):
+ (WebKit::WebProcessCreationParameters::decode):
+ * Shared/WebProcessCreationParameters.h:
+ * UIProcess/Cocoa/WebProcessPoolCocoa.mm:
+ (WebKit::WebProcessPool::platformInitializeWebProcess):
+ * WebProcess/cocoa/WebProcessCocoa.mm:
+ (WebKit::WebProcess::platformInitializeWebProcess):
+
+2017-12-07 Simon Fraser <[email protected]>
+
Add logging for EditorState in RemoteLayerTree transactions
https://bugs.webkit.org/show_bug.cgi?id=180515
Modified: trunk/Source/WebKit/Platform/LogInitialization.h (225654 => 225655)
--- trunk/Source/WebKit/Platform/LogInitialization.h 2017-12-08 00:22:55 UTC (rev 225654)
+++ trunk/Source/WebKit/Platform/LogInitialization.h 2017-12-08 00:54:51 UTC (rev 225655)
@@ -31,7 +31,7 @@
namespace WebKit {
-void initializeLogChannelsIfNecessary(void);
+void initializeLogChannelsIfNecessary(std::optional<String> = std::nullopt);
String logLevelString();
} // namespace WebKit
Modified: trunk/Source/WebKit/Platform/Logging.cpp (225654 => 225655)
--- trunk/Source/WebKit/Platform/Logging.cpp 2017-12-08 00:22:55 UTC (rev 225654)
+++ trunk/Source/WebKit/Platform/Logging.cpp 2017-12-08 00:54:51 UTC (rev 225655)
@@ -42,15 +42,17 @@
namespace WebKit {
static const size_t logChannelCount = WTF_ARRAY_LENGTH(logChannels);
+static bool logChannelsNeedInitialization = true;
-void initializeLogChannelsIfNecessary()
+void initializeLogChannelsIfNecessary(std::optional<String> logChannelString)
{
- static bool haveInitializedLoggingChannels = false;
- if (haveInitializedLoggingChannels)
+ if (!logChannelsNeedInitialization && !logChannelString)
return;
- haveInitializedLoggingChannels = true;
-
- WTFInitializeLogChannelStatesFromString(logChannels, logChannelCount, logLevelString().utf8().data());
+
+ logChannelsNeedInitialization = false;
+
+ String enabledChannelsString = logChannelString ? logChannelString.value() : logLevelString();
+ WTFInitializeLogChannelStatesFromString(logChannels, logChannelCount, enabledChannelsString.utf8().data());
}
} // namespace WebKit
Modified: trunk/Source/WebKit/Shared/WebProcessCreationParameters.cpp (225654 => 225655)
--- trunk/Source/WebKit/Shared/WebProcessCreationParameters.cpp 2017-12-08 00:22:55 UTC (rev 225654)
+++ trunk/Source/WebKit/Shared/WebProcessCreationParameters.cpp 2017-12-08 00:54:51 UTC (rev 225655)
@@ -67,6 +67,7 @@
#endif
encoder << mediaKeyStorageDirectory;
encoder << webCoreLoggingChannels;
+ encoder << webKitLoggingChannels;
encoder << mediaKeyStorageDirectoryExtensionHandle;
#if ENABLE(MEDIA_STREAM)
encoder << audioCaptureExtensionHandle;
@@ -190,6 +191,8 @@
return false;
if (!decoder.decode(parameters.webCoreLoggingChannels))
return false;
+ if (!decoder.decode(parameters.webKitLoggingChannels))
+ return false;
if (!decoder.decode(parameters.mediaKeyStorageDirectoryExtensionHandle))
return false;
#if ENABLE(MEDIA_STREAM)
Modified: trunk/Source/WebKit/Shared/WebProcessCreationParameters.h (225654 => 225655)
--- trunk/Source/WebKit/Shared/WebProcessCreationParameters.h 2017-12-08 00:22:55 UTC (rev 225654)
+++ trunk/Source/WebKit/Shared/WebProcessCreationParameters.h 2017-12-08 00:54:51 UTC (rev 225655)
@@ -95,6 +95,7 @@
String mediaKeyStorageDirectory;
String webCoreLoggingChannels;
+ String webKitLoggingChannels;
Vector<String> urlSchemesRegisteredAsEmptyDocument;
Vector<String> urlSchemesRegisteredAsSecure;
Modified: trunk/Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm (225654 => 225655)
--- trunk/Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm 2017-12-08 00:22:55 UTC (rev 225654)
+++ trunk/Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm 2017-12-08 00:54:51 UTC (rev 225655)
@@ -264,6 +264,7 @@
#if !LOG_DISABLED || !RELEASE_LOG_DISABLED
parameters.webCoreLoggingChannels = [[NSUserDefaults standardUserDefaults] stringForKey:@"WebCoreLogging"];
+ parameters.webKitLoggingChannels = [[NSUserDefaults standardUserDefaults] stringForKey:@"WebKit2Logging"];
#endif
// FIXME: Remove this and related parameter when <rdar://problem/29448368> is fixed.
Modified: trunk/Source/WebKit/WebProcess/cocoa/WebProcessCocoa.mm (225654 => 225655)
--- trunk/Source/WebKit/WebProcess/cocoa/WebProcessCocoa.mm 2017-12-08 00:22:55 UTC (rev 225654)
+++ trunk/Source/WebKit/WebProcess/cocoa/WebProcessCocoa.mm 2017-12-08 00:54:51 UTC (rev 225655)
@@ -28,6 +28,7 @@
#import "WebProcessCocoa.h"
#import "LegacyCustomProtocolManager.h"
+#import "LogInitialization.h"
#import "Logging.h"
#import "ObjCObjectGraph.h"
#import "SandboxExtension.h"
@@ -113,6 +114,7 @@
{
#if !LOG_DISABLED || !RELEASE_LOG_DISABLED
WebCore::initializeLogChannelsIfNecessary(parameters.webCoreLoggingChannels);
+ WebKit::initializeLogChannelsIfNecessary(parameters.webKitLoggingChannels);
#endif
WebCore::setApplicationBundleIdentifier(parameters.uiProcessBundleIdentifier);
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes