[webkit-changes] [244325] trunk

2019-04-15 Thread wilander
Title: [244325] trunk








Revision 244325
Author wilan...@apple.com
Date 2019-04-15 21:24:23 -0700 (Mon, 15 Apr 2019)


Log Message
Add a query string nonce to LayoutTests/http/tests/adClickAttribution/send-attribution-conversion-request.html to address flakiness
https://bugs.webkit.org/show_bug.cgi?id=196955

Source/WebCore:

Unreviewed test gardening. The WebCore change is only in a dedicated
test function.

No new tests. Existing test updated.


* loader/AdClickAttribution.cpp:
(WebCore::AdClickAttribution::urlForTesting const):
Now preserves the query string in the test URL.

LayoutTests:

Unreviewed test gardening.


* http/tests/adClickAttribution/resources/conversionFilePath.php:
* http/tests/adClickAttribution/resources/conversionReport.php:
* http/tests/adClickAttribution/resources/getConversionData.php:
* http/tests/adClickAttribution/send-attribution-conversion-request.html:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/http/tests/adClickAttribution/resources/conversionFilePath.php
trunk/LayoutTests/http/tests/adClickAttribution/resources/conversionReport.php
trunk/LayoutTests/http/tests/adClickAttribution/resources/getConversionData.php
trunk/LayoutTests/http/tests/adClickAttribution/send-attribution-conversion-request.html
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/loader/AdClickAttribution.cpp




Diff

Modified: trunk/LayoutTests/ChangeLog (244324 => 244325)

--- trunk/LayoutTests/ChangeLog	2019-04-16 02:41:38 UTC (rev 244324)
+++ trunk/LayoutTests/ChangeLog	2019-04-16 04:24:23 UTC (rev 244325)
@@ -1,3 +1,15 @@
+2019-04-15  John Wilander  
+
+Add a query string nonce to LayoutTests/http/tests/adClickAttribution/send-attribution-conversion-request.html to address flakiness
+https://bugs.webkit.org/show_bug.cgi?id=196955
+
+Unreviewed test gardening.
+
+* http/tests/adClickAttribution/resources/conversionFilePath.php:
+* http/tests/adClickAttribution/resources/conversionReport.php:
+* http/tests/adClickAttribution/resources/getConversionData.php:
+* http/tests/adClickAttribution/send-attribution-conversion-request.html:
+
 2019-04-15  Devin Rousso  
 
 Web Inspector: fake value descriptors for promises add a catch handler, preventing "rejectionhandled" events from being fired


Modified: trunk/LayoutTests/http/tests/adClickAttribution/resources/conversionFilePath.php (244324 => 244325)

--- trunk/LayoutTests/http/tests/adClickAttribution/resources/conversionFilePath.php	2019-04-16 02:41:38 UTC (rev 244324)
+++ trunk/LayoutTests/http/tests/adClickAttribution/resources/conversionFilePath.php	2019-04-16 04:24:23 UTC (rev 244325)
@@ -1,6 +1,9 @@
  require_once '../../resources/portabilityLayer.php';
 
-$conversionFilePath = sys_get_temp_dir() . "/adClickConversion.txt";
-
+if (isset($_GET["nonce"]))
+$conversionFileName = "/adClickConversion" . $_GET["nonce"] . ".txt";
+else
+$conversionFileName = "/adClickConversion.txt";
+$conversionFilePath = sys_get_temp_dir() . $conversionFileName;
 ?>


Modified: trunk/LayoutTests/http/tests/adClickAttribution/resources/conversionReport.php (244324 => 244325)

