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

2017-06-20 Thread drousso
Title: [218624] trunk/Source/WebCore








Revision 218624
Author drou...@apple.com
Date 2017-06-20 21:17:46 -0700 (Tue, 20 Jun 2017)


Log Message
WebGPU contexts should have a back reference to the canvas element
https://bugs.webkit.org/show_bug.cgi?id=173633

Reviewed by Jon Lee.

No tests added, as this is already implemented within other canvas types.

* html/canvas/WebGPURenderingContext.idl:

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/html/canvas/WebGPURenderingContext.idl




Diff

Modified: trunk/Source/WebCore/ChangeLog (218623 => 218624)

--- trunk/Source/WebCore/ChangeLog	2017-06-21 03:13:18 UTC (rev 218623)
+++ trunk/Source/WebCore/ChangeLog	2017-06-21 04:17:46 UTC (rev 218624)
@@ -1,3 +1,14 @@
+2017-06-20  Devin Rousso  
+
+WebGPU contexts should have a back reference to the canvas element
+https://bugs.webkit.org/show_bug.cgi?id=173633
+
+Reviewed by Jon Lee.
+
+No tests added, as this is already implemented within other canvas types.
+
+* html/canvas/WebGPURenderingContext.idl:
+
 2017-06-20  Youenn Fablet  
 
 WebAudioSourceProvider should be thread safe ref counted


Modified: trunk/Source/WebCore/html/canvas/WebGPURenderingContext.idl (218623 => 218624)

--- trunk/Source/WebCore/html/canvas/WebGPURenderingContext.idl	2017-06-21 03:13:18 UTC (rev 218623)
+++ trunk/Source/WebCore/html/canvas/WebGPURenderingContext.idl	2017-06-21 04:17:46 UTC (rev 218624)
@@ -30,6 +30,8 @@
 JSCustomMarkFunction,
 DoNotCheckConstants
 ] interface WebGPURenderingContext {
+// back-reference to the canvas
+readonly attribute HTMLCanvasElement canvas;
 
 // Pixel formats
 






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


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

2017-06-20 Thread drousso
Title: [218623] trunk/Source/WebInspectorUI








Revision 218623
Author drou...@apple.com
Date 2017-06-20 20:13:18 -0700 (Tue, 20 Jun 2017)


Log Message
Web Inspector: change the selected ScopeBarItem on mousedown instead of click
https://bugs.webkit.org/show_bug.cgi?id=173586

Reviewed by Matt Baker.

Both the Tab bar and Sidebar navigation bar switch the active item on "mousedown" instead of
on "click". ScopeBarItem should follow this pattern, as it is faster and keeps consistency.

* UserInterface/Views/MultipleScopeBarItem.js:
(WebInspector.MultipleScopeBarItem):
(WebInspector.MultipleScopeBarItem.prototype._handleMouseDown):
(WebInspector.MultipleScopeBarItem.prototype._clicked): Deleted.
* UserInterface/Views/ScopeBarItem.js:
(WebInspector.ScopeBarItem):
(WebInspector.ScopeBarItem.prototype._handleMouseDown):
(WebInspector.ScopeBarItem.prototype._clicked): Deleted.

Modified Paths

trunk/Source/WebInspectorUI/ChangeLog
trunk/Source/WebInspectorUI/UserInterface/Views/MultipleScopeBarItem.js
trunk/Source/WebInspectorUI/UserInterface/Views/ScopeBarItem.js




Diff

Modified: trunk/Source/WebInspectorUI/ChangeLog (218622 => 218623)

--- trunk/Source/WebInspectorUI/ChangeLog	2017-06-21 03:05:39 UTC (rev 218622)
+++ trunk/Source/WebInspectorUI/ChangeLog	2017-06-21 03:13:18 UTC (rev 218623)
@@ -1,5 +1,24 @@
 2017-06-20  Devin Rousso  
 
+Web Inspector: change the selected ScopeBarItem on mousedown instead of click
+https://bugs.webkit.org/show_bug.cgi?id=173586
+
+Reviewed by Matt Baker.
+
+Both the Tab bar and Sidebar navigation bar switch the active item on "mousedown" instead of
+on "click". ScopeBarItem should follow this pattern, as it is faster and keeps consistency.
+
+* UserInterface/Views/MultipleScopeBarItem.js:
+(WebInspector.MultipleScopeBarItem):
+(WebInspector.MultipleScopeBarItem.prototype._handleMouseDown):
+(WebInspector.MultipleScopeBarItem.prototype._clicked): Deleted.
+* UserInterface/Views/ScopeBarItem.js:
+(WebInspector.ScopeBarItem):
+(WebInspector.ScopeBarItem.prototype._handleMouseDown):
+(WebInspector.ScopeBarItem.prototype._clicked): Deleted.
+
+2017-06-20  Devin Rousso  
+
 Web Inspector: Send context attributes for tracked canvases
 https://bugs.webkit.org/show_bug.cgi?id=173327
 


Modified: trunk/Source/WebInspectorUI/UserInterface/Views/MultipleScopeBarItem.js (218622 => 218623)

--- trunk/Source/WebInspectorUI/UserInterface/Views/MultipleScopeBarItem.js	2017-06-21 03:05:39 UTC (rev 218622)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/MultipleScopeBarItem.js	2017-06-21 03:13:18 UTC (rev 218623)
@@ -34,7 +34,7 @@
 
 this._titleElement = document.createElement("span");
 this._element.appendChild(this._titleElement);
-this._element.addEventListener("click", this._clicked.bind(this));
+this._element.addEventListener("mousedown", this._handleMouseDown.bind(this));
 
 this._selectElement = document.createElement("select");
 this._selectElement.addEventListener("change", this._selectElementSelectionChanged.bind(this));
@@ -164,12 +164,17 @@
 
 // Private
 
-_clicked(event)
+_handleMouseDown(event)
 {
+// Only handle left mouse clicks.
+if (event.button !== 0)
+return;
+
 // Only support click to select when the item is not selected yet.
 // Clicking when selected will cause the menu it appear instead.
 if (this._element.classList.contains("selected"))
 return;
+
 this.selected = true;
 }
 


Modified: trunk/Source/WebInspectorUI/UserInterface/Views/ScopeBarItem.js (218622 => 218623)

--- trunk/Source/WebInspectorUI/UserInterface/Views/ScopeBarItem.js	2017-06-21 03:05:39 UTC (rev 218622)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/ScopeBarItem.js	2017-06-21 03:13:18 UTC (rev 218623)
@@ -34,7 +34,7 @@
 if (className)
 this._element.classList.add(className);
 this._element.textContent = label;
-this._element.addEventListener("click", this._clicked.bind(this));
+this._element.addEventListener("mousedown", this._handleMouseDown.bind(this));
 
 this._id = id;
 this._label = label;
@@ -90,8 +90,12 @@
 
 // Private
 
-_clicked(event)
+_handleMouseDown(event)
 {
+// Only handle left mouse clicks.
+if (event.button !== 0)
+return;
+
 this.setSelected(!this.selected, event.metaKey && !event.ctrlKey && !event.altKey && !event.shiftKey);
 }
 };






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


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

2017-06-20 Thread commit-queue
Title: [218622] trunk/Source/WebCore








Revision 218622
Author commit-qu...@webkit.org
Date 2017-06-20 20:05:39 -0700 (Tue, 20 Jun 2017)


Log Message
WebAudioSourceProvider should be thread safe ref counted
https://bugs.webkit.org/show_bug.cgi?id=173623

Patch by Youenn Fablet  on 2017-06-20
Reviewed by Eric Carlson.

No observable change of behavior.

* platform/mediastream/WebAudioSourceProvider.h:

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/mediastream/WebAudioSourceProvider.h




Diff

Modified: trunk/Source/WebCore/ChangeLog (218621 => 218622)

--- trunk/Source/WebCore/ChangeLog	2017-06-21 01:04:25 UTC (rev 218621)
+++ trunk/Source/WebCore/ChangeLog	2017-06-21 03:05:39 UTC (rev 218622)
@@ -1,3 +1,14 @@
+2017-06-20  Youenn Fablet  
+
+WebAudioSourceProvider should be thread safe ref counted
+https://bugs.webkit.org/show_bug.cgi?id=173623
+
+Reviewed by Eric Carlson.
+
+No observable change of behavior.
+
+* platform/mediastream/WebAudioSourceProvider.h:
+
 2017-06-20  Yoav Weiss  
 
 [preload] Turn on preload's feature flag by default.


Modified: trunk/Source/WebCore/platform/mediastream/WebAudioSourceProvider.h (218621 => 218622)

--- trunk/Source/WebCore/platform/mediastream/WebAudioSourceProvider.h	2017-06-21 01:04:25 UTC (rev 218621)
+++ trunk/Source/WebCore/platform/mediastream/WebAudioSourceProvider.h	2017-06-21 03:05:39 UTC (rev 218622)
@@ -28,11 +28,11 @@
 #if ENABLE(WEB_AUDIO) && ENABLE(MEDIA_STREAM)
 
 #include "AudioSourceProvider.h"
-#include 
+#include 
 
 namespace WebCore {
 
-class WebAudioSourceProvider : public RefCounted, public AudioSourceProvider {
+class WebAudioSourceProvider : public ThreadSafeRefCounted, public AudioSourceProvider {
 };
 
 }






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


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

2017-06-20 Thread keith_miller
Title: [218619] trunk/Source/_javascript_Core








Revision 218619
Author keith_mil...@apple.com
Date 2017-06-20 17:32:25 -0700 (Tue, 20 Jun 2017)


Log Message
Fix leak of ModuleInformations in BBQPlan constructors.
https://bugs.webkit.org/show_bug.cgi?id=173577

Reviewed by Saam Barati.

This patch fixes a leak in the BBQPlan constructiors. Previously,
the plans were calling makeRef on the newly constructed objects.
This patch fixes the issue and uses adoptRef instead. Additionally,
an old, incorrect, attempt to fix the leak is removed.

* inspector/remote/cocoa/RemoteInspectorXPCConnection.mm:
(Inspector::RemoteInspectorXPCConnection::RemoteInspectorXPCConnection):
* jit/JITWorklist.cpp:
(JSC::JITWorklist::Thread::Thread):
* runtime/PromiseDeferredTimer.cpp:
(JSC::PromiseDeferredTimer::addPendingPromise):
* runtime/VM.cpp:
(JSC::VM::VM):
* wasm/WasmBBQPlan.cpp:
(JSC::Wasm::BBQPlan::BBQPlan):
* wasm/WasmPlan.cpp:
(JSC::Wasm::Plan::Plan):

Modified Paths

trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/runtime/PromiseDeferredTimer.cpp
trunk/Source/_javascript_Core/wasm/WasmBBQPlan.cpp
trunk/Source/_javascript_Core/wasm/WasmPlan.cpp




Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (218618 => 218619)

--- trunk/Source/_javascript_Core/ChangeLog	2017-06-21 00:07:41 UTC (rev 218618)
+++ trunk/Source/_javascript_Core/ChangeLog	2017-06-21 00:32:25 UTC (rev 218619)
@@ -1,3 +1,28 @@
+2017-06-20  Keith Miller  
+
+Fix leak of ModuleInformations in BBQPlan constructors.
+https://bugs.webkit.org/show_bug.cgi?id=173577
+
+Reviewed by Saam Barati.
+
+This patch fixes a leak in the BBQPlan constructiors. Previously,
+the plans were calling makeRef on the newly constructed objects.
+This patch fixes the issue and uses adoptRef instead. Additionally,
+an old, incorrect, attempt to fix the leak is removed.
+
+* inspector/remote/cocoa/RemoteInspectorXPCConnection.mm:
+(Inspector::RemoteInspectorXPCConnection::RemoteInspectorXPCConnection):
+* jit/JITWorklist.cpp:
+(JSC::JITWorklist::Thread::Thread):
+* runtime/PromiseDeferredTimer.cpp:
+(JSC::PromiseDeferredTimer::addPendingPromise):
+* runtime/VM.cpp:
+(JSC::VM::VM):
+* wasm/WasmBBQPlan.cpp:
+(JSC::Wasm::BBQPlan::BBQPlan):
+* wasm/WasmPlan.cpp:
+(JSC::Wasm::Plan::Plan):
+
 2017-06-20  Devin Rousso  
 
 Web Inspector: Send context attributes for tracked canvases


Modified: trunk/Source/_javascript_Core/runtime/PromiseDeferredTimer.cpp (218618 => 218619)

--- trunk/Source/_javascript_Core/runtime/PromiseDeferredTimer.cpp	2017-06-21 00:07:41 UTC (rev 218618)
+++ trunk/Source/_javascript_Core/runtime/PromiseDeferredTimer.cpp	2017-06-21 00:32:25 UTC (rev 218619)
@@ -109,10 +109,8 @@
 dependencies.append(Strong(*m_vm, ticket));
 result.iterator->value = WTFMove(dependencies);
 } else {
-// We need to make sure we move dependencies into a non-reference type so we actually destruct it.
-Vector deps = WTFMove(dependencies);
 dataLogLnIf(verbose, "Adding new dependencies for promise: ", RawPointer(ticket));
-result.iterator->value.appendVector(deps);
+result.iterator->value.appendVector(dependencies);
 }
 
 #ifndef NDEBUG


Modified: trunk/Source/_javascript_Core/wasm/WasmBBQPlan.cpp (218618 => 218619)

--- trunk/Source/_javascript_Core/wasm/WasmBBQPlan.cpp	2017-06-21 00:07:41 UTC (rev 218618)
+++ trunk/Source/_javascript_Core/wasm/WasmBBQPlan.cpp	2017-06-21 00:32:25 UTC (rev 218619)
@@ -59,7 +59,7 @@
 }
 
 BBQPlan::BBQPlan(VM* vm, Vector&& source, AsyncWork work, CompletionTask&& task)
-: BBQPlan(vm, makeRef(*new ModuleInformation(WTFMove(source))), work, WTFMove(task))
+: BBQPlan(vm, adoptRef(*new ModuleInformation(WTFMove(source))), work, WTFMove(task))
 {
 m_state = State::Initial;
 }


Modified: trunk/Source/_javascript_Core/wasm/WasmPlan.cpp (218618 => 218619)

--- trunk/Source/_javascript_Core/wasm/WasmPlan.cpp	2017-06-21 00:07:41 UTC (rev 218618)
+++ trunk/Source/_javascript_Core/wasm/WasmPlan.cpp	2017-06-21 00:32:25 UTC (rev 218619)
@@ -59,7 +59,7 @@
 }
 
 Plan::Plan(VM* vm, const uint8_t* source, size_t sourceLength, CompletionTask&& task)