--- trunk/LayoutTests/http/tests/adClickAttribution/resources/conversionReport.php	2019-04-16 02:41:38 UTC (rev 244324)
+++ trunk/LayoutTests/http/tests/adClickAttribution/resources/conversionReport.php	2019-04-16 04:24:23 UTC (rev 244325)
@@ -5,9 +5,16 @@
 $httpHeaders = $_SERVER;
 $cookiesFound = false;
 foreach ($httpHeaders as $name => $value) {
-if ($name === "HTTP_HOST" || $name === "REQUEST_URI")
+if ($name === "HTTP_HOST") {
 fwrite($conversionFile, "$name: $value\n");
-else if ($name === "HTTP_COOKIE") {
+} else if ($name === "REQUEST_URI") {
+$positionOfNonce = strpos($value, "=");
+if ($positionOfNonce === false)
+$outputURL = $value;
+else
+$outputURL = substr($value, 0, $positionOfNonce);
+fwrite($conversionFile, "$name: $outputURL\n");
+} else if ($name === "HTTP_COOKIE") {
 fwrite($conversionFile, "Cookies in conversion request: $value\n");
 $cookiesFound = true;
 }


Modified: trunk/LayoutTests/http/tests/adClickAttribution/resources/getConversionData.php (244324 => 244325)

--- trunk/LayoutTests/http/tests/adClickAttribution/resources/getConversionData.php	2019-04-16 02:41:38 UTC (rev 244324)
+++ trunk/LayoutTests/http/tests/adClickAttribution/resources/getConversionData.php	2019-04-16 04:24:23 UTC (rev 244325)
@@ -36,7 +36,7 @@
 fclose($conversionFile);
 unlink($conversionFilePath);
 } else {
-echo "Conversion not received - timed out.";
+echo "Conversion not received - timed out.";
 }
 
 if (isset($_GET['endTest'])) {


Modified: trunk/LayoutTests/http/tests/adClickAttribution/send-attribution-conversion-request.html (244324 => 244325)

--- trunk/LayoutTests/http/tests/adClickAttribution/send-attribution-conversion-request.html	2019-04-16 02:41:38 UTC (rev 

[webkit-changes] [244324] trunk

2019-04-15 Thread sbarati
Title: [244324] trunk








Revision 244324
Author sbar...@apple.com
Date 2019-04-15 19:41:38 -0700 (Mon, 15 Apr 2019)


Log Message
Modify how we do SetArgument when we inline varargs calls
https://bugs.webkit.org/show_bug.cgi?id=196712


Reviewed by Michael Saboff.

JSTests:

* stress/get-stack-wrong-type-when-inline-varargs.js: Added.
(foo):

Source/_javascript_Core:

When we inline varargs calls, we guarantee that the number of arguments that
go on the stack are somewhere between the "mandatoryMinimum" and the "limit - 1".
However, we can't statically guarantee that the arguments between these two
ranges was filled out by Load/ForwardVarargs. This is because in the general
case we don't know the argument count statically.

However, we used to always emit SetArgumentDefinitely up to "limit - 1" for
all arguments, even when some arguments aren't guaranteed to be in a valid
state. Emitting these SetArgumentDefinitely were helpful because they let us
handle variable liveness and OSR exit metadata. However, when we converted
to SSA, we ended up emitting a GetStack for each such SetArgumentDefinitely.

This is wrong, as we can't guarantee such SetArgumentDefinitely nodes are
actually looking at a range of the stack that are guaranteed to be initialized.
This patch introduces a new form of SetArgument node: SetArgumentMaybe. In terms
of OSR exit metadata and variable liveness tracking, it behaves like SetArgumentDefinitely.

However, it differs in a couple key ways:
1. In ThreadedCPS, GetLocal(@SetArgumentMaybe) is invalid IR, as this implies
you might be loading uninitialized stack. (This same rule applies when you do
the full data flow reachability analysis over CPS Phis.) If someone logically
wanted to emit code like this, the correct node to emit would be GetArgument,
not GetLocal. For similar reasons, PhantomLocal(@SetArgumentMaybe) is also
invalid IR.
2. To track liveness, Flush(@SetArgumentMaybe) is valid, and is the main user
of SetArgumentMaybe.
3. In SSA conversion, we don't lower SetArgumentMaybe to GetStack, as there
should be no data flow user of SetArgumentMaybe.

SetArgumentDefinitely guarantees that the stack slot is initialized.
SetArgumentMaybe makes no such guarantee.

* dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::AbstractInterpreter::executeEffects):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::handleVarargsInlining):
* dfg/DFGCPSRethreadingPhase.cpp:
(JSC::DFG::CPSRethreadingPhase::freeUnnecessaryNodes):
(JSC::DFG::CPSRethreadingPhase::canonicalizeGetLocalFor):
(JSC::DFG::CPSRethreadingPhase::canonicalizeFlushOrPhantomLocalFor):
(JSC::DFG::CPSRethreadingPhase::canonicalizeLocalsInBlock):
(JSC::DFG::CPSRethreadingPhase::propagatePhis):
(JSC::DFG::CPSRethreadingPhase::computeIsFlushed):
* dfg/DFGClobberize.h:
(JSC::DFG::clobberize):
* dfg/DFGCommon.h:
* dfg/DFGDoesGC.cpp:
(JSC::DFG::doesGC):
* dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
* dfg/DFGInPlaceAbstractState.cpp:
(JSC::DFG::InPlaceAbstractState::endBasicBlock):
* dfg/DFGLiveCatchVariablePreservationPhase.cpp:
(JSC::DFG::LiveCatchVariablePreservationPhase::handleBlockForTryCatch):
* dfg/DFGMaximalFlushInsertionPhase.cpp:
(JSC::DFG::MaximalFlushInsertionPhase::treatRegularBlock):
(JSC::DFG::MaximalFlushInsertionPhase::treatRootBlock):
* dfg/DFGMayExit.cpp:
* dfg/DFGNode.cpp:
(JSC::DFG::Node::hasVariableAccessData):
* dfg/DFGNodeType.h:
* dfg/DFGPhantomInsertionPhase.cpp:
* dfg/DFGPredictionPropagationPhase.cpp:
* dfg/DFGSSAConversionPhase.cpp:
(JSC::DFG::SSAConversionPhase::run):
* dfg/DFGSafeToExecute.h:
(JSC::DFG::safeToExecute):
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGValidate.cpp:
* ftl/FTLCapabilities.cpp:
(JSC::FTL::canCompile):

Modified Paths

trunk/JSTests/ChangeLog
trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/dfg/DFGAbstractInterpreterInlines.h
trunk/Source/_javascript_Core/dfg/DFGByteCodeParser.cpp
trunk/Source/_javascript_Core/dfg/DFGCPSRethreadingPhase.cpp
trunk/Source/_javascript_Core/dfg/DFGClobberize.h
trunk/Source/_javascript_Core/dfg/DFGCommon.h
trunk/Source/_javascript_Core/dfg/DFGDoesGC.cpp
trunk/Source/_javascript_Core/dfg/DFGFixupPhase.cpp
trunk/Source/_javascript_Core/dfg/DFGInPlaceAbstractState.cpp
trunk/Source/_javascript_Core/dfg/DFGLiveCatchVariablePreservationPhase.cpp
trunk/Source/_javascript_Core/dfg/DFGMaximalFlushInsertionPhase.cpp
trunk/Source/_javascript_Core/dfg/DFGMayExit.cpp
trunk/Source/_javascript_Core/dfg/DFGNode.cpp
trunk/Source/_javascript_Core/dfg/DFGNodeType.h
trunk/Source/_javascript_Core/dfg/DFGPhantomInsertionPhase.cpp
trunk/Source/_javascript_Core/dfg/DFGPredictionPropagationPhase.cpp
trunk/Source/_javascript_Core/dfg/DFGSSAConversionPhase.cpp
trunk/Source/_javascript_Core/dfg/DFGSafeToExecute.h
trunk/Source/_javascript_Core/dfg/DFGSpeculativeJIT32_64.cpp
trunk/Source/_javascript_Core/dfg/DFGSpeculativeJIT64.cpp

[webkit-changes] [244323] trunk/Source/JavaScriptCore

2019-04-15 Thread commit-queue
Title: [244323] trunk/Source/_javascript_Core








Revision 244323
Author commit-qu...@webkit.org
Date 2019-04-15 19:12:26 -0700 (Mon, 15 Apr 2019)


Log Message
Unreviewed, rolling out r243672.
https://bugs.webkit.org/show_bug.cgi?id=196952

[JSValue release] should be thread-safe (Requested by
yusukesuzuki on #webkit).

Reverted changeset:

"[JSC] JSWrapperMap should not use Objective-C Weak map
(NSMapTable with NSPointerFunctionsWeakMemory) for
m_cachedObjCWrappers"
https://bugs.webkit.org/show_bug.cgi?id=196392
https://trac.webkit.org/changeset/243672

Modified Paths

trunk/Source/_javascript_Core/API/JSContext.mm
trunk/Source/_javascript_Core/API/JSContextInternal.h
trunk/Source/_javascript_Core/API/JSValue.mm
trunk/Source/_javascript_Core/API/JSWrapperMap.h
trunk/Source/_javascript_Core/API/JSWrapperMap.mm
trunk/Source/_javascript_Core/API/tests/testapi.mm
trunk/Source/_javascript_Core/ChangeLog




Diff

Modified: trunk/Source/_javascript_Core/API/JSContext.mm (244322 => 244323)

--- trunk/Source/_javascript_Core/API/JSContext.mm	2019-04-16 02:03:41 UTC (rev 244322)
+++ trunk/Source/_javascript_Core/API/JSContext.mm	2019-04-16 02:12:26 UTC (rev 244323)
@@ -369,11 +369,6 @@
 return [[self wrapperMap] objcWrapperForJSValueRef:value inContext:self];
 }
 
-- (void)removeWrapper:(JSValue *)value
-{
-return [[self wrapperMap] removeWrapper:value];
-}
-
 + (JSContext *)contextWithJSGlobalContextRef:(JSGlobalContextRef)globalContext
 {
 JSContext *context = (__bridge JSContext *)toJSGlobalObject(globalContext)->apiWrapper();


Modified: trunk/Source/_javascript_Core/API/JSContextInternal.h (244322 => 244323)

--- trunk/Source/_javascript_Core/API/JSContextInternal.h	2019-04-16 02:03:41 UTC (rev 244322)
+++ trunk/Source/_javascript_Core/API/JSContextInternal.h	2019-04-16 02:12:26 UTC (rev 244323)
@@ -54,7 +54,6 @@
 - (JSWrapperMap *)wrapperMap;
 - (JSValue *)wrapperForObjCObject:(id)object;
 - (JSValue *)wrapperForJSObject:(JSValueRef)value;
-- (void)removeWrapper:(JSValue *)value;
 
 @end
 


Modified: trunk/Source/_javascript_Core/API/JSValue.mm (244322 => 244323)

--- trunk/Source/_javascript_Core/API/JSValue.mm	2019-04-16 02:03:41 UTC (rev 244322)
+++ trunk/Source/_javascript_Core/API/JSValue.mm	2019-04-16 02:12:26 UTC (rev 244323)
@@ -71,7 +71,6 @@
 
 - (void)dealloc
 {
-[_context removeWrapper:self];
 JSValueUnprotect([_context JSGlobalContextRef], m_value);
 [_context release];
 _context = nil;
@@ -1076,7 +1075,6 @@
 if (!self)
 return nil;
 
-ASSERT(context);
 _context = [context retain];
 m_value = value;
 JSValueProtect([_context JSGlobalContextRef], m_value);


Modified: trunk/Source/_javascript_Core/API/JSWrapperMap.h (244322 => 244323)

--- trunk/Source/_javascript_Core/API/JSWrapperMap.h	2019-04-16 02:03:41 UTC (rev 244322)
+++ trunk/Source/_javascript_Core/API/JSWrapperMap.h	2019-04-16 02:12:26 UTC (rev 244323)
@@ -37,8 +37,6 @@
 
 - (JSValue *)objcWrapperForJSValueRef:(JSValueRef)value inContext:(JSContext *)context;
 
-- (void)removeWrapper:(JSValue *)wrapper;
-
 @end
 
 id tryUnwrapObjcObject(JSGlobalContextRef, JSValueRef);


Modified: trunk/Source/_javascript_Core/API/JSWrapperMap.mm (244322 => 244323)

--- trunk/Source/_javascript_Core/API/JSWrapperMap.mm	2019-04-16 02:03:41 UTC (rev 244322)
+++ trunk/Source/_javascript_Core/API/JSWrapperMap.mm	2019-04-16 02:12:26 UTC (rev 244323)
@@ -581,77 +581,10 @@
 
 @end
 
-struct WrapperKey {
-static constexpr uintptr_t hashTableDeletedValue() { return 1; }
-
-WrapperKey() = default;
-
-explicit WrapperKey(WTF::HashTableDeletedValueType)
-: m_wrapper(reinterpret_cast(hashTableDeletedValue()))
-{
-}
-
-explicit WrapperKey(JSValue *wrapper)
-: m_wrapper(wrapper)
-{
-}
-
-bool isHashTableDeletedValue() const
-{
-return reinterpret_cast(m_wrapper) == hashTableDeletedValue();
-}
-
-__unsafe_unretained JSValue *m_wrapper { nil };
-
-struct Hash {
-static unsigned hash(const WrapperKey& key)
-{
-return DefaultHash::Hash::hash([key.m_wrapper JSValueRef]);
-}
-
-static bool equal(const WrapperKey& lhs, const WrapperKey& rhs)
-{
-return lhs.m_wrapper == rhs.m_wrapper;
-}
-
-static const bool safeToCompareToEmptyOrDeleted = false;
-};
-
-struct Traits : public SimpleClassHashTraits {
-static const bool hasIsEmptyValueFunction = true;
-static bool isEmptyValue(const WrapperKey& key)
-{
-return key.m_wrapper == nullptr;
-}
-};
-
-struct Translator {
-struct ValueAndContext {
-__unsafe_unretained JSContext *m_context;
-JSValueRef m_value;
-};
-
-static unsigned hash(const ValueAndContext& value)
-{
-return DefaultHash::Hash::hash(value.m_value);
-}
-
-static bool equal(const WrapperKey& lhs, const 

[webkit-changes] [244322] trunk/Tools

2019-04-15 Thread aakash_jain
Title: [244322] trunk/Tools








Revision 244322
Author aakash_j...@apple.com
Date 2019-04-15 19:03:41 -0700 (Mon, 15 Apr 2019)


Log Message
Regression (r244291): Broken API Test AutoLayoutRenderingProgressRelativeOrdering
https://bugs.webkit.org/show_bug.cgi?id=196948

Reviewed by Zalan Bujtas.

* TestWebKitAPI/Tests/WebKitCocoa/AutoLayoutIntegration.mm:
(TEST): Disabling the test for now to keep infrastructure happy, while the root-cause is being investigated.

Modified Paths

trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/AutoLayoutIntegration.mm




Diff

Modified: trunk/Tools/ChangeLog (244321 => 244322)

--- trunk/Tools/ChangeLog	2019-04-16 02:01:32 UTC (rev 244321)
+++ trunk/Tools/ChangeLog	2019-04-16 02:03:41 UTC (rev 244322)
@@ -1,3 +1,13 @@
+2019-04-15  Aakash Jain  
+
+Regression (r244291): Broken API Test AutoLayoutRenderingProgressRelativeOrdering
+https://bugs.webkit.org/show_bug.cgi?id=196948
+
+Reviewed by Zalan Bujtas.
+
+* TestWebKitAPI/Tests/WebKitCocoa/AutoLayoutIntegration.mm:
+(TEST): Disabling the test for now to keep infrastructure happy, while the root-cause is being investigated.
+
 2019-04-15  Chris Dumez  
 
 URL set by document.open() is not communicated to the UIProcess


Modified: trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/AutoLayoutIntegration.mm (244321 => 244322)

--- trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/AutoLayoutIntegration.mm	2019-04-16 02:01:32 UTC (rev 244321)
+++ trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/AutoLayoutIntegration.mm	2019-04-16 02:03:41 UTC (rev 244322)
@@ -174,7 +174,7 @@
 [webView _setShouldExpandContentToViewHeightForAutoLayout:NO];
 }
 
-TEST(WebKit, AutoLayoutRenderingProgressRelativeOrdering)
+TEST(WebKit, DISABLED_AutoLayoutRenderingProgressRelativeOrdering)
 {
 RetainPtr webView = adoptNS([[AutoLayoutWKWebView alloc] initWithFrame:NSMakeRect(0, 0, 1000, 1000)]);
 






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [244321] trunk

2019-04-15 Thread cdumez
Title: [244321] trunk








Revision 244321
Author cdu...@apple.com
Date 2019-04-15 19:01:32 -0700 (Mon, 15 Apr 2019)


Log Message
URL set by document.open() is not communicated to the UIProcess
https://bugs.webkit.org/show_bug.cgi?id=196941


Reviewed by Geoffrey Garen.

Source/WebCore:

Notify the FrameLoaderClient whenever an explicit open was done and provide it with
the latest document URL.

* loader/FrameLoader.cpp:
(WebCore::FrameLoader::didExplicitOpen):
* loader/FrameLoaderClient.h:

Source/WebKit:

Whenever the UIProcess is notified of an explicit document.open() call, update the
PageLoadState to make sure the URL is up-to-date. Also make sure the page / process
knows it committed a load (i.e. It is no longer showing the initially empty document).

* UIProcess/PageLoadState.cpp:
(WebKit::PageLoadState::didExplicitOpen):
* UIProcess/PageLoadState.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::didExplicitOpenForFrame):
* UIProcess/WebPageProxy.h:
* UIProcess/WebPageProxy.messages.in:
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::dispatchDidExplicitOpen):
* WebProcess/WebCoreSupport/WebFrameLoaderClient.h:

Tools:

Add API test coverage.

* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit/open-window-then-write-to-it.html: Added.
* TestWebKitAPI/Tests/WebKitCocoa/OpenAndCloseWindow.mm:
(-[OpenWindowThenDocumentOpenUIDelegate webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:]):
(TEST):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/loader/FrameLoader.cpp
trunk/Source/WebCore/loader/FrameLoaderClient.h
trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/UIProcess/PageLoadState.cpp
trunk/Source/WebKit/UIProcess/PageLoadState.h
trunk/Source/WebKit/UIProcess/WebPageProxy.cpp
trunk/Source/WebKit/UIProcess/WebPageProxy.h
trunk/Source/WebKit/UIProcess/WebPageProxy.messages.in
trunk/Source/WebKit/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp
trunk/Source/WebKit/WebProcess/WebCoreSupport/WebFrameLoaderClient.h
trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj
trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/OpenAndCloseWindow.mm


Added Paths

trunk/Tools/TestWebKitAPI/Tests/WebKit/open-window-then-write-to-it.html




Diff

Modified: trunk/Source/WebCore/ChangeLog (244320 => 244321)

--- trunk/Source/WebCore/ChangeLog	2019-04-16 01:55:50 UTC (rev 244320)
+++ trunk/Source/WebCore/ChangeLog	2019-04-16 02:01:32 UTC (rev 244321)
@@ -1,3 +1,18 @@
+2019-04-15  Chris Dumez  
+
+URL set by document.open() is not communicated to the UIProcess
+https://bugs.webkit.org/show_bug.cgi?id=196941
+
+
+Reviewed by Geoffrey Garen.
+
+Notify the FrameLoaderClient whenever an explicit open was done and provide it with
+the latest document URL.
+
+* loader/FrameLoader.cpp:
+(WebCore::FrameLoader::didExplicitOpen):
+* loader/FrameLoaderClient.h:
+
 2019-04-15  Eike Rathke  
 
 Fix logic flow for error log


Modified: trunk/Source/WebCore/loader/FrameLoader.cpp (244320 => 244321)

--- trunk/Source/WebCore/loader/FrameLoader.cpp	2019-04-16 01:55:50 UTC (rev 244320)
+++ trunk/Source/WebCore/loader/FrameLoader.cpp	2019-04-16 02:01:32 UTC (rev 244321)
@@ -592,6 +592,8 @@
 // Calling document.open counts as committing the first real document load.
 if (!m_stateMachine.committedFirstRealDocumentLoad())
 m_stateMachine.advanceTo(FrameLoaderStateMachine::DisplayingInitialEmptyDocumentPostCommit);
+
+m_client.dispatchDidExplicitOpen(m_frame.document() ? m_frame.document()->url() : URL());
 
 // Prevent window.open(url) -- eg window.open("about:blank") -- from blowing away results
 // from a subsequent window.document.open / window.document.write call. 


Modified: trunk/Source/WebCore/loader/FrameLoaderClient.h (244320 => 244321)

--- trunk/Source/WebCore/loader/FrameLoaderClient.h	2019-04-16 01:55:50 UTC (rev 244320)
+++ trunk/Source/WebCore/loader/FrameLoaderClient.h	2019-04-16 02:01:32 UTC (rev 244321)
@@ -181,6 +181,7 @@
 virtual void dispatchDidFailLoad(const ResourceError&) = 0;
 virtual void dispatchDidFinishDocumentLoad() = 0;
 virtual void dispatchDidFinishLoad() = 0;
+virtual void dispatchDidExplicitOpen(const URL&) { }
 #if ENABLE(DATA_DETECTION)
 virtual void dispatchDidFinishDataDetection(NSArray *detectionResults) = 0;
 #endif


Modified: trunk/Source/WebKit/ChangeLog (244320 => 244321)

--- trunk/Source/WebKit/ChangeLog	2019-04-16 01:55:50 UTC (rev 244320)
+++ trunk/Source/WebKit/ChangeLog	2019-04-16 02:01:32 UTC (rev 244321)
@@ -1,3 +1,26 @@
+2019-04-15  Chris Dumez  
+
+URL set by document.open() is not communicated to the UIProcess
+https://bugs.webkit.org/show_bug.cgi?id=196941
+
+
+Reviewed by Geoffrey Garen.
+
+Whenever the UIProcess is notified of an explicit document.open() call, 

[webkit-changes] [244320] trunk/Source/WebCore

2019-04-15 Thread commit-queue
Title: [244320] trunk/Source/WebCore








Revision 244320
Author commit-qu...@webkit.org
Date 2019-04-15 18:55:50 -0700 (Mon, 15 Apr 2019)


Log Message
Fix logic flow for error log
https://bugs.webkit.org/show_bug.cgi?id=196933

Patch by Eike Rathke  on 2019-04-15
Reviewed by Alexey Proskuryakov.

Missing block braces logged an error always, not just
if (actionIfInvalid == Complain).

* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::isSafeToLoadURL):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/html/HTMLMediaElement.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (244319 => 244320)

--- trunk/Source/WebCore/ChangeLog	2019-04-16 01:43:30 UTC (rev 244319)
+++ trunk/Source/WebCore/ChangeLog	2019-04-16 01:55:50 UTC (rev 244320)
@@ -1,3 +1,16 @@
+2019-04-15  Eike Rathke  
+
+Fix logic flow for error log
+https://bugs.webkit.org/show_bug.cgi?id=196933
+
+Reviewed by Alexey Proskuryakov.
+
+Missing block braces logged an error always, not just
+if (actionIfInvalid == Complain).
+
+* html/HTMLMediaElement.cpp:
+(WebCore::HTMLMediaElement::isSafeToLoadURL):
+
 2019-04-15  Myles C. Maxfield  
 
 [Cocoa] FontPlatformData objects aren't cached at all when using font-family:system-ui


Modified: trunk/Source/WebCore/html/HTMLMediaElement.cpp (244319 => 244320)

--- trunk/Source/WebCore/html/HTMLMediaElement.cpp	2019-04-16 01:43:30 UTC (rev 244319)
+++ trunk/Source/WebCore/html/HTMLMediaElement.cpp	2019-04-16 01:55:50 UTC (rev 244320)
@@ -2098,9 +2098,10 @@
 
 RefPtr frame = document().frame();
 if (!frame || !document().securityOrigin().canDisplay(url)) {
-if (actionIfInvalid == Complain)
+if (actionIfInvalid == Complain) {
 FrameLoader::reportLocalLoadFailed(frame.get(), url.stringCenterEllipsizedToLength());
 ERROR_LOG(LOGIDENTIFIER, url , " was rejected by SecurityOrigin");
+}
 return false;
 }
 






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [244319] trunk/Source/WebKit

2019-04-15 Thread commit-queue
Title: [244319] trunk/Source/WebKit








Revision 244319
Author commit-qu...@webkit.org
Date 2019-04-15 18:43:30 -0700 (Mon, 15 Apr 2019)


Log Message
Stop using hyphenationFactor
https://bugs.webkit.org/show_bug.cgi?id=196949


Patch by Alex Christensen  on 2019-04-15
Reviewed by Geoffrey Garen.

* UIProcess/Cocoa/WKSafeBrowsingWarning.mm:
(-[WKSafeBrowsingTextView initWithAttributedString:forWarning:]):
I added this use of hyphenationFactor in r241124 but the other changes in that revision make the use of hyphenationFactor redundant.
There is a reason to remove it in the radar.

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/UIProcess/Cocoa/WKSafeBrowsingWarning.mm




Diff

Modified: trunk/Source/WebKit/ChangeLog (244318 => 244319)

--- trunk/Source/WebKit/ChangeLog	2019-04-16 01:43:00 UTC (rev 244318)
+++ trunk/Source/WebKit/ChangeLog	2019-04-16 01:43:30 UTC (rev 244319)
@@ -1,5 +1,18 @@
 2019-04-15  Alex Christensen  
 
+Stop using hyphenationFactor
+https://bugs.webkit.org/show_bug.cgi?id=196949
+
+
+Reviewed by Geoffrey Garen.
+
+* UIProcess/Cocoa/WKSafeBrowsingWarning.mm:
+(-[WKSafeBrowsingTextView initWithAttributedString:forWarning:]):
+I added this use of hyphenationFactor in r241124 but the other changes in that revision make the use of hyphenationFactor redundant.
+There is a reason to remove it in the radar.
+
+2019-04-15  Alex Christensen  
+
 Forward declare WKWebView in _WKDiagnosticLoggingDelegate.h
 
 * UIProcess/API/Cocoa/_WKDiagnosticLoggingDelegate.h:


Modified: trunk/Source/WebKit/UIProcess/Cocoa/WKSafeBrowsingWarning.mm (244318 => 244319)

--- trunk/Source/WebKit/UIProcess/Cocoa/WKSafeBrowsingWarning.mm	2019-04-16 01:43:00 UTC (rev 244318)
+++ trunk/Source/WebKit/UIProcess/Cocoa/WKSafeBrowsingWarning.mm	2019-04-16 01:43:30 UTC (rev 244319)
@@ -562,9 +562,6 @@
 #if !PLATFORM(MAC)
 self.scrollEnabled = NO;
 #endif
-#if PLATFORM(WATCHOS)
-self.layoutManager.hyphenationFactor = 1;
-#endif
 
 return self;
 }






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [244318] trunk/Source/WebInspectorUI

2019-04-15 Thread drousso
Title: [244318] trunk/Source/WebInspectorUI








Revision 244318
Author drou...@apple.com
Date 2019-04-15 18:43:00 -0700 (Mon, 15 Apr 2019)


Log Message
Web Inspector: update sheet rect whenever inspector window size changes
https://bugs.webkit.org/show_bug.cgi?id=196942


Reviewed by Joseph Pecoraro.

* UserInterface/Base/Main.js:
(WI.contentLoaded):
(WI._windowResized):
(WI._updateSheetRect): Added.

Modified Paths

trunk/Source/WebInspectorUI/ChangeLog
trunk/Source/WebInspectorUI/UserInterface/Base/Main.js




Diff

Modified: trunk/Source/WebInspectorUI/ChangeLog (244317 => 244318)

--- trunk/Source/WebInspectorUI/ChangeLog	2019-04-16 01:26:08 UTC (rev 244317)
+++ trunk/Source/WebInspectorUI/ChangeLog	2019-04-16 01:43:00 UTC (rev 244318)
@@ -1,3 +1,16 @@
+2019-04-15  Devin Rousso  
+
+Web Inspector: update sheet rect whenever inspector window size changes
+https://bugs.webkit.org/show_bug.cgi?id=196942
+
+
+Reviewed by Joseph Pecoraro.
+
+* UserInterface/Base/Main.js:
+(WI.contentLoaded):
+(WI._windowResized):
+(WI._updateSheetRect): Added.
+
 2019-04-15  Nikita Vasilyev  
 
 Unreviewed, fix typo in a comment.


Modified: trunk/Source/WebInspectorUI/UserInterface/Base/Main.js (244317 => 244318)

--- trunk/Source/WebInspectorUI/UserInterface/Base/Main.js	2019-04-16 01:26:08 UTC (rev 244317)
+++ trunk/Source/WebInspectorUI/UserInterface/Base/Main.js	2019-04-16 01:43:00 UTC (rev 244318)
@@ -583,8 +583,7 @@
 InspectorFrontendAPI.loadCompleted();
 });
 
-let mainElementRect = document.getElementById("main").getBoundingClientRect();
-InspectorFrontendHost.setSheetRect(mainElementRect.x, mainElementRect.y, mainElementRect.width, mainElementRect.height);
+WI._updateSheetRect();
 
 // Tell the InspectorFrontendHost we loaded, which causes the window to display
 // and pending InspectorFrontendAPI commands to be sent.
@@ -1678,8 +1677,15 @@
 WI.toolbar.updateLayout(WI.View.LayoutReason.Resize);
 WI.tabBar.updateLayout(WI.View.LayoutReason.Resize);
 WI._tabBrowserSizeDidChange();
+WI._updateSheetRect();
 };
 
+WI._updateSheetRect = function()
+{
+let mainElementRect = document.getElementById("main").getBoundingClientRect();
+InspectorFrontendHost.setSheetRect(mainElementRect.x, mainElementRect.y, mainElementRect.width, mainElementRect.height);
+};
+
 WI._updateModifierKeys = function(event)
 {
 let keys = {






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [244317] trunk/Source/WebKit

2019-04-15 Thread achristensen
Title: [244317] trunk/Source/WebKit








Revision 244317
Author achristen...@apple.com
Date 2019-04-15 18:26:08 -0700 (Mon, 15 Apr 2019)


Log Message
Forward declare WKWebView in _WKDiagnosticLoggingDelegate.h

* UIProcess/API/Cocoa/_WKDiagnosticLoggingDelegate.h:
This fixes builds where _WKDiagnosticLoggingDelegate.h is the only WebKit header included, such as my work on rdar://problem/35175989

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/UIProcess/API/Cocoa/_WKDiagnosticLoggingDelegate.h




Diff

Modified: trunk/Source/WebKit/ChangeLog (244316 => 244317)

--- trunk/Source/WebKit/ChangeLog	2019-04-16 01:19:27 UTC (rev 244316)
+++ trunk/Source/WebKit/ChangeLog	2019-04-16 01:26:08 UTC (rev 244317)
@@ -1,3 +1,10 @@
+2019-04-15  Alex Christensen  
+
+Forward declare WKWebView in _WKDiagnosticLoggingDelegate.h
+
+* UIProcess/API/Cocoa/_WKDiagnosticLoggingDelegate.h:
+This fixes builds where _WKDiagnosticLoggingDelegate.h is the only WebKit header included, such as my work on rdar://problem/35175989
+
 2019-04-15  Jer Noble  
 
 Add a DiagnosticLogging method taking an arbitrary dictionary of values.


Modified: trunk/Source/WebKit/UIProcess/API/Cocoa/_WKDiagnosticLoggingDelegate.h (244316 => 244317)

--- trunk/Source/WebKit/UIProcess/API/Cocoa/_WKDiagnosticLoggingDelegate.h	2019-04-16 01:19:27 UTC (rev 244316)
+++ trunk/Source/WebKit/UIProcess/API/Cocoa/_WKDiagnosticLoggingDelegate.h	2019-04-16 01:26:08 UTC (rev 244317)
@@ -33,6 +33,8 @@
 _WKDiagnosticLoggingResultNoop,
 } WK_API_AVAILABLE(macos(10.11), ios(9.0));
 
+@class WKWebView;
+
 @protocol _WKDiagnosticLoggingDelegate 
 @optional
 






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [244316] trunk/Source/bmalloc

2019-04-15 Thread yoshiaki . jitsukawa
Title: [244316] trunk/Source/bmalloc








Revision 244316
Author yoshiaki.jitsuk...@sony.com
Date 2019-04-15 18:19:27 -0700 (Mon, 15 Apr 2019)


Log Message
Unreviewed. Build fix after r244244.

* Source/bmalloc/bmalloc/AvailableMemory.cpp

Modified Paths

trunk/Source/bmalloc/ChangeLog
trunk/Source/bmalloc/bmalloc/AvailableMemory.cpp




Diff

Modified: trunk/Source/bmalloc/ChangeLog (244315 => 244316)

--- trunk/Source/bmalloc/ChangeLog	2019-04-16 00:51:04 UTC (rev 244315)
+++ trunk/Source/bmalloc/ChangeLog	2019-04-16 01:19:27 UTC (rev 244316)
@@ -1,3 +1,9 @@
+2019-04-15  Yoshiaki Jitsukawa  
+
+Unreviewed. Build fix after r244244.
+
+* bmalloc/AvailableMemory.cpp:
+
 2019-04-13  Zan Dobersek  
 
 [bmalloc][Linux] Add support for memory status calculation


Modified: trunk/Source/bmalloc/bmalloc/AvailableMemory.cpp (244315 => 244316)

--- trunk/Source/bmalloc/bmalloc/AvailableMemory.cpp	2019-04-16 00:51:04 UTC (rev 244315)
+++ trunk/Source/bmalloc/bmalloc/AvailableMemory.cpp	2019-04-16 01:19:27 UTC (rev 244316)
@@ -92,7 +92,7 @@
 }
 #endif
 