-: m_moduleInformation(makeRef(*new ModuleInformation(Vector(
+: m_moduleInformation(adoptRef(*new ModuleInformation(Vector(
 , m_source(source)
 , m_sourceLength(sourceLength)
 {






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


[webkit-changes] [218618] trunk

Title: [218618] trunk








Revision 218618
Author drou...@apple.com
Date 2017-06-20 17:07:41 -0700 (Tue, 20 Jun 2017)


Log Message
Web Inspector: Send context attributes for tracked canvases
https://bugs.webkit.org/show_bug.cgi?id=173327

Reviewed by Joseph Pecoraro.

Source/_javascript_Core:

* inspector/protocol/Canvas.json:
Add ContextAttributes object type that is optionally used for WebGL canvases.

Source/WebCore:

Test: inspector/canvas/context-attributes.html

* inspector/InspectorCanvasAgent.cpp:
(WebCore::InspectorCanvasAgent::buildObjectForCanvas):

Source/WebInspectorUI:

* UserInterface/Models/Canvas.js:
(WebInspector.Canvas.fromPayload):
(WebInspector.Canvas.prototype.get contextAttributes):
* UserInterface/Views/CanvasDetailsSidebarPanel.js:
(WebInspector.CanvasDetailsSidebarPanel.prototype.initialLayout):
(WebInspector.CanvasDetailsSidebarPanel.prototype.layout):
(WebInspector.CanvasDetailsSidebarPanel.prototype.sizeDidChange):
(WebInspector.CanvasDetailsSidebarPanel.prototype._refreshAttributesSection):

* UserInterface/Views/DataGridNode.js:
(WebInspector.DataGridNode.prototype.createCellContent):
Instead of checking if the value of the cell is falsy, check that the key exists in the data.
This allows values like `false` to be displayed.

LayoutTests:

* inspector/canvas/context-attributes-expected.txt: Added.
* inspector/canvas/context-attributes.html: Added.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/inspector/protocol/Canvas.json
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/inspector/InspectorCanvasAgent.cpp
trunk/Source/WebInspectorUI/ChangeLog
trunk/Source/WebInspectorUI/UserInterface/Models/Canvas.js
trunk/Source/WebInspectorUI/UserInterface/Views/CanvasDetailsSidebarPanel.js
trunk/Source/WebInspectorUI/UserInterface/Views/DataGridNode.js


Added Paths

trunk/LayoutTests/inspector/canvas/context-attributes-expected.txt
trunk/LayoutTests/inspector/canvas/context-attributes.html




Diff

Modified: trunk/LayoutTests/ChangeLog (218617 => 218618)

--- trunk/LayoutTests/ChangeLog	2017-06-21 00:02:14 UTC (rev 218617)
+++ trunk/LayoutTests/ChangeLog	2017-06-21 00:07:41 UTC (rev 218618)
@@ -1,3 +1,13 @@
+2017-06-20  Devin Rousso  
+
+Web Inspector: Send context attributes for tracked canvases
+https://bugs.webkit.org/show_bug.cgi?id=173327
+
+Reviewed by Joseph Pecoraro.
+
+* inspector/canvas/context-attributes-expected.txt: Added.
+* inspector/canvas/context-attributes.html: Added.
+
 2017-06-20  Matt Lewis  
 
 Marked webrtc/video-replace-muted-track.html as flaky.


Added: trunk/LayoutTests/inspector/canvas/context-attributes-expected.txt (0 => 218618)

--- trunk/LayoutTests/inspector/canvas/context-attributes-expected.txt	(rev 0)
+++ trunk/LayoutTests/inspector/canvas/context-attributes-expected.txt	2017-06-21 00:07:41 UTC (rev 218618)
@@ -0,0 +1,36 @@
+Test that CanvasAgent is able to send context attributes.
+
+
+== Running test suite: Canvas.contextAttributes
+-- Running test case: Create2DCanvasContext
+Added canvas.
+PASS: Canvas context should be "2D".
+{}
+
+-- Running test case: CreateWebGLCanvasContext
+Added canvas.
+PASS: Canvas context should be "WebGL".
+{
+  "alpha": true,
+  "depth": true,
+  "stencil": false,
+  "antialias": true,
+  "premultipliedAlpha": true,
+  "preserveDrawingBuffer": false,
+  "failIfMajorPerformanceCaveat": false
+}
+
+-- Running test case: CreateWebGLCanvasContextWithAttributes
+Added canvas.
+PASS: Canvas context should be "WebGL".
+{
+  "alpha": false,
+  "depth": true,
+  "stencil": false,
+  "antialias": true,
+  "premultipliedAlpha": true,
+  "preserveDrawingBuffer": false,
+  "failIfMajorPerformanceCaveat": false
+}
+PASS: Canvas context should have attribute "alpha" with value "false".
+


Added: trunk/LayoutTests/inspector/canvas/context-attributes.html (0 => 218618)

--- trunk/LayoutTests/inspector/canvas/context-attributes.html	(rev 0)
+++ trunk/LayoutTests/inspector/canvas/context-attributes.html	2017-06-21 00:07:41 UTC (rev 218618)
@@ -0,0 +1,69 @@
+
+
+
+
+let contexts = [];
+
+function createCanvas(contextType, attributes) {
+let canvas = document.body.appendChild(document.createElement("canvas"));
+contexts.push(canvas.getContext(contextType, attributes));
+}
+
+function test() {
+let suite = InspectorTest.createAsyncSuite("Canvas.contextAttributes");
+
+function addTestCase({name, contextType, contextAttributes}) {
+contextAttributes = contextAttributes || {};
+
+suite.addTestCase({
+name,
+description: "Check that created canvases have the correct type and attributes sent to the frontend.",
+test(resolve, reject) {
+WebInspector.canvasManager.awaitEvent(WebInspector.CanvasManager.Event.CanvasWasAdded)
+.then((event) => 

[webkit-changes] [218617] trunk/LayoutTests

Title: [218617] trunk/LayoutTests








Revision 218617
Author jlew...@apple.com
Date 2017-06-20 17:02:14 -0700 (Tue, 20 Jun 2017)


Log Message
Marked webrtc/video-replace-muted-track.html as flaky.
https://bugs.webkit.org/show_bug.cgi?id=173486

Unreviewed test gardening.

* platform/ios-wk2/TestExpectations:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/platform/ios-wk2/TestExpectations




Diff

Modified: trunk/LayoutTests/ChangeLog (218616 => 218617)

--- trunk/LayoutTests/ChangeLog	2017-06-20 23:52:22 UTC (rev 218616)
+++ trunk/LayoutTests/ChangeLog	2017-06-21 00:02:14 UTC (rev 218617)
@@ -1,3 +1,12 @@
+2017-06-20  Matt Lewis  
+
+Marked webrtc/video-replace-muted-track.html as flaky.
+https://bugs.webkit.org/show_bug.cgi?id=173486
+
+Unreviewed test gardening.
+
+* platform/ios-wk2/TestExpectations:
+
 2017-06-20  Myles C. Maxfield  
 
 [Cocoa] The system Japanese font cannot be italicized


Modified: trunk/LayoutTests/platform/ios-wk2/TestExpectations (218616 => 218617)

--- trunk/LayoutTests/platform/ios-wk2/TestExpectations	2017-06-20 23:52:22 UTC (rev 218616)
+++ trunk/LayoutTests/platform/ios-wk2/TestExpectations	2017-06-21 00:02:14 UTC (rev 218617)
@@ -1967,3 +1967,6 @@
 webkit.org/b/170870 webrtc/captureCanvas-webrtc.html [ Pass Timeout ]
 
 webkit.org/b/167757 [ Release ] workers/bomb.html [ Pass Timeout ]
+
+webkit.org/b/173486 webrtc/video-replace-muted-track.html [ Pass Failure ]
+






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


[webkit-changes] [218616] trunk

Title: [218616] trunk








Revision 218616
Author mmaxfi...@apple.com
Date 2017-06-20 16:52:22 -0700 (Tue, 20 Jun 2017)


Log Message
[Cocoa] The system Japanese font cannot be italicized
https://bugs.webkit.org/show_bug.cgi?id=173300


Reviewed by Ryosuke Niwa.

Source/WebCore:

Items in the system font cascade list may lie about whether or not they support italics.
In order to get the truth, we need to use the physical font underlying the font in question,
because this one won't lie. Then, we can interrogate this physical font about its traits
in order to synthesize italics correctly.

Test: fast/text/system-font-japanese-synthetic-italic.html

* platform/graphics/cocoa/FontCacheCoreText.cpp:
(WebCore::lookupFallbackFont):
* platform/graphics/cocoa/FontFamilySpecificationCoreText.cpp:
(WebCore::FontFamilySpecificationCoreText::fontRanges):

LayoutTests:

* fast/text/system-font-japanese-synthetic-italic-expected-mismatch.html: Added.
* fast/text/system-font-japanese-synthetic-italic.html: Added.
* platform/mac/TestExpectations: This codepath doesn't work in El Capitan.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/platform/mac/TestExpectations
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/graphics/cocoa/FontCacheCoreText.cpp
trunk/Source/WebCore/platform/graphics/cocoa/FontFamilySpecificationCoreText.cpp


Added Paths

trunk/LayoutTests/fast/text/system-font-japanese-synthetic-italic-expected-mismatch.html
trunk/LayoutTests/fast/text/system-font-japanese-synthetic-italic.html




Diff

Modified: trunk/LayoutTests/ChangeLog (218615 => 218616)

--- trunk/LayoutTests/ChangeLog	2017-06-20 23:42:18 UTC (rev 218615)
+++ trunk/LayoutTests/ChangeLog	2017-06-20 23:52:22 UTC (rev 218616)
@@ -1,3 +1,15 @@
+2017-06-20  Myles C. Maxfield  
+
+[Cocoa] The system Japanese font cannot be italicized
+https://bugs.webkit.org/show_bug.cgi?id=173300
+
+
+Reviewed by Ryosuke Niwa.
+
+* fast/text/system-font-japanese-synthetic-italic-expected-mismatch.html: Added.
+* fast/text/system-font-japanese-synthetic-italic.html: Added.
+* platform/mac/TestExpectations: This codepath doesn't work in El Capitan.
+
 2017-06-20  Ryan Haddad  
 
 Unreviewed, rolling out r218524.


Added: trunk/LayoutTests/fast/text/system-font-japanese-synthetic-italic-expected-mismatch.html (0 => 218616)

--- trunk/LayoutTests/fast/text/system-font-japanese-synthetic-italic-expected-mismatch.html	(rev 0)
+++ trunk/LayoutTests/fast/text/system-font-japanese-synthetic-italic-expected-mismatch.html	2017-06-20 23:52:22 UTC (rev 218616)
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+This test makes sure that the Japanese system font can be italicized. The test passes if the character below is oblique (either because the font supports it or because WebKit synthesizes the oblique).
+の
+
+


Added: trunk/LayoutTests/fast/text/system-font-japanese-synthetic-italic.html (0 => 218616)

--- trunk/LayoutTests/fast/text/system-font-japanese-synthetic-italic.html	(rev 0)
+++ trunk/LayoutTests/fast/text/system-font-japanese-synthetic-italic.html	2017-06-20 23:52:22 UTC (rev 218616)
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+This test makes sure that the Japanese system font can be italicized. The test passes if the character below is oblique (either because the font supports it or because WebKit synthesizes the oblique).
+の
+
+


Modified: trunk/LayoutTests/platform/mac/TestExpectations (218615 => 218616)

--- trunk/LayoutTests/platform/mac/TestExpectations	2017-06-20 23:42:18 UTC (rev 218615)
+++ trunk/LayoutTests/platform/mac/TestExpectations	2017-06-20 23:52:22 UTC (rev 218616)
@@ -1605,3 +1605,4 @@
 
 webkit.org/b/173487 imported/w3c/web-platform-tests/IndexedDB/large-nested-cloning.html [ Pass Failure ]
 
+webkit.org/b/313156 [ ElCapitan ] fast/text/system-font-japanese-synthetic-italic.html [ ImageOnlyFailure ]


Modified: trunk/Source/WebCore/ChangeLog (218615 => 218616)

--- trunk/Source/WebCore/ChangeLog	2017-06-20 23:42:18 UTC (rev 218615)
+++ trunk/Source/WebCore/ChangeLog	2017-06-20 23:52:22 UTC (rev 218616)
@@ -1,3 +1,23 @@
+2017-06-20  Myles C. Maxfield  
+
+[Cocoa] The system Japanese font cannot be italicized
+https://bugs.webkit.org/show_bug.cgi?id=173300
+
+
+Reviewed by Ryosuke Niwa.
+
+Items in the system font cascade list may lie about whether or not they support italics.
+In order to get the truth, we need to use the physical font underlying the font in question,
+because this one won't lie. Then, we can interrogate this physical font about its traits
+in order to synthesize italics correctly.
+
+Test: fast/text/system-font-japanese-synthetic-italic.html
+
+* platform/graphics/cocoa/FontCacheCoreText.cpp:
+(WebCore::lookupFallbackFont):
+* 

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

Title: [218615] trunk/Source/WebCore








Revision 218615
Author cdu...@apple.com
Date 2017-06-20 16:42:18 -0700 (Tue, 20 Jun 2017)


Log Message
Use WTF::Function instead of std::function in more places in WebCore/
https://bugs.webkit.org/show_bug.cgi?id=173583

Reviewed by Darin Adler.

Use WTF::Function instead of std::function in more places in WebCore/ to
reduce copying.

* page/Page.cpp:
* platform/HysteresisActivity.h:
(WebCore::HysteresisActivity::HysteresisActivity):
* platform/Logging.cpp:
(WebCore::registerNotifyCallback):
* platform/Logging.h:
* platform/MainThreadSharedTimer.cpp:
(WebCore::MainThreadSharedTimer::setFiredFunction):
* platform/MainThreadSharedTimer.h:
* platform/PlatformPasteboard.h:
* platform/ScopeGuard.h:
(WebCore::ScopeGuard::ScopeGuard):
(WebCore::ScopeGuard::enable):
* platform/ScrollAnimationSmooth.cpp:
(WebCore::ScrollAnimationSmooth::ScrollAnimationSmooth):
* platform/ScrollAnimationSmooth.h:
* platform/SharedTimer.h:
* platform/audio/PlatformMediaSessionManager.cpp:
(WebCore::PlatformMediaSessionManager::currentSessionsMatching):
* platform/audio/PlatformMediaSessionManager.h:
* platform/cf/MainThreadSharedTimerCF.cpp:
(WebCore::setupPowerObserver):
* platform/cf/RunLoopObserver.h:
(WebCore::RunLoopObserver::RunLoopObserver):
* platform/graphics/GraphicsContext.h:
* platform/graphics/GraphicsLayer.cpp:
(WebCore::GraphicsLayer::traverse):
* platform/graphics/GraphicsLayer.h:
* platform/graphics/MediaPlayer.cpp:
(WebCore::addMediaEngine):
* platform/graphics/MediaPlayer.h:
* platform/graphics/Path.h:
* platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
(WebCore::MediaPlayerPrivateAVFoundation::seekCompleted):
(WebCore::MediaPlayerPrivateAVFoundation::scheduleMainThreadNotification):
(WebCore::MediaPlayerPrivateAVFoundation::dispatchNotification):
* platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
(WebCore::MediaPlayerPrivateAVFoundation::Notification::Notification):
(WebCore::MediaPlayerPrivateAVFoundation::Notification::function):
* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(-[WebCoreAVFMovieObserver observeValueForKeyPath:ofObject:change:context:]):
* platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm:
(WebCore::runWithoutAnimations):
* platform/graphics/cocoa/IOSurface.h:
* platform/graphics/cocoa/IOSurface.mm:
(WebCore::IOSurface::convertToFormat):
* platform/graphics/gstreamer/MainThreadNotifier.h:
* platform/graphics/gstreamer/MediaPlayerRequestInstallMissingPluginsCallback.h:
(WebCore::MediaPlayerRequestInstallMissingPluginsCallback::create):
(WebCore::MediaPlayerRequestInstallMissingPluginsCallback::MediaPlayerRequestInstallMissingPluginsCallback):
* platform/graphics/win/GraphicsContextDirect2D.cpp:
(WebCore::GraphicsContext::drawWithoutShadow):
(WebCore::GraphicsContext::drawWithShadow):
* platform/gtk/PasteboardHelper.cpp:
(WebCore::ClipboardSetData::ClipboardSetData):
(WebCore::PasteboardHelper::writeClipboardContents):
* platform/gtk/PasteboardHelper.h:
* platform/gtk/PlatformPasteboardGtk.cpp:
(WebCore::PlatformPasteboard::writeToClipboard):
* platform/ios/WebVideoFullscreenInterfaceAVKit.h:
* platform/ios/WebVideoFullscreenInterfaceAVKit.mm:
(WebVideoFullscreenInterfaceAVKit::preparedToReturnToInline):
(WebVideoFullscreenInterfaceAVKit::fullscreenMayReturnToInline):
* platform/mac/PowerObserverMac.cpp:
(WebCore::PowerObserver::PowerObserver):
* platform/mac/PowerObserverMac.h:
* platform/mac/WebCoreNSURLExtras.mm:
(WebCore::isSecondLevelDomainNameAllowedByTLDRules):
* platform/mediastream/CaptureDeviceManager.cpp:
(CaptureDeviceManager::addCaptureDeviceChangedObserver):
* platform/mediastream/CaptureDeviceManager.h:
* platform/mediastream/RealtimeMediaSource.cpp:
(WebCore::RealtimeMediaSource::scheduleDeferredTask):
* platform/mediastream/RealtimeMediaSource.h:
* platform/mediastream/ios/AVAudioSessionCaptureDeviceManager.mm:
(-[WebAVAudioSessionAvailableInputsListener initWithCallback:]):
* platform/mediastream/mac/CoreAudioCaptureSource.h:
* platform/mock/ScrollAnimatorMock.cpp:
(WebCore::ScrollAnimatorMock::ScrollAnimatorMock):
* platform/mock/ScrollAnimatorMock.h:
* platform/network/CookieStorage.h:
* platform/network/NetworkStateNotifier.cpp:
(WebCore::NetworkStateNotifier::addNetworkStateChangeListener):
* platform/network/NetworkStateNotifier.h:
* platform/network/NetworkStorageSession.cpp:
(WebCore::NetworkStorageSession::forEach):
* platform/network/NetworkStorageSession.h:
* platform/network/cf/CookieStorageCFNet.cpp:
(WebCore::cookieChangeCallbackMap):
(WebCore::startObservingCookieChanges):
* platform/network/cf/SocketStreamHandleImplCFNet.cpp:
(WebCore::callOnMainThreadAndWait):
* platform/network/mac/CookieStorageMac.mm:
(-[WebCookieStorageObjCAdapter startListeningForCookieChangeNotificationsWithCallback:]):
(WebCore::startObservingCookieChanges):
* platform/network/soup/CookieStorageSoup.cpp:
(WebCore::startObservingCookieChanges):
* 

[webkit-changes] [218614] trunk

Title: [218614] trunk








Revision 218614
Author ryanhad...@apple.com
Date 2017-06-20 16:22:16 -0700 (Tue, 20 Jun 2017)


Log Message
Unreviewed, rolling out r218524.

This change broke internal builds.

Reverted changeset:

"[Cocoa] The system Japanese font cannot be italicized"
https://bugs.webkit.org/show_bug.cgi?id=173300
http://trac.webkit.org/changeset/218524

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/platform/mac/TestExpectations
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/graphics/cocoa/FontCacheCoreText.cpp
trunk/Source/WebCore/platform/graphics/cocoa/FontFamilySpecificationCoreText.cpp


Removed Paths

trunk/LayoutTests/fast/text/system-font-japanese-synthetic-italic-expected-mismatch.html
trunk/LayoutTests/fast/text/system-font-japanese-synthetic-italic.html




Diff

Modified: trunk/LayoutTests/ChangeLog (218613 => 218614)

--- trunk/LayoutTests/ChangeLog	2017-06-20 22:57:50 UTC (rev 218613)
+++ trunk/LayoutTests/ChangeLog	2017-06-20 23:22:16 UTC (rev 218614)
@@ -1,3 +1,15 @@
+2017-06-20  Ryan Haddad  
+
+Unreviewed, rolling out r218524.
+
+This change broke internal builds.
+
+Reverted changeset:
+
+"[Cocoa] The system Japanese font cannot be italicized"
+https://bugs.webkit.org/show_bug.cgi?id=173300
+http://trac.webkit.org/changeset/218524
+
 2017-06-20  Simon Fraser  
 
  [REGRESSION] r218374: fast/events/ios/rotation/layout-viewport-during-safari-type-rotation.html


Deleted: trunk/LayoutTests/fast/text/system-font-japanese-synthetic-italic-expected-mismatch.html (218613 => 218614)

--- trunk/LayoutTests/fast/text/system-font-japanese-synthetic-italic-expected-mismatch.html	2017-06-20 22:57:50 UTC (rev 218613)
+++ trunk/LayoutTests/fast/text/system-font-japanese-synthetic-italic-expected-mismatch.html	2017-06-20 23:22:16 UTC (rev 218614)
@@ -1,10 +0,0 @@
-
-
-
-
-
-
-This test makes sure that the Japanese system font can be italicized. The test passes if the character below is oblique (either because the font supports it or because WebKit synthesizes the oblique).
-の
-
-


Deleted: trunk/LayoutTests/fast/text/system-font-japanese-synthetic-italic.html (218613 => 218614)

--- trunk/LayoutTests/fast/text/system-font-japanese-synthetic-italic.html	2017-06-20 22:57:50 UTC (rev 218613)
+++ trunk/LayoutTests/fast/text/system-font-japanese-synthetic-italic.html	2017-06-20 23:22:16 UTC (rev 218614)
@@ -1,10 +0,0 @@
-
-
-
-
-
-
-This test makes sure that the Japanese system font can be italicized. The test passes if the character below is oblique (either because the font supports it or because WebKit synthesizes the oblique).
-の
-
-


Modified: trunk/LayoutTests/platform/mac/TestExpectations (218613 => 218614)

--- trunk/LayoutTests/platform/mac/TestExpectations	2017-06-20 22:57:50 UTC (rev 218613)
+++ trunk/LayoutTests/platform/mac/TestExpectations	2017-06-20 23:22:16 UTC (rev 218614)
@@ -1605,4 +1605,3 @@
 
 webkit.org/b/173487 imported/w3c/web-platform-tests/IndexedDB/large-nested-cloning.html [ Pass Failure ]
 
-webkit.org/b/313156 [ ElCapitan ] fast/text/system-font-japanese-synthetic-italic.html [ ImageOnlyFailure ]


Modified: trunk/Source/WebCore/ChangeLog (218613 => 218614)

--- trunk/Source/WebCore/ChangeLog	2017-06-20 22:57:50 UTC (rev 218613)
+++ trunk/Source/WebCore/ChangeLog	2017-06-20 23:22:16 UTC (rev 218614)
@@ -1,3 +1,15 @@
+2017-06-20  Ryan Haddad  
+
+Unreviewed, rolling out r218524.
+
+This change broke internal builds.
+
+Reverted changeset:
+
+"[Cocoa] The system Japanese font cannot be italicized"
+https://bugs.webkit.org/show_bug.cgi?id=173300
+http://trac.webkit.org/changeset/218524
+
 2017-06-20  Daniel Bates  
 
 Have FrameLoadRequest takes a Frame& instead of a Frame*


Modified: trunk/Source/WebCore/platform/graphics/cocoa/FontCacheCoreText.cpp (218613 => 218614)

--- trunk/Source/WebCore/platform/graphics/cocoa/FontCacheCoreText.cpp	2017-06-20 22:57:50 UTC (rev 218613)
+++ trunk/Source/WebCore/platform/graphics/cocoa/FontCacheCoreText.cpp	2017-06-20 23:22:16 UTC (rev 218614)
@@ -1292,12 +1292,7 @@
 #endif
 
 CFIndex coveredLength = 0;
-RetainPtr result;
-#if USE_PLATFORM_SYSTEM_FALLBACK_LIST || (PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED < 101200)
-result = adoptCF(CTFontCreateForCharactersWithLanguage(font, characters, length, localeString.get(), ));
-#else
-result = adoptCF(CTFontCreatePhysicalFontForCharactersWithLanguage(font, characters, length, localeString.get(), ));
-#endif
+auto result = adoptCF(CTFontCreateForCharactersWithLanguage(font, characters, length, localeString.get(), ));
 
 #if PLATFORM(IOS)
 // Callers of this function won't include multiple code points. "Length" is to know how many code units


Modified: 

[webkit-changes] [218613] trunk/LayoutTests

Title: [218613] trunk/LayoutTests








Revision 218613
Author simon.fra...@apple.com
Date 2017-06-20 15:57:50 -0700 (Tue, 20 Jun 2017)


Log Message
 [REGRESSION] r218374: fast/events/ios/rotation/layout-viewport-during-safari-type-rotation.html

Rebaseline.

* fast/events/ios/rotation/layout-viewport-during-safari-type-rotation-expected.txt:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/fast/events/ios/rotation/layout-viewport-during-safari-type-rotation-expected.txt




Diff

Modified: trunk/LayoutTests/ChangeLog (218612 => 218613)

--- trunk/LayoutTests/ChangeLog	2017-06-20 22:54:58 UTC (rev 218612)
+++ trunk/LayoutTests/ChangeLog	2017-06-20 22:57:50 UTC (rev 218613)
@@ -1,3 +1,11 @@
+2017-06-20  Simon Fraser  
+
+ [REGRESSION] r218374: fast/events/ios/rotation/layout-viewport-during-safari-type-rotation.html
+
+Rebaseline.
+
+* fast/events/ios/rotation/layout-viewport-during-safari-type-rotation-expected.txt:
+
 2017-06-20  Ryan Haddad  
 
 Rebaseline fast/events/touch/document-create-touch-list tests.


Modified: trunk/LayoutTests/fast/events/ios/rotation/layout-viewport-during-safari-type-rotation-expected.txt (218612 => 218613)

--- trunk/LayoutTests/fast/events/ios/rotation/layout-viewport-during-safari-type-rotation-expected.txt	2017-06-20 22:54:58 UTC (rev 218612)
+++ trunk/LayoutTests/fast/events/ios/rotation/layout-viewport-during-safari-type-rotation-expected.txt	2017-06-20 22:57:50 UTC (rev 218613)
@@ -15,7 +15,7 @@
 client rect of fixed object:0, 0 - 568 x 320
 
 After rotation
-layoutViewport: 0, 0 - 568 x 548
+layoutViewport: 0, 0 - 568 x 320
 visualViewport: 0, 0 - 568 x 320
-client rect of fixed object:0, 0 - 568 x 548
+client rect of fixed object:0, 0 - 568 x 320
 






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


[webkit-changes] [218612] trunk/LayoutTests

Title: [218612] trunk/LayoutTests








Revision 218612
Author ryanhad...@apple.com
Date 2017-06-20 15:54:58 -0700 (Tue, 20 Jun 2017)


Log Message
Rebaseline fast/events/touch/document-create-touch-list tests.

Unreviewed test gardening.

* fast/events/touch/document-create-touch-list-crash-expected.txt:
* fast/events/touch/document-create-touch-list-ios-expected.txt:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/fast/events/touch/document-create-touch-list-crash-expected.txt
trunk/LayoutTests/fast/events/touch/document-create-touch-list-ios-expected.txt




Diff

Modified: trunk/LayoutTests/ChangeLog (218611 => 218612)

--- trunk/LayoutTests/ChangeLog	2017-06-20 22:45:18 UTC (rev 218611)
+++ trunk/LayoutTests/ChangeLog	2017-06-20 22:54:58 UTC (rev 218612)
@@ -1,3 +1,12 @@
+2017-06-20  Ryan Haddad  
+
+Rebaseline fast/events/touch/document-create-touch-list tests.
+
+Unreviewed test gardening.
+
+* fast/events/touch/document-create-touch-list-crash-expected.txt:
+* fast/events/touch/document-create-touch-list-ios-expected.txt:
+
 2017-06-20  Matt Baker  
 
 LayoutTest inspector/canvas/create-canvas-contexts.html is a flaky timeout


Modified: trunk/LayoutTests/fast/events/touch/document-create-touch-list-crash-expected.txt (218611 => 218612)

--- trunk/LayoutTests/fast/events/touch/document-create-touch-list-crash-expected.txt	2017-06-20 22:45:18 UTC (rev 218611)
+++ trunk/LayoutTests/fast/events/touch/document-create-touch-list-crash-expected.txt	2017-06-20 22:54:58 UTC (rev 218612)
@@ -3,15 +3,15 @@
 On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
 
 
-PASS document.createTouchList(document).item(0) threw exception TypeError: Argument 1 ('touches') to Document.createTouchList must be an instance of Touch.
-PASS document.createTouchList({"a":1}).item(0) threw exception TypeError: Argument 1 ('touches') to Document.createTouchList must be an instance of Touch.
-PASS document.createTouchList(new Array(5)).item(0) threw exception TypeError: Argument 1 ('touches') to Document.createTouchList must be an instance of Touch.
-PASS document.createTouchList("string").item(0) threw exception TypeError: Argument 1 ('touches') to Document.createTouchList must be an instance of Touch.
-PASS document.createTouchList(null).item(0) threw exception TypeError: Argument 1 ('touches') to Document.createTouchList must be an instance of Touch.
-PASS document.createTouchList(undefined).item(0) threw exception TypeError: Argument 1 ('touches') to Document.createTouchList must be an instance of Touch.
+PASS document.createTouchList(document).item(0) threw exception TypeError: Type error.
+PASS document.createTouchList({"a":1}).item(0) threw exception TypeError: Type error.
+PASS document.createTouchList(new Array(5)).item(0) threw exception TypeError: Type error.
+PASS document.createTouchList("string").item(0) threw exception TypeError: Type error.
+PASS document.createTouchList(null).item(0) threw exception TypeError: Type error.
+PASS document.createTouchList(undefined).item(0) threw exception TypeError: Type error.
 PASS document.createTouchList() did not throw exception.
 PASS document.createTouchList().length is 0
-PASS document.createTouchList(t, document, t2); threw exception TypeError: Argument 2 ('touches') to Document.createTouchList must be an instance of Touch.
+PASS document.createTouchList(t, document, t2); threw exception TypeError: Type error.
 PASS tl.length is 2
 PASS tl.item(0) is non-null.
 PASS tl.item(1) is non-null.


Modified: trunk/LayoutTests/fast/events/touch/document-create-touch-list-ios-expected.txt (218611 => 218612)

--- trunk/LayoutTests/fast/events/touch/document-create-touch-list-ios-expected.txt	2017-06-20 22:45:18 UTC (rev 218611)
+++ trunk/LayoutTests/fast/events/touch/document-create-touch-list-ios-expected.txt	2017-06-20 22:54:58 UTC (rev 218612)
@@ -16,7 +16,7 @@
 PASS ts.touches[0].clientX is 60
 PASS ts.touches[1].screenY is 120
 PASS ts.ctrlKey is true
-PASS var tl = document.createTouchList(1, 2) threw exception TypeError: Argument 1 ('touches') to Document.createTouchList must be an instance of Touch.
+PASS var tl = document.createTouchList(1, 2) threw exception TypeError: Type error.
 PASS successfullyParsed is true
 
 TEST COMPLETE






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


[webkit-changes] [218611] trunk/Source

Title: [218611] trunk/Source








Revision 218611
Author dba...@webkit.org
Date 2017-06-20 15:45:18 -0700 (Tue, 20 Jun 2017)


Log Message
Have FrameLoadRequest takes a Frame& instead of a Frame*
https://bugs.webkit.org/show_bug.cgi?id=173614


Reviewed by Brent Fulgham.

Source/WebCore:

* loader/ContentFilter.cpp:
(WebCore::ContentFilter::handleProvisionalLoadFailure):
* loader/FrameLoadRequest.cpp:
(WebCore::FrameLoadRequest::FrameLoadRequest):
* loader/FrameLoadRequest.h:
* page/DragController.cpp:
(WebCore::DragController::performDragOperation):

Source/WebKit/mac:

* Plugins/WebPluginController.mm:
(-[WebPluginController webPlugInContainerLoadRequest:inFrame:]):
* WebView/WebFrame.mm:
(-[WebFrame loadRequest:]):
(-[WebFrame _loadData:MIMEType:textEncodingName:baseURL:unreachableURL:]):

Source/WebKit/win:

* Plugins/PluginView.cpp:
(WebCore::PluginView::performRequest):
* WebFrame.cpp:
(WebFrame::loadRequest):

Source/WebKit2:

* WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::performFrameLoadURLRequest):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::loadURLInFrame):
(WebKit::WebPage::loadRequest):
(WebKit::WebPage::loadDataImpl):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/loader/ContentFilter.cpp
trunk/Source/WebCore/loader/FrameLoadRequest.cpp
trunk/Source/WebCore/loader/FrameLoadRequest.h
trunk/Source/WebCore/page/DragController.cpp
trunk/Source/WebKit/mac/ChangeLog
trunk/Source/WebKit/mac/Plugins/WebPluginController.mm
trunk/Source/WebKit/mac/WebView/WebFrame.mm
trunk/Source/WebKit/win/ChangeLog
trunk/Source/WebKit/win/Plugins/PluginView.cpp
trunk/Source/WebKit/win/WebFrame.cpp
trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/WebProcess/Plugins/PluginView.cpp
trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (218610 => 218611)

--- trunk/Source/WebCore/ChangeLog	2017-06-20 22:44:11 UTC (rev 218610)
+++ trunk/Source/WebCore/ChangeLog	2017-06-20 22:45:18 UTC (rev 218611)
@@ -1,5 +1,21 @@
 2017-06-20  Daniel Bates  
 
+Have FrameLoadRequest takes a Frame& instead of a Frame*
+https://bugs.webkit.org/show_bug.cgi?id=173614
+
+
+Reviewed by Brent Fulgham.
+
+* loader/ContentFilter.cpp:
+(WebCore::ContentFilter::handleProvisionalLoadFailure):
+* loader/FrameLoadRequest.cpp:
+(WebCore::FrameLoadRequest::FrameLoadRequest):
+* loader/FrameLoadRequest.h:
+* page/DragController.cpp:
+(WebCore::DragController::performDragOperation):
+
+2017-06-20  Daniel Bates  
+
 Skip Content Security Policy check for a media request using standard schemes initiated from
 an element in user agent shadow tree
 https://bugs.webkit.org/show_bug.cgi?id=155505


Modified: trunk/Source/WebCore/loader/ContentFilter.cpp (218610 => 218611)

--- trunk/Source/WebCore/loader/ContentFilter.cpp	2017-06-20 22:44:11 UTC (rev 218610)
+++ trunk/Source/WebCore/loader/ContentFilter.cpp	2017-06-20 22:45:18 UTC (rev 218611)
@@ -293,7 +293,7 @@
 ResourceResponse response { URL(), ASCIILiteral("text/html"), replacementData->size(), ASCIILiteral("UTF-8") };
 SubstituteData substituteData { WTFMove(replacementData), error.failingURL(), response, SubstituteData::SessionHistoryVisibility::Hidden };
 SetForScope loadingBlockedPage { m_isLoadingBlockedPage, true };
-m_documentLoader.frameLoader()->load(FrameLoadRequest(m_documentLoader.frame(), blockedPageURL(), ShouldOpenExternalURLsPolicy::ShouldNotAllow, substituteData));
+m_documentLoader.frameLoader()->load(FrameLoadRequest(*m_documentLoader.frame(), blockedPageURL(), ShouldOpenExternalURLsPolicy::ShouldNotAllow, substituteData));
 }
 
 } // namespace WebCore


Modified: trunk/Source/WebCore/loader/FrameLoadRequest.cpp (218610 => 218611)

--- trunk/Source/WebCore/loader/FrameLoadRequest.cpp	2017-06-20 22:44:11 UTC (rev 218610)
+++ trunk/Source/WebCore/loader/FrameLoadRequest.cpp	2017-06-20 22:45:18 UTC (rev 218611)
@@ -36,18 +36,18 @@
 
 namespace WebCore {
 
-FrameLoadRequest::FrameLoadRequest(Frame* frame, const ResourceRequest& resourceRequest, ShouldOpenExternalURLsPolicy shouldOpenExternalURLsPolicy, const SubstituteData& substituteData)
-: m_requester(>document()->securityOrigin())
-, m_resourceRequest(resourceRequest)
-, m_shouldCheckNewWindowPolicy(false)
-, m_substituteData(substituteData)
-, m_lockHistory(LockHistory::No)
-, m_lockBackForwardList(LockBackForwardList::No)
-, m_shouldSendReferrer(MaybeSendReferrer)
-, m_allowNavigationToInvalidURL(AllowNavigationToInvalidURL::Yes)
-, m_newFrameOpenerPolicy(NewFrameOpenerPolicy::Allow)
-, m_shouldReplaceDocumentIfJavaScriptURL(ReplaceDocumentIfJavaScriptURL)
-, m_shouldOpenExternalURLsPolicy(shouldOpenExternalURLsPolicy)
+FrameLoadRequest::FrameLoadRequest(Frame& frame, const ResourceRequest& resourceRequest, 

[webkit-changes] [218610] trunk/LayoutTests

Title: [218610] trunk/LayoutTests








Revision 218610
Author mattba...@apple.com
Date 2017-06-20 15:44:11 -0700 (Tue, 20 Jun 2017)


Log Message
LayoutTest inspector/canvas/create-canvas-contexts.html is a flaky timeout
https://bugs.webkit.org/show_bug.cgi?id=173603

Reviewed by Joseph Pecoraro.

Removed test case `CheckCanvasesCleared`, which involved a page reload
and would intermittently timeout.

* inspector/canvas/create-canvas-contexts-expected.txt:
* inspector/canvas/create-canvas-contexts.html:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/inspector/canvas/create-canvas-contexts-expected.txt
trunk/LayoutTests/inspector/canvas/create-canvas-contexts.html




Diff

Modified: trunk/LayoutTests/ChangeLog (218609 => 218610)

--- trunk/LayoutTests/ChangeLog	2017-06-20 22:04:31 UTC (rev 218609)
+++ trunk/LayoutTests/ChangeLog	2017-06-20 22:44:11 UTC (rev 218610)
@@ -1,3 +1,16 @@
+2017-06-20  Matt Baker  
+
+LayoutTest inspector/canvas/create-canvas-contexts.html is a flaky timeout
+https://bugs.webkit.org/show_bug.cgi?id=173603
+
+Reviewed by Joseph Pecoraro.
+
+Removed test case `CheckCanvasesCleared`, which involved a page reload
+and would intermittently timeout.
+
+* inspector/canvas/create-canvas-contexts-expected.txt:
+* inspector/canvas/create-canvas-contexts.html:
+
 2017-06-20  Antoine Quint  
 
 REGRESSION: media/remote-control-command-seek.html is timing out


Modified: trunk/LayoutTests/inspector/canvas/create-canvas-contexts-expected.txt (218609 => 218610)

--- trunk/LayoutTests/inspector/canvas/create-canvas-contexts-expected.txt	2017-06-20 22:04:31 UTC (rev 218609)
+++ trunk/LayoutTests/inspector/canvas/create-canvas-contexts-expected.txt	2017-06-20 22:44:11 UTC (rev 218610)
@@ -5,11 +5,6 @@
 -- Running test case: CheckNoCanvases
 PASS: CanvasManager should have no canvases.
 
--- Running test case: CheckCanvasesCleared
-Added canvas.
-Cleared canvases after reloading page.
-PASS: CanvasManager should have no canvases.
-
 -- Running test case: Create2DCanvasContext
 Added canvas.
 PASS: Canvas context should be 2D.


Modified: trunk/LayoutTests/inspector/canvas/create-canvas-contexts.html (218609 => 218610)

--- trunk/LayoutTests/inspector/canvas/create-canvas-contexts.html	2017-06-20 22:04:31 UTC (rev 218609)
+++ trunk/LayoutTests/inspector/canvas/create-canvas-contexts.html	2017-06-20 22:44:11 UTC (rev 218610)
@@ -66,27 +66,6 @@
 }
 });
 
-suite.addTestCase({
-name: "CheckCanvasesCleared",
-description: "Check that canvases are cleared on reload.",
-test(resolve, reject) {
-WebInspector.canvasManager.awaitEvent(WebInspector.CanvasManager.Event.Cleared)
-.then((event) => {
-InspectorTest.log("Cleared canvases after reloading page.");
-InspectorTest.expectEqual(WebInspector.canvasManager.canvases.length, 0, "CanvasManager should have no canvases.");
-})
-.then(resolve, reject);
-
-WebInspector.canvasManager.awaitEvent(WebInspector.CanvasManager.Event.CanvasWasAdded)
-.then((event) => {
-InspectorTest.log("Added canvas.");
-InspectorTest.reloadPage();
-});
-
-InspectorTest.evaluateInPage(`createCanvas('2d')`);
-}
-});
-
 function addSimpleTestCase({name, description, _expression_, contextType}) {
 suite.addTestCase({
 name,






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


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

Title: [218609] trunk/Source/WebCore








Revision 218609
Author dba...@webkit.org
Date 2017-06-20 15:04:31 -0700 (Tue, 20 Jun 2017)


Log Message
Skip Content Security Policy check for a media request using standard schemes initiated from
an element in user agent shadow tree
https://bugs.webkit.org/show_bug.cgi?id=155505


Reviewed by Brent Fulgham.

This change makes the following tests pass on iOS 11:
http/tests/security/contentSecurityPolicy/userAgentShadowDOM/allow-video.html
http/tests/security/contentSecurityPolicy/userAgentShadowDOM/allow-audio.html

* loader/MediaResourceLoader.cpp:
(WebCore::MediaResourceLoader::requestResource):
* platform/graphics/avfoundation/objc/WebCoreAVFResourceLoader.mm:
(WebCore::WebCoreAVFResourceLoader::startLoading):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/loader/MediaResourceLoader.cpp
trunk/Source/WebCore/platform/graphics/avfoundation/objc/WebCoreAVFResourceLoader.mm




Diff

Modified: trunk/Source/WebCore/ChangeLog (218608 => 218609)

--- trunk/Source/WebCore/ChangeLog	2017-06-20 20:45:36 UTC (rev 218608)
+++ trunk/Source/WebCore/ChangeLog	2017-06-20 22:04:31 UTC (rev 218609)
@@ -1,3 +1,21 @@
+2017-06-20  Daniel Bates  
+
+Skip Content Security Policy check for a media request using standard schemes initiated from
+an element in user agent shadow tree
+https://bugs.webkit.org/show_bug.cgi?id=155505
+
+
+Reviewed by Brent Fulgham.
+
+This change makes the following tests pass on iOS 11:
+http/tests/security/contentSecurityPolicy/userAgentShadowDOM/allow-video.html
+http/tests/security/contentSecurityPolicy/userAgentShadowDOM/allow-audio.html
+
+* loader/MediaResourceLoader.cpp:
+(WebCore::MediaResourceLoader::requestResource):
+* platform/graphics/avfoundation/objc/WebCoreAVFResourceLoader.mm:
+(WebCore::WebCoreAVFResourceLoader::startLoading):
+
 2017-06-20  Andreas Kling  
 
 Remove no-op calls to purge SQLite caches on memory pressure.


Modified: trunk/Source/WebCore/loader/MediaResourceLoader.cpp (218608 => 218609)

--- trunk/Source/WebCore/loader/MediaResourceLoader.cpp	2017-06-20 20:45:36 UTC (rev 218608)
+++ trunk/Source/WebCore/loader/MediaResourceLoader.cpp	2017-06-20 22:04:31 UTC (rev 218609)
@@ -76,8 +76,8 @@
 request.makeUnconditional();
 #endif
 
-// FIXME: Skip Content Security Policy check if the element that initiated this request is in a user-agent shadow tree. See .
-CachedResourceRequest cacheRequest(WTFMove(request), ResourceLoaderOptions(SendCallbacks, DoNotSniffContent, bufferingPolicy, AllowStoredCredentials, ClientCredentialPolicy::MayAskClientForCredentials, FetchOptions::Credentials::Include, DoSecurityCheck, FetchOptions::Mode::NoCors, DoNotIncludeCertificateInfo, ContentSecurityPolicyImposition::DoPolicyCheck, DefersLoadingPolicy::AllowDefersLoading, cachingPolicy));
+ContentSecurityPolicyImposition contentSecurityPolicyImposition = m_mediaElement && m_mediaElement->isInUserAgentShadowTree() ? ContentSecurityPolicyImposition::SkipPolicyCheck : ContentSecurityPolicyImposition::DoPolicyCheck;
+CachedResourceRequest cacheRequest(WTFMove(request), ResourceLoaderOptions(SendCallbacks, DoNotSniffContent, bufferingPolicy, AllowStoredCredentials, ClientCredentialPolicy::MayAskClientForCredentials, FetchOptions::Credentials::Include, DoSecurityCheck, FetchOptions::Mode::NoCors, DoNotIncludeCertificateInfo, contentSecurityPolicyImposition, DefersLoadingPolicy::AllowDefersLoading, cachingPolicy));
 cacheRequest.setAsPotentiallyCrossOrigin(m_crossOriginMode, *m_document);
 if (m_mediaElement)
 cacheRequest.setInitiator(*m_mediaElement.get());


Modified: trunk/Source/WebCore/platform/graphics/avfoundation/objc/WebCoreAVFResourceLoader.mm (218608 => 218609)

--- trunk/Source/WebCore/platform/graphics/avfoundation/objc/WebCoreAVFResourceLoader.mm	2017-06-20 20:45:36 UTC (rev 218608)
+++ trunk/Source/WebCore/platform/graphics/avfoundation/objc/WebCoreAVFResourceLoader.mm	2017-06-20 22:04:31 UTC (rev 218609)
@@ -71,7 +71,7 @@
 resourceRequest.setPriority(ResourceLoadPriority::Low);
 
 // FIXME: Skip Content Security Policy check if the element that inititated this request
-// is in a user-agent shadow tree. See .
+// is in a user-agent shadow tree. See .
 CachedResourceRequest request(WTFMove(resourceRequest), ResourceLoaderOptions(SendCallbacks, DoNotSniffContent, BufferData, DoNotAllowStoredCredentials, ClientCredentialPolicy::CannotAskClientForCredentials, FetchOptions::Credentials::Omit, DoSecurityCheck, FetchOptions::Mode::NoCors, DoNotIncludeCertificateInfo, ContentSecurityPolicyImposition::DoPolicyCheck, DefersLoadingPolicy::AllowDefersLoading, CachingPolicy::DisallowCaching));
 if (auto* loader = m_parent->player()->cachedResourceLoader())
 m_resource = 

[webkit-changes] [218608] trunk/JSTests

Title: [218608] trunk/JSTests








Revision 218608
Author ryanhad...@apple.com
Date 2017-06-20 13:45:36 -0700 (Tue, 20 Jun 2017)


Log Message
Update test262 test expectations after r218581.

Unreviewed test gardening.

* test262.yaml:

Modified Paths

trunk/JSTests/ChangeLog
trunk/JSTests/test262.yaml




Diff

Modified: trunk/JSTests/ChangeLog (218607 => 218608)

--- trunk/JSTests/ChangeLog	2017-06-20 20:37:59 UTC (rev 218607)
+++ trunk/JSTests/ChangeLog	2017-06-20 20:45:36 UTC (rev 218608)
@@ -1,3 +1,11 @@
+2017-06-20  Ryan Haddad  
+
+Update test262 test expectations after r218581.
+
+Unreviewed test gardening.
+
+* test262.yaml:
+
 2017-06-20  Oleksandr Skachkov  
 
 Revert changes in bug#160417 about extending `null` not being a derived class


Modified: trunk/JSTests/test262.yaml (218607 => 218608)

--- trunk/JSTests/test262.yaml	2017-06-20 20:37:59 UTC (rev 218607)
+++ trunk/JSTests/test262.yaml	2017-06-20 20:45:36 UTC (rev 218608)
@@ -76734,9 +76734,9 @@
 - path: test262/test/language/statements/class/subclass/class-definition-null-proto-super.js
   cmd: runTest262 :normal, "NoException", ["../../../../../harness/assert.js", "../../../../../harness/sta.js"], [:strict]
 - path: test262/test/language/statements/class/subclass/class-definition-null-proto-this.js
-  cmd: runTest262 :normal, "NoException", ["../../../../../harness/assert.js", "../../../../../harness/sta.js"], []
+  cmd: runTest262 :fail, "NoException", ["../../../../../harness/assert.js", "../../../../../harness/sta.js"], []
 - path: test262/test/language/statements/class/subclass/class-definition-null-proto-this.js
-  cmd: runTest262 :normal, "NoException", ["../../../../../harness/assert.js", "../../../../../harness/sta.js"], [:strict]
+  cmd: runTest262 :fail, "NoException", ["../../../../../harness/assert.js", "../../../../../harness/sta.js"], [:strict]
 - path: test262/test/language/statements/class/subclass/class-definition-null-proto.js
   cmd: runTest262 :normal, "NoException", ["../../../../../harness/assert.js", "../../../../../harness/sta.js"], []
 - path: test262/test/language/statements/class/subclass/class-definition-null-proto.js






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


[webkit-changes] [218607] trunk/LayoutTests

Title: [218607] trunk/LayoutTests








Revision 218607
Author grao...@webkit.org
Date 2017-06-20 13:37:59 -0700 (Tue, 20 Jun 2017)


Log Message
REGRESSION: media/remote-control-command-seek.html is timing out
https://bugs.webkit.org/show_bug.cgi?id=173615


Reviewed by Eric Carlson.

This test assumes that we load metadata and video data that can be seeked through
at the same time, but this is incorrect. Using the "canplaythrough" event guarantees
that the video is seekable, so we switch to this event to make the test more robust.

* media/remote-control-command-seek-expected.txt:
* media/remote-control-command-seek.html:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/media/remote-control-command-seek-expected.txt
trunk/LayoutTests/media/remote-control-command-seek.html




Diff

Modified: trunk/LayoutTests/ChangeLog (218606 => 218607)

--- trunk/LayoutTests/ChangeLog	2017-06-20 19:46:14 UTC (rev 218606)
+++ trunk/LayoutTests/ChangeLog	2017-06-20 20:37:59 UTC (rev 218607)
@@ -1,3 +1,18 @@
+2017-06-20  Antoine Quint  
+
+REGRESSION: media/remote-control-command-seek.html is timing out
+https://bugs.webkit.org/show_bug.cgi?id=173615
+
+
+Reviewed by Eric Carlson.
+
+This test assumes that we load metadata and video data that can be seeked through
+at the same time, but this is incorrect. Using the "canplaythrough" event guarantees
+that the video is seekable, so we switch to this event to make the test more robust.
+
+* media/remote-control-command-seek-expected.txt:
+* media/remote-control-command-seek.html:
+
 2017-06-20  Matt Lewis  
 
 Added additional test expectations for media/video-buffered.html.


Modified: trunk/LayoutTests/media/remote-control-command-seek-expected.txt (218606 => 218607)

--- trunk/LayoutTests/media/remote-control-command-seek-expected.txt	2017-06-20 19:46:14 UTC (rev 218606)
+++ trunk/LayoutTests/media/remote-control-command-seek-expected.txt	2017-06-20 20:37:59 UTC (rev 218607)
@@ -2,7 +2,7 @@
 
 
 * set video.src
-EVENT(loadedmetadata)
+EVENT(canplaythrough)
 
 * Send a seek command.
 RUN(internals.postRemoteControlCommand('seekToPlaybackPosition', 1.6))


Modified: trunk/LayoutTests/media/remote-control-command-seek.html (218606 => 218607)

--- trunk/LayoutTests/media/remote-control-command-seek.html	2017-06-20 19:46:14 UTC (rev 218606)
+++ trunk/LayoutTests/media/remote-control-command-seek.html	2017-06-20 20:37:59 UTC (rev 218607)
@@ -13,7 +13,7 @@
 
 findMediaElement();
 
-waitForEvent('loadedmetadata', loadedmetadata, false, true, document)
+waitForEvent('canplaythrough', canplaythrough, false, true, document)
 waitForEvent('timeupdate', seeked)
 
 consoleWrite('* set video.src');
@@ -20,7 +20,7 @@
 video.src = "" 'content/test');
 }
 
-function loadedmetadata()
+function canplaythrough()
 {
 consoleWrite('* Send a seek command.');
 run("internals.postRemoteControlCommand('seekToPlaybackPosition', 1.6)");






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


[webkit-changes] [218606] trunk/Source/WebKit2

Title: [218606] trunk/Source/WebKit2








Revision 218606
Author timothy_hor...@apple.com
Date 2017-06-20 12:46:14 -0700 (Tue, 20 Jun 2017)


Log Message
Occasional deadlocks under ensurePositionInformationIsUpToDate (incoming sync message with waitForAndDispatchImmediately)
https://bugs.webkit.org/show_bug.cgi?id=173570


Reviewed by Wenson Hsieh.

* UIProcess/WebPageProxy.h:
* UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::getPositionInformation): Deleted.
Get rid of getPositionInformation; it only has one caller, and it's easier
to reason about the code if it's all in one place. Also, we shouldn't
add more callers...

* UIProcess/ios/WKContentViewInteraction.h:
* UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView ensurePositionInformationIsUpToDate:]):
Add a return value to ensurePositionInformationIsUpToDate that indicates
whether we succeeded in that effort.

Add the flag to our waitForAndDispatchImmediately that causes the wait
to be interrupted if a sync message arrives.

(-[WKContentView gestureRecognizerShouldBegin:]):
(-[WKContentView hasSelectablePositionAtPoint:]):
(-[WKContentView pointIsNearMarkedText:]):
(-[WKContentView textInteractionGesture:shouldBeginAtPoint:]):
(-[WKContentView positionInformationForActionSheetAssistant:]):
(-[WKContentView _interactionShouldBeginFromPreviewItemController:forPosition:]):
If anything happens to interrupt our position information update, fail
in the most graceful possible way at each callsite (generally by bailing
from doing whatever action required position information).

* UIProcess/ios/WKPDFView.mm:
(-[WKPDFView positionInformationForActionSheetAssistant:]):
* UIProcess/ios/WKActionSheetAssistant.h:
* UIProcess/ios/WKActionSheetAssistant.mm:
(-[WKActionSheetAssistant synchronouslyRetrievePositionInformation]):
(-[WKActionSheetAssistant presentationRectForElementUsingClosestIndicatedRect]):
(-[WKActionSheetAssistant presentationRectForIndicatedElement]):
(-[WKActionSheetAssistant initialPresentationRectInHostViewForSheet]):
(-[WKActionSheetAssistant presentationRectInHostViewForSheet]):
(-[WKActionSheetAssistant _createSheetWithElementActions:showLinkTitle:]):
(-[WKActionSheetAssistant showImageSheet]):
(-[WKActionSheetAssistant defaultActionsForLinkSheet:]):
(-[WKActionSheetAssistant showLinkSheet]):
(-[WKActionSheetAssistant showDataDetectorsSheet]):
(-[WKActionSheetAssistant cleanupSheet]):
Instead of constantly re-querying the position information, save it aside
when presenting an action sheet, and use it to respond to all of the
subsequent questions. Also, bail from presenting the action sheet if we fail
to retrieve correct position information.

Modified Paths

trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/UIProcess/WebPageProxy.h
trunk/Source/WebKit2/UIProcess/ios/WKActionSheetAssistant.h
trunk/Source/WebKit2/UIProcess/ios/WKActionSheetAssistant.mm
trunk/Source/WebKit2/UIProcess/ios/WKContentViewInteraction.h
trunk/Source/WebKit2/UIProcess/ios/WKContentViewInteraction.mm
trunk/Source/WebKit2/UIProcess/ios/WKPDFView.mm
trunk/Source/WebKit2/UIProcess/ios/WebPageProxyIOS.mm




Diff

Modified: trunk/Source/WebKit2/ChangeLog (218605 => 218606)

--- trunk/Source/WebKit2/ChangeLog	2017-06-20 18:57:22 UTC (rev 218605)
+++ trunk/Source/WebKit2/ChangeLog	2017-06-20 19:46:14 UTC (rev 218606)
@@ -1,3 +1,57 @@
+2017-06-20  Tim Horton  
+
+Occasional deadlocks under ensurePositionInformationIsUpToDate (incoming sync message with waitForAndDispatchImmediately)
+https://bugs.webkit.org/show_bug.cgi?id=173570
+
+
+Reviewed by Wenson Hsieh.
+
+* UIProcess/WebPageProxy.h:
+* UIProcess/ios/WebPageProxyIOS.mm:
+(WebKit::WebPageProxy::getPositionInformation): Deleted.
+Get rid of getPositionInformation; it only has one caller, and it's easier
+to reason about the code if it's all in one place. Also, we shouldn't
+add more callers...
+
+* UIProcess/ios/WKContentViewInteraction.h:
+* UIProcess/ios/WKContentViewInteraction.mm:
+(-[WKContentView ensurePositionInformationIsUpToDate:]):
+Add a return value to ensurePositionInformationIsUpToDate that indicates
+whether we succeeded in that effort.
+
+Add the flag to our waitForAndDispatchImmediately that causes the wait
+to be interrupted if a sync message arrives.
+
+(-[WKContentView gestureRecognizerShouldBegin:]):
+(-[WKContentView hasSelectablePositionAtPoint:]):
+(-[WKContentView pointIsNearMarkedText:]):
+(-[WKContentView textInteractionGesture:shouldBeginAtPoint:]):
+(-[WKContentView positionInformationForActionSheetAssistant:]):
+(-[WKContentView _interactionShouldBeginFromPreviewItemController:forPosition:]):
+If anything happens to interrupt our position information update, fail
+in the most graceful possible way at each callsite (generally by bailing
+

[webkit-changes] [218605] trunk/LayoutTests

Title: [218605] trunk/LayoutTests








Revision 218605
Author jlew...@apple.com
Date 2017-06-20 11:57:22 -0700 (Tue, 20 Jun 2017)


Log Message
Added additional test expectations for media/video-buffered.html.
https://bugs.webkit.org/show_bug.cgi?id=173611

Uneviewed test gardening.

* platform/ios/TestExpectations:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/platform/ios/TestExpectations




Diff

Modified: trunk/LayoutTests/ChangeLog (218604 => 218605)

--- trunk/LayoutTests/ChangeLog	2017-06-20 18:48:00 UTC (rev 218604)
+++ trunk/LayoutTests/ChangeLog	2017-06-20 18:57:22 UTC (rev 218605)
@@ -1,3 +1,12 @@
+2017-06-20  Matt Lewis  
+
+Added additional test expectations for media/video-buffered.html.
+https://bugs.webkit.org/show_bug.cgi?id=173611
+
+Uneviewed test gardening.
+
+* platform/ios/TestExpectations:
+
 2017-06-20  Devin Rousso  
 
 Web Inspector: add console messages for WebGL shader compile and program link errors/warnings


Modified: trunk/LayoutTests/platform/ios/TestExpectations (218604 => 218605)

--- trunk/LayoutTests/platform/ios/TestExpectations	2017-06-20 18:48:00 UTC (rev 218604)
+++ trunk/LayoutTests/platform/ios/TestExpectations	2017-06-20 18:57:22 UTC (rev 218605)
@@ -2840,3 +2840,6 @@
 
 webkit.org/b/173328 fast/text/system-font-fallback-emoji.html [ Failure ]
 webkit.org/b/173328 fast/text/system-font-fallback.html [ ImageOnlyFailure ]
+
+webkit.org/b/173611 media/video-buffered.html [ Pass Failure ]
+






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


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

Title: [218604] trunk/Source/WebCore








Revision 218604
Author akl...@apple.com
Date 2017-06-20 11:48:00 -0700 (Tue, 20 Jun 2017)


Log Message
Remove no-op calls to purge SQLite caches on memory pressure.


Reviewed by Chris Dumez.

The implementation of _sqlite3_purgeEligiblePagerCacheMemory() is empty
since a few releases ago, so there's no point in calling it.

* page/MemoryRelease.cpp:
(WebCore::registerMemoryReleaseNotifyCallbacks):
(WebCore::registerSQLiteMemoryPressureHandler): Deleted.
* page/MemoryRelease.h:
* page/cocoa/MemoryReleaseCocoa.mm:
(WebCore::platformReleaseMemory):
(WebCore::registerSQLiteMemoryPressureHandler): Deleted.
* platform/sql/SQLiteDatabase.cpp:
(WebCore::initializeSQLiteIfNecessary):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/page/MemoryRelease.cpp
trunk/Source/WebCore/page/MemoryRelease.h
trunk/Source/WebCore/page/cocoa/MemoryReleaseCocoa.mm
trunk/Source/WebCore/platform/sql/SQLiteDatabase.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (218603 => 218604)

--- trunk/Source/WebCore/ChangeLog	2017-06-20 18:35:31 UTC (rev 218603)
+++ trunk/Source/WebCore/ChangeLog	2017-06-20 18:48:00 UTC (rev 218604)
@@ -1,3 +1,23 @@
+2017-06-20  Andreas Kling  
+
+Remove no-op calls to purge SQLite caches on memory pressure.
+
+
+Reviewed by Chris Dumez.
+
+The implementation of _sqlite3_purgeEligiblePagerCacheMemory() is empty
+since a few releases ago, so there's no point in calling it.
+
+* page/MemoryRelease.cpp:
+(WebCore::registerMemoryReleaseNotifyCallbacks):
+(WebCore::registerSQLiteMemoryPressureHandler): Deleted.
+* page/MemoryRelease.h:
+* page/cocoa/MemoryReleaseCocoa.mm:
+(WebCore::platformReleaseMemory):
+(WebCore::registerSQLiteMemoryPressureHandler): Deleted.
+* platform/sql/SQLiteDatabase.cpp:
+(WebCore::initializeSQLiteIfNecessary):
+
 2017-06-20  Devin Rousso  
 
 Web Inspector: add console messages for WebGL shader compile and program link errors/warnings


Modified: trunk/Source/WebCore/page/MemoryRelease.cpp (218603 => 218604)

--- trunk/Source/WebCore/page/MemoryRelease.cpp	2017-06-20 18:35:31 UTC (rev 218603)
+++ trunk/Source/WebCore/page/MemoryRelease.cpp	2017-06-20 18:48:00 UTC (rev 218604)
@@ -191,7 +191,6 @@
 void platformReleaseMemory(Critical) { }
 void jettisonExpensiveObjectsOnTopLevelNavigation() { }
 void registerMemoryReleaseNotifyCallbacks() { }
-void registerSQLiteMemoryPressureHandler() { }
 #endif
 
 } // namespace WebCore


Modified: trunk/Source/WebCore/page/MemoryRelease.h (218603 => 218604)

--- trunk/Source/WebCore/page/MemoryRelease.h	2017-06-20 18:35:31 UTC (rev 218603)
+++ trunk/Source/WebCore/page/MemoryRelease.h	2017-06-20 18:48:00 UTC (rev 218604)
@@ -34,6 +34,5 @@
 void jettisonExpensiveObjectsOnTopLevelNavigation();
 WEBCORE_EXPORT void registerMemoryReleaseNotifyCallbacks();
 WEBCORE_EXPORT void logMemoryStatisticsAtTimeOfDeath();
-void registerSQLiteMemoryPressureHandler();
 
 } // namespace WebCore


Modified: trunk/Source/WebCore/page/cocoa/MemoryReleaseCocoa.mm (218603 => 218604)

--- trunk/Source/WebCore/page/cocoa/MemoryReleaseCocoa.mm	2017-06-20 18:35:31 UTC (rev 218603)
+++ trunk/Source/WebCore/page/cocoa/MemoryReleaseCocoa.mm	2017-06-20 18:48:00 UTC (rev 218604)
@@ -38,10 +38,6 @@
 #endif
 
 
-extern "C" void _sqlite3_purgeEligiblePagerCacheMemory(void);
-
-static bool isSQLiteMemoryPressureHandlerRegistered { false };
-
 namespace WebCore {
 
 void platformReleaseMemory(Critical)
@@ -50,9 +46,6 @@
 GSFontPurgeFontCache();
 #endif
 
-if (isSQLiteMemoryPressureHandlerRegistered)
-_sqlite3_purgeEligiblePagerCacheMemory();
-
 for (auto& pool : LayerPool::allLayerPools())
 pool->drain();
 
@@ -103,9 +96,4 @@
 });
 }
 
-void registerSQLiteMemoryPressureHandler()
-{
-isSQLiteMemoryPressureHandlerRegistered = true;
-}
-
 } // namespace WebCore


Modified: trunk/Source/WebCore/platform/sql/SQLiteDatabase.cpp (218603 => 218604)

--- trunk/Source/WebCore/platform/sql/SQLiteDatabase.cpp	2017-06-20 18:35:31 UTC (rev 218603)
+++ trunk/Source/WebCore/platform/sql/SQLiteDatabase.cpp	2017-06-20 18:48:00 UTC (rev 218604)
@@ -67,7 +67,6 @@
 #endif
 CRASH();
 }
-registerSQLiteMemoryPressureHandler();
 });
 }
 






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


[webkit-changes] [218603] trunk

Title: [218603] trunk








Revision 218603
Author drou...@apple.com
Date 2017-06-20 11:35:31 -0700 (Tue, 20 Jun 2017)


Log Message
Web Inspector: add console messages for WebGL shader compile and program link errors/warnings
https://bugs.webkit.org/show_bug.cgi?id=143236


Reviewed by Dean Jackson.

Source/WebCore:

Test: fast/canvas/webgl/shader-compile-logging.html

* html/canvas/WebGLRenderingContextBase.h:
* html/canvas/WebGLRenderingContextBase.cpp:
(WebCore::WebGLRenderingContextBase::checkFramebufferStatus):
(WebCore::WebGLRenderingContextBase::compileShader):
(WebCore::WebGLRenderingContextBase::recycleContext):
(WebCore::WebGLRenderingContextBase::checkTextureCompleteness):
(WebCore::WebGLRenderingContextBase::printToConsole):
(WebCore::WebGLRenderingContextBase::maybeRestoreContext):
(WebCore::WebGLRenderingContextBase::synthesizeGLError):
(WebCore::WebGLRenderingContextBase::printGLErrorToConsole): Deleted.
(WebCore::WebGLRenderingContextBase::printWarningToConsole): Deleted.
(WebCore::WebGLRenderingContextBase::printGLWarningToConsole): Deleted.
Unify console logging helper functions to all follow the same path. Additionally, errors
now generate stack traces. Shader compilation errors are now logged as well.

* dom/Document.h:
* dom/Document.cpp:
(WebCore::Document::addConsoleMessage):
* dom/ScriptExecutionContext.h:
(WebCore::ScriptExecutionContext::AddConsoleMessageTask::AddConsoleMessageTask):
* page/PageConsoleClient.h:
* page/PageConsoleClient.cpp:
(WebCore::PageConsoleClient::addMessage):
* workers/WorkerGlobalScope.h:
Add new path for logging to the console that accepts a ConsoleMessage.

LayoutTests:

* fast/canvas/webgl/fragment-shader-assertion.html:
* fast/canvas/webgl/shader-compile-logging-expected.txt: Added.
* fast/canvas/webgl/shader-compile-logging.html: Added.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/fast/canvas/webgl/fragment-shader-assertion.html
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/dom/Document.cpp
trunk/Source/WebCore/dom/Document.h
trunk/Source/WebCore/dom/ScriptExecutionContext.h
trunk/Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp
trunk/Source/WebCore/html/canvas/WebGLRenderingContextBase.h
trunk/Source/WebCore/page/PageConsoleClient.cpp
trunk/Source/WebCore/page/PageConsoleClient.h
trunk/Source/WebCore/workers/WorkerGlobalScope.h


Added Paths

trunk/LayoutTests/fast/canvas/webgl/shader-compile-logging-expected.txt
trunk/LayoutTests/fast/canvas/webgl/shader-compile-logging.html




Diff

Modified: trunk/LayoutTests/ChangeLog (218602 => 218603)

--- trunk/LayoutTests/ChangeLog	2017-06-20 18:27:31 UTC (rev 218602)
+++ trunk/LayoutTests/ChangeLog	2017-06-20 18:35:31 UTC (rev 218603)
@@ -1,3 +1,15 @@
+2017-06-20  Devin Rousso  
+
+Web Inspector: add console messages for WebGL shader compile and program link errors/warnings
+https://bugs.webkit.org/show_bug.cgi?id=143236
+
+
+Reviewed by Dean Jackson.
+
+* fast/canvas/webgl/fragment-shader-assertion.html:
+* fast/canvas/webgl/shader-compile-logging-expected.txt: Added.
+* fast/canvas/webgl/shader-compile-logging.html: Added.
+
 2017-06-19  Antoine Quint  
 
 Media document experience with long-loading files is poor


Modified: trunk/LayoutTests/fast/canvas/webgl/fragment-shader-assertion.html (218602 => 218603)

--- trunk/LayoutTests/fast/canvas/webgl/fragment-shader-assertion.html	2017-06-20 18:27:31 UTC (rev 218602)
+++ trunk/LayoutTests/fast/canvas/webgl/fragment-shader-assertion.html	2017-06-20 18:35:31 UTC (rev 218603)
@@ -4,6 +4,9 @@
 if (window.testRunner)
 	testRunner.dumpAsText();
 
+if (window.internals)
+window.internals.settings.setWebGLErrorsToConsoleEnabled(false);
+
 function runTest() {
 var canvas = document.getElementById("myCanvas");
 var gl = canvas.getContext("webgl");


Added: trunk/LayoutTests/fast/canvas/webgl/shader-compile-logging-expected.txt (0 => 218603)

--- trunk/LayoutTests/fast/canvas/webgl/shader-compile-logging-expected.txt	(rev 0)
+++ trunk/LayoutTests/fast/canvas/webgl/shader-compile-logging-expected.txt	2017-06-20 18:35:31 UTC (rev 218603)
@@ -0,0 +1,11 @@
+CONSOLE MESSAGE: line 19: WebGL: ERROR: 0:2: 'attribute' :  supported in vertex shaders only 
+CONSOLE MESSAGE: line 19: WebGL: ERROR: 0:2: '' : No precision specified for (float)
+CONSOLE MESSAGE: line 19: WebGL: ERROR: 0:4: 'gl_Position' : undeclared identifier
+CONSOLE MESSAGE: line 19: WebGL: ERROR: 0:4: '=' : dimension mismatch
+CONSOLE MESSAGE: line 19: WebGL: ERROR: 0:4: 'assign' : cannot convert from 'attribute 4-component vector of float' to 'float'
+CONSOLE MESSAGE: line 19: WebGL: ERROR: 0:7: 'FRAGMENT_SHADER' : syntax error
+CONSOLE MESSAGE: line 29: WebGL: ERROR: 0:3: 'gl_FragColor' : undeclared identifier
+CONSOLE MESSAGE: line 29: WebGL: ERROR: 0:3: '=' : dimension mismatch
+CONSOLE MESSAGE: line 29: WebGL: ERROR: 0:3: 'assign' : 

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

Title: [218602] trunk/Source/WebCore








Revision 218602
Author sbar...@apple.com
Date 2017-06-20 11:27:31 -0700 (Tue, 20 Jun 2017)


Log Message
Unreviewed. Try to fix the build after r218594.

* dom/Document.h:

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/dom/Document.h




Diff

Modified: trunk/Source/WebCore/ChangeLog (218601 => 218602)

--- trunk/Source/WebCore/ChangeLog	2017-06-20 17:53:17 UTC (rev 218601)
+++ trunk/Source/WebCore/ChangeLog	2017-06-20 18:27:31 UTC (rev 218602)
@@ -1,3 +1,9 @@
+2017-06-20  Saam Barati  
+
+Unreviewed. Try to fix the build after r218594.
+
+* dom/Document.h:
+
 2017-06-20  Matt Lewis  
 
 Unreviewed, rolling out r218530.


Modified: trunk/Source/WebCore/dom/Document.h (218601 => 218602)

--- trunk/Source/WebCore/dom/Document.h	2017-06-20 17:53:17 UTC (rev 218601)
+++ trunk/Source/WebCore/dom/Document.h	2017-06-20 18:27:31 UTC (rev 218602)
@@ -65,6 +65,10 @@
 #include "EventTrackingRegions.h"
 #endif
 
+#if ENABLE(IOS_TOUCH_EVENTS)
+#include 
+#endif
+
 namespace JSC {
 class ExecState;
 class InputCursor;






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


[webkit-changes] [218601] trunk/Source

Title: [218601] trunk/Source








Revision 218601
Author jlew...@apple.com
Date 2017-06-20 10:53:17 -0700 (Tue, 20 Jun 2017)


Log Message
Unreviewed, rolling out r218530.

This revision caused multiple media stream test crashes on
Debug builds.

Reverted changeset:

"Merge MediaDevicesRequest and MediaDevicesEnumerationRequest
to tighten up code and object lifetime"
https://bugs.webkit.org/show_bug.cgi?id=173527
http://trac.webkit.org/changeset/218530

Modified Paths

trunk/Source/WebCore/CMakeLists.txt
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Modules/mediastream/MediaDeviceInfo.cpp
trunk/Source/WebCore/Modules/mediastream/MediaDeviceInfo.h
trunk/Source/WebCore/Modules/mediastream/MediaDeviceInfo.idl
trunk/Source/WebCore/Modules/mediastream/MediaDevices.cpp
trunk/Source/WebCore/Modules/mediastream/MediaDevicesEnumerationRequest.cpp
trunk/Source/WebCore/Modules/mediastream/MediaDevicesEnumerationRequest.h
trunk/Source/WebCore/Modules/mediastream/UserMediaController.cpp
trunk/Source/WebCore/Modules/mediastream/UserMediaController.h
trunk/Source/WebCore/Modules/mediastream/UserMediaRequest.cpp
trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj
trunk/Source/WebCore/testing/Internals.cpp
trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/UIProcess/API/C/WKUserMediaPermissionCheck.h
trunk/Source/WebKit2/WebProcess/MediaStream/UserMediaPermissionRequestManager.cpp
trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebUserMediaClient.cpp


Added Paths

trunk/Source/WebCore/Modules/mediastream/MediaDevicesRequest.cpp
trunk/Source/WebCore/Modules/mediastream/MediaDevicesRequest.h




Diff

Modified: trunk/Source/WebCore/CMakeLists.txt (218600 => 218601)

--- trunk/Source/WebCore/CMakeLists.txt	2017-06-20 17:38:35 UTC (rev 218600)
+++ trunk/Source/WebCore/CMakeLists.txt	2017-06-20 17:53:17 UTC (rev 218601)
@@ -964,6 +964,7 @@
 Modules/mediastream/MediaDeviceInfo.cpp
 Modules/mediastream/MediaDevices.cpp
 Modules/mediastream/MediaDevicesEnumerationRequest.cpp
+Modules/mediastream/MediaDevicesRequest.cpp
 Modules/mediastream/MediaEndpointPeerConnection.cpp
 Modules/mediastream/MediaEndpointSessionDescription.cpp
 Modules/mediastream/MediaStream.cpp


Modified: trunk/Source/WebCore/ChangeLog (218600 => 218601)

--- trunk/Source/WebCore/ChangeLog	2017-06-20 17:38:35 UTC (rev 218600)
+++ trunk/Source/WebCore/ChangeLog	2017-06-20 17:53:17 UTC (rev 218601)
@@ -1,3 +1,17 @@
+2017-06-20  Matt Lewis  
+
+Unreviewed, rolling out r218530.
+
+This revision caused multiple media stream test crashes on
+Debug builds.
+
+Reverted changeset:
+
+"Merge MediaDevicesRequest and MediaDevicesEnumerationRequest
+to tighten up code and object lifetime"
+https://bugs.webkit.org/show_bug.cgi?id=173527
+http://trac.webkit.org/changeset/218530
+
 2017-06-19  Antoine Quint  
 
 Media document experience with long-loading files is poor


Modified: trunk/Source/WebCore/Modules/mediastream/MediaDeviceInfo.cpp (218600 => 218601)

--- trunk/Source/WebCore/Modules/mediastream/MediaDeviceInfo.cpp	2017-06-20 17:38:35 UTC (rev 218600)
+++ trunk/Source/WebCore/Modules/mediastream/MediaDeviceInfo.cpp	2017-06-20 17:53:17 UTC (rev 218601)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2015-2017 Apple Inc. All rights reserved.
+ * Copyright (C) 2015 Apple Inc. All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
@@ -30,8 +30,9 @@
 
 namespace WebCore {
 
-inline MediaDeviceInfo::MediaDeviceInfo(const String& label, const String& deviceId, const String& groupId, Kind kind)
-: m_label(label)
+inline MediaDeviceInfo::MediaDeviceInfo(ScriptExecutionContext* context, const String& label, const String& deviceId, const String& groupId, Kind kind)
+: ContextDestructionObserver(context)
+, m_label(label)
 , m_deviceId(deviceId)
 , m_groupId(groupId)
 , m_kind(kind)
@@ -38,9 +39,9 @@
 {
 }
 
-Ref MediaDeviceInfo::create(const String& label, const String& deviceId, const String& groupId, Kind kind)
+Ref MediaDeviceInfo::create(ScriptExecutionContext* context, const String& label, const String& deviceId, const String& groupId, Kind kind)
 {
-return adoptRef(*new MediaDeviceInfo(label, deviceId, groupId, kind));
+return adoptRef(*new MediaDeviceInfo(context, label, deviceId, groupId, kind));
 }
 
 } // namespace WebCore


Modified: trunk/Source/WebCore/Modules/mediastream/MediaDeviceInfo.h (218600 => 218601)

--- trunk/Source/WebCore/Modules/mediastream/MediaDeviceInfo.h	2017-06-20 17:38:35 UTC (rev 218600)
+++ trunk/Source/WebCore/Modules/mediastream/MediaDeviceInfo.h	2017-06-20 17:53:17 UTC (rev 218601)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2015-2017 Apple Inc. All rights reserved.
+ * Copyright (C) 2015 Apple Inc. All rights reserved.
  *
  * Redistribution and use in source and 

[webkit-changes] [218600] trunk

Title: [218600] trunk








Revision 218600
Author grao...@webkit.org
Date 2017-06-20 10:38:35 -0700 (Tue, 20 Jun 2017)


Log Message
Media document experience with long-loading files is poor
https://bugs.webkit.org/show_bug.cgi?id=173575


Reviewed by Dean Jackson.

Source/WebCore:

In order to avoid showing media controls at a different size than that of the video when we've
received enough information to determine whether it's audio or video and what the video frame size
is, we do not show any UI until we have enough information to show the controls in their correct
initial state. This works well with local files and fast-loading files, but does not work well with
invalid files, which never load and fail to ever show any UI, and files that load slowly where there
is no visible feedback that content will be visible.

Instead, we now default to showing audio controls in their loading state, which provides a seamless
transition if we will be loading an audio file since the controls are initially in the correct state,
and at least provide feedback that data is loading even if we eventually transition to a video layout.

Additionally, we remove the invalid placard background in case the media is invalid, showing only the
crossed-out play icon in the center of the page in that state.

Tests: media/modern-media-controls/media-documents/media-document-invalid.html
   media/modern-media-controls/media-documents/media-document-video-with-initial-audio-layout.html

* Modules/modern-media-controls/controls/media-document.css:
(:host(.media-document)): Remove "visibility: hidden" since we want the media controls to be visible
at all times.
(:host(.media-document.audio)): Add a little padding on the x-axis to ensure audio controls never snap
directly to the edges of the window.
(:host(.media-document.audio.iphone)): Remove the iPhone-specific styling since we moved it to the
general case.
(:host(.media-document.video.invalid) .placard): Remove the background from the invalid placard when
showing invalid media.
(:host(.media-document.ready)): Deleted.
* Modules/modern-media-controls/media/audio-support.js:
(AudioSupport.prototype.syncControl): Make sure we invalidate the media document layout when a media
document's media type changes.
* Modules/modern-media-controls/media/media-controller.js:
(MediaController): Instantiate the controls prior to creating the MediaDocumentController since the
MediaDocumentController will need to access the controls.
* Modules/modern-media-controls/media/media-document-controller.js:
(MediaDocumentController): Set the default layout for media controls for a media document to be audio
and in the waiting state.
(MediaDocumentController.prototype.layout): Toggle the "invalid", "audio" and "video" CSS classes for
the next possible commit to the DOM, provided we have established the media document's media type.
(MediaDocumentController.prototype.handleEvent): Deal with the "play" and "error" events to trigger
a layout.
(MediaDocumentController.prototype._mediaDocumentHasMetadata): Deleted.
(MediaDocumentController.prototype._mediaDocumentHasSize): Deleted.

LayoutTests:

Fix a test that started failing with this patch and add two new tests that check we are adding
the expected CSS classes when loading video and invalid media documents.

* media/modern-media-controls/media-documents/media-document-invalid-expected.txt: Added.
* media/modern-media-controls/media-documents/media-document-invalid.html: Added.
* media/modern-media-controls/media-documents/media-document-video-with-initial-audio-layout-expected.txt: Added.
* media/modern-media-controls/media-documents/media-document-video-with-initial-audio-layout.html: Added.
* media/modern-media-controls/volume-up-support/volume-up-support-expected.txt:
* media/modern-media-controls/volume-up-support/volume-up-support.html:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/media/modern-media-controls/volume-up-support/volume-up-support-expected.txt
trunk/LayoutTests/media/modern-media-controls/volume-up-support/volume-up-support.html
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Modules/modern-media-controls/controls/media-document.css
trunk/Source/WebCore/Modules/modern-media-controls/media/audio-support.js
trunk/Source/WebCore/Modules/modern-media-controls/media/media-controller.js
trunk/Source/WebCore/Modules/modern-media-controls/media/media-document-controller.js


Added Paths

trunk/LayoutTests/media/modern-media-controls/media-documents/media-document-invalid-expected.txt
trunk/LayoutTests/media/modern-media-controls/media-documents/media-document-invalid.html
trunk/LayoutTests/media/modern-media-controls/media-documents/media-document-video-with-initial-audio-layout-expected.txt
trunk/LayoutTests/media/modern-media-controls/media-documents/media-document-video-with-initial-audio-layout.html




Diff

Modified: trunk/LayoutTests/ChangeLog (218599 => 218600)

--- trunk/LayoutTests/ChangeLog	2017-06-20 17:21:47 UTC 

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

Title: [218599] trunk/Source/WebCore








Revision 218599
Author dba...@webkit.org
Date 2017-06-20 10:21:47 -0700 (Tue, 20 Jun 2017)


Log Message
NavigationAction has too many constructors
https://bugs.webkit.org/show_bug.cgi?id=173484

Reviewed by Brady Eidson.

A NavigationAction object is an immutable object that represents the details of a
navigation, including the type of a navigation (e.g. link click), what triggered
the navigation, and the external URL policy to use for the navigation. Over time
the number of NavigationAction constructor overloads (not including copy/move
constructors) has grown to 12 to support different combinations of details.
We can use default values to reduce the number of constructors to 2 (not including
copy/move constructors).

No behavior changed. So, no new tests.

* loader/FrameLoader.cpp:
(WebCore::FrameLoader::continueLoadAfterNewWindowPolicy): Pass NavigationType::Other when
instantiating NavigationAction.
(WebCore::FrameLoader::loadDifferentDocumentItem): Fix order of arguments now that
the constructor overload that takes a NavigationType takes the Event* as the fourth argument,
not the third. Also, use C++11 brace initialization syntax when instantiating a NavigationAction.
(WebCore::createWindow):
* loader/NavigationAction.cpp: Remove unnecessary #include of header ScriptController.h.
Include header Event.h.
(WebCore::NavigationAction::NavigationAction):
* loader/NavigationAction.h: Forward declare class Event and remove #include of header Event.h.
Make copy constructor, copy assignment operator, move constructor, and move assignment operator
out-of-line to avoid the need to include header Event.h. Export the copy constructor so that it
can be used from WebKit on the Apple Windows port. Move ShouldOpenExternalURLsPolicy to be after
NavigationType to reduce the size of the class by 8 bytes.
(WebCore::NavigationAction::NavigationAction):
* loader/PolicyChecker.cpp: Include header Event.h.
* page/Performance.cpp: Ditto.
* replay/ReplayController.cpp: Ditto.

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/loader/FrameLoader.cpp
trunk/Source/WebCore/loader/NavigationAction.cpp
trunk/Source/WebCore/loader/NavigationAction.h
trunk/Source/WebCore/loader/PolicyChecker.cpp
trunk/Source/WebCore/page/Performance.cpp
trunk/Source/WebCore/replay/ReplayController.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (218598 => 218599)

--- trunk/Source/WebCore/ChangeLog	2017-06-20 17:09:38 UTC (rev 218598)
+++ trunk/Source/WebCore/ChangeLog	2017-06-20 17:21:47 UTC (rev 218599)
@@ -1,3 +1,40 @@
+2017-06-20  Daniel Bates  
+
+NavigationAction has too many constructors
+https://bugs.webkit.org/show_bug.cgi?id=173484
+
+Reviewed by Brady Eidson.
+
+A NavigationAction object is an immutable object that represents the details of a
+navigation, including the type of a navigation (e.g. link click), what triggered
+the navigation, and the external URL policy to use for the navigation. Over time
+the number of NavigationAction constructor overloads (not including copy/move
+constructors) has grown to 12 to support different combinations of details.
+We can use default values to reduce the number of constructors to 2 (not including
+copy/move constructors).
+
+No behavior changed. So, no new tests.
+
+* loader/FrameLoader.cpp:
+(WebCore::FrameLoader::continueLoadAfterNewWindowPolicy): Pass NavigationType::Other when
+instantiating NavigationAction.
+(WebCore::FrameLoader::loadDifferentDocumentItem): Fix order of arguments now that
+the constructor overload that takes a NavigationType takes the Event* as the fourth argument,
+not the third. Also, use C++11 brace initialization syntax when instantiating a NavigationAction.
+(WebCore::createWindow):
+* loader/NavigationAction.cpp: Remove unnecessary #include of header ScriptController.h.
+Include header Event.h.
+(WebCore::NavigationAction::NavigationAction):
+* loader/NavigationAction.h: Forward declare class Event and remove #include of header Event.h.
+Make copy constructor, copy assignment operator, move constructor, and move assignment operator
+out-of-line to avoid the need to include header Event.h. Export the copy constructor so that it
+can be used from WebKit on the Apple Windows port. Move ShouldOpenExternalURLsPolicy to be after
+NavigationType to reduce the size of the class by 8 bytes.
+(WebCore::NavigationAction::NavigationAction):
+* loader/PolicyChecker.cpp: Include header Event.h.
+* page/Performance.cpp: Ditto.
+* replay/ReplayController.cpp: Ditto.
+
 2017-06-20  Konstantin Tokarev  
 
 Rename OrientationNotifer.h to OrientationNotifier.h


Modified: trunk/Source/WebCore/loader/FrameLoader.cpp (218598 => 218599)

--- 

[webkit-changes] [218598] tags/Safari-604.1.26.2

Title: [218598] tags/Safari-604.1.26.2








Revision 218598
Author jmarc...@apple.com
Date 2017-06-20 10:09:38 -0700 (Tue, 20 Jun 2017)


Log Message
Cherry-pick r218295. rdar://problem/32723779

Modified Paths

tags/Safari-604.1.26.2/Source/WebKit2/ChangeLog
tags/Safari-604.1.26.2/Source/WebKit2/UIProcess/WebPageProxy.cpp
tags/Safari-604.1.26.2/Source/WebKit2/UIProcess/WebPageProxy.h
tags/Safari-604.1.26.2/Source/WebKit2/UIProcess/WebPageProxy.messages.in
tags/Safari-604.1.26.2/Source/WebKit2/UIProcess/WebProcessProxy.cpp
tags/Safari-604.1.26.2/Source/WebKit2/UIProcess/WebProcessProxy.h
tags/Safari-604.1.26.2/Source/WebKit2/UIProcess/WebProcessProxy.messages.in
tags/Safari-604.1.26.2/Source/WebKit2/WebProcess/WebPage/WebPage.cpp
tags/Safari-604.1.26.2/Tools/ChangeLog
tags/Safari-604.1.26.2/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj
tags/Safari-604.1.26.2/Tools/TestWebKitAPI/cocoa/UtilitiesCocoa.mm


Added Paths

tags/Safari-604.1.26.2/Tools/TestWebKitAPI/Tests/WebKit2/ResponsivenessTimer.cpp




Diff

Modified: tags/Safari-604.1.26.2/Source/WebKit2/ChangeLog (218597 => 218598)

--- tags/Safari-604.1.26.2/Source/WebKit2/ChangeLog	2017-06-20 17:03:23 UTC (rev 218597)
+++ tags/Safari-604.1.26.2/Source/WebKit2/ChangeLog	2017-06-20 17:09:38 UTC (rev 218598)
@@ -1,3 +1,43 @@
+2017-06-20  Jason Marcell  
+
+Cherry-pick r218295. rdar://problem/32723779
+
+2017-06-14  Chris Dumez  
+
+WebKit falsely reports that a web process is unresponsive if you close a page shortly after stopping a load
+https://bugs.webkit.org/show_bug.cgi?id=173384
+
+
+Reviewed by Dan Bernstein.
+
+WebKit falsely reports that a web process is unresponsive if you close a page shortly after stopping a load.
+This is because WebPageProxy::stopLoad() starts the responsiveness timer and expects a StopResponsinessTimer
+IPC from the WebProcess to stop the timer so we don't report the process as unresponsive. However, if
+WebPageProxy::close() is called before the StopResponsinessTimer IPC has been received, the page will remove
+itself from the message receiver map and we would no longer be able to receive the StopResponsinessTimer
+IPC and stop the timer, even if the WebProcess sent it to the UIProcess.
+
+To address the issue, we now send the IPC Message to the WebProcessProxy instead of the WebPageProxy, so we
+can stop the responsiveness timer, even after the WebPageProxy has been called.
+
+* UIProcess/WebPageProxy.cpp:
+* UIProcess/WebPageProxy.h:
+* UIProcess/WebPageProxy.messages.in:
+* UIProcess/WebProcessProxy.cpp:
+(WebKit::WebProcessProxy::stopResponsivenessTimer):
+* UIProcess/WebProcessProxy.h:
+* UIProcess/WebProcessProxy.messages.in:
+* WebProcess/WebPage/WebPage.cpp:
+(WebKit::SendStopResponsivenessTimer::~SendStopResponsivenessTimer):
+(WebKit::WebPage::tryClose):
+(WebKit::WebPage::loadRequest):
+(WebKit::WebPage::loadDataImpl):
+(WebKit::WebPage::stopLoading):
+(WebKit::WebPage::reload):
+(WebKit::WebPage::goForward):
+(WebKit::WebPage::goBack):
+(WebKit::WebPage::goToBackForwardItem):
+
 2017-06-14  Carlos Garcia Campos  
 
 [GTK] Use API::InjectedBundle::EditorClient in WebKitWebEditor


Modified: tags/Safari-604.1.26.2/Source/WebKit2/UIProcess/WebPageProxy.cpp (218597 => 218598)

--- tags/Safari-604.1.26.2/Source/WebKit2/UIProcess/WebPageProxy.cpp	2017-06-20 17:03:23 UTC (rev 218597)
+++ tags/Safari-604.1.26.2/Source/WebKit2/UIProcess/WebPageProxy.cpp	2017-06-20 17:09:38 UTC (rev 218598)
@@ -4986,11 +4986,6 @@
 }
 }
 
-void WebPageProxy::stopResponsivenessTimer()
-{
-m_process->responsivenessTimer().stop();
-}
-
 void WebPageProxy::voidCallback(uint64_t callbackID)
 {
 auto callback = m_callbacks.take(callbackID);


Modified: tags/Safari-604.1.26.2/Source/WebKit2/UIProcess/WebPageProxy.h (218597 => 218598)

--- tags/Safari-604.1.26.2/Source/WebKit2/UIProcess/WebPageProxy.h	2017-06-20 17:03:23 UTC (rev 218597)
+++ tags/Safari-604.1.26.2/Source/WebKit2/UIProcess/WebPageProxy.h	2017-06-20 17:09:38 UTC (rev 218598)
@@ -1440,7 +1440,6 @@
 void setCursorHiddenUntilMouseMoves(bool);
 
 void didReceiveEvent(uint32_t opaqueType, bool handled);
-void stopResponsivenessTimer();
 
 void voidCallback(uint64_t);
 void dataCallback(const IPC::DataReference&, uint64_t);


Modified: tags/Safari-604.1.26.2/Source/WebKit2/UIProcess/WebPageProxy.messages.in (218597 => 218598)

--- tags/Safari-604.1.26.2/Source/WebKit2/UIProcess/WebPageProxy.messages.in	2017-06-20 17:03:23 UTC (rev 218597)
+++ tags/Safari-604.1.26.2/Source/WebKit2/UIProcess/WebPageProxy.messages.in	

[webkit-changes] [218597] tags/Safari-604.1.26.2/Source

Title: [218597] tags/Safari-604.1.26.2/Source








Revision 218597
Author jmarc...@apple.com
Date 2017-06-20 10:03:23 -0700 (Tue, 20 Jun 2017)


Log Message
Versioning.

Modified Paths

tags/Safari-604.1.26.2/Source/_javascript_Core/Configurations/Version.xcconfig
tags/Safari-604.1.26.2/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig
tags/Safari-604.1.26.2/Source/WebCore/Configurations/Version.xcconfig
tags/Safari-604.1.26.2/Source/WebCore/PAL/Configurations/Version.xcconfig
tags/Safari-604.1.26.2/Source/WebInspectorUI/Configurations/Version.xcconfig
tags/Safari-604.1.26.2/Source/WebKit/mac/Configurations/Version.xcconfig
tags/Safari-604.1.26.2/Source/WebKit2/Configurations/Version.xcconfig




Diff

Modified: tags/Safari-604.1.26.2/Source/_javascript_Core/Configurations/Version.xcconfig (218596 => 218597)

--- tags/Safari-604.1.26.2/Source/_javascript_Core/Configurations/Version.xcconfig	2017-06-20 16:59:18 UTC (rev 218596)
+++ tags/Safari-604.1.26.2/Source/_javascript_Core/Configurations/Version.xcconfig	2017-06-20 17:03:23 UTC (rev 218597)
@@ -24,7 +24,7 @@
 MAJOR_VERSION = 604;
 MINOR_VERSION = 1;
 TINY_VERSION = 26;
-MICRO_VERSION = 1;
+MICRO_VERSION = 2;
 NANO_VERSION = 0;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION);
 


Modified: tags/Safari-604.1.26.2/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig (218596 => 218597)

--- tags/Safari-604.1.26.2/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig	2017-06-20 16:59:18 UTC (rev 218596)
+++ tags/Safari-604.1.26.2/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig	2017-06-20 17:03:23 UTC (rev 218597)
@@ -24,7 +24,7 @@
 MAJOR_VERSION = 604;
 MINOR_VERSION = 1;
 TINY_VERSION = 26;
-MICRO_VERSION = 1;
+MICRO_VERSION = 2;
 NANO_VERSION = 0;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION);
 