-#if BOS(UNIX)
+#if BOS(LINUX)
 struct LinuxMemory {
 static const LinuxMemory& singleton()
 {






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [244315] trunk

2019-04-15 Thread mmaxfield
Title: [244315] trunk








Revision 244315
Author mmaxfi...@apple.com
Date 2019-04-15 17:51:04 -0700 (Mon, 15 Apr 2019)


Log Message
[Cocoa] FontPlatformData objects aren't cached at all when using font-family:system-ui
https://bugs.webkit.org/show_bug.cgi?id=196846


Reviewed by Simon Fraser and Darin Adler.

PerformanceTests:

* Layout/system-ui-rebuild-emoji.html: Added.

Source/WebCore:

When adding the special codepath for system-ui to behave as an entire list of fonts rather than a single item,
I never added a cache for the FontPlatformData objects that codepath creates. The non-system-ui codepath already
has a cache in fontPlatformDataCache() in FontCache.cpp.

This patch causes a 16.8x performance improvement on the attached benchmark.

Test: PerformanceTests/Layout/system-ui-rebuild-emoji.html

* page/cocoa/MemoryReleaseCocoa.mm:
(WebCore::platformReleaseMemory):
* platform/graphics/cocoa/FontCacheCoreText.cpp:
(WebCore::invalidateFontCache):
* platform/graphics/cocoa/FontFamilySpecificationCoreText.cpp:
(WebCore::FontFamilySpecificationKey::FontFamilySpecificationKey):
(WebCore::FontFamilySpecificationKey::operator== const):
(WebCore::FontFamilySpecificationKey::operator!= const):
(WebCore::FontFamilySpecificationKey::isHashTableDeletedValue const):
(WebCore::FontFamilySpecificationKey::computeHash const):
(WebCore::FontFamilySpecificationKeyHash::hash):
(WebCore::FontFamilySpecificationKeyHash::equal):
(WebCore::fontMap):
(WebCore::clearFontFamilySpecificationCoreTextCache):
(WebCore::FontFamilySpecificationCoreText::fontRanges const):
* platform/graphics/cocoa/FontFamilySpecificationCoreText.h:
* platform/graphics/mac/ComplexTextControllerCoreText.mm:
(WebCore::ComplexTextController::collectComplexTextRunsForCharacters):
(WebCore::safeCFEqual): Deleted.

Source/WTF:

* wtf/RetainPtr.h:
(WTF::safeCFEqual):
(WTF::safeCFHash):

Modified Paths

trunk/PerformanceTests/ChangeLog
trunk/Source/WTF/ChangeLog
trunk/Source/WTF/wtf/RetainPtr.h
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/page/cocoa/MemoryReleaseCocoa.mm
trunk/Source/WebCore/platform/graphics/cocoa/FontCacheCoreText.cpp
trunk/Source/WebCore/platform/graphics/cocoa/FontFamilySpecificationCoreText.cpp
trunk/Source/WebCore/platform/graphics/cocoa/FontFamilySpecificationCoreText.h
trunk/Source/WebCore/platform/graphics/mac/ComplexTextControllerCoreText.mm


Added Paths

trunk/PerformanceTests/Layout/system-ui-rebuild-emoji.html




Diff

Modified: trunk/PerformanceTests/ChangeLog (244314 => 244315)

--- trunk/PerformanceTests/ChangeLog	2019-04-16 00:39:26 UTC (rev 244314)
+++ trunk/PerformanceTests/ChangeLog	2019-04-16 00:51:04 UTC (rev 244315)
@@ -1,3 +1,13 @@
+2019-04-15  Myles C. Maxfield  
+
+[Cocoa] FontPlatformData objects aren't cached at all when using font-family:system-ui
+https://bugs.webkit.org/show_bug.cgi?id=196846
+
+
+Reviewed by Simon Fraser and Darin Adler.
+
+* Layout/system-ui-rebuild-emoji.html: Added.
+
 2019-04-03  Myles C. Maxfield  
 
 -apple-trailing-word is needed for browser detection


Added: trunk/PerformanceTests/Layout/system-ui-rebuild-emoji.html (0 => 244315)

--- trunk/PerformanceTests/Layout/system-ui-rebuild-emoji.html	(rev 0)
+++ trunk/PerformanceTests/Layout/system-ui-rebuild-emoji.html	2019-04-16 00:51:04 UTC (rev 244315)
@@ -0,0 +1,56 @@
+
+
+
+
+
+#target {
+display: none;
+}
+
+
+
+
+
+
+

+
+

+
+