Modified: tags/Safari-604.1.26.2/Source/WebCore/Configurations/Version.xcconfig (218596 => 218597)

--- tags/Safari-604.1.26.2/Source/WebCore/Configurations/Version.xcconfig	2017-06-20 16:59:18 UTC (rev 218596)
+++ tags/Safari-604.1.26.2/Source/WebCore/Configurations/Version.xcconfig	2017-06-20 17:03:23 UTC (rev 218597)
@@ -24,7 +24,7 @@
 MAJOR_VERSION = 604;
 MINOR_VERSION = 1;
 TINY_VERSION = 26;
-MICRO_VERSION = 1;
+MICRO_VERSION = 2;
 NANO_VERSION = 0;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION);
 


Modified: tags/Safari-604.1.26.2/Source/WebCore/PAL/Configurations/Version.xcconfig (218596 => 218597)

--- tags/Safari-604.1.26.2/Source/WebCore/PAL/Configurations/Version.xcconfig	2017-06-20 16:59:18 UTC (rev 218596)
+++ tags/Safari-604.1.26.2/Source/WebCore/PAL/Configurations/Version.xcconfig	2017-06-20 17:03:23 UTC (rev 218597)
@@ -24,7 +24,7 @@
 MAJOR_VERSION = 604;
 MINOR_VERSION = 1;
 TINY_VERSION = 26;
-MICRO_VERSION = 1;
+MICRO_VERSION = 2;
 NANO_VERSION = 0;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION);
 


Modified: tags/Safari-604.1.26.2/Source/WebInspectorUI/Configurations/Version.xcconfig (218596 => 218597)

--- tags/Safari-604.1.26.2/Source/WebInspectorUI/Configurations/Version.xcconfig	2017-06-20 16:59:18 UTC (rev 218596)
+++ tags/Safari-604.1.26.2/Source/WebInspectorUI/Configurations/Version.xcconfig	2017-06-20 17:03:23 UTC (rev 218597)
@@ -1,7 +1,7 @@
 MAJOR_VERSION = 604;
 MINOR_VERSION = 1;
 TINY_VERSION = 26;
-MICRO_VERSION = 1;
+MICRO_VERSION = 2;
 NANO_VERSION = 0;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION);
 


Modified: tags/Safari-604.1.26.2/Source/WebKit/mac/Configurations/Version.xcconfig (218596 => 218597)

--- tags/Safari-604.1.26.2/Source/WebKit/mac/Configurations/Version.xcconfig	2017-06-20 16:59:18 UTC (rev 218596)
+++ tags/Safari-604.1.26.2/Source/WebKit/mac/Configurations/Version.xcconfig	2017-06-20 17:03:23 UTC (rev 218597)
@@ -24,7 +24,7 @@
 MAJOR_VERSION = 604;
 MINOR_VERSION = 1;
 TINY_VERSION = 26;
-MICRO_VERSION = 1;
+MICRO_VERSION = 2;
 NANO_VERSION = 0;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION);
 


Modified: tags/Safari-604.1.26.2/Source/WebKit2/Configurations/Version.xcconfig (218596 => 218597)

--- tags/Safari-604.1.26.2/Source/WebKit2/Configurations/Version.xcconfig	2017-06-20 16:59:18 UTC (rev 218596)
+++ tags/Safari-604.1.26.2/Source/WebKit2/Configurations/Version.xcconfig	2017-06-20 17:03:23 UTC (rev 218597)
@@ -24,7 +24,7 @@
 MAJOR_VERSION = 604;
 MINOR_VERSION = 1;
 TINY_VERSION = 26;
-MICRO_VERSION = 1;
+MICRO_VERSION = 2;
 NANO_VERSION = 0;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION);
 






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


[webkit-changes] [218596] tags/Safari-604.1.26.2/

Title: [218596] tags/Safari-604.1.26.2/








Revision 218596
Author jmarc...@apple.com
Date 2017-06-20 09:59:18 -0700 (Tue, 20 Jun 2017)


Log Message
New tag.

Added Paths

tags/Safari-604.1.26.2/




Diff




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


[webkit-changes] [218590] releases/WebKitGTK/webkit-2.16.4/

Title: [218590] releases/WebKitGTK/webkit-2.16.4/








Revision 218590
Author carlo...@webkit.org
Date 2017-06-20 04:44:59 -0700 (Tue, 20 Jun 2017)


Log Message
WebKitGTK+ 2.16.4

Added Paths

releases/WebKitGTK/webkit-2.16.4/




Diff




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


[webkit-changes] [218589] releases/WebKitGTK/webkit-2.16

Title: [218589] releases/WebKitGTK/webkit-2.16








Revision 218589
Author carlo...@webkit.org
Date 2017-06-20 04:44:28 -0700 (Tue, 20 Jun 2017)


Log Message
Unreviewed. Update OptionsGTK.cmake and NEWS for 2.16.4 release.

.:

* Source/cmake/OptionsGTK.cmake:

Source/WebKit2:

* gtk/NEWS: Add release notes for 2.16.4.

Modified Paths

releases/WebKitGTK/webkit-2.16/ChangeLog
releases/WebKitGTK/webkit-2.16/Source/WebKit2/ChangeLog
releases/WebKitGTK/webkit-2.16/Source/WebKit2/gtk/NEWS
releases/WebKitGTK/webkit-2.16/Source/cmake/OptionsGTK.cmake




Diff

Modified: releases/WebKitGTK/webkit-2.16/ChangeLog (218588 => 218589)

--- releases/WebKitGTK/webkit-2.16/ChangeLog	2017-06-20 11:38:49 UTC (rev 218588)
+++ releases/WebKitGTK/webkit-2.16/ChangeLog	2017-06-20 11:44:28 UTC (rev 218589)
@@ -1,3 +1,9 @@
+2017-06-20  Carlos Garcia Campos  
+
+Unreviewed. Update OptionsGTK.cmake and NEWS for 2.16.4 release.
+
+* Source/cmake/OptionsGTK.cmake:
+
 2017-05-24  Carlos Garcia Campos  
 
 Unreviewed. Update OptionsGTK.cmake and NEWS for 2.16.3 release.


Modified: releases/WebKitGTK/webkit-2.16/Source/WebKit2/ChangeLog (218588 => 218589)

--- releases/WebKitGTK/webkit-2.16/Source/WebKit2/ChangeLog	2017-06-20 11:38:49 UTC (rev 218588)
+++ releases/WebKitGTK/webkit-2.16/Source/WebKit2/ChangeLog	2017-06-20 11:44:28 UTC (rev 218589)
@@ -1,3 +1,9 @@
+2017-06-20  Carlos Garcia Campos  
+
+Unreviewed. Update OptionsGTK.cmake and NEWS for 2.16.4 release.
+
+* gtk/NEWS: Add release notes for 2.16.4.
+
 2017-06-15  Carlos Garcia Campos  
 
 Unreviewed. Fix copy-paste error in GTK+ WEBKIT_JAVASCRIPT_ERROR definition.


Modified: releases/WebKitGTK/webkit-2.16/Source/WebKit2/gtk/NEWS (218588 => 218589)

--- releases/WebKitGTK/webkit-2.16/Source/WebKit2/gtk/NEWS	2017-06-20 11:38:49 UTC (rev 218588)
+++ releases/WebKitGTK/webkit-2.16/Source/WebKit2/gtk/NEWS	2017-06-20 11:44:28 UTC (rev 218589)
@@ -1,4 +1,15 @@
 ==
+WebKitGTK+  2.16.4
+==
+
+  - Fix web process deadlock when seeking youtube videos.
+  - Fix blob downloads.
+  - Improve theme rendering performance when using GTK+ >= 3.20.
+  - Fix positioning of popup menus in Wayland.
+  - Fix several crashes and rendering issues.
+  - Security fixes: CVE-2017-2538.
+
+==
 WebKitGTK+  2.16.3
 ==
 


Modified: releases/WebKitGTK/webkit-2.16/Source/cmake/OptionsGTK.cmake (218588 => 218589)

--- releases/WebKitGTK/webkit-2.16/Source/cmake/OptionsGTK.cmake	2017-06-20 11:38:49 UTC (rev 218588)
+++ releases/WebKitGTK/webkit-2.16/Source/cmake/OptionsGTK.cmake	2017-06-20 11:44:28 UTC (rev 218589)
@@ -2,7 +2,7 @@
 
 set(PROJECT_VERSION_MAJOR 2)
 set(PROJECT_VERSION_MINOR 16)
-set(PROJECT_VERSION_MICRO 3)
+set(PROJECT_VERSION_MICRO 4)
 set(PROJECT_VERSION ${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}.${PROJECT_VERSION_MICRO})
 set(WEBKITGTK_API_VERSION 4.0)
 
@@ -14,8 +14,8 @@
 
 # Libtool library version, not to be confused with API version.
 # See http://www.gnu.org/software/libtool/manual/html_node/Libtool-versioning.html
-CALCULATE_LIBRARY_VERSIONS_FROM_LIBTOOL_TRIPLE(WEBKIT2 56 6 19)
-CALCULATE_LIBRARY_VERSIONS_FROM_LIBTOOL_TRIPLE(_javascript_CORE 23 10 5)
+CALCULATE_LIBRARY_VERSIONS_FROM_LIBTOOL_TRIPLE(WEBKIT2 56 7 19)
+CALCULATE_LIBRARY_VERSIONS_FROM_LIBTOOL_TRIPLE(_javascript_CORE 23 11 5)
 
 # These are shared variables, but we special case their definition so that we can use the
 # CMAKE_INSTALL_* variables that are populated by the GNUInstallDirs macro.






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


[webkit-changes] [218587] releases/WebKitGTK/webkit-2.16/Source/WebCore

Title: [218587] releases/WebKitGTK/webkit-2.16/Source/WebCore








Revision 218587
Author carlo...@webkit.org
Date 2017-06-20 03:44:30 -0700 (Tue, 20 Jun 2017)


Log Message
Merge r218516 - Various IndexedDB crashes as an after effect of previous test.
 and https://bugs.webkit.org/show_bug.cgi?id=170436

Reviewed by Chris Dumez.

No new test (No consistent test possible, in practice covered by all existing IDB tests)

This is timing related, where a UniqueIDBDatabase can be destroyed on the main thread while
it still has one task left to try to execute on the IDBServer thread.

The background thread tasks don't Ref<> the UniqueIDBDatabase, so even though task execution
took a Ref<> protector, there was still a small window for a race.

Should be closed up by making the background thread tasks themselves protect this.

* Modules/indexeddb/server/UniqueIDBDatabase.cpp:
(WebCore::IDBServer::UniqueIDBDatabase::postDatabaseTask):
(WebCore::IDBServer::UniqueIDBDatabase::postDatabaseTaskReply):
(WebCore::IDBServer::UniqueIDBDatabase::executeNextDatabaseTask):
(WebCore::IDBServer::UniqueIDBDatabase::executeNextDatabaseTaskReply):
* Modules/indexeddb/server/UniqueIDBDatabase.h:

Modified Paths

releases/WebKitGTK/webkit-2.16/Source/WebCore/ChangeLog
releases/WebKitGTK/webkit-2.16/Source/WebCore/Modules/indexeddb/server/UniqueIDBDatabase.cpp
releases/WebKitGTK/webkit-2.16/Source/WebCore/Modules/indexeddb/server/UniqueIDBDatabase.h




Diff

Modified: releases/WebKitGTK/webkit-2.16/Source/WebCore/ChangeLog (218586 => 218587)

--- releases/WebKitGTK/webkit-2.16/Source/WebCore/ChangeLog	2017-06-20 10:40:48 UTC (rev 218586)
+++ releases/WebKitGTK/webkit-2.16/Source/WebCore/ChangeLog	2017-06-20 10:44:30 UTC (rev 218587)
@@ -1,3 +1,27 @@
+2017-06-19  Brady Eidson  
+
+Various IndexedDB crashes as an after effect of previous test.
+ and https://bugs.webkit.org/show_bug.cgi?id=170436
+
+Reviewed by Chris Dumez.
+
+No new test (No consistent test possible, in practice covered by all existing IDB tests)
+
+This is timing related, where a UniqueIDBDatabase can be destroyed on the main thread while
+it still has one task left to try to execute on the IDBServer thread.
+
+The background thread tasks don't Ref<> the UniqueIDBDatabase, so even though task execution
+took a Ref<> protector, there was still a small window for a race.
+
+Should be closed up by making the background thread tasks themselves protect this.
+
+* Modules/indexeddb/server/UniqueIDBDatabase.cpp:
+(WebCore::IDBServer::UniqueIDBDatabase::postDatabaseTask):
+(WebCore::IDBServer::UniqueIDBDatabase::postDatabaseTaskReply):
+(WebCore::IDBServer::UniqueIDBDatabase::executeNextDatabaseTask):
+(WebCore::IDBServer::UniqueIDBDatabase::executeNextDatabaseTaskReply):
+* Modules/indexeddb/server/UniqueIDBDatabase.h:
+
 2017-06-18  Carlos Garcia Campos  
 
 [GStreamer] MainThreadNotifier ASSERTION FAILED: m_boundThread == currentThread() in _WebKitWebSrcPrivate::~_WebKitWebSrcPrivate


Modified: releases/WebKitGTK/webkit-2.16/Source/WebCore/Modules/indexeddb/server/UniqueIDBDatabase.cpp (218586 => 218587)

--- releases/WebKitGTK/webkit-2.16/Source/WebCore/Modules/indexeddb/server/UniqueIDBDatabase.cpp	2017-06-20 10:40:48 UTC (rev 218586)
+++ releases/WebKitGTK/webkit-2.16/Source/WebCore/Modules/indexeddb/server/UniqueIDBDatabase.cpp	2017-06-20 10:44:30 UTC (rev 218587)
@@ -1706,7 +1706,9 @@
 
 void UniqueIDBDatabase::postDatabaseTask(CrossThreadTask&& task)
 {
-m_databaseQueue.append(WTFMove(task));
+m_databaseQueue.append([protectedThis = makeRef(*this), task = WTFMove(task)]() mutable {
+task.performTask();
+});
 ++m_queuedTaskCount;
 
 m_server.postDatabaseTask(createCrossThreadTask(*this, ::executeNextDatabaseTask));
@@ -1715,7 +1717,10 @@
 void UniqueIDBDatabase::postDatabaseTaskReply(CrossThreadTask&& task)
 {
 ASSERT(!isMainThread());
-m_databaseReplyQueue.append(WTFMove(task));
+
+m_databaseReplyQueue.append([protectedThis = makeRef(*this), task = WTFMove(task)]() mutable {
+task.performTask();
+});
 ++m_queuedTaskCount;
 
 m_server.postDatabaseTaskReply(createCrossThreadTask(*this, ::executeNextDatabaseTaskReply));
@@ -1729,14 +1734,12 @@
 auto task = m_databaseQueue.tryGetMessage();
 ASSERT(task);
 
-// Performing the task might end up removing the last reference to this.
-Ref protectedThis(*this);
-
-task->performTask();
+(*task)();
 --m_queuedTaskCount;
 
-// Release the ref in the main thread to ensure it's deleted there as expected in case of being the last reference.
-callOnMainThread([protectedThis = WTFMove(protectedThis)] {
+// Release the task on the main thread in case it holds the last reference to this,
+// as UniqueIDBDatabase objects must be deleted on the 

[webkit-changes] [218586] releases/WebKitGTK/webkit-2.16/Source/WebCore

Title: [218586] releases/WebKitGTK/webkit-2.16/Source/WebCore








Revision 218586
Author carlo...@webkit.org
Date 2017-06-20 03:40:48 -0700 (Tue, 20 Jun 2017)


Log Message
Merge r218471 - [GStreamer] MainThreadNotifier ASSERTION FAILED: m_boundThread == currentThread() in _WebKitWebSrcPrivate::~_WebKitWebSrcPrivate
https://bugs.webkit.org/show_bug.cgi?id=152043

Reviewed by Xabier Rodriguez-Calvar.

Stop using a WeakPtr in MainThreadNotifier, because it's not thread safe, which causes a crash in debug builds when
the notifier is destroyed in a different thread. Make MainThreadNotifier thread safe refcounted instead, and add
an invalidate() method to mark it as invalid.

* platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.cpp:
(WebCore::InbandTextTrackPrivateGStreamer::handleSample):
(WebCore::InbandTextTrackPrivateGStreamer::streamChanged):
* platform/graphics/gstreamer/MainThreadNotifier.h:
(WebCore::MainThreadNotifier::MainThreadNotifier): Deleted.
(WebCore::MainThreadNotifier::notify): Deleted.
(WebCore::MainThreadNotifier::cancelPendingNotifications): Deleted.
(WebCore::MainThreadNotifier::addPendingNotification): Deleted.
(WebCore::MainThreadNotifier::removePendingNotification): Deleted.
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::videoChangedCallback):
(WebCore::MediaPlayerPrivateGStreamer::videoSinkCapsChangedCallback):
(WebCore::MediaPlayerPrivateGStreamer::audioChangedCallback):
(WebCore::MediaPlayerPrivateGStreamer::textChangedCallback):
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
(WebCore::MediaPlayerPrivateGStreamerBase::MediaPlayerPrivateGStreamerBase):
(WebCore::MediaPlayerPrivateGStreamerBase::~MediaPlayerPrivateGStreamerBase):
(WebCore::MediaPlayerPrivateGStreamerBase::volumeChangedCallback):
(WebCore::MediaPlayerPrivateGStreamerBase::muteChangedCallback):
(WebCore::MediaPlayerPrivateGStreamerBase::triggerRepaint):
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h:
* platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp:
(WebCore::TrackPrivateBaseGStreamer::TrackPrivateBaseGStreamer):
(WebCore::TrackPrivateBaseGStreamer::~TrackPrivateBaseGStreamer):
(WebCore::TrackPrivateBaseGStreamer::disconnect):
(WebCore::TrackPrivateBaseGStreamer::activeChangedCallback):
(WebCore::TrackPrivateBaseGStreamer::tagsChanged):
* platform/graphics/gstreamer/TrackPrivateBaseGStreamer.h:
* platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
(webkit_web_src_init):
(webKitWebSrcDispose):
(webKitWebSrcStop):
(webKitWebSrcStart):
(webKitWebSrcNeedData):
(webKitWebSrcEnoughData):
(webKitWebSrcSeek):

Modified Paths

releases/WebKitGTK/webkit-2.16/Source/WebCore/ChangeLog
releases/WebKitGTK/webkit-2.16/Source/WebCore/platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.cpp
releases/WebKitGTK/webkit-2.16/Source/WebCore/platform/graphics/gstreamer/MainThreadNotifier.h
releases/WebKitGTK/webkit-2.16/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp
releases/WebKitGTK/webkit-2.16/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp
releases/WebKitGTK/webkit-2.16/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h
releases/WebKitGTK/webkit-2.16/Source/WebCore/platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp
releases/WebKitGTK/webkit-2.16/Source/WebCore/platform/graphics/gstreamer/TrackPrivateBaseGStreamer.h
releases/WebKitGTK/webkit-2.16/Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp




Diff

Modified: releases/WebKitGTK/webkit-2.16/Source/WebCore/ChangeLog (218585 => 218586)

--- releases/WebKitGTK/webkit-2.16/Source/WebCore/ChangeLog	2017-06-20 10:38:21 UTC (rev 218585)
+++ releases/WebKitGTK/webkit-2.16/Source/WebCore/ChangeLog	2017-06-20 10:40:48 UTC (rev 218586)
@@ -1,3 +1,51 @@
+2017-06-18  Carlos Garcia Campos  
+
+[GStreamer] MainThreadNotifier ASSERTION FAILED: m_boundThread == currentThread() in _WebKitWebSrcPrivate::~_WebKitWebSrcPrivate
+https://bugs.webkit.org/show_bug.cgi?id=152043
+
+Reviewed by Xabier Rodriguez-Calvar.
+
+Stop using a WeakPtr in MainThreadNotifier, because it's not thread safe, which causes a crash in debug builds when
+the notifier is destroyed in a different thread. Make MainThreadNotifier thread safe refcounted instead, and add
+an invalidate() method to mark it as invalid.
+
+* platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.cpp:
+(WebCore::InbandTextTrackPrivateGStreamer::handleSample):
+(WebCore::InbandTextTrackPrivateGStreamer::streamChanged):
+* platform/graphics/gstreamer/MainThreadNotifier.h:
+(WebCore::MainThreadNotifier::MainThreadNotifier): Deleted.
+(WebCore::MainThreadNotifier::notify): Deleted.
+(WebCore::MainThreadNotifier::cancelPendingNotifications): Deleted.
+

[webkit-changes] [218585] releases/WebKitGTK/webkit-2.16/Source/WebKit2

Title: [218585] releases/WebKitGTK/webkit-2.16/Source/WebKit2








Revision 218585
Author carlo...@webkit.org
Date 2017-06-20 03:38:21 -0700 (Tue, 20 Jun 2017)


Log Message
Merge r218326 - Unreviewed. Fix copy-paste error in GTK+ WEBKIT_JAVASCRIPT_ERROR definition.

The print one was copied there.

* UIProcess/API/gtk/WebKitError.h:

Modified Paths

releases/WebKitGTK/webkit-2.16/Source/WebKit2/ChangeLog
releases/WebKitGTK/webkit-2.16/Source/WebKit2/UIProcess/API/gtk/WebKitError.h




Diff

Modified: releases/WebKitGTK/webkit-2.16/Source/WebKit2/ChangeLog (218584 => 218585)

--- releases/WebKitGTK/webkit-2.16/Source/WebKit2/ChangeLog	2017-06-20 10:38:16 UTC (rev 218584)
+++ releases/WebKitGTK/webkit-2.16/Source/WebKit2/ChangeLog	2017-06-20 10:38:21 UTC (rev 218585)
@@ -1,3 +1,11 @@
+2017-06-15  Carlos Garcia Campos  
+
+Unreviewed. Fix copy-paste error in GTK+ WEBKIT_JAVASCRIPT_ERROR definition.
+
+The print one was copied there.
+
+* UIProcess/API/gtk/WebKitError.h:
+
 2017-06-16  Carlos Garcia Campos  
 
 Unreviewed. Remove wrong headers check from some GTK+ API files.


Modified: releases/WebKitGTK/webkit-2.16/Source/WebKit2/UIProcess/API/gtk/WebKitError.h (218584 => 218585)

--- releases/WebKitGTK/webkit-2.16/Source/WebKit2/UIProcess/API/gtk/WebKitError.h	2017-06-20 10:38:16 UTC (rev 218584)
+++ releases/WebKitGTK/webkit-2.16/Source/WebKit2/UIProcess/API/gtk/WebKitError.h	2017-06-20 10:38:21 UTC (rev 218585)
@@ -34,7 +34,7 @@
 #define WEBKIT_PLUGIN_ERROR webkit_plugin_error_quark ()
 #define WEBKIT_DOWNLOAD_ERROR   webkit_download_error_quark ()
 #define WEBKIT_PRINT_ERROR  webkit_print_error_quark ()
-#define WEBKIT_JAVASCRIPT_ERROR webkit_print_error_quark ()
+#define WEBKIT_JAVASCRIPT_ERROR webkit_javascript_error_quark ()
 #define WEBKIT_SNAPSHOT_ERROR   webkit_snapshot_error_quark ()
 
 /**






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


[webkit-changes] [218584] releases/WebKitGTK/webkit-2.16/Source/WebKit2

Title: [218584] releases/WebKitGTK/webkit-2.16/Source/WebKit2








Revision 218584
Author carlo...@webkit.org
Date 2017-06-20 03:38:16 -0700 (Tue, 20 Jun 2017)


Log Message
Merge r218386 - Unreviewed. Remove wrong headers check from some GTK+ API files.

Remove the __WEBKIT_WEB_EXTENSION_H_INSIDE__ check since these are not actually shared.

* UIProcess/API/gtk/WebKitEditorState.h:
* UIProcess/API/gtk/WebKitOptionMenu.h:
* UIProcess/API/gtk/WebKitPrintCustomWidget.h:

Modified Paths

releases/WebKitGTK/webkit-2.16/Source/WebKit2/ChangeLog
releases/WebKitGTK/webkit-2.16/Source/WebKit2/UIProcess/API/gtk/WebKitEditorState.h
releases/WebKitGTK/webkit-2.16/Source/WebKit2/UIProcess/API/gtk/WebKitPrintCustomWidget.h




Diff

Modified: releases/WebKitGTK/webkit-2.16/Source/WebKit2/ChangeLog (218583 => 218584)

--- releases/WebKitGTK/webkit-2.16/Source/WebKit2/ChangeLog	2017-06-20 10:34:31 UTC (rev 218583)
+++ releases/WebKitGTK/webkit-2.16/Source/WebKit2/ChangeLog	2017-06-20 10:38:16 UTC (rev 218584)
@@ -1,3 +1,13 @@
+2017-06-16  Carlos Garcia Campos  
+
+Unreviewed. Remove wrong headers check from some GTK+ API files.
+
+Remove the __WEBKIT_WEB_EXTENSION_H_INSIDE__ check since these are not actually shared.
+
+* UIProcess/API/gtk/WebKitEditorState.h:
+* UIProcess/API/gtk/WebKitOptionMenu.h:
+* UIProcess/API/gtk/WebKitPrintCustomWidget.h:
+
 2017-06-13  Carlos Garcia Campos  
 
 [GTK] Blob download doesn't work


Modified: releases/WebKitGTK/webkit-2.16/Source/WebKit2/UIProcess/API/gtk/WebKitEditorState.h (218583 => 218584)

--- releases/WebKitGTK/webkit-2.16/Source/WebKit2/UIProcess/API/gtk/WebKitEditorState.h	2017-06-20 10:34:31 UTC (rev 218583)
+++ releases/WebKitGTK/webkit-2.16/Source/WebKit2/UIProcess/API/gtk/WebKitEditorState.h	2017-06-20 10:38:16 UTC (rev 218584)
@@ -17,7 +17,7 @@
  * Boston, MA 02110-1301, USA.
  */
 
-#if !defined(__WEBKIT2_H_INSIDE__) && !defined(WEBKIT2_COMPILATION) && !defined(__WEBKIT_WEB_EXTENSION_H_INSIDE__)
+#if !defined(__WEBKIT2_H_INSIDE__) && !defined(WEBKIT2_COMPILATION)
 #error "Only  can be included directly."
 #endif
 


Modified: releases/WebKitGTK/webkit-2.16/Source/WebKit2/UIProcess/API/gtk/WebKitPrintCustomWidget.h (218583 => 218584)

--- releases/WebKitGTK/webkit-2.16/Source/WebKit2/UIProcess/API/gtk/WebKitPrintCustomWidget.h	2017-06-20 10:34:31 UTC (rev 218583)
+++ releases/WebKitGTK/webkit-2.16/Source/WebKit2/UIProcess/API/gtk/WebKitPrintCustomWidget.h	2017-06-20 10:38:16 UTC (rev 218584)
@@ -17,7 +17,7 @@
  * Boston, MA 02110-1301, USA.
  */
 
-#if !defined(__WEBKIT2_H_INSIDE__) && !defined(WEBKIT2_COMPILATION) && !defined(__WEBKIT_WEB_EXTENSION_H_INSIDE__)
+#if !defined(__WEBKIT2_H_INSIDE__) && !defined(WEBKIT2_COMPILATION)
 #error "Only  can be included directly."
 #endif
 






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


[webkit-changes] [218583] releases/WebKitGTK/webkit-2.16

Title: [218583] releases/WebKitGTK/webkit-2.16








Revision 218583
Author carlo...@webkit.org
Date 2017-06-20 03:34:31 -0700 (Tue, 20 Jun 2017)


Log Message
Merge r218451 - Crash due to infinite recursion via FrameSelection::updateAppearanceAfterLayout
https://bugs.webkit.org/show_bug.cgi?id=173468

Reviewed by Ryosuke Niwa.

Source/WebCore:

Test: editing/selection/updateAppearanceAfterLayout-recursion.html

Calling FrameSelection::updateAppearanceAfterLayout() from Document::resolveStyle is unsafe
because it may cause another call to resolveStyle. We have some cases where the style
is still unclean when updateAppearanceAfterLayout() is called. This can lead to infinite
recursion.

The test case is not the common stack seen in CrashTracer (couldn't quit replicate it) but
the updateAppearanceAfterLayout/resolveStyle recursion is the same.

* dom/Document.cpp:
(WebCore::Document::resolveStyle):

Normally selection appearance update is done in post-layout but not all style resolutions schedule a layout.
Invoke it asynchronously in that case instead of the previous synchronous call.

* editing/FrameSelection.cpp:
(WebCore::FrameSelection::FrameSelection):
(WebCore::FrameSelection::updateAppearanceAfterLayout):
(WebCore::FrameSelection::scheduleAppearanceUpdateAfterStyleChange):
(WebCore::FrameSelection::appearanceUpdateTimerFired):
(WebCore::FrameSelection::updateAppearanceAfterLayoutOrStyleChange):
* editing/FrameSelection.h:

LayoutTests:

* editing/selection/updateAppearanceAfterLayout-recursion-expected.txt: Added.
* editing/selection/updateAppearanceAfterLayout-recursion.html: Added.

Modified Paths

releases/WebKitGTK/webkit-2.16/LayoutTests/ChangeLog
releases/WebKitGTK/webkit-2.16/Source/WebCore/ChangeLog
releases/WebKitGTK/webkit-2.16/Source/WebCore/dom/Document.cpp
releases/WebKitGTK/webkit-2.16/Source/WebCore/editing/FrameSelection.cpp
releases/WebKitGTK/webkit-2.16/Source/WebCore/editing/FrameSelection.h


Added Paths

releases/WebKitGTK/webkit-2.16/LayoutTests/editing/selection/updateAppearanceAfterLayout-recursion-expected.txt
releases/WebKitGTK/webkit-2.16/LayoutTests/editing/selection/updateAppearanceAfterLayout-recursion.html




Diff

Modified: releases/WebKitGTK/webkit-2.16/LayoutTests/ChangeLog (218582 => 218583)

--- releases/WebKitGTK/webkit-2.16/LayoutTests/ChangeLog	2017-06-20 10:29:53 UTC (rev 218582)
+++ releases/WebKitGTK/webkit-2.16/LayoutTests/ChangeLog	2017-06-20 10:34:31 UTC (rev 218583)
@@ -1,3 +1,13 @@
+2017-06-17  Antti Koivisto  
+
+Crash due to infinite recursion via FrameSelection::updateAppearanceAfterLayout
+https://bugs.webkit.org/show_bug.cgi?id=173468
+
+Reviewed by Ryosuke Niwa.
+
+* editing/selection/updateAppearanceAfterLayout-recursion-expected.txt: Added.
+* editing/selection/updateAppearanceAfterLayout-recursion.html: Added.
+
 2017-06-17  Ryosuke Niwa  
 
 REGRESSION(r209495): materiauxlaverdure.com fails to load


Added: releases/WebKitGTK/webkit-2.16/LayoutTests/editing/selection/updateAppearanceAfterLayout-recursion-expected.txt (0 => 218583)

--- releases/WebKitGTK/webkit-2.16/LayoutTests/editing/selection/updateAppearanceAfterLayout-recursion-expected.txt	(rev 0)
+++ releases/WebKitGTK/webkit-2.16/LayoutTests/editing/selection/updateAppearanceAfterLayout-recursion-expected.txt	2017-06-20 10:34:31 UTC (rev 218583)
@@ -0,0 +1,2 @@
+edit
+target


Added: releases/WebKitGTK/webkit-2.16/LayoutTests/editing/selection/updateAppearanceAfterLayout-recursion.html (0 => 218583)

--- releases/WebKitGTK/webkit-2.16/LayoutTests/editing/selection/updateAppearanceAfterLayout-recursion.html	(rev 0)
+++ releases/WebKitGTK/webkit-2.16/LayoutTests/editing/selection/updateAppearanceAfterLayout-recursion.html	2017-06-20 10:34:31 UTC (rev 218583)
@@ -0,0 +1,17 @@
+
+if (window.testRunner) {
+internals.settings.setTelephoneNumberParsingEnabled(true);
+testRunner.dumpAsText();
+}
+
+edit
+target
+
+window.getSelection().selectAllChildren(edit);
+target.offsetWidth;
+const link = document.createElement("link");
+link.setAttribute("rel", "stylesheet");
+link.setAttribute("href", "data:text/css,"+Math.random());
+document.head.appendChild(link);
+location.hash = "#target";
+


Modified: releases/WebKitGTK/webkit-2.16/Source/WebCore/ChangeLog (218582 => 218583)

--- releases/WebKitGTK/webkit-2.16/Source/WebCore/ChangeLog	2017-06-20 10:29:53 UTC (rev 218582)
+++ releases/WebKitGTK/webkit-2.16/Source/WebCore/ChangeLog	2017-06-20 10:34:31 UTC (rev 218583)
@@ -1,3 +1,34 @@
+2017-06-17  Antti Koivisto  
+
+Crash due to infinite recursion via FrameSelection::updateAppearanceAfterLayout
+https://bugs.webkit.org/show_bug.cgi?id=173468
+
+Reviewed by Ryosuke Niwa.
+
+Test: editing/selection/updateAppearanceAfterLayout-recursion.html
+
+Calling FrameSelection::updateAppearanceAfterLayout() 

[webkit-changes] [218582] releases/WebKitGTK/webkit-2.16

Title: [218582] releases/WebKitGTK/webkit-2.16








Revision 218582
Author carlo...@webkit.org
Date 2017-06-20 03:29:53 -0700 (Tue, 20 Jun 2017)


Log Message
Merge r218446 - REGRESSION(r209495): materiauxlaverdure.com fails to load
https://bugs.webkit.org/show_bug.cgi?id=173301


Reviewed by Antti Koivisto.

LayoutTests/imported/w3c:

Rebaselined the tests that are now passing.

* web-platform-tests/cssom/CSSNamespaceRule-expected.txt:
* web-platform-tests/cssom/serialize-values-expected.txt:

Source/WebCore:

The bug was caused by WebKit wrapping CSS string values with single quotation marks instead of
double quotation marks as spec'ed in https://drafts.csswg.org/cssom/#serialize-a-string and
implemented in Firefox and Chrome.

The website eval's the computed value of the `content` CSS property with the value `'{name: "flat"}'`
after stripping single quotation marks from both ends. Prior to r209495, WebKit serialized this CSS value
in single quotations without escaping double quotations. After r209495, double quotations are escaped
with backslashes as `'{name: \"flat\"}'`. As a result, `eval` is invoked with `{name: \"flat\"}`
after stripping single quotations from both ends, which resulted in an exception.

Chrome and Firefox don't encounter this exception despite of the fact they escape double quotations
as well because serialize with double quotations as `"{name: \"flat\"}"`. Because there is no code
to strip double quotations, eval is invoked with the same string, resulting in the entire value as
being parsed as string, instead of an object with a single key "name" with the value of "flat" as
was the case in WebKit prior to r209495. While this behavior was most certainly not the intent of
the website author, Chrome and Firefox don't encounter an exception and the website continues to work.

This patch aligns WebKit's behavior to that of the CSS OM specification, Firefox, and Chrome by
serializing CSS string values using double quotation marks instead of single quotation marks.

Note: inline change log comments are added below for every call site of serializeString for clarity.

Test: fast/css/getPropertyValue-serialization-with-double-quotes.html

* css/CSSBasicShapes.cpp:
(WebCore::buildPathString): Use double quotation marks in path(~) of shapes.
* css/CSSMarkup.cpp:
(WebCore::serializeString):
(WebCore::serializeURL): Use double quotation marks to serialize URLs.
(WebCore::serializeAsStringOrCustomIdent): Use double quotation marks to serialize strings. We still avoid
using wrapping the value with double quotations when the value can be an identifier. See r209495.
(WebCore::serializeFontFamily): Ditto for font-family names such as "San Francisco".
* css/CSSMarkup.h:
* css/CSSNamespaceRule.cpp:
(WebCore::CSSNamespaceRule::cssText): Use double quotation marks to serialize namespace URIs.
* css/CSSPrimitiveValue.cpp:
(WebCore::CSSPrimitiveValue::formatNumberForCustomCSSText): Use double quotation marks to serialize
the separators; e.g. counter(sectionNumber, ".") to produce "1.".
* css/CSSSelector.cpp:
(WebCore::CSSSelector::selectorText): Use double quotation marks to serialize attribute values.
* css/parser/CSSParserToken.cpp:
(WebCore::CSSParserToken::serialize): Use double quotation marks to serialize strings in @support.
* editing/EditingStyle.cpp:
(WebCore::StyleChange::extractTextStyles): Updated to strip double quotation marks in font family names to
maintain the compatibility with old versions of Microsoft Outlook.
* html/HTMLElement.cpp:
(WebCore::HTMLElement::mapLanguageAttributeToLocale): Use double quotations marks to serialize the value
of the lang content attribute. It doesn't matter which one is used here because it's only a temporary value
only fed into the CSS parser to set the equivalent CSS value from the content attribute.

LayoutTests:

Rebaselined the existing tests and added a new regression test for serializing CSS properties and values.

* accessibility/mac/alt-for-css-content-expected.txt:
* accessibility/mac/webkit-alt-for-css-content-expected.txt:
* editing/pasteboard/cjk-line-height-expected.txt:
* fast/css/alt-inherit-initial-expected.txt:
* fast/css/alt-inherit-initial.html:
* fast/css/content-language-comma-separated-list-expected.txt:
* fast/css/content-language-empty-expected.txt:
* fast/css/content-language-only-whitespace-expected.txt:
* fast/css/content-language-with-whitespace-expected.txt:
* fast/css/counters/counter-cssText-expected.txt:
* fast/css/counters/counter-cssText.html:
* fast/css/font-family-trailing-bracket-gunk-expected.txt:
* fast/css/font-family-trailing-bracket-gunk.html:
* fast/css/getComputedStyle/computed-style-font-family-expected.txt:
* fast/css/getComputedStyle/computed-style-properties-expected.txt:
* fast/css/getComputedStyle/computed-style-properties.html:
* fast/css/getComputedStyle/font-family-fallback-reset-expected.txt:
* fast/css/getComputedStyle/font-family-fallback-reset.html:
* 

[webkit-changes] [218579] trunk

Title: [218579] trunk








Revision 218579
Author wenson_hs...@apple.com
Date 2017-06-20 03:09:04 -0700 (Tue, 20 Jun 2017)


Log Message
[iOS DnD] [WK2] Remove custom logic for disambiguating long press action sheet gestures and drag lift
https://bugs.webkit.org/show_bug.cgi?id=173578


Reviewed by Tim Horton.

Source/WebKit2:

Custom logic to cancel the long press action gesture recognizer in WebKit2 was added months ago to achieve
spec'ed behavior when initiating a drag on an element with an action sheet to show on long press. Now that UIKit
defers firing long-press gesture recognizers while a drag lift is recognizing, no extra work in WebKit is needed
to achieve expected behavior.

* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _simulateLongPressActionAtLocation:]):
* UIProcess/API/Cocoa/WKWebViewPrivate.h:

Add testing SPI for showing an action sheet popover at a given location in content view coordinates.

* UIProcess/ios/WKContentViewInteraction.h:
* UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView _startDataInteractionWithImage:withIndicatorData:atClientPosition:anchorPoint:action:]):
(-[WKContentView _didHandleStartDataInteractionRequest:]):
(-[WKContentView _dragInteraction:prepareForSession:completion:]):
(-[WKContentView dragInteraction:sessionWillBegin:]):
(-[WKContentView _api_dragInteraction:session:didEndWithOperation:]):
(-[WKContentView _simulateLongPressActionAtLocation:]):
(longPressActionDelayAfterLift): Deleted.
(-[WKContentView performDeferredActionAtDragOrigin]): Deleted.
(-[WKContentView cancelDeferredActionAtDragOrigin]): Deleted.

Tools:

Slight tweak to ensure that DataInteractionTests.CustomActionSheetPopover still passes and verifies that showing
a custom popover does not cause dragging to fail when the popover is presented.

* TestWebKitAPI/ios/DataInteractionSimulator.mm:
(-[DataInteractionSimulator _advanceProgress]):

Modified Paths

trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm
trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebViewPrivate.h
trunk/Source/WebKit2/UIProcess/ios/WKContentViewInteraction.h
trunk/Source/WebKit2/UIProcess/ios/WKContentViewInteraction.mm
trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/ios/DataInteractionSimulator.mm




Diff

Modified: trunk/Source/WebKit2/ChangeLog (218578 => 218579)

--- trunk/Source/WebKit2/ChangeLog	2017-06-20 10:00:09 UTC (rev 218578)
+++ trunk/Source/WebKit2/ChangeLog	2017-06-20 10:09:04 UTC (rev 218579)
@@ -1,3 +1,34 @@
+2017-06-20  Wenson Hsieh  
+
+[iOS DnD] [WK2] Remove custom logic for disambiguating long press action sheet gestures and drag lift
+https://bugs.webkit.org/show_bug.cgi?id=173578
+
+
+Reviewed by Tim Horton.
+
+Custom logic to cancel the long press action gesture recognizer in WebKit2 was added months ago to achieve
+spec'ed behavior when initiating a drag on an element with an action sheet to show on long press. Now that UIKit
+defers firing long-press gesture recognizers while a drag lift is recognizing, no extra work in WebKit is needed
+to achieve expected behavior.
+
+* UIProcess/API/Cocoa/WKWebView.mm:
+(-[WKWebView _simulateLongPressActionAtLocation:]):
+* UIProcess/API/Cocoa/WKWebViewPrivate.h:
+
+Add testing SPI for showing an action sheet popover at a given location in content view coordinates.
+
+* UIProcess/ios/WKContentViewInteraction.h:
+* UIProcess/ios/WKContentViewInteraction.mm:
+(-[WKContentView _startDataInteractionWithImage:withIndicatorData:atClientPosition:anchorPoint:action:]):
+(-[WKContentView _didHandleStartDataInteractionRequest:]):
+(-[WKContentView _dragInteraction:prepareForSession:completion:]):
+(-[WKContentView dragInteraction:sessionWillBegin:]):
+(-[WKContentView _api_dragInteraction:session:didEndWithOperation:]):
+(-[WKContentView _simulateLongPressActionAtLocation:]):
+(longPressActionDelayAfterLift): Deleted.
+(-[WKContentView performDeferredActionAtDragOrigin]): Deleted.
+(-[WKContentView cancelDeferredActionAtDragOrigin]): Deleted.
+
 2017-06-20  Carlos Garcia Campos  
 
 [WPE] Add initial implementation of glib API


Modified: trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm (218578 => 218579)

--- trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm	2017-06-20 10:00:09 UTC (rev 218578)
+++ trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm	2017-06-20 10:09:04 UTC (rev 218579)
@@ -5635,6 +5635,11 @@
 #endif
 }
 
+- (void)_simulateLongPressActionAtLocation:(CGPoint)location
+{
+[_contentView _simulateLongPressActionAtLocation:location];
+}
+
 #endif // PLATFORM(IOS)
 
 @end


Modified: trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebViewPrivate.h (218578 => 218579)

--- trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebViewPrivate.h	2017-06-20 10:00:09 UTC (rev 218578)
+++ 

[webkit-changes] [218578] releases/WebKitGTK/webkit-2.16/Source/JavaScriptCore

Title: [218578] releases/WebKitGTK/webkit-2.16/Source/_javascript_Core








Revision 218578
Author carlo...@webkit.org
Date 2017-06-20 03:00:09 -0700 (Tue, 20 Jun 2017)


Log Message
Merge r218392 - REGRESSION(r166799): LogsPageMessagesToSystemConsoleEnabled corrupts non-ASCII characters
https://bugs.webkit.org/show_bug.cgi?id=173470

Reviewed by Joseph Pecoraro.

ConsoleClient::printConsoleMessageWithArguments() incorrectly uses
const char* overload of StringBuilder::append() that assummes Latin1
encoding, not UTF8.

* runtime/ConsoleClient.cpp:
(JSC::ConsoleClient::printConsoleMessageWithArguments):

Modified Paths

releases/WebKitGTK/webkit-2.16/Source/_javascript_Core/ChangeLog
releases/WebKitGTK/webkit-2.16/Source/_javascript_Core/runtime/ConsoleClient.cpp




Diff

Modified: releases/WebKitGTK/webkit-2.16/Source/_javascript_Core/ChangeLog (218577 => 218578)

--- releases/WebKitGTK/webkit-2.16/Source/_javascript_Core/ChangeLog	2017-06-20 09:51:07 UTC (rev 218577)
+++ releases/WebKitGTK/webkit-2.16/Source/_javascript_Core/ChangeLog	2017-06-20 10:00:09 UTC (rev 218578)
@@ -1,3 +1,17 @@
+2017-06-16  Konstantin Tokarev  
+
+REGRESSION(r166799): LogsPageMessagesToSystemConsoleEnabled corrupts non-ASCII characters
+https://bugs.webkit.org/show_bug.cgi?id=173470
+
+Reviewed by Joseph Pecoraro.
+
+ConsoleClient::printConsoleMessageWithArguments() incorrectly uses
+const char* overload of StringBuilder::append() that assummes Latin1
+encoding, not UTF8.
+
+* runtime/ConsoleClient.cpp:
+(JSC::ConsoleClient::printConsoleMessageWithArguments):
+
 2017-06-01  Tomas Popela  , Mark Lam  
 
 RELEASE_ASSERT_NOT_REACHED() in InferredType::kindForFlags() on Big-Endians


Modified: releases/WebKitGTK/webkit-2.16/Source/_javascript_Core/runtime/ConsoleClient.cpp (218577 => 218578)

--- releases/WebKitGTK/webkit-2.16/Source/_javascript_Core/runtime/ConsoleClient.cpp	2017-06-20 09:51:07 UTC (rev 218577)
+++ releases/WebKitGTK/webkit-2.16/Source/_javascript_Core/runtime/ConsoleClient.cpp	2017-06-20 10:00:09 UTC (rev 218578)
@@ -165,7 +165,7 @@
 for (size_t i = 0; i < arguments->argumentCount(); ++i) {
 String argAsString = arguments->argumentAt(i).toString(arguments->globalState());
 builder.append(' ');
-builder.append(argAsString.utf8().data());
+builder.append(argAsString);
 }
 
 WTFLogAlways("%s", builder.toString().utf8().data());






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


[webkit-changes] [218577] releases/WebKitGTK/webkit-2.16/Source/WebCore

Title: [218577] releases/WebKitGTK/webkit-2.16/Source/WebCore








Revision 218577
Author carlo...@webkit.org
Date 2017-06-20 02:51:07 -0700 (Tue, 20 Jun 2017)


Log Message
Merge r218253 - REGRESSION(r216901): ImageDecoders: rendering of large images is broken since r216901
https://bugs.webkit.org/show_bug.cgi?id=172502

Reviewed by Carlos Garcia Campos.

When using GTK and WPE image decoders, the decoded frames are stored inside a Vector of
ImageFrames inside the decoders. These ImageFrames have and ImageBackingStore with the
pixels. When a NativeImagePtr is requested, a cairo surface is created from the data
in those ImageBackingStores, but the data keeps being owned by the backing stores. Due
to this, if the decoder that created the image gets destroyed, the backing stores for
the decoded frames get destroyed as well, causing the cairo surfaces that were using
that data to contain garbage (and potentially cause a crash).

To fix this, we change ImageBackingStore so the pixels are stored in a SharedBuffer. The
buffer will be reffed everytime a cairo surface is created with it, and the cairo surfaces
will unref the buffer when they are destroyed. This way, the pixel data won't be freed
while there are cairo surfaces using it.

No new tests, no behaviour change.

* platform/graphics/ImageBackingStore.h:
(WebCore::ImageBackingStore::setSize):
(WebCore::ImageBackingStore::ImageBackingStore):
* platform/image-decoders/cairo/ImageBackingStoreCairo.cpp:
(WebCore::ImageBackingStore::image):

Modified Paths

releases/WebKitGTK/webkit-2.16/Source/WebCore/ChangeLog
releases/WebKitGTK/webkit-2.16/Source/WebCore/platform/graphics/ImageBackingStore.h
releases/WebKitGTK/webkit-2.16/Source/WebCore/platform/image-decoders/cairo/ImageBackingStoreCairo.cpp




Diff

Modified: releases/WebKitGTK/webkit-2.16/Source/WebCore/ChangeLog (218576 => 218577)

--- releases/WebKitGTK/webkit-2.16/Source/WebCore/ChangeLog	2017-06-20 09:11:07 UTC (rev 218576)
+++ releases/WebKitGTK/webkit-2.16/Source/WebCore/ChangeLog	2017-06-20 09:51:07 UTC (rev 218577)
@@ -1,3 +1,31 @@
+2017-06-14  Miguel Gomez  
+
+REGRESSION(r216901): ImageDecoders: rendering of large images is broken since r216901
+https://bugs.webkit.org/show_bug.cgi?id=172502
+
+Reviewed by Carlos Garcia Campos.
+
+When using GTK and WPE image decoders, the decoded frames are stored inside a Vector of
+ImageFrames inside the decoders. These ImageFrames have and ImageBackingStore with the
+pixels. When a NativeImagePtr is requested, a cairo surface is created from the data
+in those ImageBackingStores, but the data keeps being owned by the backing stores. Due
+to this, if the decoder that created the image gets destroyed, the backing stores for
+the decoded frames get destroyed as well, causing the cairo surfaces that were using
+that data to contain garbage (and potentially cause a crash).
+
+To fix this, we change ImageBackingStore so the pixels are stored in a SharedBuffer. The
+buffer will be reffed everytime a cairo surface is created with it, and the cairo surfaces
+will unref the buffer when they are destroyed. This way, the pixel data won't be freed
+while there are cairo surfaces using it.
+
+No new tests, no behaviour change.
+
+* platform/graphics/ImageBackingStore.h:
+(WebCore::ImageBackingStore::setSize):
+(WebCore::ImageBackingStore::ImageBackingStore):
+* platform/image-decoders/cairo/ImageBackingStoreCairo.cpp:
+(WebCore::ImageBackingStore::image):
+
 2017-06-13  Jer Noble  
 
 Protect lifetime of media element during HTMLMediaElement::notifyAboutPlaying()


Modified: releases/WebKitGTK/webkit-2.16/Source/WebCore/platform/graphics/ImageBackingStore.h (218576 => 218577)

--- releases/WebKitGTK/webkit-2.16/Source/WebCore/platform/graphics/ImageBackingStore.h	2017-06-20 09:11:07 UTC (rev 218576)
+++ releases/WebKitGTK/webkit-2.16/Source/WebCore/platform/graphics/ImageBackingStore.h	2017-06-20 09:51:07 UTC (rev 218577)
@@ -29,9 +29,8 @@
 #include "IntRect.h"
 #include "IntSize.h"
 #include "NativeImage.h"
+#include "SharedBuffer.h"
 
-#include 
-
 namespace WebCore {
 
 class ImageBackingStore {
@@ -54,12 +53,15 @@
 if (size.isEmpty())
 return false;
 
-unsigned area = size.area().unsafeGet();
-if (!m_pixels.tryReserveCapacity(area))
+Vector buffer;
+size_t bufferSize = size.area().unsafeGet() * sizeof(RGBA32);
+
+if (!buffer.tryReserveCapacity(bufferSize))
 return false;
 
-m_pixels.resize(area);
-m_pixelsPtr = m_pixels.data();
+buffer.resize(bufferSize);
+m_pixels = SharedBuffer::adoptVector(buffer);
+m_pixelsPtr = reinterpret_cast(const_cast(m_pixels->data()));
 m_size = size;
 m_frameRect = IntRect(IntPoint(), 

[webkit-changes] [218576] releases/WebKitGTK/webkit-2.16/Source/WebCore

Title: [218576] releases/WebKitGTK/webkit-2.16/Source/WebCore








Revision 218576
Author carlo...@webkit.org
Date 2017-06-20 02:11:07 -0700 (Tue, 20 Jun 2017)


Log Message
Merge r218190 - Protect lifetime of media element during HTMLMediaElement::notifyAboutPlaying()
https://bugs.webkit.org/show_bug.cgi?id=173320


Reviewed by Brent Fulgham.

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

Modified Paths

releases/WebKitGTK/webkit-2.16/Source/WebCore/ChangeLog
releases/WebKitGTK/webkit-2.16/Source/WebCore/html/HTMLMediaElement.cpp




Diff

Modified: releases/WebKitGTK/webkit-2.16/Source/WebCore/ChangeLog (218575 => 218576)

--- releases/WebKitGTK/webkit-2.16/Source/WebCore/ChangeLog	2017-06-20 09:10:14 UTC (rev 218575)
+++ releases/WebKitGTK/webkit-2.16/Source/WebCore/ChangeLog	2017-06-20 09:11:07 UTC (rev 218576)
@@ -1,3 +1,14 @@
+2017-06-13  Jer Noble  
+
+Protect lifetime of media element during HTMLMediaElement::notifyAboutPlaying()
+https://bugs.webkit.org/show_bug.cgi?id=173320
+
+
+Reviewed by Brent Fulgham.
+
+* html/HTMLMediaElement.cpp:
+(WebCore::HTMLMediaElement::notifyAboutPlaying):
+
 2017-06-09  Brady Eidson  
 
 Crash when IndexedDB's getAll is used inside a Web Worker.


Modified: releases/WebKitGTK/webkit-2.16/Source/WebCore/html/HTMLMediaElement.cpp (218575 => 218576)

--- releases/WebKitGTK/webkit-2.16/Source/WebCore/html/HTMLMediaElement.cpp	2017-06-20 09:10:14 UTC (rev 218575)
+++ releases/WebKitGTK/webkit-2.16/Source/WebCore/html/HTMLMediaElement.cpp	2017-06-20 09:11:07 UTC (rev 218576)
@@ -1011,6 +1011,7 @@
 
 void HTMLMediaElement::notifyAboutPlaying()
 {
+Ref protectedThis(*this); // The 'playing' event can make arbitrary DOM mutations.
 m_playbackStartedTime = currentMediaTime().toDouble();
 dispatchEvent(Event::create(eventNames().playingEvent, false, true));
 resolvePendingPlayPromises();






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


[webkit-changes] [218575] releases/WebKitGTK/webkit-2.16

Title: [218575] releases/WebKitGTK/webkit-2.16








Revision 218575
Author carlo...@webkit.org
Date 2017-06-20 02:10:14 -0700 (Tue, 20 Jun 2017)


Log Message
Merge r218185 - [GTK] Blob download doesn't work
https://bugs.webkit.org/show_bug.cgi?id=172442

Reviewed by Carlos Alberto Lopez Perez.

Source/WebKit2:

GTK+ API uses URIs for download destination paths, and passes that URIs to the WebKit internals. But WebKit
expects download destination location to be a local path. This is not a problem for normal downloads, because
the soup backend handles the cases of download destination being a URI and a path. For blob downloads
NetworkDataTaskBlob is used, and it always expects the download destination to be a local path, failing in
FileSystem::openFile() when a URI is passed. We need to keep using local files internally and convert to URIs
only when exposing those paths to the API.

* NetworkProcess/soup/NetworkDataTaskSoup.cpp:
(WebKit::NetworkDataTaskSoup::download): Stop handling URIs here, we should always expect local files.
* UIProcess/API/gtk/WebKitDownload.cpp:
(webkitDownloadDecideDestinationWithSuggestedFilename): Convert destination URI to filanme before pasing it to DownloadClient.
(webkitDownloadDestinationCreated): Convert the destination path to a URI before passing it to WebKitDownload::created-destionation signal.
* UIProcess/API/gtk/WebKitDownloadClient.cpp:
* UIProcess/API/gtk/WebKitDownloadPrivate.h:

Tools:

Add a unit test to check blob downloads.

* TestWebKitAPI/Tests/WebKit2Gtk/TestDownloads.cpp:
(testBlobDownload):
(beforeAll):

Modified Paths

releases/WebKitGTK/webkit-2.16/Source/WebKit2/ChangeLog
releases/WebKitGTK/webkit-2.16/Source/WebKit2/NetworkProcess/soup/NetworkDataTaskSoup.cpp
releases/WebKitGTK/webkit-2.16/Source/WebKit2/UIProcess/API/gtk/WebKitDownload.cpp
releases/WebKitGTK/webkit-2.16/Source/WebKit2/UIProcess/API/gtk/WebKitDownloadClient.cpp
releases/WebKitGTK/webkit-2.16/Source/WebKit2/UIProcess/API/gtk/WebKitDownloadPrivate.h
releases/WebKitGTK/webkit-2.16/Tools/ChangeLog
releases/WebKitGTK/webkit-2.16/Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestDownloads.cpp




Diff

Modified: releases/WebKitGTK/webkit-2.16/Source/WebKit2/ChangeLog (218574 => 218575)

--- releases/WebKitGTK/webkit-2.16/Source/WebKit2/ChangeLog	2017-06-20 09:02:24 UTC (rev 218574)
+++ releases/WebKitGTK/webkit-2.16/Source/WebKit2/ChangeLog	2017-06-20 09:10:14 UTC (rev 218575)
@@ -1,3 +1,25 @@
+2017-06-13  Carlos Garcia Campos  
+
+[GTK] Blob download doesn't work
+https://bugs.webkit.org/show_bug.cgi?id=172442
+
+Reviewed by Carlos Alberto Lopez Perez.
+
+GTK+ API uses URIs for download destination paths, and passes that URIs to the WebKit internals. But WebKit
+expects download destination location to be a local path. This is not a problem for normal downloads, because
+the soup backend handles the cases of download destination being a URI and a path. For blob downloads
+NetworkDataTaskBlob is used, and it always expects the download destination to be a local path, failing in
+FileSystem::openFile() when a URI is passed. We need to keep using local files internally and convert to URIs
+only when exposing those paths to the API.
+
+* NetworkProcess/soup/NetworkDataTaskSoup.cpp:
+(WebKit::NetworkDataTaskSoup::download): Stop handling URIs here, we should always expect local files.
+* UIProcess/API/gtk/WebKitDownload.cpp:
+(webkitDownloadDecideDestinationWithSuggestedFilename): Convert destination URI to filanme before pasing it to DownloadClient.
+(webkitDownloadDestinationCreated): Convert the destination path to a URI before passing it to WebKitDownload::created-destionation signal.
+* UIProcess/API/gtk/WebKitDownloadClient.cpp:
+* UIProcess/API/gtk/WebKitDownloadPrivate.h:
+
 2017-06-09  Ryosuke Niwa  
 
 Crash inside WebKit::PluginView::getAuthenticationInfo


Modified: releases/WebKitGTK/webkit-2.16/Source/WebKit2/NetworkProcess/soup/NetworkDataTaskSoup.cpp (218574 => 218575)

--- releases/WebKitGTK/webkit-2.16/Source/WebKit2/NetworkProcess/soup/NetworkDataTaskSoup.cpp	2017-06-20 09:02:24 UTC (rev 218574)
+++ releases/WebKitGTK/webkit-2.16/Source/WebKit2/NetworkProcess/soup/NetworkDataTaskSoup.cpp	2017-06-20 09:10:14 UTC (rev 218575)
@@ -848,10 +848,8 @@
 return;
 }
 
-if (g_path_is_absolute(m_pendingDownloadLocation.utf8().data()))
-m_downloadDestinationFile = adoptGRef(g_file_new_for_path(m_pendingDownloadLocation.utf8().data()));
-else
-m_downloadDestinationFile = adoptGRef(g_file_new_for_uri(m_pendingDownloadLocation.utf8().data()));
+CString downloadDestinationPath = m_pendingDownloadLocation.utf8();
+m_downloadDestinationFile = adoptGRef(g_file_new_for_path(downloadDestinationPath.data()));
 GRefPtr outputStream;
 GUniqueOutPtr error;
 if 

[webkit-changes] [218574] releases/WebKitGTK/webkit-2.16/Source/WebKit2

Title: [218574] releases/WebKitGTK/webkit-2.16/Source/WebKit2








Revision 218574
Author carlo...@webkit.org
Date 2017-06-20 02:02:24 -0700 (Tue, 20 Jun 2017)


Log Message
Merge r218046 - Crash inside WebKit::PluginView::getAuthenticationInfo
https://bugs.webkit.org/show_bug.cgi?id=173083


Address Darin's review comment.

* WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::getAuthenticationInfo):

Modified Paths

releases/WebKitGTK/webkit-2.16/Source/WebKit2/ChangeLog
releases/WebKitGTK/webkit-2.16/Source/WebKit2/WebProcess/Plugins/PluginView.cpp




Diff

Modified: releases/WebKitGTK/webkit-2.16/Source/WebKit2/ChangeLog (218573 => 218574)

--- releases/WebKitGTK/webkit-2.16/Source/WebKit2/ChangeLog	2017-06-20 08:59:44 UTC (rev 218573)
+++ releases/WebKitGTK/webkit-2.16/Source/WebKit2/ChangeLog	2017-06-20 09:02:24 UTC (rev 218574)
@@ -1,3 +1,14 @@
+2017-06-09  Ryosuke Niwa  
+
+Crash inside WebKit::PluginView::getAuthenticationInfo
+https://bugs.webkit.org/show_bug.cgi?id=173083
+
+
+Address Darin's review comment.
+
+* WebProcess/Plugins/PluginView.cpp:
+(WebKit::PluginView::getAuthenticationInfo):
+
 2017-06-07  Ryosuke Niwa  
 
 Crash inside WebKit::PluginView::getAuthenticationInfo


Modified: releases/WebKitGTK/webkit-2.16/Source/WebKit2/WebProcess/Plugins/PluginView.cpp (218573 => 218574)

--- releases/WebKitGTK/webkit-2.16/Source/WebKit2/WebProcess/Plugins/PluginView.cpp	2017-06-20 08:59:44 UTC (rev 218573)
+++ releases/WebKitGTK/webkit-2.16/Source/WebKit2/WebProcess/Plugins/PluginView.cpp	2017-06-20 09:02:24 UTC (rev 218574)
@@ -1593,7 +1593,7 @@
 
 bool PluginView::getAuthenticationInfo(const ProtectionSpace& protectionSpace, String& username, String& password)
 {
-RefPtr contentDocument = m_pluginElement->contentDocument();
+auto* contentDocument = m_pluginElement->contentDocument();
 if (!contentDocument)
 return false;
 






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


[webkit-changes] [218573] releases/WebKitGTK/webkit-2.16

Title: [218573] releases/WebKitGTK/webkit-2.16








Revision 218573
Author carlo...@webkit.org
Date 2017-06-20 01:59:44 -0700 (Tue, 20 Jun 2017)


Log Message
Merge r218041 - Crash when IndexedDB's getAll is used inside a Web Worker.
https://bugs.webkit.org/show_bug.cgi?id=172434

Reviewed by Andy Estes.

Source/WebCore:

Test: storage/indexeddb/modern/worker-getall.html

* Modules/indexeddb/IDBGetAllResult.cpp:
(WebCore::IDBGetAllResult::IDBGetAllResult): Add an isolated-copying constructor.
(WebCore::IDBGetAllResult::isolatedCopy):
* Modules/indexeddb/IDBGetAllResult.h:

* Modules/indexeddb/shared/IDBResultData.cpp:
(WebCore::IDBResultData::isolatedCopy): Actually copy the IDBGetAllResult.

LayoutTests:

* storage/indexeddb/modern/resources/worker-getall.js: Added.
* storage/indexeddb/modern/worker-getall-expected.txt: Added.
* storage/indexeddb/modern/worker-getall.html: Added.

Modified Paths

releases/WebKitGTK/webkit-2.16/LayoutTests/ChangeLog
releases/WebKitGTK/webkit-2.16/Source/WebCore/ChangeLog
releases/WebKitGTK/webkit-2.16/Source/WebCore/Modules/indexeddb/IDBGetAllResult.cpp
releases/WebKitGTK/webkit-2.16/Source/WebCore/Modules/indexeddb/IDBGetAllResult.h
releases/WebKitGTK/webkit-2.16/Source/WebCore/Modules/indexeddb/shared/IDBResultData.cpp


Added Paths

releases/WebKitGTK/webkit-2.16/LayoutTests/storage/indexeddb/modern/resources/worker-getall.js
releases/WebKitGTK/webkit-2.16/LayoutTests/storage/indexeddb/modern/worker-getall-expected.txt
releases/WebKitGTK/webkit-2.16/LayoutTests/storage/indexeddb/modern/worker-getall.html




Diff

Modified: releases/WebKitGTK/webkit-2.16/LayoutTests/ChangeLog (218572 => 218573)

--- releases/WebKitGTK/webkit-2.16/LayoutTests/ChangeLog	2017-06-20 08:52:13 UTC (rev 218572)
+++ releases/WebKitGTK/webkit-2.16/LayoutTests/ChangeLog	2017-06-20 08:59:44 UTC (rev 218573)
@@ -1,3 +1,14 @@
+2017-06-09  Brady Eidson  
+
+Crash when IndexedDB's getAll is used inside a Web Worker.
+https://bugs.webkit.org/show_bug.cgi?id=172434
+
+Reviewed by Andy Estes.
+
+* storage/indexeddb/modern/resources/worker-getall.js: Added.
+* storage/indexeddb/modern/worker-getall-expected.txt: Added.
+* storage/indexeddb/modern/worker-getall.html: Added.
+
 2017-06-08  Ryosuke Niwa  
 
 Crash inside InsertNodeBeforeCommand via InsertParagraphSeparatorCommand


Added: releases/WebKitGTK/webkit-2.16/LayoutTests/storage/indexeddb/modern/resources/worker-getall.js (0 => 218573)

--- releases/WebKitGTK/webkit-2.16/LayoutTests/storage/indexeddb/modern/resources/worker-getall.js	(rev 0)
+++ releases/WebKitGTK/webkit-2.16/LayoutTests/storage/indexeddb/modern/resources/worker-getall.js	2017-06-20 08:59:44 UTC (rev 218573)
@@ -0,0 +1,32 @@
+const errorHandler = function (event) {
+  console.error(event.target.error);
+}
+
+console.log('Deleting database...');
+var deleteRequest = indexedDB.deleteDatabase('test');
+deleteRequest._onerror_ = deleteRequest._onblocked_ = deleteRequest._onsuccess_ = function () {
+console.log('Opening database...');
+var openRequest = indexedDB.open('test');
+openRequest._onerror_ = errorHandler;
+openRequest._onupgradeneeded_ = function () {
+var db = openRequest.result;
+db.createObjectStore('test', {keyPath: 'a'});
+}
+openRequest._onsuccess_ = function (event) {
+var db = event.target.result;
+
+var tx = db.transaction('test', 'readwrite');
+tx._onerror_ = errorHandler;
+tx._onabort_ = errorHandler;
+tx._oncomplete_ = function () {
+console.log('All done!');
+			postMessage('All done!');
+};
+
+var getAllRequest = tx.objectStore('test').getAll();
+getAllRequest._onerror_ = errorHandler;
+getAllRequest._onsuccess_ = function () {
+console.log('Success!');
+};
+};
+};


Added: releases/WebKitGTK/webkit-2.16/LayoutTests/storage/indexeddb/modern/worker-getall-expected.txt (0 => 218573)

--- releases/WebKitGTK/webkit-2.16/LayoutTests/storage/indexeddb/modern/worker-getall-expected.txt	(rev 0)
+++ releases/WebKitGTK/webkit-2.16/LayoutTests/storage/indexeddb/modern/worker-getall-expected.txt	2017-06-20 08:59:44 UTC (rev 218573)
@@ -0,0 +1 @@
+If this test completes without crashing, it passed.


Added: releases/WebKitGTK/webkit-2.16/LayoutTests/storage/indexeddb/modern/worker-getall.html (0 => 218573)

--- releases/WebKitGTK/webkit-2.16/LayoutTests/storage/indexeddb/modern/worker-getall.html	(rev 0)
+++ releases/WebKitGTK/webkit-2.16/LayoutTests/storage/indexeddb/modern/worker-getall.html	2017-06-20 08:59:44 UTC (rev 218573)
@@ -0,0 +1,14 @@
+
+if (testRunner) {
+testRunner.dumpAsText();
+testRunner.waitUntilDone();
+}
+
+var w = new Worker('resources/worker-getall.js');
+w._onmessage_ = function() {
+if (testRunner)
+

[webkit-changes] [218572] releases/WebKitGTK/webkit-2.16

Title: [218572] releases/WebKitGTK/webkit-2.16








Revision 218572
Author carlo...@webkit.org
Date 2017-06-20 01:52:13 -0700 (Tue, 20 Jun 2017)


Log Message
Merge r217958 - Crash inside InsertNodeBeforeCommand via InsertParagraphSeparatorCommand
https://bugs.webkit.org/show_bug.cgi?id=173085
Source/WebCore:



Reviewed by Wenson Hsieh.

The crash was caused by the condition to check for special cases failing when visiblePos is null.
Exit early in these extreme cases.

Also replaced the use of deprecatedNode and deprecatedEditingOffset to modern idioms.

Test: editing/inserting/insert-horizontal-rule-in-empty-document-crash.html

* editing/InsertParagraphSeparatorCommand.cpp:
(WebCore::InsertParagraphSeparatorCommand::doApply):

LayoutTests:

Reviewed by Wenson Hsieh.

Added a regresion test.

* editing/inserting/insert-horizontal-rule-in-empty-document-crash-expected.txt: Added.
* editing/inserting/insert-horizontal-rule-in-empty-document-crash.html: Added.

Modified Paths

releases/WebKitGTK/webkit-2.16/LayoutTests/ChangeLog
releases/WebKitGTK/webkit-2.16/Source/WebCore/ChangeLog
releases/WebKitGTK/webkit-2.16/Source/WebCore/editing/InsertParagraphSeparatorCommand.cpp


Added Paths

releases/WebKitGTK/webkit-2.16/LayoutTests/editing/inserting/insert-horizontal-rule-in-empty-document-crash-expected.txt
releases/WebKitGTK/webkit-2.16/LayoutTests/editing/inserting/insert-horizontal-rule-in-empty-document-crash.html




Diff

Modified: releases/WebKitGTK/webkit-2.16/LayoutTests/ChangeLog (218571 => 218572)

--- releases/WebKitGTK/webkit-2.16/LayoutTests/ChangeLog	2017-06-20 08:43:28 UTC (rev 218571)
+++ releases/WebKitGTK/webkit-2.16/LayoutTests/ChangeLog	2017-06-20 08:52:13 UTC (rev 218572)
@@ -1,3 +1,15 @@
+2017-06-08  Ryosuke Niwa  
+
+Crash inside InsertNodeBeforeCommand via InsertParagraphSeparatorCommand
+https://bugs.webkit.org/show_bug.cgi?id=173085
+
+Reviewed by Wenson Hsieh.
+
+Added a regresion test.
+
+* editing/inserting/insert-horizontal-rule-in-empty-document-crash-expected.txt: Added.
+* editing/inserting/insert-horizontal-rule-in-empty-document-crash.html: Added.
+
 2017-06-08  Xabier Rodriguez Calvar  
 
 MediaTime class has rounding issues in different platforms


Added: releases/WebKitGTK/webkit-2.16/LayoutTests/editing/inserting/insert-horizontal-rule-in-empty-document-crash-expected.txt (0 => 218572)

--- releases/WebKitGTK/webkit-2.16/LayoutTests/editing/inserting/insert-horizontal-rule-in-empty-document-crash-expected.txt	(rev 0)
+++ releases/WebKitGTK/webkit-2.16/LayoutTests/editing/inserting/insert-horizontal-rule-in-empty-document-crash-expected.txt	2017-06-20 08:52:13 UTC (rev 218572)
@@ -0,0 +1 @@
+PASS. WebKit did not crash.


Added: releases/WebKitGTK/webkit-2.16/LayoutTests/editing/inserting/insert-horizontal-rule-in-empty-document-crash.html (0 => 218572)

--- releases/WebKitGTK/webkit-2.16/LayoutTests/editing/inserting/insert-horizontal-rule-in-empty-document-crash.html	(rev 0)
+++ releases/WebKitGTK/webkit-2.16/LayoutTests/editing/inserting/insert-horizontal-rule-in-empty-document-crash.html	2017-06-20 08:52:13 UTC (rev 218572)
@@ -0,0 +1,21 @@
+
+
+
+function runTest()
+{
+   document.execCommand("selectAll", true);
+   document['designMode'] = 'on';
+   document.execCommand("insertHorizontalRule", true);
+   document.body.replaceWith(document.createElement('div'));
+   document.execCommand("insertHorizontalRule", true);
+   if (window.testRunner) {
+   testRunner.dumpAsText();
+   document.documentElement.textContent = 'PASS. WebKit did not crash.';
+   }
+}
+window._onload_ = runTest;
+
+
+
+
+


Modified: releases/WebKitGTK/webkit-2.16/Source/WebCore/ChangeLog (218571 => 218572)

--- releases/WebKitGTK/webkit-2.16/Source/WebCore/ChangeLog	2017-06-20 08:43:28 UTC (rev 218571)
+++ releases/WebKitGTK/webkit-2.16/Source/WebCore/ChangeLog	2017-06-20 08:52:13 UTC (rev 218572)
@@ -1,3 +1,21 @@
+2017-06-08  Ryosuke Niwa  
+
+Crash inside InsertNodeBeforeCommand via InsertParagraphSeparatorCommand
+https://bugs.webkit.org/show_bug.cgi?id=173085
+
+
+Reviewed by Wenson Hsieh.
+
+The crash was caused by the condition to check for special cases failing when visiblePos is null.
+Exit early in these extreme cases.
+
+Also replaced the use of deprecatedNode and deprecatedEditingOffset to modern idioms.
+
+Test: editing/inserting/insert-horizontal-rule-in-empty-document-crash.html
+
+* editing/InsertParagraphSeparatorCommand.cpp:
+(WebCore::InsertParagraphSeparatorCommand::doApply):
+
 2017-06-06  Zalan Bujtas  
 
 Safari doesn't load newest The Order of the Stick comic.


Modified: releases/WebKitGTK/webkit-2.16/Source/WebCore/editing/InsertParagraphSeparatorCommand.cpp (218571 => 218572)

--- 

[webkit-changes] [218571] releases/WebKitGTK/webkit-2.16

Title: [218571] releases/WebKitGTK/webkit-2.16








Revision 218571
Author carlo...@webkit.org
Date 2017-06-20 01:43:28 -0700 (Tue, 20 Jun 2017)


Log Message
Merge r217928 - MediaTime class has rounding issues in different platforms
https://bugs.webkit.org/show_bug.cgi?id=172640

Reviewed by Jer Noble.

Source/WTF:

The way a timescale is set when creating a MediaTime from a double
can create rounding issues in different platforms because in some
rounding is made and in others, it truncates. This way we ensure a
common behavior.

Dumping MediaTimes is also confusing and by the output you don't
know if it's containing a double or a fraction. Now, if it
contains a double, it only prints the double because printing the
fraction is misleading (it currently prints the double read as an
integer) and if it contains a fraction it shows the fraction and
its double representation separated by an = instead of a ,.

* wtf/MediaTime.cpp:
(WTF::MediaTime::createWithDouble): When creating MediaTime from
double, we round instead of leaving it to the cast operation.
(WTF::MediaTime::dump):

LayoutTests:

Update expectations because the MediaTime printing changed, but
results are the same.

* media/media-source/media-source-overlapping-append-expected.txt:
* media/media-source/media-source-overlapping-decodetime-expected.txt:
* media/media-source/media-source-seek-back-expected.txt:
* media/media-source/media-source-sequence-timestamps-expected.txt:
* media/media-source/media-source-timeoffset-expected.txt:

Modified Paths

releases/WebKitGTK/webkit-2.16/LayoutTests/ChangeLog
releases/WebKitGTK/webkit-2.16/LayoutTests/media/media-source/media-source-overlapping-append-expected.txt
releases/WebKitGTK/webkit-2.16/LayoutTests/media/media-source/media-source-overlapping-decodetime-expected.txt
releases/WebKitGTK/webkit-2.16/LayoutTests/media/media-source/media-source-seek-back-expected.txt
releases/WebKitGTK/webkit-2.16/LayoutTests/media/media-source/media-source-sequence-timestamps-expected.txt
releases/WebKitGTK/webkit-2.16/LayoutTests/media/media-source/media-source-timeoffset-expected.txt
releases/WebKitGTK/webkit-2.16/Source/WTF/ChangeLog
releases/WebKitGTK/webkit-2.16/Source/WTF/wtf/MediaTime.cpp




Diff

Modified: releases/WebKitGTK/webkit-2.16/LayoutTests/ChangeLog (218570 => 218571)

--- releases/WebKitGTK/webkit-2.16/LayoutTests/ChangeLog	2017-06-20 08:41:13 UTC (rev 218570)
+++ releases/WebKitGTK/webkit-2.16/LayoutTests/ChangeLog	2017-06-20 08:43:28 UTC (rev 218571)
@@ -1,3 +1,19 @@
+2017-06-08  Xabier Rodriguez Calvar  
+
+MediaTime class has rounding issues in different platforms
+https://bugs.webkit.org/show_bug.cgi?id=172640
+
+Reviewed by Jer Noble.
+
+Update expectations because the MediaTime printing changed, but
+results are the same.
+
+* media/media-source/media-source-overlapping-append-expected.txt:
+* media/media-source/media-source-overlapping-decodetime-expected.txt:
+* media/media-source/media-source-seek-back-expected.txt:
+* media/media-source/media-source-sequence-timestamps-expected.txt:
+* media/media-source/media-source-timeoffset-expected.txt:
+
 2017-06-06  Zalan Bujtas  
 
 Safari doesn't load newest The Order of the Stick comic.


Modified: releases/WebKitGTK/webkit-2.16/LayoutTests/media/media-source/media-source-overlapping-append-expected.txt (218570 => 218571)

--- releases/WebKitGTK/webkit-2.16/LayoutTests/media/media-source/media-source-overlapping-append-expected.txt	2017-06-20 08:41:13 UTC (rev 218570)
+++ releases/WebKitGTK/webkit-2.16/LayoutTests/media/media-source/media-source-overlapping-append-expected.txt	2017-06-20 08:43:28 UTC (rev 218571)
@@ -7,29 +7,29 @@
 RUN(sourceBuffer.appendBuffer(samples))
 EVENT(updateend)
 EXPECTED (bufferedSamples.length == '6') OK
-{PTS({0/1000, 0.00}), DTS({0/1000, 0.00}), duration({1000/1000, 1.00}), flags(1), generation(0)}
-{PTS({1000/1000, 1.00}), DTS({1000/1000, 1.00}), duration({1000/1000, 1.00}), flags(0), generation(0)}
-{PTS({2000/1000, 2.00}), DTS({2000/1000, 2.00}), duration({1000/1000, 1.00}), flags(0), generation(0)}
-{PTS({3000/1000, 3.00}), DTS({3000/1000, 3.00}), duration({1000/1000, 1.00}), flags(1), generation(0)}
-{PTS({4000/1000, 4.00}), DTS({4000/1000, 4.00}), duration({1000/1000, 1.00}), flags(0), generation(0)}
-{PTS({5000/1000, 5.00}), DTS({5000/1000, 5.00}), duration({1000/1000, 1.00}), flags(0), generation(0)}
+{PTS({0/1000 = 0.00}), DTS({0/1000 = 0.00}), duration({1000/1000 = 1.00}), flags(1), generation(0)}
+{PTS({1000/1000 = 1.00}), DTS({1000/1000 = 1.00}), duration({1000/1000 = 1.00}), flags(0), generation(0)}
+{PTS({2000/1000 = 2.00}), DTS({2000/1000 = 2.00}), duration({1000/1000 = 1.00}), flags(0), generation(0)}
+{PTS({3000/1000 = 3.00}), DTS({3000/1000 = 3.00}), 

[webkit-changes] [218570] releases/WebKitGTK/webkit-2.16/Source/WebKit2

Title: [218570] releases/WebKitGTK/webkit-2.16/Source/WebKit2








Revision 218570
Author carlo...@webkit.org
Date 2017-06-20 01:41:13 -0700 (Tue, 20 Jun 2017)


Log Message
Merge r217914 - Crash inside WebKit::PluginView::getAuthenticationInfo
https://bugs.webkit.org/show_bug.cgi?id=173083

Reviewed by Chris Dumez.

Added a null pointer check. The content document may have went away by the time we get there from IPC.

* WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::getAuthenticationInfo):

Modified Paths

releases/WebKitGTK/webkit-2.16/Source/WebKit2/ChangeLog
releases/WebKitGTK/webkit-2.16/Source/WebKit2/WebProcess/Plugins/PluginView.cpp




Diff

Modified: releases/WebKitGTK/webkit-2.16/Source/WebKit2/ChangeLog (218569 => 218570)

--- releases/WebKitGTK/webkit-2.16/Source/WebKit2/ChangeLog	2017-06-20 08:34:43 UTC (rev 218569)
+++ releases/WebKitGTK/webkit-2.16/Source/WebKit2/ChangeLog	2017-06-20 08:41:13 UTC (rev 218570)
@@ -1,3 +1,15 @@
+2017-06-07  Ryosuke Niwa  
+
+Crash inside WebKit::PluginView::getAuthenticationInfo
+https://bugs.webkit.org/show_bug.cgi?id=173083
+
+Reviewed by Chris Dumez.
+
+Added a null pointer check. The content document may have went away by the time we get there from IPC.
+
+* WebProcess/Plugins/PluginView.cpp:
+(WebKit::PluginView::getAuthenticationInfo):
+
 2017-06-05  Chris Dumez  
 
 ASSERTION FAILED: RunLoop::isMain() in com.apple.WebKit: IPC::Connection::sendSyncMessage + 128


Modified: releases/WebKitGTK/webkit-2.16/Source/WebKit2/WebProcess/Plugins/PluginView.cpp (218569 => 218570)

--- releases/WebKitGTK/webkit-2.16/Source/WebKit2/WebProcess/Plugins/PluginView.cpp	2017-06-20 08:34:43 UTC (rev 218569)
+++ releases/WebKitGTK/webkit-2.16/Source/WebKit2/WebProcess/Plugins/PluginView.cpp	2017-06-20 08:41:13 UTC (rev 218570)
@@ -1593,7 +1593,11 @@
 
 bool PluginView::getAuthenticationInfo(const ProtectionSpace& protectionSpace, String& username, String& password)
 {
-String partitionName = m_pluginElement->contentDocument()->topDocument().securityOrigin().domainForCachePartition();
+RefPtr contentDocument = m_pluginElement->contentDocument();
+if (!contentDocument)
+return false;
+
+String partitionName = contentDocument->topDocument().securityOrigin().domainForCachePartition();
 Credential credential = CredentialStorage::defaultCredentialStorage().get(partitionName, protectionSpace);
 if (credential.isEmpty())
 credential = CredentialStorage::defaultCredentialStorage().getFromPersistentStorage(protectionSpace);






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


[webkit-changes] [218569] releases/WebKitGTK/webkit-2.16

Title: [218569] releases/WebKitGTK/webkit-2.16








Revision 218569
Author carlo...@webkit.org
Date 2017-06-20 01:34:43 -0700 (Tue, 20 Jun 2017)


Log Message
Merge r217848 - Safari doesn't load newest The Order of the Stick comic.
https://bugs.webkit.org/show_bug.cgi?id=172949


Reviewed by Antti Koivisto.

Source/WebCore:

As part of the table layout, RenderTableSection::layoutRows calls the RenderTableCell's layout() directly
(skipping the RenderTableRow parent). If during this call the RenderTableCell (or any of its descendant) marks the ancestor
chain dirty, this dirty flag on the RenderTableRows will never be cleared and we'll end up early returning from RenderTableSection::paint.
For certain type of float objects, we need to invalidate the line layout path during layout (and we mark the ancestors dirty).
This patch takes a conservative approach and marks the ancestors dirty only when the renderer is not dirty yet, but
as part of webkit.org/b/172947 we should revisit and validate whether the setNeedsLayout() is required at all.

Test: fast/table/floating-table-sibling-is-invisible.html

* rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::invalidateLineLayoutPath):

LayoutTests:

* fast/table/floating-table-sibling-is-invisible-expected.html: Added.
* fast/table/floating-table-sibling-is-invisible.html: Added.

Modified Paths

releases/WebKitGTK/webkit-2.16/LayoutTests/ChangeLog
releases/WebKitGTK/webkit-2.16/Source/WebCore/ChangeLog
releases/WebKitGTK/webkit-2.16/Source/WebCore/rendering/RenderBlockFlow.cpp


Added Paths

releases/WebKitGTK/webkit-2.16/LayoutTests/fast/table/floating-table-sibling-is-invisible-expected.html
releases/WebKitGTK/webkit-2.16/LayoutTests/fast/table/floating-table-sibling-is-invisible.html




Diff

Modified: releases/WebKitGTK/webkit-2.16/LayoutTests/ChangeLog (218568 => 218569)

--- releases/WebKitGTK/webkit-2.16/LayoutTests/ChangeLog	2017-06-20 08:31:56 UTC (rev 218568)
+++ releases/WebKitGTK/webkit-2.16/LayoutTests/ChangeLog	2017-06-20 08:34:43 UTC (rev 218569)
@@ -1,3 +1,14 @@
+2017-06-06  Zalan Bujtas  
+
+Safari doesn't load newest The Order of the Stick comic.
+https://bugs.webkit.org/show_bug.cgi?id=172949
+
+
+Reviewed by Antti Koivisto.
+
+* fast/table/floating-table-sibling-is-invisible-expected.html: Added.
+* fast/table/floating-table-sibling-is-invisible.html: Added.
+
 2017-06-05  Chris Dumez  
 
 ASSERTION FAILED: RunLoop::isMain() in com.apple.WebKit: IPC::Connection::sendSyncMessage + 128


Added: releases/WebKitGTK/webkit-2.16/LayoutTests/fast/table/floating-table-sibling-is-invisible-expected.html (0 => 218569)

--- releases/WebKitGTK/webkit-2.16/LayoutTests/fast/table/floating-table-sibling-is-invisible-expected.html	(rev 0)
+++ releases/WebKitGTK/webkit-2.16/LayoutTests/fast/table/floating-table-sibling-is-invisible-expected.html	2017-06-20 08:34:43 UTC (rev 218569)
@@ -0,0 +1,16 @@
+
+
+This tests if we paint sibling content of a floating table
+
+div {
+position: absolute;
+left: 2px;
+top: 2px;
+width: 196px;
+height: 196px;
+background-color: green;
+}
+
+
+
+


Added: releases/WebKitGTK/webkit-2.16/LayoutTests/fast/table/floating-table-sibling-is-invisible.html (0 => 218569)

--- releases/WebKitGTK/webkit-2.16/LayoutTests/fast/table/floating-table-sibling-is-invisible.html	(rev 0)
+++ releases/WebKitGTK/webkit-2.16/LayoutTests/fast/table/floating-table-sibling-is-invisible.html	2017-06-20 08:34:43 UTC (rev 218569)
@@ -0,0 +1,27 @@
+
+
+This tests if we paint sibling content of a floating table
+
+.container {
+	position: absolute;
+	left: 0px;
+	top: 0px;
+}
+
+td {
+color: transparent;
+	font-size: 10px;
+padding: 0px;
+}
+
+tr {
+background-color: green;
+}
+
+
+
+
+
+foobar
+
+
\ No newline at end of file


Modified: releases/WebKitGTK/webkit-2.16/Source/WebCore/ChangeLog (218568 => 218569)

--- releases/WebKitGTK/webkit-2.16/Source/WebCore/ChangeLog	2017-06-20 08:31:56 UTC (rev 218568)
+++ releases/WebKitGTK/webkit-2.16/Source/WebCore/ChangeLog	2017-06-20 08:34:43 UTC (rev 218569)
@@ -1,3 +1,23 @@
+2017-06-06  Zalan Bujtas  
+
+Safari doesn't load newest The Order of the Stick comic.
+https://bugs.webkit.org/show_bug.cgi?id=172949
+
+
+Reviewed by Antti Koivisto.
+
+As part of the table layout, RenderTableSection::layoutRows calls the RenderTableCell's layout() directly
+(skipping the RenderTableRow parent). If during this call the RenderTableCell (or any of its descendant) marks the ancestor
+chain dirty, this dirty flag on the RenderTableRows will never be cleared and we'll end up early returning from RenderTableSection::paint.
+For certain type of float objects, we need to invalidate the line layout path during layout (and we mark the ancestors dirty).
+This patch 

[webkit-changes] [218568] releases/WebKitGTK/webkit-2.16/LayoutTests

Title: [218568] releases/WebKitGTK/webkit-2.16/LayoutTests








Revision 218568
Author carlo...@webkit.org
Date 2017-06-20 01:31:56 -0700 (Tue, 20 Jun 2017)


Log Message
Merge r217813 - ASSERTION FAILED: RunLoop::isMain() in com.apple.WebKit: IPC::Connection::sendSyncMessage + 128
https://bugs.webkit.org/show_bug.cgi?id=172943


Reviewed by Alexey Proskuryakov.

Make test clean a little bit more robust.

* storage/domstorage/sessionstorage/set-item-synchronous-keydown.html:

Modified Paths

releases/WebKitGTK/webkit-2.16/LayoutTests/ChangeLog
releases/WebKitGTK/webkit-2.16/LayoutTests/storage/domstorage/sessionstorage/set-item-synchronous-keydown.html




Diff

Modified: releases/WebKitGTK/webkit-2.16/LayoutTests/ChangeLog (218567 => 218568)

--- releases/WebKitGTK/webkit-2.16/LayoutTests/ChangeLog	2017-06-20 08:28:17 UTC (rev 218567)
+++ releases/WebKitGTK/webkit-2.16/LayoutTests/ChangeLog	2017-06-20 08:31:56 UTC (rev 218568)
@@ -6,6 +6,18 @@
 
 Reviewed by Alexey Proskuryakov.
 
+Make test clean a little bit more robust.
+
+* storage/domstorage/sessionstorage/set-item-synchronous-keydown.html:
+
+2017-06-05  Chris Dumez  
+
+ASSERTION FAILED: RunLoop::isMain() in com.apple.WebKit: IPC::Connection::sendSyncMessage + 128
+https://bugs.webkit.org/show_bug.cgi?id=172943
+
+
+Reviewed by Alexey Proskuryakov.
+
 Add better test coverage.
 
 * storage/domstorage/sessionstorage/set-item-synchronous-keydown-expected.txt: Added.


Modified: releases/WebKitGTK/webkit-2.16/LayoutTests/storage/domstorage/sessionstorage/set-item-synchronous-keydown.html (218567 => 218568)

--- releases/WebKitGTK/webkit-2.16/LayoutTests/storage/domstorage/sessionstorage/set-item-synchronous-keydown.html	2017-06-20 08:28:17 UTC (rev 218567)
+++ releases/WebKitGTK/webkit-2.16/LayoutTests/storage/domstorage/sessionstorage/set-item-synchronous-keydown.html	2017-06-20 08:31:56 UTC (rev 218568)
@@ -23,7 +23,8 @@
 eventSender.keyDown('a');
 
 shouldBeEqualToString("sessionStorage.setItemSynchronousKeydownTestValue", "1");
-
+
+
 sessionStorage.removeItem("setItemSynchronousKeydownTestValue");
 
 






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


[webkit-changes] [218567] releases/WebKitGTK/webkit-2.16

Title: [218567] releases/WebKitGTK/webkit-2.16








Revision 218567
Author carlo...@webkit.org
Date 2017-06-20 01:28:17 -0700 (Tue, 20 Jun 2017)


Log Message
Merge r217810 - ASSERTION FAILED: RunLoop::isMain() in com.apple.WebKit: IPC::Connection::sendSyncMessage + 128
https://bugs.webkit.org/show_bug.cgi?id=172943


Reviewed by Alexey Proskuryakov.

Source/WebKit2:

In Connection::sendMessage(), make sure we only ever transform asynchronous messages into synchronous
ones if sendMessage() is called on the main thread. This is necessary because we no longer support
sending synchronous messages from a background thread since r205125.

* Platform/IPC/Connection.cpp:
(IPC::Connection::sendMessage):
(IPC::Connection::sendSyncMessage):

LayoutTests:

Add better test coverage.

* storage/domstorage/sessionstorage/set-item-synchronous-keydown-expected.txt: Added.
* storage/domstorage/sessionstorage/set-item-synchronous-keydown.html: Added.

Modified Paths

releases/WebKitGTK/webkit-2.16/LayoutTests/ChangeLog
releases/WebKitGTK/webkit-2.16/Source/WebKit2/ChangeLog
releases/WebKitGTK/webkit-2.16/Source/WebKit2/Platform/IPC/Connection.cpp


Added Paths

releases/WebKitGTK/webkit-2.16/LayoutTests/storage/domstorage/sessionstorage/set-item-synchronous-keydown-expected.txt
releases/WebKitGTK/webkit-2.16/LayoutTests/storage/domstorage/sessionstorage/set-item-synchronous-keydown.html




Diff

Modified: releases/WebKitGTK/webkit-2.16/LayoutTests/ChangeLog (218566 => 218567)

--- releases/WebKitGTK/webkit-2.16/LayoutTests/ChangeLog	2017-06-20 08:25:41 UTC (rev 218566)
+++ releases/WebKitGTK/webkit-2.16/LayoutTests/ChangeLog	2017-06-20 08:28:17 UTC (rev 218567)
@@ -1,3 +1,16 @@
+2017-06-05  Chris Dumez  
+
+ASSERTION FAILED: RunLoop::isMain() in com.apple.WebKit: IPC::Connection::sendSyncMessage + 128
+https://bugs.webkit.org/show_bug.cgi?id=172943
+
+
+Reviewed by Alexey Proskuryakov.
+
+Add better test coverage.
+
+* storage/domstorage/sessionstorage/set-item-synchronous-keydown-expected.txt: Added.
+* storage/domstorage/sessionstorage/set-item-synchronous-keydown.html: Added.
+
 2017-06-12  Carlos Garcia Campos  
 
 [GTK] Stop dismissing menus attached to the web view for every injected event


Added: releases/WebKitGTK/webkit-2.16/LayoutTests/storage/domstorage/sessionstorage/set-item-synchronous-keydown-expected.txt (0 => 218567)

--- releases/WebKitGTK/webkit-2.16/LayoutTests/storage/domstorage/sessionstorage/set-item-synchronous-keydown-expected.txt	(rev 0)
+++ releases/WebKitGTK/webkit-2.16/LayoutTests/storage/domstorage/sessionstorage/set-item-synchronous-keydown-expected.txt	2017-06-20 08:28:17 UTC (rev 218567)
@@ -0,0 +1,12 @@
+Tests updating sessionStorage in the keydown handler and makes sure the value is updated synchronously.
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+
+PASS sessionStorage.setItemSynchronousKeydownTestValue is "0"
+Setting setItemSynchronousKeydownTestValue to 1 in keydown handler.
+PASS sessionStorage.setItemSynchronousKeydownTestValue is "1"
+PASS successfullyParsed is true
+
+TEST COMPLETE
+


Added: releases/WebKitGTK/webkit-2.16/LayoutTests/storage/domstorage/sessionstorage/set-item-synchronous-keydown.html (0 => 218567)

--- releases/WebKitGTK/webkit-2.16/LayoutTests/storage/domstorage/sessionstorage/set-item-synchronous-keydown.html	(rev 0)
+++ releases/WebKitGTK/webkit-2.16/LayoutTests/storage/domstorage/sessionstorage/set-item-synchronous-keydown.html	2017-06-20 08:28:17 UTC (rev 218567)
@@ -0,0 +1,30 @@
+
+
+
+
+