[webkit-changes] [211410] trunk

2017-01-30 Thread utatane . tea
Title: [211410] trunk








Revision 211410
Author utatane@gmail.com
Date 2017-01-30 23:21:43 -0800 (Mon, 30 Jan 2017)


Log Message
[JSC] Do not reject WebAssembly.compile() with Exception
https://bugs.webkit.org/show_bug.cgi?id=167585

Reviewed by Mark Lam.

JSTests:

* wasm/js-api/Module-compile.js:
(async.testPromiseAPI):

Source/_javascript_Core:

We accidentally reject the promise with Exception instead of Exception::value()
for the result of WebAssembly::compile().

* wasm/JSWebAssembly.cpp:
(JSC::webAssemblyCompileFunc):

Modified Paths

trunk/JSTests/ChangeLog
trunk/JSTests/wasm/js-api/Module-compile.js
trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/wasm/JSWebAssembly.cpp




Diff

Modified: trunk/JSTests/ChangeLog (211409 => 211410)

--- trunk/JSTests/ChangeLog	2017-01-31 07:17:34 UTC (rev 211409)
+++ trunk/JSTests/ChangeLog	2017-01-31 07:21:43 UTC (rev 211410)
@@ -1,3 +1,13 @@
+2017-01-30  Yusuke Suzuki  
+
+[JSC] Do not reject WebAssembly.compile() with Exception
+https://bugs.webkit.org/show_bug.cgi?id=167585
+
+Reviewed by Mark Lam.
+
+* wasm/js-api/Module-compile.js:
+(async.testPromiseAPI):
+
 2017-01-27  Yusuke Suzuki  
 
 Lift template escape sequence restrictions in tagged templates


Modified: trunk/JSTests/wasm/js-api/Module-compile.js (211409 => 211410)

--- trunk/JSTests/wasm/js-api/Module-compile.js	2017-01-31 07:17:34 UTC (rev 211409)
+++ trunk/JSTests/wasm/js-api/Module-compile.js	2017-01-31 07:21:43 UTC (rev 211410)
@@ -28,6 +28,18 @@
 {
 let threw = false;
 try {
+await WebAssembly.compile();
+} catch(e) {
+threw = true;
+assert.truthy(e instanceof TypeError);
+assert.eq(e.message, "first argument must be an ArrayBufferView or an ArrayBuffer (evaluating 'WebAssembly.compile()')");
+}
+assert.truthy(threw);
+}
+
+{
+let threw = false;
+try {
 await WebAssembly.compile(20);
 } catch(e) {
 threw = true;


Modified: trunk/Source/_javascript_Core/ChangeLog (211409 => 211410)

--- trunk/Source/_javascript_Core/ChangeLog	2017-01-31 07:17:34 UTC (rev 211409)
+++ trunk/Source/_javascript_Core/ChangeLog	2017-01-31 07:21:43 UTC (rev 211410)
@@ -1,3 +1,16 @@
+2017-01-30  Yusuke Suzuki  
+
+[JSC] Do not reject WebAssembly.compile() with Exception
+https://bugs.webkit.org/show_bug.cgi?id=167585
+
+Reviewed by Mark Lam.
+
+We accidentally reject the promise with Exception instead of Exception::value()
+for the result of WebAssembly::compile().
+
+* wasm/JSWebAssembly.cpp:
+(JSC::webAssemblyCompileFunc):
+
 2017-01-30  Joseph Pecoraro  
 
 Implement PerformanceObserver


Modified: trunk/Source/_javascript_Core/wasm/JSWebAssembly.cpp (211409 => 211410)

--- trunk/Source/_javascript_Core/wasm/JSWebAssembly.cpp	2017-01-31 07:17:34 UTC (rev 211409)
+++ trunk/Source/_javascript_Core/wasm/JSWebAssembly.cpp	2017-01-31 07:21:43 UTC (rev 211410)
@@ -56,7 +56,7 @@
 JSValue module = WebAssemblyModuleConstructor::createModule(exec, exec->lexicalGlobalObject()->WebAssemblyModuleStructure());
 if (Exception* exception = catchScope.exception()) {
 catchScope.clearException();
-promise->reject(exec, exception);
+promise->reject(exec, exception->value());
 return JSValue::encode(promise->promise());
 }
 






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


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

2017-01-30 Thread joepeck
Title: [211409] trunk/Source/WebCore








Revision 211409
Author joep...@webkit.org
Date 2017-01-30 23:17:34 -0800 (Mon, 30 Jan 2017)


Log Message
[WebIDL] Add support for inherit serializer attribute
https://bugs.webkit.org/show_bug.cgi?id=167274

Reviewed by Darin Adler.

Support for serializer { inherit }, which will be used by Resource Timing.
https://heycam.github.io/webidl/#idl-serializers

* bindings/scripts/CodeGenerator.pm:
(GetInterfaceForAttribute):
(IsSerializableAttribute):
Determine if an attribute is serializable at generation time so we can
verify types. This allows us to support typedefs. We don't yet support
serializing an attribute that is itself a serializable interface.

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateSerializerFunction):
(GenerateSerializerAttributesForInterface):
Generate inherited attributes first, then generate our own list.
Explicitly provided attribute names are expected to be serializable,
so produce an error if they are not.

* bindings/scripts/IDLParser.pm:
(parseSerializationAttributes):
Update parsing of serializer attributes to allow for multiple
special strings. The spec does not precisely define where the
special "attribute" keyword is allowed.

(applyMemberList):
(isSerializableAttribute): Deleted.
Move serializable attribute checking to generation.

* bindings/scripts/test/JS/JSTestSerialization.cpp:
* bindings/scripts/test/JS/JSTestSerializationInherit.cpp: Added.
* bindings/scripts/test/JS/JSTestSerializationInherit.h: Added.
* bindings/scripts/test/JS/JSTestSerializationInheritFinal.cpp: Added.
* bindings/scripts/test/JS/JSTestSerializationInheritFinal.h: Added.
The toJSON implementations are the most interesting.

* bindings/scripts/test/TestSerialization.idl:
Extend this test for typedefed attributes that are serializable.
Change TestNode (a serializable Interface) to TestException (an
unserializable Interface) for expected behavior of an
unserializable attribute.

* bindings/scripts/test/TestSerializationInherit.idl:
Test for { inherit, attribute }.

* bindings/scripts/test/TestSerializationInheritFinal.idl:
Test for { inherit, attribute_names... }, and multi-level inherit.

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/bindings/scripts/CodeGenerator.pm
trunk/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm
trunk/Source/WebCore/bindings/scripts/IDLParser.pm
trunk/Source/WebCore/bindings/scripts/test/JS/JSTestSerialization.cpp
trunk/Source/WebCore/bindings/scripts/test/TestSerialization.idl


Added Paths

trunk/Source/WebCore/bindings/scripts/test/JS/JSTestSerialization.cpp.rej
trunk/Source/WebCore/bindings/scripts/test/JS/JSTestSerializationInherit.cpp
trunk/Source/WebCore/bindings/scripts/test/JS/JSTestSerializationInherit.h
trunk/Source/WebCore/bindings/scripts/test/JS/JSTestSerializationInheritFinal.cpp
trunk/Source/WebCore/bindings/scripts/test/JS/JSTestSerializationInheritFinal.h
trunk/Source/WebCore/bindings/scripts/test/TestSerializationInherit.idl
trunk/Source/WebCore/bindings/scripts/test/TestSerializationInheritFinal.idl




Diff

Modified: trunk/Source/WebCore/ChangeLog (211408 => 211409)

--- trunk/Source/WebCore/ChangeLog	2017-01-31 07:11:45 UTC (rev 211408)
+++ trunk/Source/WebCore/ChangeLog	2017-01-31 07:17:34 UTC (rev 211409)
@@ -1,5 +1,58 @@
 2017-01-30  Joseph Pecoraro  
 
+[WebIDL] Add support for inherit serializer attribute
+https://bugs.webkit.org/show_bug.cgi?id=167274
+
+Reviewed by Darin Adler.
+
+Support for serializer { inherit }, which will be used by Resource Timing.
+https://heycam.github.io/webidl/#idl-serializers
+
+* bindings/scripts/CodeGenerator.pm:
+(GetInterfaceForAttribute):
+(IsSerializableAttribute):
+Determine if an attribute is serializable at generation time so we can
+verify types. This allows us to support typedefs. We don't yet support
+serializing an attribute that is itself a serializable interface.
+
+* bindings/scripts/CodeGeneratorJS.pm:
+(GenerateSerializerFunction):
+(GenerateSerializerAttributesForInterface):
+Generate inherited attributes first, then generate our own list.
+Explicitly provided attribute names are expected to be serializable,
+so produce an error if they are not.
+
+* bindings/scripts/IDLParser.pm:
+(parseSerializationAttributes):
+Update parsing of serializer attributes to allow for multiple
+special strings. The spec does not precisely define where the
+special "attribute" keyword is allowed.
+
+(applyMemberList):
+(isSerializableAttribute): Deleted.
+Move serializable attribute checking to generation.
+
+* bindings/scripts/test/JS/JSTestSerialization.cpp:
+* bindings/scripts/test/JS/JSTestSerializationInherit.cpp: Added.
+* bindings/scripts/test/JS/JSTestSerializationInherit.h: Added.
+* bindings/scripts/test/JS/JSTestS

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

2017-01-30 Thread commit-queue
Title: [211408] trunk/Source/WebInspectorUI








Revision 211408
Author commit-qu...@webkit.org
Date 2017-01-30 23:11:45 -0800 (Mon, 30 Jan 2017)


Log Message
Web Inspector: "bouncy highlight" element in TextEditor/DOMTreeOutline should update or dismiss when user scrolls
https://bugs.webkit.org/show_bug.cgi?id=167146

Patch by Devin Rousso  on 2017-01-30
Reviewed by Timothy Hatcher.

* UserInterface/Views/TextEditor.js:
(WebInspector.TextEditor.prototype._revealSearchResult.scrollHandler):
(WebInspector.TextEditor.prototype._revealSearchResult.animationEnded):
(WebInspector.TextEditor.prototype._revealSearchResult):

Modified Paths

trunk/Source/WebInspectorUI/ChangeLog
trunk/Source/WebInspectorUI/UserInterface/Views/TextEditor.js




Diff

Modified: trunk/Source/WebInspectorUI/ChangeLog (211407 => 211408)

--- trunk/Source/WebInspectorUI/ChangeLog	2017-01-31 06:27:37 UTC (rev 211407)
+++ trunk/Source/WebInspectorUI/ChangeLog	2017-01-31 07:11:45 UTC (rev 211408)
@@ -1,3 +1,15 @@
+2017-01-30  Devin Rousso  
+
+Web Inspector: "bouncy highlight" element in TextEditor/DOMTreeOutline should update or dismiss when user scrolls
+https://bugs.webkit.org/show_bug.cgi?id=167146
+
+Reviewed by Timothy Hatcher.
+
+* UserInterface/Views/TextEditor.js:
+(WebInspector.TextEditor.prototype._revealSearchResult.scrollHandler):
+(WebInspector.TextEditor.prototype._revealSearchResult.animationEnded):
+(WebInspector.TextEditor.prototype._revealSearchResult):
+
 2017-01-30  Joseph Pecoraro  
 
 Implement PerformanceObserver


Modified: trunk/Source/WebInspectorUI/UserInterface/Views/TextEditor.js (211407 => 211408)

--- trunk/Source/WebInspectorUI/UserInterface/Views/TextEditor.js	2017-01-31 06:27:37 UTC (rev 211407)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/TextEditor.js	2017-01-31 07:11:45 UTC (rev 211408)
@@ -1086,6 +1086,13 @@
 this._bouncyHighlightElement.style.left = coordinates.left + "px";
 this.element.appendChild(this._bouncyHighlightElement);
 
+let scrollHandler = () => {
+if (this._bouncyHighlightElement)
+this._bouncyHighlightElement.remove();
+};
+
+this.addScrollHandler(scrollHandler);
+
 function animationEnded()
 {
 if (!this._bouncyHighlightElement)
@@ -1093,6 +1100,8 @@
 
 this._bouncyHighlightElement.remove();
 delete this._bouncyHighlightElement;
+
+this.removeScrollHandler(scrollHandler);
 }
 
 // Listen for the end of the animation so we can remove the element.






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


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

2017-01-30 Thread carlosgc
Title: [211407] trunk/Source/WebKit2








Revision 211407
Author carlo...@webkit.org
Date 2017-01-30 22:27:37 -0800 (Mon, 30 Jan 2017)


Log Message
[GTK] HTTP authentication is not implemented for downloads
https://bugs.webkit.org/show_bug.cgi?id=167583

Reviewed by Michael Catanzaro.

When a normal load is converted to a download, the HTTP authentication happens before the load is converted, and
the download starts already authenticated. However, downloads started by DownloadManager::startDownload use the
DownloadClient API to do the authentication. We don't implement didReceiveAuthenticationChallenge() in our
download client, what makes the load to be cancelled and then fail silently. We should probably add API to
handle downloads authentication, but we can also forward the authentication to the web view for downloads having
a web view associated. That would cover most of the cases, like downloading from the context menu.

* UIProcess/API/gtk/WebKitDownloadClient.cpp: Add didReceiveAuthenticationChallenge implementation.

Modified Paths

trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/UIProcess/API/gtk/WebKitDownloadClient.cpp




Diff

Modified: trunk/Source/WebKit2/ChangeLog (211406 => 211407)

--- trunk/Source/WebKit2/ChangeLog	2017-01-31 06:21:35 UTC (rev 211406)
+++ trunk/Source/WebKit2/ChangeLog	2017-01-31 06:27:37 UTC (rev 211407)
@@ -1,3 +1,19 @@
+2017-01-30  Carlos Garcia Campos  
+
+[GTK] HTTP authentication is not implemented for downloads
+https://bugs.webkit.org/show_bug.cgi?id=167583
+
+Reviewed by Michael Catanzaro.
+
+When a normal load is converted to a download, the HTTP authentication happens before the load is converted, and
+the download starts already authenticated. However, downloads started by DownloadManager::startDownload use the
+DownloadClient API to do the authentication. We don't implement didReceiveAuthenticationChallenge() in our
+download client, what makes the load to be cancelled and then fail silently. We should probably add API to
+handle downloads authentication, but we can also forward the authentication to the web view for downloads having
+a web view associated. That would cover most of the cases, like downloading from the context menu.
+
+* UIProcess/API/gtk/WebKitDownloadClient.cpp: Add didReceiveAuthenticationChallenge implementation.
+
 2017-01-30  Sam Weinig  
 
 JSDOMBinding is too big. Split it up!


Modified: trunk/Source/WebKit2/UIProcess/API/gtk/WebKitDownloadClient.cpp (211406 => 211407)

--- trunk/Source/WebKit2/UIProcess/API/gtk/WebKitDownloadClient.cpp	2017-01-31 06:21:35 UTC (rev 211406)
+++ trunk/Source/WebKit2/UIProcess/API/gtk/WebKitDownloadClient.cpp	2017-01-31 06:27:37 UTC (rev 211407)
@@ -24,6 +24,7 @@
 #include "WebKitDownloadPrivate.h"
 #include "WebKitURIResponsePrivate.h"
 #include "WebKitWebContextPrivate.h"
+#include "WebKitWebViewPrivate.h"
 #include "WebProcessPool.h"
 #include 
 #include 
@@ -46,6 +47,17 @@
 webkitWebContextDownloadStarted(m_webContext, download.get());
 }
 
+void didReceiveAuthenticationChallenge(WebProcessPool*, DownloadProxy* downloadProxy, AuthenticationChallengeProxy* authenticationChallenge) override
+{
+GRefPtr download = webkitWebContextGetOrCreateDownload(downloadProxy);
+if (webkitDownloadIsCancelled(download.get()))
+return;
+
+// FIXME: Add API to handle authentication of downloads without a web view associted.
+if (auto* webView = webkit_download_get_web_view(download.get()))
+webkitWebViewHandleAuthenticationChallenge(webView, authenticationChallenge);
+}
+
 void didReceiveResponse(WebProcessPool*, DownloadProxy* downloadProxy, const ResourceResponse& resourceResponse) override
 {
 GRefPtr download = webkitWebContextGetOrCreateDownload(downloadProxy);






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


[webkit-changes] [211405] trunk/Tools

2017-01-30 Thread jbedard
Title: [211405] trunk/Tools








Revision 211405
Author jbed...@apple.com
Date 2017-01-30 20:50:40 -0800 (Mon, 30 Jan 2017)


Log Message
Workaround for simctl launch bug
https://bugs.webkit.org/show_bug.cgi?id=167613

Reviewed by Daniel Bates.

simctl launch will sometimes fail because of a race condition when many
simulators are being run simultaneously. These failures will always have
an exit code of 1. This change attempts to launch an app multiple times
before reporting a failure to workaround this bug.

* Scripts/webkitpy/xcode/simulator.py:
(Device.launch_app): Execute multiple launch attempts, better logging of failures.

Modified Paths

trunk/Tools/ChangeLog
trunk/Tools/Scripts/webkitpy/xcode/simulator.py




Diff

Modified: trunk/Tools/ChangeLog (211404 => 211405)

--- trunk/Tools/ChangeLog	2017-01-31 04:34:26 UTC (rev 211404)
+++ trunk/Tools/ChangeLog	2017-01-31 04:50:40 UTC (rev 211405)
@@ -1,3 +1,18 @@
+2017-01-30  Jonathan Bedard  
+
+Workaround for simctl launch bug
+https://bugs.webkit.org/show_bug.cgi?id=167613
+
+Reviewed by Daniel Bates.
+
+simctl launch will sometimes fail because of a race condition when many
+simulators are being run simultaneously. These failures will always have
+an exit code of 1. This change attempts to launch an app multiple times
+before reporting a failure to workaround this bug.
+
+* Scripts/webkitpy/xcode/simulator.py:
+(Device.launch_app): Execute multiple launch attempts, better logging of failures.
+
 2017-01-30  Alexey Proskuryakov  
 
 Commit queue fails to look at real name aliases for the reviewer


Modified: trunk/Tools/Scripts/webkitpy/xcode/simulator.py (211404 => 211405)

--- trunk/Tools/Scripts/webkitpy/xcode/simulator.py	2017-01-31 04:34:26 UTC (rev 211404)
+++ trunk/Tools/Scripts/webkitpy/xcode/simulator.py	2017-01-31 04:50:40 UTC (rev 211405)
@@ -275,12 +275,22 @@
 else:
 environment_to_use[value] = env[value]
 
-output = self._host.executive.run_command(
-['xcrun', 'simctl', 'launch', self.udid, bundle_id] + args,
-env=environment_to_use,
-)
+# FIXME: This is a workaround for , Racey failure of simctl launch.
+@staticmethod
+def _log_debug_error(error):
+_log.debug(error.message_with_output())
 
-match = re.match(r'(?P[^:]+): (?P\d+)\n', output)
+output = None
+for x in xrange(3):
+output = self._host.executive.run_command(
+['xcrun', 'simctl', 'launch', self.udid, bundle_id] + args,
+env=environment_to_use,
+error_handler=_log_debug_error,
+)
+match = re.match(r'(?P[^:]+): (?P\d+)\n', output)
+if match:
+break
+
 if not match or match.group('bundle') != bundle_id:
 raise RuntimeError('Failed to find process id for {}: {}'.format(bundle_id, output))
 return int(match.group('pid'))






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


[webkit-changes] [211404] trunk

2017-01-30 Thread commit-queue
Title: [211404] trunk








Revision 211404
Author commit-qu...@webkit.org
Date 2017-01-30 20:34:26 -0800 (Mon, 30 Jan 2017)


Log Message
[WebRTC] getStats does not support legacy callback
https://bugs.webkit.org/show_bug.cgi?id=167617

Patch by Youenn Fablet  on 2017-01-30
Reviewed by Alex Christensen.

Source/WebCore:

Covered by updated tests.

* Modules/mediastream/RTCPeerConnection.cpp:
(WebCore::RTCPeerConnection::getStats):
(WebCore::RTCPeerConnection::privateGetStats): Deleted.
* Modules/mediastream/RTCPeerConnection.h:
* Modules/mediastream/RTCPeerConnection.idl:
* Modules/mediastream/RTCPeerConnection.js:
(addIceCandidate):
(getStats): Deleted.

LayoutTests:

* fast/mediastream/RTCPeerConnection-js-built-ins-check-this-expected.txt:
* fast/mediastream/RTCPeerConnection-overloaded-operations-params-expected.txt:
* fast/mediastream/RTCPeerConnection-overloaded-operations-params.html:
* fast/mediastream/RTCPeerConnection-stats.html:
* fast/mediastream/RTCPeerConnection-statsSelector.html:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/fast/mediastream/RTCPeerConnection-js-built-ins-check-this-expected.txt
trunk/LayoutTests/fast/mediastream/RTCPeerConnection-overloaded-operations-params-expected.txt
trunk/LayoutTests/fast/mediastream/RTCPeerConnection-overloaded-operations-params.html
trunk/LayoutTests/fast/mediastream/RTCPeerConnection-stats.html
trunk/LayoutTests/fast/mediastream/RTCPeerConnection-statsSelector.html
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Modules/mediastream/RTCPeerConnection.cpp
trunk/Source/WebCore/Modules/mediastream/RTCPeerConnection.h
trunk/Source/WebCore/Modules/mediastream/RTCPeerConnection.idl
trunk/Source/WebCore/Modules/mediastream/RTCPeerConnection.js




Diff

Modified: trunk/LayoutTests/ChangeLog (211403 => 211404)

--- trunk/LayoutTests/ChangeLog	2017-01-31 03:37:34 UTC (rev 211403)
+++ trunk/LayoutTests/ChangeLog	2017-01-31 04:34:26 UTC (rev 211404)
@@ -1,3 +1,16 @@
+2017-01-30  Youenn Fablet  
+
+[WebRTC] getStats does not support legacy callback
+https://bugs.webkit.org/show_bug.cgi?id=167617
+
+Reviewed by Alex Christensen.
+
+* fast/mediastream/RTCPeerConnection-js-built-ins-check-this-expected.txt:
+* fast/mediastream/RTCPeerConnection-overloaded-operations-params-expected.txt:
+* fast/mediastream/RTCPeerConnection-overloaded-operations-params.html:
+* fast/mediastream/RTCPeerConnection-stats.html:
+* fast/mediastream/RTCPeerConnection-statsSelector.html:
+
 2017-01-30  Chris Dumez  
 
 Unreviewed, remove a couple JS files that were missed in r211395.


Modified: trunk/LayoutTests/fast/mediastream/RTCPeerConnection-js-built-ins-check-this-expected.txt (211403 => 211404)

--- trunk/LayoutTests/fast/mediastream/RTCPeerConnection-js-built-ins-check-this-expected.txt	2017-01-31 03:37:34 UTC (rev 211403)
+++ trunk/LayoutTests/fast/mediastream/RTCPeerConnection-js-built-ins-check-this-expected.txt	2017-01-31 04:34:26 UTC (rev 211404)
@@ -8,13 +8,13 @@
 PASS promise RTCPeerConnection.prototype.setLocalDescription.call({}) rejected with TypeError: Function should be called on an RTCPeerConnection
 PASS promise RTCPeerConnection.prototype.setRemoteDescription.call({}) rejected with TypeError: Function should be called on an RTCPeerConnection
 PASS promise RTCPeerConnection.prototype.addIceCandidate.call({}) rejected with TypeError: Function should be called on an RTCPeerConnection
-PASS promise RTCPeerConnection.prototype.getStats.call({}, null) rejected with TypeError: Function should be called on an RTCPeerConnection
+FAIL promise RTCPeerConnection.prototype.getStats.call({}, null) rejected with TypeError: Can only call RTCPeerConnection.getStats on instances of RTCPeerConnection; expected reason TypeError: Function should be called on an RTCPeerConnection
 PASS promise objectWithPcPrototype.createOffer() rejected with TypeError: Function should be called on an RTCPeerConnection
 PASS promise objectWithPcPrototype.createAnswer() rejected with TypeError: Function should be called on an RTCPeerConnection
 PASS promise objectWithPcPrototype.setLocalDescription() rejected with TypeError: Function should be called on an RTCPeerConnection
 PASS promise objectWithPcPrototype.setRemoteDescription() rejected with TypeError: Function should be called on an RTCPeerConnection
 PASS promise objectWithPcPrototype.addIceCandidate() rejected with TypeError: Function should be called on an RTCPeerConnection
-PASS promise objectWithPcPrototype.getStats() rejected with TypeError: Function should be called on an RTCPeerConnection
+FAIL promise objectWithPcPrototype.getStats() rejected with TypeError: Can only call RTCPeerConnection.getStats on instances of RTCPeerConnection; expected reason TypeError: Function should be called on an RTCPeerConnection
 PASS End of test promise chain
 PASS successfullyParsed is true
 


Modified: trunk/LayoutTests/fast/mediastream/RTCPeerConnection-overloa

[webkit-changes] [211402] trunk/Source

2017-01-30 Thread aestes
Title: [211402] trunk/Source








Revision 211402
Author aes...@apple.com
Date 2017-01-30 19:06:05 -0800 (Mon, 30 Jan 2017)


Log Message
[QuickLook] FrameLoaderClient should return the new QuickLookHandleClient it creates
https://bugs.webkit.org/show_bug.cgi?id=167625

Reviewed by Andreas Kling.

Source/WebCore:

QuickLookHandleClients were being created by QuickLookHandle calling
FrameLoaderClient::didCreateQuickLookHandle() then having the FrameLoaderClient create a new
QuickLookHandleClient and set it using QuickLookHandle::setClient().

Since all FrameLoaderClient::didCreateQuickLookHandle() does is create a new
QuickLookHandleClient, this patch changes the FrameLoaderClient function to return the new
QuickLookHandleClient directly and removes the API from QuickLookHandle to set a client.
This also removes previewFileName() and previewUTI() from QuickLookHandle and instead passes
these as arguments to the FrameLoaderClient.

No change in behavior. Covered by existing tests.

* loader/EmptyClients.cpp: Added an implementation of createQuickLookHandleClient() that
returns nullptr.
* loader/FrameLoaderClient.h: Declared createQuickLookHandleClient() and removed
didCreateQuickLookHandle().
* loader/ios/QuickLook.h: Removed setClient(), previewFileName(), and previewUTI().
* loader/ios/QuickLook.mm: Removed testingOrEmptyClient().
(-[WebPreviewLoader initWithResourceLoader:resourceResponse:quickLookHandle:]): Set _client
to testingClient() if it exists, otherwise set it to the client returned by
FrameLoaderClient::createQuickLookHandleClient() it non-null, otherwise set it to
emptyClient().
(testingOrEmptyClient): Deleted.
(-[WebPreviewLoader setClient:]): Deleted.
(-[WebPreviewLoader converter]): Deleted.
(WebCore::QuickLookHandle::setClient): Deleted.
(WebCore::QuickLookHandle::previewFileName): Deleted.
(WebCore::QuickLookHandle::previewUTI): Deleted.

Source/WebKit/mac:

* WebCoreSupport/WebFrameLoaderClient.h: Declared createQuickLookHandleClient().
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::createQuickLookHandleClient): Renamed from didCreateQuickLookHandle().
(WebFrameLoaderClient::didCreateQuickLookHandle): Renamed to createQuickLookHandleClient().

Source/WebKit2:

* WebProcess/WebCoreSupport/WebFrameLoaderClient.h: Declared createQuickLookHandleClient().
* WebProcess/WebCoreSupport/ios/WebFrameLoaderClientIOS.mm:
(WebKit::WebFrameLoaderClient::createQuickLookHandleClient): Renamed from didCreateQuickLookHandle().
(WebKit::WebFrameLoaderClient::didCreateQuickLookHandle): Renamed to createQuickLookHandleClient().
* WebProcess/WebCoreSupport/ios/WebQuickLookHandleClient.cpp:
(WebKit::WebQuickLookHandleClient::WebQuickLookHandleClient): Set m_fileName and m_uti from
the constructor arguments instead of from handle.
* WebProcess/WebCoreSupport/ios/WebQuickLookHandleClient.h:

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/loader/EmptyClients.cpp
trunk/Source/WebCore/loader/FrameLoaderClient.h
trunk/Source/WebCore/loader/ios/QuickLook.h
trunk/Source/WebCore/loader/ios/QuickLook.mm
trunk/Source/WebKit/mac/ChangeLog
trunk/Source/WebKit/mac/WebCoreSupport/WebFrameLoaderClient.h
trunk/Source/WebKit/mac/WebCoreSupport/WebFrameLoaderClient.mm
trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebFrameLoaderClient.h
trunk/Source/WebKit2/WebProcess/WebCoreSupport/ios/WebFrameLoaderClientIOS.mm
trunk/Source/WebKit2/WebProcess/WebCoreSupport/ios/WebQuickLookHandleClient.cpp
trunk/Source/WebKit2/WebProcess/WebCoreSupport/ios/WebQuickLookHandleClient.h




Diff

Modified: trunk/Source/WebCore/ChangeLog (211401 => 211402)

--- trunk/Source/WebCore/ChangeLog	2017-01-31 02:38:07 UTC (rev 211401)
+++ trunk/Source/WebCore/ChangeLog	2017-01-31 03:06:05 UTC (rev 211402)
@@ -1,3 +1,39 @@
+2017-01-30  Andy Estes  
+
+[QuickLook] FrameLoaderClient should return the new QuickLookHandleClient it creates
+https://bugs.webkit.org/show_bug.cgi?id=167625
+
+Reviewed by Andreas Kling.
+
+QuickLookHandleClients were being created by QuickLookHandle calling
+FrameLoaderClient::didCreateQuickLookHandle() then having the FrameLoaderClient create a new
+QuickLookHandleClient and set it using QuickLookHandle::setClient().
+
+Since all FrameLoaderClient::didCreateQuickLookHandle() does is create a new
+QuickLookHandleClient, this patch changes the FrameLoaderClient function to return the new
+QuickLookHandleClient directly and removes the API from QuickLookHandle to set a client.
+This also removes previewFileName() and previewUTI() from QuickLookHandle and instead passes
+these as arguments to the FrameLoaderClient.
+
+No change in behavior. Covered by existing tests.
+
+* loader/EmptyClients.cpp: Added an implementation of createQuickLookHandleClient() that
+returns nullptr.
+* loader/FrameLoaderClient.h: Declared createQuickLookHandleClient() an

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

2017-01-30 Thread jer . noble
Title: [211401] trunk/Source/WebCore








Revision 211401
Author jer.no...@apple.com
Date 2017-01-30 18:38:07 -0800 (Mon, 30 Jan 2017)


Log Message
NULL-deref crash in TextTrack::removeCue()
https://bugs.webkit.org/show_bug.cgi?id=167615

Reviewed by Eric Carlson.

It's possible for a track to be removed which was never actually added to the cue list.
Specifically, if an in-band track with a negative start or end time was parsed, it would
have been rejected by TextTrack::addCue(). When it comes time to flush those in-band cues,
TextTrack::m_cues will still be NULL. Rather than ASSERT in this case, we should revert the
behavior added in r210319 and throw an exception.

* html/track/TextTrack.cpp:
(WebCore::TextTrack::removeCue):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/html/track/TextTrack.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (211400 => 211401)

--- trunk/Source/WebCore/ChangeLog	2017-01-31 02:36:36 UTC (rev 211400)
+++ trunk/Source/WebCore/ChangeLog	2017-01-31 02:38:07 UTC (rev 211401)
@@ -1,3 +1,19 @@
+2017-01-30  Jer Noble  
+
+NULL-deref crash in TextTrack::removeCue()
+https://bugs.webkit.org/show_bug.cgi?id=167615
+
+Reviewed by Eric Carlson.
+
+It's possible for a track to be removed which was never actually added to the cue list.
+Specifically, if an in-band track with a negative start or end time was parsed, it would
+have been rejected by TextTrack::addCue(). When it comes time to flush those in-band cues,
+TextTrack::m_cues will still be NULL. Rather than ASSERT in this case, we should revert the
+behavior added in r210319 and throw an exception.
+
+* html/track/TextTrack.cpp:
+(WebCore::TextTrack::removeCue):
+
 2017-01-30  Andreas Kling  
 
 Fix CMSampleBuffer leak in MediaSampleAVFObjC::createNonDisplayingCopy().


Modified: trunk/Source/WebCore/html/track/TextTrack.cpp (211400 => 211401)

--- trunk/Source/WebCore/html/track/TextTrack.cpp	2017-01-31 02:36:36 UTC (rev 211400)
+++ trunk/Source/WebCore/html/track/TextTrack.cpp	2017-01-31 02:38:07 UTC (rev 211401)
@@ -333,9 +333,10 @@
 // object's text track's text track list of cues, then throw a NotFoundError exception.
 if (cue.track() != this)
 return Exception { NOT_FOUND_ERR };
+if (!m_cues)
+return Exception { INVALID_STATE_ERR };
 
 // 2. Remove cue from the method's TextTrack object's text track's text track list of cues.
-ASSERT(m_cues);
 m_cues->remove(cue);
 cue.setIsActive(false);
 cue.setTrack(nullptr);






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


[webkit-changes] [211400] trunk/LayoutTests

2017-01-30 Thread cdumez
Title: [211400] trunk/LayoutTests








Revision 211400
Author cdu...@apple.com
Date 2017-01-30 18:36:36 -0800 (Mon, 30 Jan 2017)


Log Message
Unreviewed, remove a couple JS files that were missed in r211395.

* dom/xhtml/level3/core/attrisid04.js: Removed.
* dom/xhtml/level3/core/attrisid05.js: Removed.

Modified Paths

trunk/LayoutTests/ChangeLog


Removed Paths

trunk/LayoutTests/dom/xhtml/level3/core/attrisid04.js
trunk/LayoutTests/dom/xhtml/level3/core/attrisid05.js




Diff

Modified: trunk/LayoutTests/ChangeLog (211399 => 211400)

--- trunk/LayoutTests/ChangeLog	2017-01-31 02:12:06 UTC (rev 211399)
+++ trunk/LayoutTests/ChangeLog	2017-01-31 02:36:36 UTC (rev 211400)
@@ -1,3 +1,10 @@
+2017-01-30  Chris Dumez  
+
+Unreviewed, remove a couple JS files that were missed in r211395.
+
+* dom/xhtml/level3/core/attrisid04.js: Removed.
+* dom/xhtml/level3/core/attrisid05.js: Removed.
+
 2017-01-30  Ryan Haddad  
 
 Marking media/modern-media-controls/buttons-container/buttons-container-buttons-property.html as flaky on macOS WK1.


Deleted: trunk/LayoutTests/dom/xhtml/level3/core/attrisid04.js (211399 => 211400)

--- trunk/LayoutTests/dom/xhtml/level3/core/attrisid04.js	2017-01-31 02:12:06 UTC (rev 211399)
+++ trunk/LayoutTests/dom/xhtml/level3/core/attrisid04.js	2017-01-31 02:36:36 UTC (rev 211400)
@@ -1,127 +0,0 @@
-
-/*
-Copyright © 2001-2004 World Wide Web Consortium, 
-(Massachusetts Institute of Technology, European Research Consortium 
-for Informatics and Mathematics, Keio University). All 
-Rights Reserved. This work is distributed under the W3C® Software License [1] in the 
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even 
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 
-
-[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
-*/
-
-
-
-   /**
-*  Gets URI that identifies the test.
-*  @return uri identifier of test
-*/
-function getTargetURI() {
-  return "http://www.w3.org/2001/DOM-Test-Suite/level3/core/attrisid04";
-   }
-
-var docsLoaded = -100;
-var builder = null;
-
-//
-//   This function is called by the testing framework before
-//  running the test suite.
-//
-//   If there are no configuration exceptions, asynchronous
-//document loading is started.  Otherwise, the status
-//is set to complete and the exception is immediately
-//raised when entering the body of the test.
-//
-function setUpPage() {
-   setUpPageStatus = 'running';
-   try {
- //
- //   creates test document builder, may throw exception
- //
- builder = createConfiguredBuilder();
-
- //
- // WebKit modification:
- //
- // Remove the following line otherwise test case skipped.
- //
- //setImplementationAttribute("validating", true);
- //
- // End WebKit modification
- //
-
-  docsLoaded = 0;
-  
-  var docRef = null;
-  if (typeof(this.doc) != 'undefined') {
-docRef = this.doc;
-  }
-  docsLoaded += preload(docRef, "doc", "hc_staff");
-
-   if (docsLoaded == 1) {
-  setUpPageStatus = 'complete';
-   }
-} catch(ex) {
-	catchInitializationError(builder, ex);
-setUpPageStatus = 'complete';
-}
-}
-
-
-
-//
-//   This method is called on the completion of 
-//  each asychronous load started in setUpTests.
-//
-//   When every synchronous loaded document has completed,
-//  the page status is changed which allows the
-//  body of the test to be executed.
-function loadComplete() {
-if (++docsLoaded == 1) {
-setUpPageStatus = 'complete';
-}
-}
-
-
-/**
-* 
-Attr.isID should return true for the id attribute on the fourth acronym node
-since its type is ID.
-
-* @author IBM
-* @author Neil Delima
-* @see http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Attr-isId
-*/
-function attrisid04() {
-   var success;
-if(checkInitialization(builder, "attrisid04") != null) return;
-var doc;
-  var elemList;
-  var acronymElem;
-  var clonedacronymElem;
-  var attributesMap;
-  var attr;
-  var id = false;
-  var elem;
-  var elemName;
-  
-  var docRef = null;
-  if (typeof(this.doc) != 'undefined') {
-docRef = this.doc;
-  }
-  doc = load(docRef, "doc", "hc_staff");
-  elemList = doc.getElementsByTagName("acronym");
-  acronymElem = elemList.item(3);
-  attr = acronymElem.getAttributeNode("id");
-  id = attr.isId;
-
-  assertTrue("AttrIsIDTrue04",id);
-
-}
-
-
-
-
-function runTest() {
-   attrisid04();
-}


Deleted: trunk/LayoutTests/dom/xhtml/level3/core/attrisid05.js (211399 => 211400)

--- trunk/LayoutTests/dom/xhtml/level3/core/attrisid05.js	2017-01-31 02:12:06 UTC (rev 211399)
+++ trunk/LayoutTests/dom/xhtml/level3/core/attrisid05.js	2017-01-31 02:36:36 UTC (rev 211400)
@@ -1,135 +0,0 @@
-
-/*
-Copyright © 2001-2004 World Wide Web 

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

2017-01-30 Thread akling
Title: [211399] trunk/Source/WebCore








Revision 211399
Author akl...@apple.com
Date 2017-01-30 18:12:06 -0800 (Mon, 30 Jan 2017)


Log Message
Fix CMSampleBuffer leak in MediaSampleAVFObjC::createNonDisplayingCopy().


Reviewed by Andy Estes.

We were failing to adopt the CMSampleBuffer after copying it. Seen on leaks bot.

* platform/graphics/avfoundation/objc/MediaSampleAVFObjC.mm:
(WebCore::MediaSampleAVFObjC::createNonDisplayingCopy):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaSampleAVFObjC.mm




Diff

Modified: trunk/Source/WebCore/ChangeLog (211398 => 211399)

--- trunk/Source/WebCore/ChangeLog	2017-01-31 01:54:02 UTC (rev 211398)
+++ trunk/Source/WebCore/ChangeLog	2017-01-31 02:12:06 UTC (rev 211399)
@@ -1,3 +1,15 @@
+2017-01-30  Andreas Kling  
+
+Fix CMSampleBuffer leak in MediaSampleAVFObjC::createNonDisplayingCopy().
+
+
+Reviewed by Andy Estes.
+
+We were failing to adopt the CMSampleBuffer after copying it. Seen on leaks bot.
+
+* platform/graphics/avfoundation/objc/MediaSampleAVFObjC.mm:
+(WebCore::MediaSampleAVFObjC::createNonDisplayingCopy):
+
 2017-01-30  Andy Estes  
 
 [QuickLook] QLPreviewConverter and QuickLookHandle have different lifetime requirements


Modified: trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaSampleAVFObjC.mm (211398 => 211399)

--- trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaSampleAVFObjC.mm	2017-01-31 01:54:02 UTC (rev 211398)
+++ trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaSampleAVFObjC.mm	2017-01-31 02:12:06 UTC (rev 211399)
@@ -229,7 +229,7 @@
 CFDictionarySetValue(attachments, kCMSampleAttachmentKey_DoNotDisplay, kCFBooleanTrue);
 }
 
-return MediaSampleAVFObjC::create(newSampleBuffer, m_id);
+return MediaSampleAVFObjC::create(adoptCF(newSampleBuffer).get(), m_id);
 }
 
 }






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


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

2017-01-30 Thread aestes
Title: [211398] trunk/Source/WebCore








Revision 211398
Author aes...@apple.com
Date 2017-01-30 17:54:02 -0800 (Mon, 30 Jan 2017)


Log Message
[QuickLook] QLPreviewConverter and QuickLookHandle have different lifetime requirements
https://bugs.webkit.org/show_bug.cgi?id=167609

Reviewed by Andreas Kling.

Currently, QuickLookHandles are owned by DocumentLoader so that the underlying
QLPreviewConverter stays alive to service subresource requests. However, the QuickLookHandle
itself only needs to live long enough to handle the main resource load. And in a follow-on
patch we will need to create QLPreviewConverters independent of QuickLookHandle.

This patch moves ownership of QuickLookHandle from DocumentLoader to ResourceLoader. It also
creates a C++ wrapper around QLPreviewConverter and teaches QuickLookHandle to transfer
ownership of the wrapper to DocumentLoader once the main resource conversion is complete.

No change in behavior. Covered by existing tests.

* WebCore.xcodeproj/project.pbxproj: Added PreviewConverter.{h,mm}.
* loader/DocumentLoader.cpp:
(WebCore::DocumentLoader::setPreviewConverter): Renamed from setQuickLookHandle().
(WebCore::DocumentLoader::previewConverter): Renamed from quickLookHandle().
(WebCore::DocumentLoader::setQuickLookHandle): Renamed to setPreviewConverter().
* loader/DocumentLoader.h:
(WebCore::DocumentLoader::quickLookHandle): Renamed to quickLookHandle().
* loader/ResourceLoader.cpp:
(WebCore::ResourceLoader::willSendRequestInternal): Changed to call PreviewConverter::safeRequest().
(WebCore::ResourceLoader::isQuickLookResource): Changed to check if m_quickLookHandle is null.
(WebCore::ResourceLoader::didCreateQuickLookHandle): Deleted.
* loader/ResourceLoader.h:
* loader/SubresourceLoader.cpp:
(WebCore::SubresourceLoader::shouldCreateQuickLookHandleForResponse): Changed to access m_quickLookHandle.
(WebCore::SubresourceLoader::didReceiveResponse): Ditto.
(WebCore::SubresourceLoader::didReceiveData): Ditto.
(WebCore::SubresourceLoader::didReceiveBuffer): Ditto.
(WebCore::SubresourceLoader::didFinishLoading): Ditto.
(WebCore::SubresourceLoader::didFail): Ditto.
* loader/cache/CachedRawResource.cpp:
(WebCore::CachedRawResource::finishLoading): Wrapped the call to ResourceLoader::isQuickLookResource() in USE(QUICK_LOOK).
* loader/ios/QuickLook.h: Renamed m_converter to m_previewLoader.
* loader/ios/QuickLook.mm: Renamed WebPreviewConverter to WebPreviewLoader.
(WebCore::registerQLPreviewConverterIfNeeded): Created a PreviewConverter instead of a QLPreviewConverter.
(-[WebPreviewLoader initWithResourceLoader:resourceResponse:quickLookHandle:]): Ditto.
(-[WebPreviewLoader appendDataArray:]): Accessed the QLPreviewConverter from the PreviewConverter.
(-[WebPreviewLoader finishedAppending]): Ditto.
(-[WebPreviewLoader failed]): Ditto.
(-[WebPreviewLoader converter]): Renamed from platformConverter. Returns a pointer to the PreviewConverter.
(-[WebPreviewLoader _sendDidReceiveResponseIfNecessary]): Moved _converter to DocumentLoader.
(-[WebPreviewLoader connection:didFailWithError:]): Created a PreviewConverter instead of a QLPreviewConverter.
(WebCore::QuickLookHandle::QuickLookHandle): Called FrameLoaderClient::didCreateQuickLookHandle() instead of going through FrameLoader.
(WebCore::QuickLookHandle::didReceiveData): Renamed m_converter to m_previewLoader.
(WebCore::QuickLookHandle::didReceiveBuffer): Ditto.
(WebCore::QuickLookHandle::didFinishLoading): Ditto.
(WebCore::QuickLookHandle::didFail): Ditto.
(WebCore::QuickLookHandle::setClient): Ditto.
(WebCore::QuickLookHandle::previewFileName): Ditto.
(WebCore::QuickLookHandle::previewUTI): Ditto.
(WebCore::QuickLookHandle::willSendRequest): Deleted.
* platform/ios/QuickLookSoftLink.h: Removed soft-linking of QLPreviewConverter and kQLPreviewOptionPasswordKey.
* platform/ios/QuickLookSoftLink.mm: Ditto.
* platform/network/ios/PreviewConverter.h: Added.
(WebCore::PreviewConverter::platformConverter): Added. Returns the underlying QLPreviewConverter.
* platform/network/ios/PreviewConverter.mm: Added.
(WebCore::optionsWithPassword): Creates a dictionary with the kQLPreviewOptionPasswordKey option set if password is non-null.
(WebCore::PreviewConverter::PreviewConverter): Added constructors for the delegate/response and data/uti cases.
(WebCore::PreviewConverter::safeRequest): Wraps -[QLPreviewConverter safeRequestForRequest:].
(WebCore::PreviewConverter::previewRequest): Wraps -[QLPreviewConverter previewRequest].
(WebCore::PreviewConverter::previewResponse): Wraps -[QLPreviewConverter previewResponse].
(WebCore::PreviewConverter::previewFileName): Wraps -[QLPreviewConverter previewFileName].
(WebCore::PreviewConverter::previewUTI): Wraps -[QLPreviewConverter previewUTI].

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj
trunk/Source/WebCore/loader/DocumentLoader.cpp
trunk/Source/WebCore/loader/DocumentLoader.h
trunk/Source/WebCore/loader/ResourceLoader.cpp
trunk/Source/We

[webkit-changes] [211397] trunk/Tools

2017-01-30 Thread ap
Title: [211397] trunk/Tools








Revision 211397
Author a...@apple.com
Date 2017-01-30 17:20:24 -0800 (Mon, 30 Jan 2017)


Log Message
Commit queue fails to look at real name aliases for the reviewer
https://bugs.webkit.org/show_bug.cgi?id=167422

Reviewed by Joseph Pecoraro.

* Scripts/webkitpy/common/checkout/changelog_unittest.py:
(test_has_valid_reviewer): Added tests.

* Scripts/webkitpy/common/config/committers.py:
(CommitterList._name_to_contributor_map):
Made _name_to_contributor_map include alias names.

* Scripts/webkitpy/common/config/committers_unittest.py:
(CommittersTest.test_contributors_by_fuzzy_match):
Removed subtests that are now obsolete, as these matches are strict. It is not
obvious if distance based fuzzy matching for names is useful at all, but we can
look into that some other time.

Modified Paths

trunk/Tools/ChangeLog
trunk/Tools/Scripts/webkitpy/common/checkout/changelog_unittest.py
trunk/Tools/Scripts/webkitpy/common/config/committers.py
trunk/Tools/Scripts/webkitpy/common/config/committers_unittest.py




Diff

Modified: trunk/Tools/ChangeLog (211396 => 211397)

--- trunk/Tools/ChangeLog	2017-01-31 00:54:39 UTC (rev 211396)
+++ trunk/Tools/ChangeLog	2017-01-31 01:20:24 UTC (rev 211397)
@@ -1,3 +1,23 @@
+2017-01-30  Alexey Proskuryakov  
+
+Commit queue fails to look at real name aliases for the reviewer
+https://bugs.webkit.org/show_bug.cgi?id=167422
+
+Reviewed by Joseph Pecoraro.
+
+* Scripts/webkitpy/common/checkout/changelog_unittest.py:
+(test_has_valid_reviewer): Added tests.
+
+* Scripts/webkitpy/common/config/committers.py:
+(CommitterList._name_to_contributor_map):
+Made _name_to_contributor_map include alias names.
+
+* Scripts/webkitpy/common/config/committers_unittest.py:
+(CommittersTest.test_contributors_by_fuzzy_match):
+Removed subtests that are now obsolete, as these matches are strict. It is not
+obvious if distance based fuzzy matching for names is useful at all, but we can
+look into that some other time.
+
 2017-01-30  Aakash Jain  
 
 QueueStatusServer should have an explicit timeout for _fetch_url


Modified: trunk/Tools/Scripts/webkitpy/common/checkout/changelog_unittest.py (211396 => 211397)

--- trunk/Tools/Scripts/webkitpy/common/checkout/changelog_unittest.py	2017-01-31 00:54:39 UTC (rev 211396)
+++ trunk/Tools/Scripts/webkitpy/common/checkout/changelog_unittest.py	2017-01-31 01:20:24 UTC (rev 211397)
@@ -479,6 +479,8 @@
 self._assert_has_valid_reviewer("Rubber stamped by Eric Seidel.", True)
 self._assert_has_valid_reviewer("Unreviewed build fix.", True)
 self._assert_has_valid_reviewer("Reviewed by Gabor Rapcsanyi.", False)
+self._assert_has_valid_reviewer("Reviewed by Myles Maxfield", True)
+self._assert_has_valid_reviewer("Reviewed by Myles C. Maxfield", True)
 
 def test_is_touched_files_text_clean(self):
 tests = [


Modified: trunk/Tools/Scripts/webkitpy/common/config/committers.py (211396 => 211397)

--- trunk/Tools/Scripts/webkitpy/common/config/committers.py	2017-01-31 00:54:39 UTC (rev 211396)
+++ trunk/Tools/Scripts/webkitpy/common/config/committers.py	2017-01-31 01:20:24 UTC (rev 211397)
@@ -259,9 +259,14 @@
 def _name_to_contributor_map(self):
 if not len(self._contributors_by_name):
 for contributor in self._contributors:
-assert(contributor.full_name)
-assert(contributor.full_name.lower() not in self._contributors_by_name)  # We should never have duplicate names.
+assert contributor.full_name
+assert contributor.full_name.lower() not in self._contributors_by_name  # We should never have duplicate names.
 self._contributors_by_name[contributor.full_name.lower()] = contributor
+if contributor.aliases is None:
+continue
+for alias in contributor.aliases:
+assert alias.lower() not in self._contributors_by_name
+self._contributors_by_name[alias.lower()] = contributor
 return self._contributors_by_name
 
 def _email_to_account_map(self):


Modified: trunk/Tools/Scripts/webkitpy/common/config/committers_unittest.py (211396 => 211397)

--- trunk/Tools/Scripts/webkitpy/common/config/committers_unittest.py	2017-01-31 00:54:39 UTC (rev 211396)
+++ trunk/Tools/Scripts/webkitpy/common/config/committers_unittest.py	2017-01-31 01:20:24 UTC (rev 211397)
@@ -109,8 +109,7 @@
 
 # Basic testing of the edit distance matching ...
 def test_contributors_by_fuzzy_match(self):
-self._assert_fuzz_match('Geoff Garen', 'Geoffrey Garen', 3)
-self._assert_fuzz_match('Kenneth Christiansen', 'Kenneth Rohde Christiansen', 6)
+self._assert_fuzz_match('Geof Garen', 'Geoffrey Garen', 4)
 self._assert_fuzz_match('Sam', 'Sam Weinig', 0)
 self._assert_fuzz

[webkit-changes] [211396] trunk/LayoutTests

2017-01-30 Thread ryanhaddad
Title: [211396] trunk/LayoutTests








Revision 211396
Author ryanhad...@apple.com
Date 2017-01-30 16:54:39 -0800 (Mon, 30 Jan 2017)


Log Message
Marking media/modern-media-controls/buttons-container/buttons-container-buttons-property.html as flaky on macOS WK1.
https://bugs.webkit.org/show_bug.cgi?id=167371

Unreviewed test gardening.

* platform/mac-wk1/TestExpectations:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/platform/mac-wk1/TestExpectations




Diff

Modified: trunk/LayoutTests/ChangeLog (211395 => 211396)

--- trunk/LayoutTests/ChangeLog	2017-01-31 00:22:27 UTC (rev 211395)
+++ trunk/LayoutTests/ChangeLog	2017-01-31 00:54:39 UTC (rev 211396)
@@ -1,3 +1,12 @@
+2017-01-30  Ryan Haddad  
+
+Marking media/modern-media-controls/buttons-container/buttons-container-buttons-property.html as flaky on macOS WK1.
+https://bugs.webkit.org/show_bug.cgi?id=167371
+
+Unreviewed test gardening.
+
+* platform/mac-wk1/TestExpectations:
+
 2017-01-30  Chris Dumez  
 
 Drop legacy Attributes.isId attribute


Modified: trunk/LayoutTests/platform/mac-wk1/TestExpectations (211395 => 211396)

--- trunk/LayoutTests/platform/mac-wk1/TestExpectations	2017-01-31 00:22:27 UTC (rev 211395)
+++ trunk/LayoutTests/platform/mac-wk1/TestExpectations	2017-01-31 00:54:39 UTC (rev 211396)
@@ -314,4 +314,6 @@
 
 webkit.org/b/163598 media/modern-media-controls/macos-inline-media-controls/macos-inline-media-controls-buttons-styles.html [ Pass Timeout ]
 
+webkit.org/b/167371 media/modern-media-controls/buttons-container/buttons-container-buttons-property.html [ Pass Timeout ]
+
 webkit.org/b/167127 pointer-lock/locked-element-removed-from-dom.html






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


[webkit-changes] [211395] trunk

2017-01-30 Thread cdumez
Title: [211395] trunk








Revision 211395
Author cdu...@apple.com
Date 2017-01-30 16:22:27 -0800 (Mon, 30 Jan 2017)


Log Message
Drop legacy Attributes.isId attribute
https://bugs.webkit.org/show_bug.cgi?id=167603

Reviewed by Ryosuke Niwa.

LayoutTests/imported/w3c:

Rebaseline W3C test now that one more check is passing.

* web-platform-tests/dom/historical-expected.txt:

Source/WebCore:

Drop legacy Attributes.isId attribute.

This attribute is not in the specification:
- https://dom.spec.whatwg.org/#interface-attr

Both Firefox and Chrome currently do not expose this attribute.

No new tests, rebaselined existing test.

* dom/Attr.cpp:
* dom/Attr.h:
* dom/Attr.idl:

Source/WebKit/mac:

Keep Attr.isId in ObjC bindings.

* DOM/DOMAttr.mm:
(-[DOMAttr isId]):

LayoutTests:

Drop outdated tests.

* dom/xhtml/level3/core/attrisid04-expected.txt: Removed.
* dom/xhtml/level3/core/attrisid04.xhtml: Removed.
* dom/xhtml/level3/core/attrisid05-expected.txt: Removed.
* dom/xhtml/level3/core/attrisid05.xhtml: Removed.
* fast/dom/Attr/change-id-via-attr-node-value-expected.txt:
* fast/dom/Attr/change-id-via-attr-node-value.html:
* fast/dom/Element/attrisid-extra01-expected.txt: Removed.
* fast/dom/Element/attrisid-extra01.html: Removed.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/fast/dom/Attr/change-id-via-attr-node-value-expected.txt
trunk/LayoutTests/fast/dom/Attr/change-id-via-attr-node-value.html
trunk/LayoutTests/imported/w3c/ChangeLog
trunk/LayoutTests/imported/w3c/web-platform-tests/dom/historical-expected.txt
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/dom/Attr.cpp
trunk/Source/WebCore/dom/Attr.h
trunk/Source/WebCore/dom/Attr.idl
trunk/Source/WebKit/mac/ChangeLog
trunk/Source/WebKit/mac/DOM/DOMAttr.mm


Removed Paths

trunk/LayoutTests/dom/xhtml/level3/core/attrisid04-expected.txt
trunk/LayoutTests/dom/xhtml/level3/core/attrisid04.xhtml
trunk/LayoutTests/dom/xhtml/level3/core/attrisid05-expected.txt
trunk/LayoutTests/dom/xhtml/level3/core/attrisid05.xhtml
trunk/LayoutTests/fast/dom/Element/attrisid-extra01-expected.txt
trunk/LayoutTests/fast/dom/Element/attrisid-extra01.html




Diff

Modified: trunk/LayoutTests/ChangeLog (211394 => 211395)

--- trunk/LayoutTests/ChangeLog	2017-01-31 00:17:04 UTC (rev 211394)
+++ trunk/LayoutTests/ChangeLog	2017-01-31 00:22:27 UTC (rev 211395)
@@ -1,5 +1,23 @@
 2017-01-30  Chris Dumez  
 
+Drop legacy Attributes.isId attribute
+https://bugs.webkit.org/show_bug.cgi?id=167603
+
+Reviewed by Ryosuke Niwa.
+
+Drop outdated tests.
+
+* dom/xhtml/level3/core/attrisid04-expected.txt: Removed.
+* dom/xhtml/level3/core/attrisid04.xhtml: Removed.
+* dom/xhtml/level3/core/attrisid05-expected.txt: Removed.
+* dom/xhtml/level3/core/attrisid05.xhtml: Removed.
+* fast/dom/Attr/change-id-via-attr-node-value-expected.txt:
+* fast/dom/Attr/change-id-via-attr-node-value.html:
+* fast/dom/Element/attrisid-extra01-expected.txt: Removed.
+* fast/dom/Element/attrisid-extra01.html: Removed.
+
+2017-01-30  Chris Dumez  
+
 Drop legacy constants on Event interface
 https://bugs.webkit.org/show_bug.cgi?id=167602
 


Deleted: trunk/LayoutTests/dom/xhtml/level3/core/attrisid04-expected.txt (211394 => 211395)

--- trunk/LayoutTests/dom/xhtml/level3/core/attrisid04-expected.txt	2017-01-31 00:17:04 UTC (rev 211394)
+++ trunk/LayoutTests/dom/xhtml/level3/core/attrisid04-expected.txt	2017-01-31 00:22:27 UTC (rev 211395)
@@ -1,2 +0,0 @@
-Test	http://www.w3.org/2001/DOM-Test-Suite/level3/core/attrisid04
-Status	Success


Deleted: trunk/LayoutTests/dom/xhtml/level3/core/attrisid04.xhtml (211394 => 211395)

--- trunk/LayoutTests/dom/xhtml/level3/core/attrisid04.xhtml	2017-01-31 00:17:04 UTC (rev 211394)
+++ trunk/LayoutTests/dom/xhtml/level3/core/attrisid04.xhtml	2017-01-31 00:22:27 UTC (rev 211395)
@@ -1,73 +0,0 @@
-
-
-   
-   
-   
-   
-   
-   
-   
-   
-   
-   
-   Element data">
-   
-]>
-
-hc_stafffunction loadComplete() { startTest(); }
- 
-  EMP0001
-  Margaret Martin
-  Accountant
-  56,000
-  Female
-  1230 North Ave. Dallas, Texas 98551
- 
- 
-  EMP0002
-  Martha Raynolds
-
-
-  Secretary
-  35,000
-  Female
-  β Dallas, γ
- 98554
- 
- 
-  EMP0003
-  Roger
- Jones
-  Department Manager
-  100,000
-  &ent4;
-  PO Box 27 Irving, texas 98553
- 
- 
-  EMP0004
-  Jeny Oconnor
-  Personnel Director
-  95,000
-  Female
-  27 South Road. Dallas, Texas 98556
- 
- 
-  EMP0005
-  Robert Myers
-  Computer Specialist
-  90,000
-  male
-  1821 Nordic. Road, Irving Texas 98558
- 
-


Deleted: trunk/LayoutTests/dom/xhtml/level3/core/attrisid05-expected.txt (211394 => 211395)

--- trunk/LayoutTests/dom/xhtml/level3/core/attrisid05-expected.txt	2017-01-31 00:17:04 UTC (rev 211394)
+++ trunk/LayoutTests/dom/xhtml/level3/core/attrisid05-expected.txt	2017-01-31 00:22:27 UTC (rev 211395)
@@ -1,2 +0,0 @@
-Test	http://www.w3.org/2001/DOM-Test-Suite/level3/core/attrisid05
-Status

[webkit-changes] [211394] trunk

2017-01-30 Thread zalan
Title: [211394] trunk








Revision 211394
Author za...@apple.com
Date 2017-01-30 16:17:04 -0800 (Mon, 30 Jan 2017)


Log Message
Simple line layout: Small tweaks to improve performance.
https://bugs.webkit.org/show_bug.cgi?id=167611


Reviewed by Simon Fraser.

PerformanceTests:

* Layout/simple-line-layout-non-repeating-text.html: Added.

Source/WebCore:

This is ~10% progression on the attached test case (paragraphs with non-redundant content).
median: 102.08 runs/s -> median: 114.25 runs/s

* rendering/SimpleLineLayout.cpp:
(WebCore::SimpleLineLayout::LineState::appendFragmentAndCreateRunIfNeeded):
* rendering/SimpleLineLayoutFlowContents.cpp:
(WebCore::SimpleLineLayout::initializeSegments):
(WebCore::SimpleLineLayout::FlowContents::FlowContents):
* rendering/SimpleLineLayoutFlowContents.h:
* rendering/SimpleLineLayoutTextFragmentIterator.cpp:
(WebCore::SimpleLineLayout::TextFragmentIterator::nextNonWhitespacePosition):
(WebCore::SimpleLineLayout::TextFragmentIterator::skipToNextPosition):
* rendering/SimpleLineLayoutTextFragmentIterator.h:

Modified Paths

trunk/PerformanceTests/ChangeLog
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/rendering/SimpleLineLayout.cpp
trunk/Source/WebCore/rendering/SimpleLineLayoutFlowContents.cpp
trunk/Source/WebCore/rendering/SimpleLineLayoutFlowContents.h
trunk/Source/WebCore/rendering/SimpleLineLayoutTextFragmentIterator.cpp
trunk/Source/WebCore/rendering/SimpleLineLayoutTextFragmentIterator.h


Added Paths

trunk/PerformanceTests/Layout/simple-line-layout-non-repeating-text.html




Diff

Modified: trunk/PerformanceTests/ChangeLog (211393 => 211394)

--- trunk/PerformanceTests/ChangeLog	2017-01-31 00:11:49 UTC (rev 211393)
+++ trunk/PerformanceTests/ChangeLog	2017-01-31 00:17:04 UTC (rev 211394)
@@ -1,3 +1,13 @@
+2017-01-30  Zalan Bujtas  
+
+Simple line layout: Small tweaks to improve performance.
+https://bugs.webkit.org/show_bug.cgi?id=167611
+
+
+Reviewed by Simon Fraser.
+
+* Layout/simple-line-layout-non-repeating-text.html: Added.
+
 2017-01-13  Said Abou-Hallawa  
 
 26 MotionMark performance tests failing


Added: trunk/PerformanceTests/Layout/simple-line-layout-non-repeating-text.html (0 => 211394)

--- trunk/PerformanceTests/Layout/simple-line-layout-non-repeating-text.html	(rev 0)
+++ trunk/PerformanceTests/Layout/simple-line-layout-non-repeating-text.html	2017-01-31 00:17:04 UTC (rev 211394)
@@ -0,0 +1,179 @@
+
+
+
+Line breaking performance test
+
+
+

+

[webkit-changes] [211393] trunk

2017-01-30 Thread cdumez
Title: [211393] trunk








Revision 211393
Author cdu...@apple.com
Date 2017-01-30 16:11:49 -0800 (Mon, 30 Jan 2017)


Log Message
Drop legacy constants on Event interface
https://bugs.webkit.org/show_bug.cgi?id=167602

Reviewed by Sam Weinig.

LayoutTests/imported/w3c:

Rebaseline W3C test now that more checks are passing.

* web-platform-tests/dom/historical-expected.txt:

Source/WebCore:

Drop legacy constants on Event interface:
MOUSEDOWN, MOUSEUP, MOUSEOVER, MOUSEOUT, MOUSEMOVE, MOUSEDRAG,
CLICK, DBLCLICK, KEYDOWN, KEYUP, KEYPRESS, DRAGDROP, FOCUS,
BLUR, SELECT, and CHANGE.

Those constants are not used for anything, they are not in the
specification and Chrome / Firefox do not have them.

No new tests, rebaselined existing test.

* dom/Event.idl:

LayoutTests:

Update / Rebaseline existing tests to stop covering those constants.

* fast/dom/constants-expected.txt:
* fast/dom/constants.html:
* fast/xmlhttprequest/xmlhttprequest-get-expected.txt:
* http/tests/workers/worker-importScriptsOnError-expected.txt:
* inspector/model/remote-object-get-properties-expected.txt:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/fast/dom/constants-expected.txt
trunk/LayoutTests/fast/dom/constants.html
trunk/LayoutTests/fast/xmlhttprequest/xmlhttprequest-get-expected.txt
trunk/LayoutTests/http/tests/workers/worker-importScriptsOnError-expected.txt
trunk/LayoutTests/imported/w3c/ChangeLog
trunk/LayoutTests/imported/w3c/web-platform-tests/dom/historical-expected.txt
trunk/LayoutTests/inspector/model/remote-object-get-properties-expected.txt
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/dom/Event.h
trunk/Source/WebCore/dom/Event.idl




Diff

Modified: trunk/LayoutTests/ChangeLog (211392 => 211393)

--- trunk/LayoutTests/ChangeLog	2017-01-31 00:08:45 UTC (rev 211392)
+++ trunk/LayoutTests/ChangeLog	2017-01-31 00:11:49 UTC (rev 211393)
@@ -1,3 +1,18 @@
+2017-01-30  Chris Dumez  
+
+Drop legacy constants on Event interface
+https://bugs.webkit.org/show_bug.cgi?id=167602
+
+Reviewed by Sam Weinig.
+
+Update / Rebaseline existing tests to stop covering those constants.
+
+* fast/dom/constants-expected.txt:
+* fast/dom/constants.html:
+* fast/xmlhttprequest/xmlhttprequest-get-expected.txt:
+* http/tests/workers/worker-importScriptsOnError-expected.txt:
+* inspector/model/remote-object-get-properties-expected.txt:
+
 2017-01-30  Simon Fraser  
 
 [iOS] position:fixed inside touch-scrollable overflow is mispositioned


Modified: trunk/LayoutTests/fast/dom/constants-expected.txt (211392 => 211393)

--- trunk/LayoutTests/fast/dom/constants-expected.txt	2017-01-31 00:08:45 UTC (rev 211392)
+++ trunk/LayoutTests/fast/dom/constants-expected.txt	2017-01-31 00:11:49 UTC (rev 211393)
@@ -44,39 +44,7 @@
 PASS: event.CAPTURING_PHASE should be 1 and is.
 PASS: event.AT_TARGET should be 2 and is.
 PASS: event.BUBBLING_PHASE should be 3 and is.
-PASS: event.MOUSEDOWN should be 1 and is.
-PASS: event.MOUSEUP should be 2 and is.
-PASS: event.MOUSEOVER should be 4 and is.
-PASS: event.MOUSEOUT should be 8 and is.
-PASS: event.MOUSEMOVE should be 16 and is.
-PASS: event.MOUSEDRAG should be 32 and is.
-PASS: event.CLICK should be 64 and is.
-PASS: event.DBLCLICK should be 128 and is.
-PASS: event.KEYDOWN should be 256 and is.
-PASS: event.KEYUP should be 512 and is.
-PASS: event.KEYPRESS should be 1024 and is.
-PASS: event.DRAGDROP should be 2048 and is.
-PASS: event.FOCUS should be 4096 and is.
-PASS: event.BLUR should be 8192 and is.
-PASS: event.SELECT should be 16384 and is.
-PASS: event.CHANGE should be 32768 and is.
 PASS: window.Event.NONE should be 0 and is.
 PASS: window.Event.CAPTURING_PHASE should be 1 and is.
 PASS: window.Event.AT_TARGET should be 2 and is.
 PASS: window.Event.BUBBLING_PHASE should be 3 and is.
-PASS: window.Event.MOUSEDOWN should be 1 and is.
-PASS: window.Event.MOUSEUP should be 2 and is.
-PASS: window.Event.MOUSEOVER should be 4 and is.
-PASS: window.Event.MOUSEOUT should be 8 and is.
-PASS: window.Event.MOUSEMOVE should be 16 and is.
-PASS: window.Event.MOUSEDRAG should be 32 and is.
-PASS: window.Event.CLICK should be 64 and is.
-PASS: window.Event.DBLCLICK should be 128 and is.
-PASS: window.Event.KEYDOWN should be 256 and is.
-PASS: window.Event.KEYUP should be 512 and is.
-PASS: window.Event.KEYPRESS should be 1024 and is.
-PASS: window.Event.DRAGDROP should be 2048 and is.
-PASS: window.Event.FOCUS should be 4096 and is.
-PASS: window.Event.BLUR should be 8192 and is.
-PASS: window.Event.SELECT should be 16384 and is.
-PASS: window.Event.CHANGE should be 32768 and is.


Modified: trunk/LayoutTests/fast/dom/constants.html (211392 => 211393)

--- trunk/LayoutTests/fast/dom/constants.html	2017-01-31 00:08:45 UTC (rev 211392)
+++ trunk/LayoutTests/fast/dom/constants.html	2017-01-31 00:11:49 UTC (rev 211393)
@@ -88,43 +88,11 @@
 shouldBe("event.CAPTURING_PHASE", 1);
 shouldBe("event.AT_TARGET", 2);
  

[webkit-changes] [211392] tags/Safari-604.1.5.1/

2017-01-30 Thread matthew_hanson
Title: [211392] tags/Safari-604.1.5.1/








Revision 211392
Author matthew_han...@apple.com
Date 2017-01-30 16:08:45 -0800 (Mon, 30 Jan 2017)


Log Message
New tag.

Added Paths

tags/Safari-604.1.5.1/




Diff




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


[webkit-changes] [211391] trunk/Source/ThirdParty/libwebrtc

2017-01-30 Thread commit-queue
Title: [211391] trunk/Source/ThirdParty/libwebrtc








Revision 211391
Author commit-qu...@webkit.org
Date 2017-01-30 16:06:48 -0800 (Mon, 30 Jan 2017)


Log Message
[WebRTC] Upload a diff of WebKit libwebrtc code and original libwebrtc code
https://bugs.webkit.org/show_bug.cgi?id=167573

Patch by Youenn Fablet  on 2017-01-30
Reviewed by Alex Christensen.

* WebKit/patch-libwebrtc: Added.

Modified Paths

trunk/Source/ThirdParty/libwebrtc/ChangeLog


Added Paths

trunk/Source/ThirdParty/libwebrtc/WebKit/patch-libwebrtc




Diff

Modified: trunk/Source/ThirdParty/libwebrtc/ChangeLog (211390 => 211391)

--- trunk/Source/ThirdParty/libwebrtc/ChangeLog	2017-01-30 23:37:57 UTC (rev 211390)
+++ trunk/Source/ThirdParty/libwebrtc/ChangeLog	2017-01-31 00:06:48 UTC (rev 211391)
@@ -1,3 +1,12 @@
+2017-01-30  Youenn Fablet  
+
+[WebRTC] Upload a diff of WebKit libwebrtc code and original libwebrtc code
+https://bugs.webkit.org/show_bug.cgi?id=167573
+
+Reviewed by Alex Christensen.
+
+* WebKit/patch-libwebrtc: Added.
+
 2017-01-27  Dan Bernstein  
 
 Ignore Xcode’s project.xcworkspace and userdata directories in this new project like we do


Added: trunk/Source/ThirdParty/libwebrtc/WebKit/patch-libwebrtc (0 => 211391)

--- trunk/Source/ThirdParty/libwebrtc/WebKit/patch-libwebrtc	(rev 0)
+++ trunk/Source/ThirdParty/libwebrtc/WebKit/patch-libwebrtc	2017-01-31 00:06:48 UTC (rev 211391)
@@ -0,0 +1,979 @@
+diff --git a/Source/ThirdParty/libwebrtc/Source/webrtc/api/datachannelinterface.h b/Source/ThirdParty/libwebrtc/Source/webrtc/api/datachannelinterface.h
+index ddeb1e5..4b2e232 100644
+--- a/Source/ThirdParty/libwebrtc/Source/webrtc/api/datachannelinterface.h
 b/Source/ThirdParty/libwebrtc/Source/webrtc/api/datachannelinterface.h
+@@ -75,7 +75,7 @@ class DataChannelObserver {
+   //  A data buffer was successfully received.
+   virtual void OnMessage(const DataBuffer& buffer) = 0;
+   // The data channel's buffered_amount has changed.
+-  virtual void OnBufferedAmountChange(uint64_t previous_amount){};
++  virtual void OnBufferedAmountChange(uint64_t){};
+ 
+  protected:
+   virtual ~DataChannelObserver() {}
+diff --git a/Source/ThirdParty/libwebrtc/Source/webrtc/api/jsep.h b/Source/ThirdParty/libwebrtc/Source/webrtc/api/jsep.h
+index e11a2ad..9d7bf9d 100644
+--- a/Source/ThirdParty/libwebrtc/Source/webrtc/api/jsep.h
 b/Source/ThirdParty/libwebrtc/Source/webrtc/api/jsep.h
+@@ -98,7 +98,7 @@ class SessionDescriptionInterface {
+   // Removes the candidates from the description.
+   // Returns the number of candidates removed.
+   virtual size_t RemoveCandidates(
+-  const std::vector& candidates) { return 0; }
++  const std::vector&) { return 0; }
+ 
+   // Returns the number of m- lines in the session description.
+   virtual size_t number_of_mediasections() const = 0;
+diff --git a/Source/ThirdParty/libwebrtc/Source/webrtc/api/mediastreaminterface.h b/Source/ThirdParty/libwebrtc/Source/webrtc/api/mediastreaminterface.h
+index baebad7..91a8705 100644
+--- a/Source/ThirdParty/libwebrtc/Source/webrtc/api/mediastreaminterface.h
 b/Source/ThirdParty/libwebrtc/Source/webrtc/api/mediastreaminterface.h
+@@ -134,9 +134,9 @@ class VideoTrackInterface
+   public rtc::VideoSourceInterface {
+  public:
+   // Register a video sink for this track.
+-  void AddOrUpdateSink(rtc::VideoSinkInterface* sink,
+-   const rtc::VideoSinkWants& wants) override{};
+-  void RemoveSink(rtc::VideoSinkInterface* sink) override{};
++  void AddOrUpdateSink(rtc::VideoSinkInterface*,
++   const rtc::VideoSinkWants&) override {};
++  void RemoveSink(rtc::VideoSinkInterface*) override {};
+ 
+   virtual VideoTrackSourceInterface* GetSource() const = 0;
+ 
+@@ -174,15 +174,15 @@ class AudioSourceInterface : public MediaSourceInterface {
+   // Sets the volume to the source. |volume| is in  the range of [0, 10].
+   // TODO(tommi): This method should be on the track and ideally volume should
+   // be applied in the track in a way that does not affect clones of the track.
+-  virtual void SetVolume(double volume) {}
++  virtual void SetVolume(double) {}
+ 
+   // Registers/unregisters observer to the audio source.
+-  virtual void RegisterAudioObserver(AudioObserver* observer) {}
+-  virtual void UnregisterAudioObserver(AudioObserver* observer) {}
++  virtual void RegisterAudioObserver(AudioObserver*) {}
++  virtual void UnregisterAudioObserver(AudioObserver*) {}
+ 
+   // TODO(tommi): Make pure virtual.
+-  virtual void AddSink(AudioTrackSinkInterface* sink) {}
+-  virtual void RemoveSink(AudioTrackSinkInterface* sink) {}
++  virtual void AddSink(AudioTrackSinkInterface*) {}
++  virtual void RemoveSink(AudioTrackSinkInterface*) {}
+ };
+ 
+ // Interface of the audio processor used by the audio track to collect
+@@ -230,7 +230,7 @@ class AudioTrackInterface : public MediaStreamTrackInterface {
+   // Return true on success, othe

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

2017-01-30 Thread andersca
Title: [211390] trunk/Source/WebKit2








Revision 211390
Author ander...@apple.com
Date 2017-01-30 15:37:57 -0800 (Mon, 30 Jan 2017)


Log Message
Add some more crash reporter information to diagnose a failed mach_msg
https://bugs.webkit.org/show_bug.cgi?id=167610

Reviewed by Dean Jackson.

Include the receive port name as well.

* Platform/IPC/mac/ConnectionMac.mm:
(IPC::readFromMachPort):

Modified Paths

trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/Platform/IPC/mac/ConnectionMac.mm




Diff

Modified: trunk/Source/WebKit2/ChangeLog (211389 => 211390)

--- trunk/Source/WebKit2/ChangeLog	2017-01-30 23:21:57 UTC (rev 211389)
+++ trunk/Source/WebKit2/ChangeLog	2017-01-30 23:37:57 UTC (rev 211390)
@@ -1,3 +1,15 @@
+2017-01-30  Anders Carlsson  
+
+Add some more crash reporter information to diagnose a failed mach_msg
+https://bugs.webkit.org/show_bug.cgi?id=167610
+
+Reviewed by Dean Jackson.
+
+Include the receive port name as well.
+
+* Platform/IPC/mac/ConnectionMac.mm:
+(IPC::readFromMachPort):
+
 2017-01-30  Simon Fraser  
 
 [iOS] position:fixed inside touch-scrollable overflow is mispositioned


Modified: trunk/Source/WebKit2/Platform/IPC/mac/ConnectionMac.mm (211389 => 211390)

--- trunk/Source/WebKit2/Platform/IPC/mac/ConnectionMac.mm	2017-01-30 23:21:57 UTC (rev 211389)
+++ trunk/Source/WebKit2/Platform/IPC/mac/ConnectionMac.mm	2017-01-30 23:37:57 UTC (rev 211390)
@@ -498,7 +498,7 @@
 
 if (kr != MACH_MSG_SUCCESS) {
 #if !ASSERT_DISABLED
-WKSetCrashReportApplicationSpecificInformation((CFStringRef)[NSString stringWithFormat:@"Unhandled error code %x from mach_msg", kr]);
+WKSetCrashReportApplicationSpecificInformation((CFStringRef)[NSString stringWithFormat:@"Unhandled error code %x from mach_msg, receive port is %x", kr, machPort]);
 #endif
 ASSERT_NOT_REACHED();
 return 0;






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


[webkit-changes] [211389] trunk/Tools

2017-01-30 Thread aakash_jain
Title: [211389] trunk/Tools








Revision 211389
Author aakash_j...@apple.com
Date 2017-01-30 15:21:57 -0800 (Mon, 30 Jan 2017)


Log Message
QueueStatusServer should have an explicit timeout for _fetch_url
https://bugs.webkit.org/show_bug.cgi?id=167467

Reviewed by Alexey Proskuryakov.

* Scripts/webkitpy/common/net/statusserver.py:
(StatusServer._fetch_url): Add an explicit timeout of 300s.

Modified Paths

trunk/Tools/ChangeLog
trunk/Tools/Scripts/webkitpy/common/net/statusserver.py




Diff

Modified: trunk/Tools/ChangeLog (211388 => 211389)

--- trunk/Tools/ChangeLog	2017-01-30 23:03:27 UTC (rev 211388)
+++ trunk/Tools/ChangeLog	2017-01-30 23:21:57 UTC (rev 211389)
@@ -1,3 +1,13 @@
+2017-01-30  Aakash Jain  
+
+QueueStatusServer should have an explicit timeout for _fetch_url
+https://bugs.webkit.org/show_bug.cgi?id=167467
+
+Reviewed by Alexey Proskuryakov.
+
+* Scripts/webkitpy/common/net/statusserver.py:
+(StatusServer._fetch_url): Add an explicit timeout of 300s.
+
 2017-01-30  Kocsen Chung  
 
 Add support for Trac instances that host multiple projects.


Modified: trunk/Tools/Scripts/webkitpy/common/net/statusserver.py (211388 => 211389)

--- trunk/Tools/Scripts/webkitpy/common/net/statusserver.py	2017-01-30 23:03:27 UTC (rev 211388)
+++ trunk/Tools/Scripts/webkitpy/common/net/statusserver.py	2017-01-30 23:21:57 UTC (rev 211389)
@@ -166,7 +166,7 @@
 def _fetch_url(self, url):
 # FIXME: This should use NetworkTransaction's 404 handling instead.
 try:
-return urllib2.urlopen(url).read()
+return urllib2.urlopen(url, timeout=300).read()
 except urllib2.HTTPError, e:
 if e.code == 404:
 return None






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


[webkit-changes] [211388] trunk/Tools

2017-01-30 Thread commit-queue
Title: [211388] trunk/Tools








Revision 211388
Author commit-qu...@webkit.org
Date 2017-01-30 15:03:27 -0800 (Mon, 30 Jan 2017)


Log Message
Add support for Trac instances that host multiple projects.
https://bugs.webkit.org/show_bug.cgi?id=167524

Patch by Kocsen Chung  on 2017-01-30
Reviewed by Alexey Proskuryakov.

When multiple projects are hosted on a single Trac instance, the current
behavior will retrieve changesets from all tracked projects.
This patch teaches Trac.js to get project-specific changesets from Trac.
We do this by replacing the parameter `changeset=on` to `repo-projectname=on`
when querying the Trac timeline.

To tell Trac to be aware of multi-project instances we leverage the
`options` parameter when creating a new instance:

new Trac("https://mytrac.com/", { projectIdentifier: "tracProjectName" });

If this option is not provided, the original behaviour will prevail.
Additionally, add corresponding tests.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Trac.js:
(Trac): Reason about new optional parameter 'projectIdentifier'.
(Trac.prototype.revisionURL): Given a projectIdentifier, append it to the end of the URL.
(Trac.prototype._xmlTimelineURL): Given a projectIdentifier,
replace default parameter `changeset=on` with `repo-projectname=on`.
(Trac.prototype._convertCommitInfoElementToObject): Fix missing ';'.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/tests/resources/MockTrac.js:
(MockTrac): Add support for instantiating Trac with a projectIdentifier.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/tests/resources/tests.js:
(setup): Provide a multiple-project MockTrac instance to all test cases for testing.
Add the following tests:
test("revisionURL")
test("revisionURL with Trac Identifier")
test("_xmlTimelineURL")
test("_xmlTimelineURL with Trac Identifier")
(this.view._latestProductiveIteration): Fix missing ';'.

Modified Paths

trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Trac.js
trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/tests/resources/MockTrac.js
trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/tests/resources/tests.js
trunk/Tools/ChangeLog




Diff

Modified: trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Trac.js (211387 => 211388)

--- trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Trac.js	2017-01-30 22:51:52 UTC (rev 211387)
+++ trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Trac.js	2017-01-30 23:03:27 UTC (rev 211388)
@@ -30,7 +30,11 @@
 console.assert(baseURL);
 
 this.baseURL = baseURL;
-this._needsAuthentication = (typeof options === "object") && options[Trac.NeedsAuthentication] === true;
+if (typeof options === "object") {
+this._needsAuthentication = options[Trac.NeedsAuthentication] === true;
+// We expect the projectIdentifier option iff the target Trac instance is hosting multiple repositories && Trac version > 1.0
+this._projectName = options[Trac.ProjectIdentifier];
+}
 
 this.recordedCommits = []; // Will be sorted in ascending order.
 };
@@ -40,6 +44,7 @@
 Trac.NO_MORE_REVISIONS = null;
 
 Trac.NeedsAuthentication = "needsAuthentication";
+Trac.ProjectIdentifier = "projectIdentifier";
 Trac.UpdateInterval = 45000; // 45 seconds
 
 Trac.Event = {
@@ -103,7 +108,10 @@
 
 revisionURL: function(revision)
 {
-return this.baseURL + "changeset/" + encodeURIComponent(revision);
+var url = "" + "changeset/" + encodeURIComponent(revision);
+if (this._projectName)
+url += '/' + encodeURIComponent(this._projectName);
+return url;
 },
 
 _xmlTimelineURL: function(fromDate, toDate)
@@ -112,10 +120,14 @@
 
 var fromDay = new Date(fromDate.getFullYear(), fromDate.getMonth(), fromDate.getDate());
 var toDay = new Date(toDate.getFullYear(), toDate.getMonth(), toDate.getDate());
+var changesetParameter = this._projectName ? "repo-" + this._projectName : "changeset";
 
-return this.baseURL + "timeline?changeset=on&format=rss&max=0" +
-"&from=" +  toDay.toISOString().slice(0, 10) +
-"&daysback=" + ((toDay - fromDay) / 1000 / 60 / 60 / 24);
+return this.baseURL + "timeline?" +
+changesetParameter + "=on" +
+"&format=rss" +
+"&max=0" +
+"&from=" + encodeURIComponent(toDay.toISOString().slice(0, 10)) +
+"&daysback=" + encodeURIComponent((toDay - fromDay) / 1000 / 60 / 60 / 24);
 },
 
 _parseRevisionFromURL: function(url)
@@ -150,7 +162,7 @@
 var location = "";
 if (parsedDescription.firstChild && parsedDescription.firstChild.className === "changes") {
 // We can extract branch information whe

[webkit-changes] [211387] trunk

2017-01-30 Thread simon . fraser
Title: [211387] trunk








Revision 211387
Author simon.fra...@apple.com
Date 2017-01-30 14:51:52 -0800 (Mon, 30 Jan 2017)


Log Message
[iOS] position:fixed inside touch-scrollable overflow is mispositioned
https://bugs.webkit.org/show_bug.cgi?id=167604
Source/WebCore:

rdar://problem/29500273

Reviewed by Zalan Bujtas.

For layers inside touch-scrollable overflow, RenderLayerBacking::computeParentGraphicsLayerRect() needs
to account for the offset from the ancestor compositing layer's origin, to handle scrollable elements with
box-shadow, for example.

Also make the compositing log output a little easier to read.

Test: compositing/scrolling/fixed-inside-scroll.html

* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::computeParentGraphicsLayerRect):
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::logLayerInfo):

Source/WebKit2:

rdar://problem/29500273

Reviewed by Zalan Bujtas.

Make sure we tell m_webPageProxy.computeCustomFixedPositionRect() when visual viewports are enabled.

* UIProcess/ios/RemoteScrollingCoordinatorProxyIOS.mm:
(WebKit::RemoteScrollingCoordinatorProxy::customFixedPositionRect):

LayoutTests:

Reviewed by Zalan Bujtas.

* compositing/scrolling/fixed-inside-scroll-expected.html: Added.
* compositing/scrolling/fixed-inside-scroll.html: Added.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/rendering/RenderLayerBacking.cpp
trunk/Source/WebCore/rendering/RenderLayerCompositor.cpp
trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/UIProcess/ios/RemoteScrollingCoordinatorProxyIOS.mm


Added Paths

trunk/LayoutTests/compositing/scrolling/fixed-inside-scroll-expected.html
trunk/LayoutTests/compositing/scrolling/fixed-inside-scroll.html




Diff

Modified: trunk/LayoutTests/ChangeLog (211386 => 211387)

--- trunk/LayoutTests/ChangeLog	2017-01-30 22:09:01 UTC (rev 211386)
+++ trunk/LayoutTests/ChangeLog	2017-01-30 22:51:52 UTC (rev 211387)
@@ -1,3 +1,13 @@
+2017-01-30  Simon Fraser  
+
+[iOS] position:fixed inside touch-scrollable overflow is mispositioned
+https://bugs.webkit.org/show_bug.cgi?id=167604
+
+Reviewed by Zalan Bujtas.
+
+* compositing/scrolling/fixed-inside-scroll-expected.html: Added.
+* compositing/scrolling/fixed-inside-scroll.html: Added.
+
 2017-01-30  Matt Baker  
 
 Web Inspector: Need some limit on Async Call Stacks for async loops (rAF loops)


Added: trunk/LayoutTests/compositing/scrolling/fixed-inside-scroll-expected.html (0 => 211387)

--- trunk/LayoutTests/compositing/scrolling/fixed-inside-scroll-expected.html	(rev 0)
+++ trunk/LayoutTests/compositing/scrolling/fixed-inside-scroll-expected.html	2017-01-30 22:51:52 UTC (rev 211387)
@@ -0,0 +1,52 @@
+
+
+
+
+  
+html {
+  -webkit-overflow-scrolling: touch;
+}
+
+.scroller {
+height: 500px;
+width: 300px;
+margin: 50px;
+border: 25px solid gray;
+padding: 10px;
+overflow: scroll;
+box-shadow: 0 0 30px black;
+}
+
+.contents {
+width: 400px;
+height: 2000px;
+}
+
+.fixed {
+position: absolute;
+background-color: green;
+left: 70px;
+top: 70px;
+height: 200px;
+width: 200px;
+}
+
+.indicator {
+position: absolute;
+left: 70px;
+top: 70px;
+height: 200px;
+width: 200px;
+background-color: red;
+}
+  
+
+
+
+
+
+
+
+
+
+


Added: trunk/LayoutTests/compositing/scrolling/fixed-inside-scroll.html (0 => 211387)

--- trunk/LayoutTests/compositing/scrolling/fixed-inside-scroll.html	(rev 0)
+++ trunk/LayoutTests/compositing/scrolling/fixed-inside-scroll.html	2017-01-30 22:51:52 UTC (rev 211387)
@@ -0,0 +1,52 @@
+
+
+
+
+  
+html {
+  -webkit-overflow-scrolling: touch;
+}
+
+.scroller {
+height: 500px;
+width: 300px;
+margin: 50px;
+border: 25px solid gray;
+padding: 10px;
+overflow: scroll;
+box-shadow: 0 0 30px black;
+}
+
+.contents {
+width: 400px;
+height: 2000px;
+}
+
+.fixed {
+position: fixed;
+background-color: green;
+left: 70px;
+top: 70px;
+height: 200px;
+width: 200px;
+}
+
+.indicator {
+position: absolute;
+left: 70px;
+top: 70px;
+height: 200px;
+width: 200px;
+background-color: red;
+}
+  
+
+
+
+
+
+
+
+
+
+


Modified: trunk/Source/WebCore/ChangeLog (211386 => 211387)

--- trunk/Source/WebCore/ChangeLog	2017-01-30 22:09:01 UTC (rev 211386)
+++ trunk/Source/WebCore/ChangeLog	2017-01-30 22:51:52 UTC (rev 211387)
@@ -1,3 +1,24 @@
+2017-01-30  Simon Fraser  
+
+[iOS] position:fixed inside touch-scrollable

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

2017-01-30 Thread jer . noble
Title: [211386] trunk/Source/WebCore








Revision 211386
Author jer.no...@apple.com
Date 2017-01-30 14:09:01 -0800 (Mon, 30 Jan 2017)


Log Message
NULL-deref crash at PlatformMediaSession::endInterruption
https://bugs.webkit.org/show_bug.cgi?id=167595

Reviewed by Eric Carlson.

Use the same, NULL-aware forEachSession() iterator rather than iterating over m_sessions directly.

* platform/audio/PlatformMediaSessionManager.cpp:
(WebCore::PlatformMediaSessionManager::beginInterruption):
(WebCore::PlatformMediaSessionManager::endInterruption):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/audio/PlatformMediaSessionManager.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (211385 => 211386)

--- trunk/Source/WebCore/ChangeLog	2017-01-30 22:01:07 UTC (rev 211385)
+++ trunk/Source/WebCore/ChangeLog	2017-01-30 22:09:01 UTC (rev 211386)
@@ -1,3 +1,16 @@
+2017-01-30  Jer Noble  
+
+NULL-deref crash at PlatformMediaSession::endInterruption
+https://bugs.webkit.org/show_bug.cgi?id=167595
+
+Reviewed by Eric Carlson.
+
+Use the same, NULL-aware forEachSession() iterator rather than iterating over m_sessions directly.
+
+* platform/audio/PlatformMediaSessionManager.cpp:
+(WebCore::PlatformMediaSessionManager::beginInterruption):
+(WebCore::PlatformMediaSessionManager::endInterruption):
+
 2017-01-30  Myles C. Maxfield  
 
 Correct spacing regression on inter-element complex path shaping on some fonts


Modified: trunk/Source/WebCore/platform/audio/PlatformMediaSessionManager.cpp (211385 => 211386)

--- trunk/Source/WebCore/platform/audio/PlatformMediaSessionManager.cpp	2017-01-30 22:01:07 UTC (rev 211385)
+++ trunk/Source/WebCore/platform/audio/PlatformMediaSessionManager.cpp	2017-01-30 22:09:01 UTC (rev 211386)
@@ -112,9 +112,9 @@
 LOG(Media, "PlatformMediaSessionManager::beginInterruption");
 
 m_interrupted = true;
-Vector sessions = m_sessions;
-for (auto* session : sessions)
-session->beginInterruption(type);
+forEachSession([type] (PlatformMediaSession& session, size_t) {
+session.beginInterruption(type);
+});
 updateSessionState();
 }
 
@@ -123,9 +123,9 @@
 LOG(Media, "PlatformMediaSessionManager::endInterruption");
 
 m_interrupted = false;
-Vector sessions = m_sessions;
-for (auto* session : sessions)
-session->endInterruption(flags);
+forEachSession([flags] (PlatformMediaSession& session, size_t) {
+session.endInterruption(flags);
+});
 }
 
 void PlatformMediaSessionManager::addSession(PlatformMediaSession& session)






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


[webkit-changes] [211385] trunk

2017-01-30 Thread mattbaker
Title: [211385] trunk








Revision 211385
Author mattba...@apple.com
Date 2017-01-30 14:01:07 -0800 (Mon, 30 Jan 2017)


Log Message
Web Inspector: Need some limit on Async Call Stacks for async loops (rAF loops)
https://bugs.webkit.org/show_bug.cgi?id=165633


Reviewed by Joseph Pecoraro.

Source/_javascript_Core:

This patch limits the memory used by the Inspector backend to store async
stack trace data.

Asynchronous stack traces are stored as a disjoint set of parent pointer
trees. Tree nodes represent asynchronous operations, and hold a copy of
the stack trace at the time the operation was scheduled. Each tree can
be regarded as a set of stack traces, stored as singly linked lists that
share part of their structure (specifically their tails). Traces belonging
to the same tree will at least share a common root. A stack trace begins
at a leaf node and follows the chain of parent pointers to the root of
of the tree. Leaf nodes always contain pending asynchronous calls.

When an asynchronous operation is scheduled with requestAnimationFrame,
setInterval, etc, a node is created containing the current call stack and
some bookkeeping data for the operation. An unique identifier comprised
of an operation type and callback identifier is mapped to the node. If
scheduling the callback was itself the result of an asynchronous call,
the node becomes a child of the node associated with that call, otherwise
it becomes the root of a new tree.

A node is either `pending`, `active`, `dispatched`, or `canceled`. Nodes
start out as pending. After a callback for a pending node is dispatched
the node is marked as such, unless it is a repeating callback such as
setInterval, in which case it remains pending. Once a node is no longer
pending it is removed, as long as it has no children. Since nodes are
reference counted, it is a property of the stack trace tree that nodes
that are no longer pending and have no children pointing to them will be
automatically pruned from the tree.

If an async operation is canceled (e.g. cancelTimeout), the associated
node is marked as such. If the callback is not being dispatched at the
time, and has no children, it is removed.

Because async operations can be chained indefinitely, stack traces are
limited to a maximum depth. The depth of a stack trace is equal to the
sum of the depths of its nodes, with a node's depth equal to the number
of frames in its associated call stack. For any stack trace,

S = { s𝟶, s𝟷, …, s𝑘 }, with endpoints s𝟶, s𝑘
depth(S) = depth(s𝟶) + depth(s𝟷) + … + depth(s𝑘)

A stack trace is truncated when it exceeds the maximum depth. Truncation
occurs on node boundaries, not call frames, consequently the maximum depth
is more of a target than a guarantee:

d = maximum stack trace depth
for all S, depth(S) ≤ d + depth(s𝑘)

Because nodes can belong to multiple stack traces, it may be necessary
to clone the tail of a stack trace being truncated to prevent other traces
from being effected.

* CMakeLists.txt:
* _javascript_Core.xcodeproj/project.pbxproj:
* inspector/AsyncStackTrace.cpp: Added.
(Inspector::AsyncStackTrace::create):
(Inspector::AsyncStackTrace::AsyncStackTrace):
(Inspector::AsyncStackTrace::~AsyncStackTrace):
(Inspector::AsyncStackTrace::isPending):
(Inspector::AsyncStackTrace::isLocked):
(Inspector::AsyncStackTrace::willDispatchAsyncCall):
(Inspector::AsyncStackTrace::didDispatchAsyncCall):
(Inspector::AsyncStackTrace::didCancelAsyncCall):
(Inspector::AsyncStackTrace::buildInspectorObject):
(Inspector::AsyncStackTrace::truncate):
(Inspector::AsyncStackTrace::remove):
* inspector/AsyncStackTrace.h:
* inspector/agents/InspectorDebuggerAgent.cpp:
(Inspector::InspectorDebuggerAgent::didScheduleAsyncCall):
(Inspector::InspectorDebuggerAgent::didCancelAsyncCall):
(Inspector::InspectorDebuggerAgent::willDispatchAsyncCall):
(Inspector::InspectorDebuggerAgent::didDispatchAsyncCall):
(Inspector::InspectorDebuggerAgent::didPause):
(Inspector::InspectorDebuggerAgent::clearAsyncStackTraceData):
(Inspector::InspectorDebuggerAgent::buildAsyncStackTrace): Deleted.
(Inspector::InspectorDebuggerAgent::refAsyncCallData): Deleted.
(Inspector::InspectorDebuggerAgent::derefAsyncCallData): Deleted.
* inspector/agents/InspectorDebuggerAgent.h:
* inspector/protocol/Console.json:

Source/WebInspectorUI:

* Localizations/en.lproj/localizedStrings.js:
Text for "Truncated" marker tree element.

* UserInterface/Models/StackTrace.js:
(WebInspector.StackTrace):
(WebInspector.StackTrace.fromPayload):
(WebInspector.StackTrace.prototype.get truncated):
Plumbing for new Console.StackTrace property `truncated`.

* UserInterface/Views/ThreadTreeElement.css:
(.tree-outline > .item.thread + ol > .item.truncated-call-frames):
(.tree-outline > .item.thread + ol > .item.truncated-call-frames .icon):
Styles for "Truncated" marker tree element.

* UserInterface/Views/ThreadTreeElement.js:
(WebInspector.ThreadTreeElement.prototype.refresh):
Append "Truncated" marker tree element if necess

[webkit-changes] [211383] branches/safari-604.1.5-branch/Source

2017-01-30 Thread matthew_hanson
Title: [211383] branches/safari-604.1.5-branch/Source








Revision 211383
Author matthew_han...@apple.com
Date 2017-01-30 13:02:13 -0800 (Mon, 30 Jan 2017)


Log Message
Versioning.

Modified Paths

branches/safari-604.1.5-branch/Source/_javascript_Core/Configurations/Version.xcconfig
branches/safari-604.1.5-branch/Source/WebCore/Configurations/Version.xcconfig
branches/safari-604.1.5-branch/Source/WebCore/PAL/Configurations/Version.xcconfig
branches/safari-604.1.5-branch/Source/WebInspectorUI/Configurations/Version.xcconfig
branches/safari-604.1.5-branch/Source/WebKit/mac/Configurations/Version.xcconfig
branches/safari-604.1.5-branch/Source/WebKit2/Configurations/Version.xcconfig




Diff

Modified: branches/safari-604.1.5-branch/Source/_javascript_Core/Configurations/Version.xcconfig (211382 => 211383)

--- branches/safari-604.1.5-branch/Source/_javascript_Core/Configurations/Version.xcconfig	2017-01-30 20:43:14 UTC (rev 211382)
+++ branches/safari-604.1.5-branch/Source/_javascript_Core/Configurations/Version.xcconfig	2017-01-30 21:02:13 UTC (rev 211383)
@@ -24,9 +24,9 @@
 MAJOR_VERSION = 604;
 MINOR_VERSION = 1;
 TINY_VERSION = 5;
-MICRO_VERSION = 0;
-NANO_VERSION = 1;
-FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION);
+MICRO_VERSION = 1;
+NANO_VERSION = 0;
+FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION);
 
 // The bundle version and short version string are set based on the current build configuration, see below.
 BUNDLE_VERSION = $(BUNDLE_VERSION_$(CONFIGURATION));


Modified: branches/safari-604.1.5-branch/Source/WebCore/Configurations/Version.xcconfig (211382 => 211383)

--- branches/safari-604.1.5-branch/Source/WebCore/Configurations/Version.xcconfig	2017-01-30 20:43:14 UTC (rev 211382)
+++ branches/safari-604.1.5-branch/Source/WebCore/Configurations/Version.xcconfig	2017-01-30 21:02:13 UTC (rev 211383)
@@ -24,9 +24,9 @@
 MAJOR_VERSION = 604;
 MINOR_VERSION = 1;
 TINY_VERSION = 5;
-MICRO_VERSION = 0;
-NANO_VERSION = 1;
-FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION);
+MICRO_VERSION = 1;
+NANO_VERSION = 0;
+FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION);
 
 // The bundle version and short version string are set based on the current build configuration, see below.
 BUNDLE_VERSION = $(BUNDLE_VERSION_$(CONFIGURATION));


Modified: branches/safari-604.1.5-branch/Source/WebCore/PAL/Configurations/Version.xcconfig (211382 => 211383)

--- branches/safari-604.1.5-branch/Source/WebCore/PAL/Configurations/Version.xcconfig	2017-01-30 20:43:14 UTC (rev 211382)
+++ branches/safari-604.1.5-branch/Source/WebCore/PAL/Configurations/Version.xcconfig	2017-01-30 21:02:13 UTC (rev 211383)
@@ -24,9 +24,9 @@
 MAJOR_VERSION = 604;
 MINOR_VERSION = 1;
 TINY_VERSION = 5;
-MICRO_VERSION = 0;
-NANO_VERSION = 1;
-FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION);
+MICRO_VERSION = 1;
+NANO_VERSION = 0;
+FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION);
 
 // The bundle version and short version string are set based on the current build configuration, see below.
 BUNDLE_VERSION = $(BUNDLE_VERSION_$(CONFIGURATION));


Modified: branches/safari-604.1.5-branch/Source/WebInspectorUI/Configurations/Version.xcconfig (211382 => 211383)

--- branches/safari-604.1.5-branch/Source/WebInspectorUI/Configurations/Version.xcconfig	2017-01-30 20:43:14 UTC (rev 211382)
+++ branches/safari-604.1.5-branch/Source/WebInspectorUI/Configurations/Version.xcconfig	2017-01-30 21:02:13 UTC (rev 211383)
@@ -1,9 +1,9 @@
 MAJOR_VERSION = 604;
 MINOR_VERSION = 1;
 TINY_VERSION = 5;
-MICRO_VERSION = 0;
-NANO_VERSION = 1;
-FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION);
+MICRO_VERSION = 1;
+NANO_VERSION = 0;
+FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION);
 
 // The system version prefix is based on the current system version.
 SYSTEM_VERSION_PREFIX[sdk=iphone*] = 8;


Modified: branches/safari-604.1.5-branch/Source/WebKit/mac/Configurations/Version.xcconfig (211382 => 211383)

--- branches/safari-604.1.5-branch/Source/WebKit/mac/Configurations/Version.xcconfig	2017-01-30 20:43:14 UTC (rev 211382)
+++ branches/safari-604.1.5-branch/Source/WebKit/mac/Configurations/Version.xcconfig	2017-01-30 21:02:13 UTC (rev 211383)
@@ -24,9 +24,9 @@
 MAJOR_VERSION = 604;
 MINOR_VERSION = 1;
 TINY_VERSION = 5;
-MICRO_VERSION = 0;
-NANO_VERSION = 1;
-FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION);
+MICRO_VERSION = 1;
+NANO_VERSION = 0;
+FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION);
 
 // The bundle version and short version string are set based on the current build configuration, see below.
 BUNDLE_VERSION = $(BUNDLE_VERSION_$(CONFIGURATION));


Modified: 

[webkit-changes] [211384] branches/safari-604.1.5-branch/Source/WebKit/mac

2017-01-30 Thread matthew_hanson
Title: [211384] branches/safari-604.1.5-branch/Source/WebKit/mac








Revision 211384
Author matthew_han...@apple.com
Date 2017-01-30 13:02:16 -0800 (Mon, 30 Jan 2017)


Log Message
Merge r211323. rdar://problem/30107776

Modified Paths

branches/safari-604.1.5-branch/Source/WebKit/mac/ChangeLog
branches/safari-604.1.5-branch/Source/WebKit/mac/WebCoreSupport/WebDragClient.mm
branches/safari-604.1.5-branch/Source/WebKit/mac/WebView/WebView.mm




Diff

Modified: branches/safari-604.1.5-branch/Source/WebKit/mac/ChangeLog (211383 => 211384)

--- branches/safari-604.1.5-branch/Source/WebKit/mac/ChangeLog	2017-01-30 21:02:13 UTC (rev 211383)
+++ branches/safari-604.1.5-branch/Source/WebKit/mac/ChangeLog	2017-01-30 21:02:16 UTC (rev 211384)
@@ -1,3 +1,30 @@
+2017-01-30  Matthew Hanson  
+
+Merge r211323. rdar://problem/30107776
+
+2017-01-27  Wenson Hsieh  
+
+[WK1] Do not prevent the drag client from initializing on Mac
+https://bugs.webkit.org/show_bug.cgi?id=167541
+
+Reviewed by Dan Bernstein.
+
+Fixes fallout from r211192. To ensure compability with WebKit clients, we need to ensure that WebDragClient is
+initialized everywhere when creating a WebView. Stub out method implementations as no-ops for non-Mac platforms.
+This caused certain clients, such as Mail, to crash when a webView closes due to  null dereference.
+
+* WebCoreSupport/WebDragClient.mm:
+(WebDragClient::WebDragClient):
+(WebDragClient::actionMaskForDrag):
+(WebDragClient::willPerformDragDestinationAction):
+(WebDragClient::dragSourceActionMaskForPoint):
+(WebDragClient::willPerformDragSourceAction):
+(WebDragClient::startDrag):
+(WebDragClient::declareAndWriteDragImage):
+(WebDragClient::declareAndWriteAttachment):
+* WebView/WebView.mm:
+(-[WebView initSimpleHTMLDocumentWithStyle:frame:preferences:groupName:]):
+
 2017-01-26  Chris Dumez  
 
 Crash when navigating back to a page in PacheCache when one of its frames has been removed


Modified: branches/safari-604.1.5-branch/Source/WebKit/mac/WebCoreSupport/WebDragClient.mm (211383 => 211384)

--- branches/safari-604.1.5-branch/Source/WebKit/mac/WebCoreSupport/WebDragClient.mm	2017-01-30 21:02:13 UTC (rev 211383)
+++ branches/safari-604.1.5-branch/Source/WebKit/mac/WebCoreSupport/WebDragClient.mm	2017-01-30 21:02:16 UTC (rev 211384)
@@ -25,7 +25,7 @@
 
 #import "WebDragClient.h"
 
-#if ENABLE(DRAG_SUPPORT) && PLATFORM(MAC)
+#if ENABLE(DRAG_SUPPORT)
 
 #import "DOMElementInternal.h"
 #import "WebArchive.h"
@@ -36,11 +36,15 @@
 #import "WebHTMLViewPrivate.h"
 #import "WebKitLogging.h"
 #import "WebKitNSStringExtras.h"
-#import "WebNSPasteboardExtras.h"
 #import "WebNSURLExtras.h"
 #import "WebUIDelegate.h"
 #import "WebUIDelegatePrivate.h"
 #import "WebViewInternal.h"
+
+#if PLATFORM(MAC)
+#import "WebNSPasteboardExtras.h"
+#endif
+
 #import 
 #import 
 #import 
@@ -57,8 +61,11 @@
 WebDragClient::WebDragClient(WebView* webView)
 : m_webView(webView) 
 {
+UNUSED_PARAM(m_webView);
 }
 
+#if PLATFORM(MAC)
+
 static WebHTMLView *getTopHTMLView(Frame* frame)
 {
 ASSERT(frame);
@@ -138,9 +145,45 @@
 }
 #endif
 
+#else
+
+WebCore::DragDestinationAction WebDragClient::actionMaskForDrag(const WebCore::DragData&)
+{
+return DragDestinationActionNone;
+}
+
+void WebDragClient::willPerformDragDestinationAction(WebCore::DragDestinationAction, const WebCore::DragData&)
+{
+}
+
+WebCore::DragSourceAction WebDragClient::dragSourceActionMaskForPoint(const IntPoint&)
+{
+return DragSourceActionNone;
+}
+
+void WebDragClient::willPerformDragSourceAction(WebCore::DragSourceAction, const WebCore::IntPoint&, WebCore::DataTransfer&)
+{
+}
+
+void WebDragClient::startDrag(DragImageRef, const IntPoint&, const IntPoint&, DataTransfer&, Frame&, bool)
+{
+}
+
+void WebDragClient::declareAndWriteDragImage(const String&, Element&, const URL&, const String&, WebCore::Frame*)
+{
+}
+
+#if ENABLE(ATTACHMENT_ELEMENT)
+void WebDragClient::declareAndWriteAttachment(const String&, Element&, const URL&, const String&, WebCore::Frame*)
+{
+}
+#endif
+
+#endif
+
 void WebDragClient::dragControllerDestroyed() 
 {
 delete this;
 }
 
-#endif // ENABLE(DRAG_SUPPORT) && PLATFORM(MAC)
+#endif // ENABLE(DRAG_SUPPORT)


Modified: branches/safari-604.1.5-branch/Source/WebKit/mac/WebView/WebView.mm (211383 => 211384)

--- branches/safari-604.1.5-branch/Source/WebKit/mac/WebView/WebView.mm	2017-01-30 21:02:13 UTC (rev 211383)
+++ branches/safari-604.1.5-branch/Source/WebKit/mac/WebView/WebView.mm	2017-01-30 21:02:16 UTC (rev 211384)
@@ -1609,7 +1609,7 @@
 makeUniqueRef()
 );
 pageConfiguration.chromeClient = new WebChromeClientIOS(self);
-#if ENABLE(DRAG_SUPPORT) && PLATFORM(MAC)
+#if ENABLE(DRAG_SUPPORT)
 pageConfiguration.dragClient = new WebDragClient(self);
 #endif
 







[webkit-changes] [211382] trunk

2017-01-30 Thread mmaxfield
Title: [211382] trunk








Revision 211382
Author mmaxfi...@apple.com
Date 2017-01-30 12:43:14 -0800 (Mon, 30 Jan 2017)


Log Message
Correct spacing regression on inter-element complex path shaping on some fonts
https://bugs.webkit.org/show_bug.cgi?id=166013

Reviewed by Simon Fraser.

Source/WebCore:

This patch brings the implementation of ComplexTextController in-line with the
design at https://trac.webkit.org/wiki/ComplexTextController. Previously,
ComplexTextController had a few problems:
- The total width computed by ComplexTextController didn't match the width if
you iterated over the entire string and added up the advances
- FontCascade::getGlyphsAndAdvancesForComplexText() tried to compensate for
the above by construing the concepts of paint advances as distinct from layout
advances
- Initial advances were considered part of layout sometimes and part of painting
other times, depending on which function reports the information
- For RTL runs, the wrong origin was added to the initial advance, and the origin
should have been subtracted instead of added

This patch exhaustively updates every function in ComplexTextController to be
consistent with the design linked to above. This design solves all of these
problems.

Tests: ComplexTextControllerTest.InitialAdvanceWithLeftRunInRTL
   ComplexTextControllerTest.InitialAdvanceInRTL
   ComplexTextControllerTest.InitialAdvanceWithLeftRunInLTR
   ComplexTextControllerTest.InitialAdvanceInLTR
   ComplexTextControllerTest.InitialAdvanceInRTLNoOrigins
   ComplexTextControllerTest.LeadingExpansion
   ComplexTextControllerTest.VerticalAdvances

* platform/graphics/GlyphBuffer.h:
(WebCore::GlyphBuffer::setLeadingExpansion): Deleted. No longer necessary.
(WebCore::GlyphBuffer::leadingExpansion): Deleted. Ditto.
* platform/graphics/cocoa/FontCascadeCocoa.mm:
(WebCore::FontCascade::adjustSelectionRectForComplexText): Removed use of
unnecessary leadingExpansion().
(WebCore::FontCascade::getGlyphsAndAdvancesForComplexText): This function needs
to compute paint advances, which means that it can't base this information off
of layout advances. This function uses the trick mentioned at the end of the
above link to compute the paint offset of an arbitrary glyph in the middle of
an RTL run.
* platform/graphics/mac/ComplexTextController.cpp:
(WebCore::ComplexTextController::computeExpansionOpportunity): Refactored for
testing.
(WebCore::ComplexTextController::ComplexTextController): Ditto.
(WebCore::ComplexTextController::finishConstruction): Ditto.
(WebCore::ComplexTextController::offsetForPosition): This function operates on
layout advances, and the initial layout advance is already added into the
m_adjustedBaseAdvances vector by adjustGlyphsAndAdvances(). Therefore, there is
no need to add it again here.
(WebCore::ComplexTextController::advance): This function had completely busted
logic about the relationship between initial advances and the first origin in
each run. Because of the fortunate choice of only representing layout advances
in m_adjustedBaseAdvances, this entire block can be removed and the raw paint
initial advance can be reported to the GlyphBuffer. Later in the function, we
have to update the logic about how to compute a paint advance given a layout
advance and some origins. In particular, there are two tricky pieces here: 1.
The layout advance for the first glyph is equal to (initial advance - first
origin + first Core Text advance, so computing the paint offset must cancel out
the initial layout offset, and 2. the last paint advance in a run must actually
end up at the position of the first glyph in the next run, so the next run's
initial advance must be queried.
(WebCore::ComplexTextController::adjustGlyphsAndAdvances): Previously, we
represented an initial advance of a successive run by just adding it to the
previous run's last advance. However, this is incompatible with the new model
presented in the link above, so we remove this section. We also have to add in
the logic that the layout advance for the first glyph is equal to the formula
presented above.
* platform/graphics/mac/ComplexTextController.h:
(WebCore::ComplexTextController::ComplexTextRun::initialAdvance): Adjust comment
to reflect reality.
(WebCore::ComplexTextController::leadingExpansion): Deleted.

Tools:

Unskip existing tests and make some new tests:
- Testing complex text with no origins
- Testing initial expansions
- Testing the sign of vertical advances

* TestWebKitAPI/Tests/WebCore/ComplexTextController.cpp:
(TestWebKitAPI::TEST_F):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/graphics/GlyphBuffer.h
trunk/Source/WebCore/platform/graphics/cocoa/FontCascadeCocoa.mm
trunk/Source/WebCore/platform/graphics/mac/ComplexTextController.cpp
trunk/Source/WebCore/platform/graphics/mac/ComplexTextController.h
trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/Tests/WebCore/ComplexTextController.cpp




Diff

Modified: trunk/Source/WebCore

[webkit-changes] [211381] trunk

2017-01-30 Thread ryanhaddad
Title: [211381] trunk








Revision 211381
Author ryanhad...@apple.com
Date 2017-01-30 12:08:29 -0800 (Mon, 30 Jan 2017)


Log Message
Unreviewed, rolling out r211345.

The LayoutTest for this change is failing an assertion.

Reverted changeset:

"Web Inspector: Need some limit on Async Call Stacks for async
loops (rAF loops)"
https://bugs.webkit.org/show_bug.cgi?id=165633
http://trac.webkit.org/changeset/211345

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/inspector/debugger/async-stack-trace-expected.txt
trunk/LayoutTests/inspector/debugger/async-stack-trace.html
trunk/Source/_javascript_Core/CMakeLists.txt
trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/_javascript_Core.xcodeproj/project.pbxproj
trunk/Source/_javascript_Core/inspector/agents/InspectorDebuggerAgent.cpp
trunk/Source/_javascript_Core/inspector/agents/InspectorDebuggerAgent.h
trunk/Source/_javascript_Core/inspector/protocol/Console.json
trunk/Source/WebInspectorUI/ChangeLog
trunk/Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js
trunk/Source/WebInspectorUI/UserInterface/Models/StackTrace.js
trunk/Source/WebInspectorUI/UserInterface/Views/ThreadTreeElement.css
trunk/Source/WebInspectorUI/UserInterface/Views/ThreadTreeElement.js
trunk/Source/WebInspectorUI/Versions/Inspector-iOS-10.3.json


Removed Paths

trunk/LayoutTests/inspector/debugger/resources/log-active-stack-trace.js
trunk/Source/_javascript_Core/inspector/AsyncStackTrace.cpp
trunk/Source/_javascript_Core/inspector/AsyncStackTrace.h




Diff

Modified: trunk/LayoutTests/ChangeLog (211380 => 211381)

--- trunk/LayoutTests/ChangeLog	2017-01-30 20:05:34 UTC (rev 211380)
+++ trunk/LayoutTests/ChangeLog	2017-01-30 20:08:29 UTC (rev 211381)
@@ -1,3 +1,16 @@
+2017-01-30  Ryan Haddad  
+
+Unreviewed, rolling out r211345.
+
+The LayoutTest for this change is failing an assertion.
+
+Reverted changeset:
+
+"Web Inspector: Need some limit on Async Call Stacks for async
+loops (rAF loops)"
+https://bugs.webkit.org/show_bug.cgi?id=165633
+http://trac.webkit.org/changeset/211345
+
 2017-01-30  Simon Fraser  
 
 Fixed elements should not rubber-band in WK2, nor remain at negative offsets


Modified: trunk/LayoutTests/inspector/debugger/async-stack-trace-expected.txt (211380 => 211381)

--- trunk/LayoutTests/inspector/debugger/async-stack-trace-expected.txt	2017-01-30 20:05:34 UTC (rev 211380)
+++ trunk/LayoutTests/inspector/debugger/async-stack-trace-expected.txt	2017-01-30 20:08:29 UTC (rev 211381)
@@ -6,64 +6,57 @@
 PAUSE #1
 CALL STACK:
 0: [F] pauseThenFinishTest
-ASYNC CALL STACK:
-1: --- requestAnimationFrame ---
-2: [F] testRequestAnimationFrame
-3: [P] Global Code
+-- [N] requestAnimationFrame 
+1: [F] testRequestAnimationFrame
+2: [P] Global Code
 
 -- Running test case: CheckAsyncStackTrace.SetTimeout
 PAUSE #1
 CALL STACK:
 0: [F] pauseThenFinishTest
-ASYNC CALL STACK:
-1: --- setTimeout ---
-2: [F] testSetTimeout
-3: [P] Global Code
+-- [N] setTimeout 
+1: [F] testSetTimeout
+2: [P] Global Code
 
 -- Running test case: CheckAsyncStackTrace.SetInterval
 PAUSE #1
 CALL STACK:
 0: [F] intervalFired
-ASYNC CALL STACK:
-1: --- setInterval ---
-2: [F] testSetInterval
-3: [P] Global Code
+-- [N] setInterval 
+1: [F] testSetInterval
+2: [P] Global Code
 PAUSE #2
 CALL STACK:
 0: [F] intervalFired
-ASYNC CALL STACK:
-1: --- setInterval ---
-2: [F] testSetInterval
-3: [P] Global Code
+-- [N] setInterval 
+1: [F] testSetInterval
+2: [P] Global Code
 PAUSE #3
 CALL STACK:
 0: [F] intervalFired
-ASYNC CALL STACK:
-1: --- setInterval ---
-2: [F] testSetInterval
-3: [P] Global Code
+-- [N] setInterval 
+1: [F] testSetInterval
+2: [P] Global Code
 
 -- Running test case: CheckAsyncStackTrace.ChainedRequestAnimationFrame
 PAUSE #1
 CALL STACK:
 0: [F] pauseThenFinishTest
-ASYNC CALL STACK:
-1: --- requestAnimationFrame ---
-2: [F] testRequestAnimationFrame
-3: --- requestAnimationFrame ---
-4: [F] testChainedRequestAnimationFrame
-5: [P] Global Code
+-- [N] requestAnimationFrame 
+1: [F] testRequestAnimationFrame
+-- [N] requestAnimationFrame 
+2: [F] testChainedRequestAnimationFrame
+3: [P] Global Code
 
 -- Running test case: CheckAsyncStackTrace.ReferenceCounting
 PAUSE #1
 CALL STACK:
 0: [F] pauseThenFinishTest
-ASYNC CALL STACK:
-1: --- setTimeout ---
-2: [F] intervalFired
-3: --- setInterval ---
-4: [F] testReferenceCounting
-5: [P] Global Code
+-- [N] setTimeout 
+1: [F] intervalFired
+-- [N] setInterval 
+2: [F] testReferenceCounting
+3: [P] Global Code
 -- Running test setup.
 Save DebuggerManager.asyncStackTraceDepth
 
@@ -74,44 +67,8 @@
 -- Running test setup.
 Save DebuggerManager.asyncStackTraceDepth
 
--- Running test case: AsyncStackTrace.ForceTruncationOnCallStackBoundary
-Set Debugger.asyncStackTraceDepth equal to 4
-PASS: Non-root StackTrace should not be truncated.
-PASS: Non-root StackTrace should not be truncated.
-PASS: Stack

[webkit-changes] [211380] trunk/Tools

2017-01-30 Thread clopez
Title: [211380] trunk/Tools








Revision 211380
Author clo...@igalia.com
Date 2017-01-30 12:05:34 -0800 (Mon, 30 Jan 2017)


Log Message
[GTK][EFL] Avoid using a thin directory to create the built product on the archive-built-product step.
https://bugs.webkit.org/show_bug.cgi?id=167596

Reviewed by Daniel Bates.

We avoid needing a thin directory by invoking the zip program with
the list of directories from the build directory to be zipped,
and by using the zip feature to exclude files matching a pattern.

* BuildSlaveSupport/built-product-archive:
(copyBuildFiles):
(createZipFromList):
(archiveBuiltProduct):

Modified Paths

trunk/Tools/BuildSlaveSupport/built-product-archive
trunk/Tools/ChangeLog




Diff

Modified: trunk/Tools/BuildSlaveSupport/built-product-archive (211379 => 211380)

--- trunk/Tools/BuildSlaveSupport/built-product-archive	2017-01-30 19:46:40 UTC (rev 211379)
+++ trunk/Tools/BuildSlaveSupport/built-product-archive	2017-01-30 20:05:34 UTC (rev 211380)
@@ -24,6 +24,7 @@
 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
 # THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
+import errno
 import optparse
 import os
 import shutil
@@ -97,6 +98,25 @@
 shutil.copytree(source, destination, ignore=shutil.ignore_patterns(*patterns))
 
 
+def createZipFromList(listToZip, configuration, excludePattern=None):
+archiveDir = os.path.abspath(os.path.join(os.path.dirname(__file__), '..', '..', 'WebKitBuild'))
+archiveFile = os.path.join(archiveDir, configuration + '.zip')
+
+try:
+os.unlink(archiveFile)
+except OSError, e:
+if e.errno != errno.ENOENT:
+raise
+
+if sys.platform.startswith('linux'):
+zipCommand = ['zip', '-y', '-r', archiveFile] + listToZip
+if excludePattern:
+zipCommand += ['-x', excludePattern]
+return subprocess.call(zipCommand, cwd=_configurationBuildDirectory)
+
+raise NotImplementedError('Unsupported platform: {platform}'.format(platform=sys.platform))
+
+
 def createZipManually(directoryToZip, archiveFile):
 archiveZip = zipfile.ZipFile(archiveFile, "w")
 
@@ -115,7 +135,7 @@
 try:
 os.unlink(archiveFile)
 except OSError, e:
-if e.errno != 2:
+if e.errno != errno.ENOENT:
 raise
 
 if sys.platform == 'darwin':
@@ -183,32 +203,17 @@
 shutil.rmtree(thinDirectory)
 
 elif platform == 'gtk' or platform == 'efl':
-thinDirectory = os.path.join(_configurationBuildDirectory, 'thin')
-
-removeDirectoryIfExists(thinDirectory)
-os.mkdir(thinDirectory)
-
-neededDirectories = ["bin", "lib"]
-
+# On GTK+/EFL we don't need the intermediate step of creating a thinDirectory
+# to be compressed in a ZIP file, because we can create the ZIP directly.
+# This is faster and requires less disk resources.
+neededDirectories = ['bin', 'lib']
 # When debug fission is enabled the directories below contain dwo files
 # with the debug information needed to generate backtraces with GDB.
-for objectDir in ["Tools", "Source"]:
+for objectDir in ['Tools', 'Source']:
 if dirContainsdwo(objectDir):
 neededDirectories.append(objectDir)
 
-for dirname in neededDirectories:
-fromDir = os.path.join(_configurationBuildDirectory, dirname, '.')
-toDir = os.path.join(thinDirectory, dirname)
-os.makedirs(toDir)
-if subprocess.call('cp -R %s %s' % (fromDir, toDir), shell=True):
-return 1
-
-for root, dirs, files in os.walk(thinDirectory, topdown=False):
-for name in files:
-if name.endswith(".o"):
-os.remove(os.path.join(root, name))
-
-if createZip(thinDirectory, configuration):
+if createZipFromList(neededDirectories, configuration, excludePattern='*.o'):
 return 1
 
 def unzipArchive(directoryToExtractTo, configuration):


Modified: trunk/Tools/ChangeLog (211379 => 211380)

--- trunk/Tools/ChangeLog	2017-01-30 19:46:40 UTC (rev 211379)
+++ trunk/Tools/ChangeLog	2017-01-30 20:05:34 UTC (rev 211380)
@@ -1,3 +1,19 @@
+2017-01-30  Carlos Alberto Lopez Perez  
+
+[GTK][EFL] Avoid using a thin directory to create the built product on the archive-built-product step.
+https://bugs.webkit.org/show_bug.cgi?id=167596
+
+Reviewed by Daniel Bates.
+
+We avoid needing a thin directory by invoking the zip program with
+the list of directories from the build directory to be zipped,
+and by using the zip feature to exclude files matching a pattern.
+
+* BuildSlaveSupport/built-product-archive:
+(copyBuildFiles):
+(createZipFromList):
+(archiveBuiltProduct):
+
 2017-01-30  Jonathan Bedard  
 
 Use simctl instead of LayoutTestRelay






___

[webkit-changes] [211379] trunk

2017-01-30 Thread simon . fraser
Title: [211379] trunk








Revision 211379
Author simon.fra...@apple.com
Date 2017-01-30 11:46:40 -0800 (Mon, 30 Jan 2017)


Log Message
Fixed elements should not rubber-band in WK2, nor remain at negative offsets
https://bugs.webkit.org/show_bug.cgi?id=167484
rdar://problem/29453068

Reviewed by Dean Jackson.
Source/WebCore:

There were various problems with the layout rect computation:
1. It ignored the scrollBehaviorForFixedElements() which we use to avoid rubber-banding fixed
   elements in WK2, but allow in WK1, so make use of that.
2. Sometimes layouts/paints of fixed elements would be triggered when coalesced calls to
   AsyncScrollingCoordinator::scheduleUpdateScrollPositionAfterAsyncScroll() failed to
   copy the layoutViewportOrigin to the scheduled update.
3. The layout viewport could be left with a negative top/left after rubber-banding.

Also add a way to do unconstrained scrollTo(), so that a test can call window.scrollTo(-10, -10) to
simulate rubberbanding.

Tests: fast/visual-viewport/rubberbanding-viewport-rects-header-footer.html
   fast/visual-viewport/rubberbanding-viewport-rects.html

* page/FrameView.cpp:
(WebCore::FrameView::computeLayoutViewportOrigin): Handle ScrollBehaviorForFixedElements, incorporating it
into logic that clamps layoutViewportOrigin between min/max when rubberbanding is not allowed, or not in progress.
(WebCore::FrameView::updateLayoutViewport): Pass in scrollBehaviorForFixedElements().
(WebCore::FrameView::visibleDocumentRect): The clamping here was preventing the visible rect from
escaping the document bounds, which caused fixed elements to bounce with rubber-banding, so remove the clamping,
and fix the logic to allow rubber-banding while taking headers and footers into account.
* page/FrameView.h:
* page/scrolling/AsyncScrollingCoordinator.cpp:
(WebCore::AsyncScrollingCoordinator::scheduleUpdateScrollPositionAfterAsyncScroll): layoutViewportOrigin has to
be pushed onto the scheduled update, just like scroll position.
* page/scrolling/ScrollingTreeFrameScrollingNode.cpp:
(WebCore::ScrollingTreeFrameScrollingNode::layoutViewportForScrollPosition): Pass in m_behaviorForFixed.
* platform/ScrollView.cpp:
(WebCore::ScrollView::ScrollView):
(WebCore::ScrollView::adjustScrollPositionWithinRange):
(WebCore::ScrollView::setScrollOffset):
* platform/ScrollView.h:
(WebCore::ScrollView::setAllowsUnclampedScrollPositionForTesting):
(WebCore::ScrollView::allowsUnclampedScrollPosition):
* testing/InternalSettings.cpp:
(WebCore::InternalSettings::setAllowUnclampedScrollPosition):
* testing/InternalSettings.h:
* testing/InternalSettings.idl:

Source/WebKit2:

Pass in StickToViewportBounds as we did before visual viewports.

* UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::computeCustomFixedPositionRect):

LayoutTests:

Add two tests that use internals.settings.setAllowUnclampedScrollPosition(true) and then
over-scroll to simulator rubber-banding, dumping viewport rects.

setAllowUnclampedScrollPosition() only works in WebKit2, so skip the tests elsewhere.

* TestExpectations:
* fast/visual-viewport/rubberbanding-viewport-rects-expected.txt: Added.
* fast/visual-viewport/rubberbanding-viewport-rects-header-footer-expected.txt: Added.
* fast/visual-viewport/rubberbanding-viewport-rects-header-footer.html: Added.
* fast/visual-viewport/rubberbanding-viewport-rects.html: Added.
* platform/ios-simulator-wk2/TestExpectations:
* platform/ios-simulator-wk2/fast/visual-viewport/rubberbanding-viewport-rects-expected.txt: Added.
* platform/ios-simulator-wk2/fast/visual-viewport/rubberbanding-viewport-rects-header-footer-expected.txt: Added.
* platform/mac-wk2/TestExpectations:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/TestExpectations
trunk/LayoutTests/platform/ios-simulator-wk2/TestExpectations
trunk/LayoutTests/platform/mac-wk2/TestExpectations
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/page/FrameView.cpp
trunk/Source/WebCore/page/FrameView.h
trunk/Source/WebCore/page/scrolling/AsyncScrollingCoordinator.cpp
trunk/Source/WebCore/page/scrolling/ScrollingTreeFrameScrollingNode.cpp
trunk/Source/WebCore/platform/ScrollView.cpp
trunk/Source/WebCore/platform/ScrollView.h
trunk/Source/WebCore/testing/InternalSettings.cpp
trunk/Source/WebCore/testing/InternalSettings.h
trunk/Source/WebCore/testing/InternalSettings.idl
trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/UIProcess/ios/WebPageProxyIOS.mm


Added Paths

trunk/LayoutTests/fast/visual-viewport/rubberbanding-viewport-rects-expected.txt
trunk/LayoutTests/fast/visual-viewport/rubberbanding-viewport-rects-header-footer-expected.txt
trunk/LayoutTests/fast/visual-viewport/rubberbanding-viewport-rects-header-footer.html
trunk/LayoutTests/fast/visual-viewport/rubberbanding-viewport-rects.html
trunk/LayoutTests/platform/ios-simulator-wk2/fast/visual-viewport/rubberbanding-viewport-rects-expected.txt
trunk/LayoutTests/platform/ios-simulator-wk2/fast/visual-viewport/rubberbanding-viewport-rects-heade

[webkit-changes] [211378] branches/safari-604.1.5-branch/

2017-01-30 Thread matthew_hanson
Title: [211378] branches/safari-604.1.5-branch/








Revision 211378
Author matthew_han...@apple.com
Date 2017-01-30 11:40:48 -0800 (Mon, 30 Jan 2017)


Log Message
New Branch.

Added Paths

branches/safari-604.1.5-branch/




Diff




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


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

2017-01-30 Thread wenson_hsieh
Title: [211377] trunk/Source/WebCore








Revision 211377
Author wenson_hs...@apple.com
Date 2017-01-30 10:59:36 -0800 (Mon, 30 Jan 2017)


Log Message
Web content process crashes when initiating a drag on a very large image
https://bugs.webkit.org/show_bug.cgi?id=167564

Reviewed by Beth Dakin.

If we begin dragging an image element that is too large to show the cached image for, we will show an image file
icon instead of the cached image. This may return null if createDragImageIconForCachedImageFilename is
unimplemented, so in the meantime, we should not assume that dragImage will always exist before calling into
doSystemDrag in doImageDrag and bail from the drag operation if that is the case.

* page/DragController.cpp:
(WebCore::DragController::doImageDrag):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/page/DragController.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (211376 => 211377)

--- trunk/Source/WebCore/ChangeLog	2017-01-30 18:45:21 UTC (rev 211376)
+++ trunk/Source/WebCore/ChangeLog	2017-01-30 18:59:36 UTC (rev 211377)
@@ -1,3 +1,18 @@
+2017-01-30  Wenson Hsieh  
+
+Web content process crashes when initiating a drag on a very large image
+https://bugs.webkit.org/show_bug.cgi?id=167564
+
+Reviewed by Beth Dakin.
+
+If we begin dragging an image element that is too large to show the cached image for, we will show an image file
+icon instead of the cached image. This may return null if createDragImageIconForCachedImageFilename is
+unimplemented, so in the meantime, we should not assume that dragImage will always exist before calling into
+doSystemDrag in doImageDrag and bail from the drag operation if that is the case.
+
+* page/DragController.cpp:
+(WebCore::DragController::doImageDrag):
+
 2017-01-30  Chris Dumez  
 
 Update DiagnosticLoggingClient::logDiagnosticMessageWithValue() to take in the value as a double


Modified: trunk/Source/WebCore/page/DragController.cpp (211376 => 211377)

--- trunk/Source/WebCore/page/DragController.cpp	2017-01-30 18:45:21 UTC (rev 211376)
+++ trunk/Source/WebCore/page/DragController.cpp	2017-01-30 18:59:36 UTC (rev 211377)
@@ -977,6 +977,9 @@
 }
 }
 
+if (!dragImage)
+return;
+
 dragImageOffset = mouseDownPoint + scaledOrigin;
 doSystemDrag(dragImage, dragImageOffset, dragOrigin, dataTransfer, frame, false);
 






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


[webkit-changes] [211376] trunk/Source

2017-01-30 Thread cdumez
Title: [211376] trunk/Source








Revision 211376
Author cdu...@apple.com
Date 2017-01-30 10:45:21 -0800 (Mon, 30 Jan 2017)


Log Message
Update DiagnosticLoggingClient::logDiagnosticMessageWithValue() to take in the value as a double
https://bugs.webkit.org/show_bug.cgi?id=167536

Reviewed by Darin Adler.

Update DiagnosticLoggingClient::logDiagnosticMessageWithValue() to take in the value as a double
instead of a string. The value needs to be numeric and the current API is error-prone.

Source/WebCore:

* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::mediaPlayerEngineFailedToLoad):
* loader/EmptyClients.cpp:
* page/DiagnosticLoggingClient.h:

Source/WebKit2:

* NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::logDiagnosticMessage):
(WebKit::NetworkProcess::logDiagnosticMessageWithResult):
(WebKit::NetworkProcess::logDiagnosticMessageWithValue):
* NetworkProcess/NetworkProcess.h:
* Scripts/webkit/messages.py:
(headers_for_type):
* Shared/WebCoreArgumentCoders.h:
* UIProcess/HighPerformanceGraphicsUsageSampler.cpp:
(WebKit::HighPerformanceGraphicsUsageSampler::timerFired):
* UIProcess/Network/NetworkProcessProxy.cpp:
(WebKit::NetworkProcessProxy::logDiagnosticMessage):
(WebKit::NetworkProcessProxy::logDiagnosticMessageWithResult):
(WebKit::NetworkProcessProxy::logDiagnosticMessageWithValue):
* UIProcess/Network/NetworkProcessProxy.h:
* UIProcess/Network/NetworkProcessProxy.messages.in:
* UIProcess/PerActivityStateCPUUsageSampler.cpp:
(WebKit::PerActivityStateCPUUsageSampler::loggingTimerFired):
* UIProcess/WebBackForwardList.cpp:
(WebKit::WebBackForwardList::goToItem):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::logDiagnosticMessage):
(WebKit::WebPageProxy::logDiagnosticMessageWithResult):
(WebKit::WebPageProxy::logDiagnosticMessageWithValue):
* UIProcess/WebPageProxy.h:
* UIProcess/WebPageProxy.messages.in:
* WebProcess/WebCoreSupport/WebDiagnosticLoggingClient.cpp:
(WebKit::WebDiagnosticLoggingClient::logDiagnosticMessage):
(WebKit::WebDiagnosticLoggingClient::logDiagnosticMessageWithResult):
(WebKit::WebDiagnosticLoggingClient::logDiagnosticMessageWithValue):
* WebProcess/WebCoreSupport/WebDiagnosticLoggingClient.h:

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/html/HTMLMediaElement.cpp
trunk/Source/WebCore/loader/EmptyClients.cpp
trunk/Source/WebCore/page/DiagnosticLoggingClient.h
trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/NetworkProcess/NetworkProcess.cpp
trunk/Source/WebKit2/NetworkProcess/NetworkProcess.h
trunk/Source/WebKit2/Scripts/webkit/messages.py
trunk/Source/WebKit2/Shared/WebCoreArgumentCoders.h
trunk/Source/WebKit2/UIProcess/HighPerformanceGraphicsUsageSampler.cpp
trunk/Source/WebKit2/UIProcess/Network/NetworkProcessProxy.cpp
trunk/Source/WebKit2/UIProcess/Network/NetworkProcessProxy.h
trunk/Source/WebKit2/UIProcess/Network/NetworkProcessProxy.messages.in
trunk/Source/WebKit2/UIProcess/PerActivityStateCPUUsageSampler.cpp
trunk/Source/WebKit2/UIProcess/WebBackForwardList.cpp
trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp
trunk/Source/WebKit2/UIProcess/WebPageProxy.h
trunk/Source/WebKit2/UIProcess/WebPageProxy.messages.in
trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebDiagnosticLoggingClient.cpp
trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebDiagnosticLoggingClient.h




Diff

Modified: trunk/Source/WebCore/ChangeLog (211375 => 211376)

--- trunk/Source/WebCore/ChangeLog	2017-01-30 18:18:46 UTC (rev 211375)
+++ trunk/Source/WebCore/ChangeLog	2017-01-30 18:45:21 UTC (rev 211376)
@@ -1,3 +1,18 @@
+2017-01-30  Chris Dumez  
+
+Update DiagnosticLoggingClient::logDiagnosticMessageWithValue() to take in the value as a double
+https://bugs.webkit.org/show_bug.cgi?id=167536
+
+Reviewed by Darin Adler.
+
+Update DiagnosticLoggingClient::logDiagnosticMessageWithValue() to take in the value as a double
+instead of a string. The value needs to be numeric and the current API is error-prone.
+
+* html/HTMLMediaElement.cpp:
+(WebCore::HTMLMediaElement::mediaPlayerEngineFailedToLoad):
+* loader/EmptyClients.cpp:
+* page/DiagnosticLoggingClient.h:
+
 2017-01-30  Ryan Haddad  
 
 Unreviewed, rollout r211235 Pointer lock events should be delivered directly to the target element.


Modified: trunk/Source/WebCore/html/HTMLMediaElement.cpp (211375 => 211376)

--- trunk/Source/WebCore/html/HTMLMediaElement.cpp	2017-01-30 18:18:46 UTC (rev 211375)
+++ trunk/Source/WebCore/html/HTMLMediaElement.cpp	2017-01-30 18:45:21 UTC (rev 211376)
@@ -6472,7 +6472,7 @@
 return;
 
 if (auto* page = document().page())
-page->diagnosticLoggingClient().logDiagnosticMessageWithValue(DiagnosticLoggingKeys::engineFailedToLoadKey(), m_player->engineDescription(), String::number(m_player->platformErrorCode()), ShouldSample::No);
+page->diagnosticLoggingClient().logDiagnosticMessageWithValue(DiagnosticLoggingKeys::engineFailedToLoadKey(), m_player->engineDescripti

[webkit-changes] [211375] trunk

2017-01-30 Thread ryanhaddad
Title: [211375] trunk








Revision 211375
Author ryanhad...@apple.com
Date 2017-01-30 10:18:46 -0800 (Mon, 30 Jan 2017)


Log Message
Unreviewed, rollout r211235 Pointer lock events should be delivered directly to the target element.

The LayoutTest for this change is frequently failing.

Source/WebCore:

* page/EventHandler.cpp:
(WebCore::EventHandler::handleMousePressEvent):
(WebCore::EventHandler::handleMouseDoubleClickEvent):
(WebCore::EventHandler::handleMouseMoveEvent):
(WebCore::EventHandler::handleMouseReleaseEvent):
(WebCore::EventHandler::handleMouseForceEvent):
(WebCore::EventHandler::handleWheelEvent):
* page/PointerLockController.cpp:
(WebCore::PointerLockController::isLocked): Deleted.
(WebCore::PointerLockController::dispatchLockedWheelEvent): Deleted.
* page/PointerLockController.h:

LayoutTests:

* platform/mac/TestExpectations:
* pointer-lock/mouse-event-delivery-expected.txt:
* pointer-lock/mouse-event-delivery.html:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/platform/mac/TestExpectations
trunk/LayoutTests/pointer-lock/mouse-event-delivery-expected.txt
trunk/LayoutTests/pointer-lock/mouse-event-delivery.html
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/page/EventHandler.cpp
trunk/Source/WebCore/page/PointerLockController.cpp
trunk/Source/WebCore/page/PointerLockController.h




Diff

Modified: trunk/LayoutTests/ChangeLog (211374 => 211375)

--- trunk/LayoutTests/ChangeLog	2017-01-30 18:16:57 UTC (rev 211374)
+++ trunk/LayoutTests/ChangeLog	2017-01-30 18:18:46 UTC (rev 211375)
@@ -1,3 +1,13 @@
+2017-01-30  Ryan Haddad  
+
+Unreviewed, rollout r211235 Pointer lock events should be delivered directly to the target element.
+
+The LayoutTest for this change is frequently failing.
+
+* platform/mac/TestExpectations:
+* pointer-lock/mouse-event-delivery-expected.txt:
+* pointer-lock/mouse-event-delivery.html:
+
 2017-01-30  Antoine Quint  
 
 LayoutTest media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-leave-after-play.html is flaky


Modified: trunk/LayoutTests/platform/mac/TestExpectations (211374 => 211375)

--- trunk/LayoutTests/platform/mac/TestExpectations	2017-01-30 18:16:57 UTC (rev 211374)
+++ trunk/LayoutTests/platform/mac/TestExpectations	2017-01-30 18:18:46 UTC (rev 211375)
@@ -280,6 +280,7 @@
 # Pointer Lock can only check some of the API at the moment.
 pointer-lock/bug90391-move-then-window-open-crash.html
 pointer-lock/locked-element-iframe-removed-from-dom.html
+pointer-lock/mouse-event-delivery.html
 pointer-lock/pointerlockchange-event-on-lock-lost.html
 pointer-lock/pointerlockchange-pointerlockerror-events.html
 pointer-lock/pointerlockelement-null-when-pending.html


Modified: trunk/LayoutTests/pointer-lock/mouse-event-delivery-expected.txt (211374 => 211375)

--- trunk/LayoutTests/pointer-lock/mouse-event-delivery-expected.txt	2017-01-30 18:16:57 UTC (rev 211374)
+++ trunk/LayoutTests/pointer-lock/mouse-event-delivery-expected.txt	2017-01-30 18:18:46 UTC (rev 211375)
@@ -5,17 +5,11 @@
 
 PASS document.onpointerlockchange event received.
 PASS document.pointerLockElement is targetdiv1
- With a lock in place send a wheel event.
-PASS event type: wheel, target: target1, received on: target1
-PASS event type: wheel, target: target1, received on: body
  With a lock in place send a click.
 PASS event type: mousedown, target: target1, received on: target1
 PASS event type: mousedown, target: target1, received on: body
 PASS document.onpointerlockchange event received.
 PASS document.pointerLockElement is targetdiv2
- With a lock in place send a wheel event.
-PASS event type: wheel, target: target2, received on: target2
-PASS event type: wheel, target: target2, received on: body
  With a lock in place send a click.
 PASS event type: mousedown, target: target2, received on: target2
 PASS event type: mousedown, target: target2, received on: body


Modified: trunk/LayoutTests/pointer-lock/mouse-event-delivery.html (211374 => 211375)

--- trunk/LayoutTests/pointer-lock/mouse-event-delivery.html	2017-01-30 18:16:57 UTC (rev 211374)
+++ trunk/LayoutTests/pointer-lock/mouse-event-delivery.html	2017-01-30 18:18:46 UTC (rev 211375)
@@ -42,18 +42,6 @@
 // doNextStep() called by onpointerlockchange handler.
 },
 function () {
-debug(" With a lock in place send a wheel event.")
-targetdiv1._onwheel_ = eventExpected;
-targetdiv2._onwheel_ = eventNotExpected;
-document.body._onwheel_ = eventExpected;
-if (window.eventSender) {
-window.eventSender.mouseMoveTo(20,20);
-window.eventSender.leapForward(1000);
-window.eventSender.mouseScrollBy(0,10);
-}
-doNextStep();
-},
-function () {
 debug(" With a lock in place send a click.")
 targetdiv1._onmousedown_ = eventExpected;

[webkit-changes] [211374] trunk

2017-01-30 Thread graouts
Title: [211374] trunk








Revision 211374
Author grao...@webkit.org
Date 2017-01-30 10:16:57 -0800 (Mon, 30 Jan 2017)


Log Message
LayoutTest media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-leave-after-play.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=167254


Reviewed by Dean Jackson.

Source/WebCore:

When we would identify that we need to prolong an existing auto-hide timer, when the previous
auto-hide timer was marked as non-cancelable, calling _cancelAutoHideTimer() would not actually
cancel the previous timer, which would let it fire and hide the controls bar. We now have two
methods, _cancelAutoHideTimer() which always cancels the current auto-hide timer, and
_cancelNonEnforcedAutoHideTimer() which is used from all other existing call sites, which only
cancels the current auto-hide timer if it was marked as cancelable. This, and revised timing in
the test itself, make media/modern-media-controls/media-controller/media-controller-auto-hide-
mouse-leave-after-play.html a lot more reliable.

We also make a small drive-by fix where we ensure the "autoHideDelay" property is set first so
that setting other members which may set a timer do not used an undefined value for the auto-hide
timer delay.

* Modules/modern-media-controls/controls/controls-bar.js:
(ControlsBar.prototype.set visible):
(ControlsBar.prototype.handleEvent):
(ControlsBar.prototype._cancelNonEnforcedAutoHideTimer):
(ControlsBar.prototype._cancelAutoHideTimer):

LayoutTests:

We improve the test by setting off timers when the actual "play" and "pause" events are
triggered rather than when we call .play() or .pause() on the media element. This matches
when the auto-hide timer are set in ControlsBar and makes the test more robust. Combined
with the modern-media-controls WebCore module source changes, we can now stop marking this
test as flaky.

We apply the same change to media/modern-media-controls/media-controller/media-controller-auto-hide-pause.html
since it also sets off a timer based on the media being paused.

* media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-leave-after-play-expected.txt:
* media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-leave-after-play.html:
* media/modern-media-controls/media-controller/media-controller-auto-hide-pause.html:
* platform/mac/TestExpectations:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-leave-after-play-expected.txt
trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-leave-after-play.html
trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-auto-hide-pause.html
trunk/LayoutTests/platform/mac/TestExpectations
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Modules/modern-media-controls/controls/controls-bar.js




Diff

Modified: trunk/LayoutTests/ChangeLog (211373 => 211374)

--- trunk/LayoutTests/ChangeLog	2017-01-30 18:14:25 UTC (rev 211373)
+++ trunk/LayoutTests/ChangeLog	2017-01-30 18:16:57 UTC (rev 211374)
@@ -1,3 +1,25 @@
+2017-01-30  Antoine Quint  
+
+LayoutTest media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-leave-after-play.html is flaky
+https://bugs.webkit.org/show_bug.cgi?id=167254
+
+
+Reviewed by Dean Jackson.
+
+We improve the test by setting off timers when the actual "play" and "pause" events are
+triggered rather than when we call .play() or .pause() on the media element. This matches
+when the auto-hide timer are set in ControlsBar and makes the test more robust. Combined
+with the modern-media-controls WebCore module source changes, we can now stop marking this
+test as flaky.
+
+We apply the same change to media/modern-media-controls/media-controller/media-controller-auto-hide-pause.html
+since it also sets off a timer based on the media being paused.
+
+* media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-leave-after-play-expected.txt:
+* media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-leave-after-play.html:
+* media/modern-media-controls/media-controller/media-controller-auto-hide-pause.html:
+* platform/mac/TestExpectations:
+
 2017-01-30  Daniel Bates  
 
 [QuickLook] Make HTTP QuickLook tests work in Apple Internal DumpRenderTree


Modified: trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-leave-after-play-expected.txt (211373 => 211374)

--- trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-leave-after-play-expected.txt	2017-01-30 18:14:25 UTC (rev 211373)
+++ trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-leave-after-play-expected.txt	2017-01-30 18:1

[webkit-changes] [211373] trunk/LayoutTests

2017-01-30 Thread dbates
Title: [211373] trunk/LayoutTests








Revision 211373
Author dba...@webkit.org
Date 2017-01-30 10:14:25 -0800 (Mon, 30 Jan 2017)


Log Message
[QuickLook] Make HTTP QuickLook tests work in Apple Internal DumpRenderTree
https://bugs.webkit.org/show_bug.cgi?id=167483

Reviewed by Andy Estes.

Write QuickLook tests that tap a hyperlink in terms of UIHelper (in LayoutTests/resources/ui-helper.js)
so that we can run these tests in an Apple Internal build of DumpRenderTree.

* http/tests/quicklook/at-import-stylesheet-blocked.html: Write in terms of UIHelper.
* http/tests/quicklook/base-url-blocked.html: Ditto.
* http/tests/quicklook/cross-origin-iframe-blocked.html: Ditto.
* http/tests/quicklook/document-domain-is-empty-string.html: Ditto.
* http/tests/quicklook/external-stylesheet-blocked.html: Ditto.
* http/tests/quicklook/hide-referer-on-navigation.html: Ditto.
* http/tests/quicklook/resources/tap-at-point-and-notify-done.js: Removed.
* http/tests/quicklook/resources/tap-run-test-hyperlink.js: Added.
(runTest):
* http/tests/quicklook/submit-form-blocked.html: Ditto.
* http/tests/quicklook/top-navigation-blocked.html: Ditto.
* platform/ios-simulator-wk1/TestExpectations: Unskip QuickLook tests as we can now run
them in an Apple Internal build of DumpRenderTree. Note that these test are listed in
file LayoutTests/platform/ios-simulator/TestExpectations so that they are skipped in
WebKit for iOS Simulator built with the public iOS SDK as we need to fix .
* platform/ios-simulator-wk1/http/tests/quicklook/top-navigation-blocked-expected.txt: Added.
For some reason the console message "Unsafe _javascript_ attempt to initiate navigation" includes
a line number in DumpRenderTree (why?). This line number is not emitted when the test is run
in WebKitTestRunner. Add platform-specific result for now.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/http/tests/quicklook/at-import-stylesheet-blocked.html
trunk/LayoutTests/http/tests/quicklook/base-url-blocked.html
trunk/LayoutTests/http/tests/quicklook/cross-origin-iframe-blocked.html
trunk/LayoutTests/http/tests/quicklook/document-domain-is-empty-string.html
trunk/LayoutTests/http/tests/quicklook/external-stylesheet-blocked.html
trunk/LayoutTests/http/tests/quicklook/hide-referer-on-navigation.html
trunk/LayoutTests/http/tests/quicklook/rtf-document-domain-is-empty-string.html
trunk/LayoutTests/http/tests/quicklook/submit-form-blocked.html
trunk/LayoutTests/http/tests/quicklook/top-navigation-blocked.html
trunk/LayoutTests/platform/ios-simulator-wk1/TestExpectations


Added Paths

trunk/LayoutTests/http/tests/quicklook/resources/tap-run-test-hyperlink.js
trunk/LayoutTests/platform/ios-simulator-wk1/http/tests/quicklook/
trunk/LayoutTests/platform/ios-simulator-wk1/http/tests/quicklook/top-navigation-blocked-expected.txt


Removed Paths

trunk/LayoutTests/http/tests/quicklook/resources/tap-at-point-and-notify-done.js




Diff

Modified: trunk/LayoutTests/ChangeLog (211372 => 211373)

--- trunk/LayoutTests/ChangeLog	2017-01-30 18:13:11 UTC (rev 211372)
+++ trunk/LayoutTests/ChangeLog	2017-01-30 18:14:25 UTC (rev 211373)
@@ -1,3 +1,33 @@
+2017-01-30  Daniel Bates  
+
+[QuickLook] Make HTTP QuickLook tests work in Apple Internal DumpRenderTree
+https://bugs.webkit.org/show_bug.cgi?id=167483
+
+Reviewed by Andy Estes.
+
+Write QuickLook tests that tap a hyperlink in terms of UIHelper (in LayoutTests/resources/ui-helper.js)
+so that we can run these tests in an Apple Internal build of DumpRenderTree.
+
+* http/tests/quicklook/at-import-stylesheet-blocked.html: Write in terms of UIHelper.
+* http/tests/quicklook/base-url-blocked.html: Ditto.
+* http/tests/quicklook/cross-origin-iframe-blocked.html: Ditto.
+* http/tests/quicklook/document-domain-is-empty-string.html: Ditto.
+* http/tests/quicklook/external-stylesheet-blocked.html: Ditto.
+* http/tests/quicklook/hide-referer-on-navigation.html: Ditto.
+* http/tests/quicklook/resources/tap-at-point-and-notify-done.js: Removed.
+* http/tests/quicklook/resources/tap-run-test-hyperlink.js: Added.
+(runTest):
+* http/tests/quicklook/submit-form-blocked.html: Ditto.
+* http/tests/quicklook/top-navigation-blocked.html: Ditto.
+* platform/ios-simulator-wk1/TestExpectations: Unskip QuickLook tests as we can now run
+them in an Apple Internal build of DumpRenderTree. Note that these test are listed in
+file LayoutTests/platform/ios-simulator/TestExpectations so that they are skipped in
+WebKit for iOS Simulator built with the public iOS SDK as we need to fix .
+* platform/ios-simulator-wk1/http/tests/quicklook/top-navigation-blocked-expected.txt: Added.
+For some reason the console message "Unsafe _javascript_ attempt to initiate navigation" includes
+a line number in DumpRenderTree (why?). This line number is not emitted when the test is ru

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

2017-01-30 Thread carlosgc
Title: [211372] trunk/Source/WebCore








Revision 211372
Author carlo...@webkit.org
Date 2017-01-30 10:13:11 -0800 (Mon, 30 Jan 2017)


Log Message
REGRESSION(r202615?): [GStreamer] ASSERTION FAILED: isMainThread() in WebCore::BuiltinResourceHandleConstructorMap& WebCore::builtinResourceHandleConstructorMap()
https://bugs.webkit.org/show_bug.cgi?id=167003

Reviewed by Michael Catanzaro.

Add a way to create a ResourceHandle for a given SoupNetworkSession and use it in the GStreamer streaming client
to ensure both the session and the handle are created and destroyed in the secondary thread. This way we also
avoid using the default session for downloading HLS fragments.

* platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
(ResourceHandleStreamingClient::ResourceHandleStreamingClient): Create a SoupNetworkSession and pass it to ResourceHandle::create().
* platform/network/ResourceHandle.h: Add create and constructor to receive a SoupNetworkSession.
* platform/network/ResourceHandleInternal.h: Add SoupNetworkSession member.
* platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::ResourceHandleInternal::soupSession): Return the SoupNetworkSession if not nullptr.
(WebCore::ResourceHandle::create): Create a ResourceHandle without trying to use any builtin constructor and
using the given SoupNetworkSession.
(WebCore::ResourceHandle::ResourceHandle): Set the SoupNetworkSession if early request validations didn't fail.

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp
trunk/Source/WebCore/platform/network/ResourceHandle.h
trunk/Source/WebCore/platform/network/ResourceHandleInternal.h
trunk/Source/WebCore/platform/network/soup/ResourceHandleSoup.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (211371 => 211372)

--- trunk/Source/WebCore/ChangeLog	2017-01-30 17:36:43 UTC (rev 211371)
+++ trunk/Source/WebCore/ChangeLog	2017-01-30 18:13:11 UTC (rev 211372)
@@ -1,3 +1,24 @@
+2017-01-30  Carlos Garcia Campos  
+
+REGRESSION(r202615?): [GStreamer] ASSERTION FAILED: isMainThread() in WebCore::BuiltinResourceHandleConstructorMap& WebCore::builtinResourceHandleConstructorMap()
+https://bugs.webkit.org/show_bug.cgi?id=167003
+
+Reviewed by Michael Catanzaro.
+
+Add a way to create a ResourceHandle for a given SoupNetworkSession and use it in the GStreamer streaming client
+to ensure both the session and the handle are created and destroyed in the secondary thread. This way we also
+avoid using the default session for downloading HLS fragments.
+
+* platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
+(ResourceHandleStreamingClient::ResourceHandleStreamingClient): Create a SoupNetworkSession and pass it to ResourceHandle::create().
+* platform/network/ResourceHandle.h: Add create and constructor to receive a SoupNetworkSession.
+* platform/network/ResourceHandleInternal.h: Add SoupNetworkSession member.
+* platform/network/soup/ResourceHandleSoup.cpp:
+(WebCore::ResourceHandleInternal::soupSession): Return the SoupNetworkSession if not nullptr.
+(WebCore::ResourceHandle::create): Create a ResourceHandle without trying to use any builtin constructor and
+using the given SoupNetworkSession.
+(WebCore::ResourceHandle::ResourceHandle): Set the SoupNetworkSession if early request validations didn't fail.
+
 2017-01-30  Youenn Fablet  
 
 [WebRTC] Add support for libwebrtc data channel


Modified: trunk/Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp (211371 => 211372)

--- trunk/Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp	2017-01-30 17:36:43 UTC (rev 211371)
+++ trunk/Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp	2017-01-30 18:13:11 UTC (rev 211372)
@@ -46,6 +46,10 @@
 #include 
 #include 
 
+#if USE(SOUP)
+#include "SoupNetworkSession.h"
+#endif
+
 using namespace WebCore;
 
 class StreamingClient {
@@ -111,6 +115,9 @@
 Lock m_terminateRunLoopConditionMutex;
 Condition m_terminateRunLoopCondition;
 RefPtr m_resource;
+#if USE(SOUP)
+std::unique_ptr m_session;
+#endif
 };
 
 enum MainThreadSourceNotification {
@@ -1071,7 +1078,13 @@
 {
 LockHolder locker(m_initializeRunLoopConditionMutex);
 m_runLoop = &RunLoop::current();
+#if USE(SOUP)
+m_session = std::make_unique();
+m_resource = ResourceHandle::create(*m_session, request, this, true, false);
+#else
+// FIXME: This create will hit an assert in debug builds. See https://bugs.webkit.org/show_bug.cgi?id=167003.
 m_resource = ResourceHandle::create(nullptr /*context*/, request, this, true, false);
+#endif
 m_initializeRunLoopCondition.notifyOne();
 }
 if (!m_resource)
@@ -1085,6 +1098,9 @@
 m_resource->clearClient();
 

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

2017-01-30 Thread commit-queue
Title: [211371] trunk/Source/WebCore








Revision 211371
Author commit-qu...@webkit.org
Date 2017-01-30 09:36:43 -0800 (Mon, 30 Jan 2017)


Log Message
[WebRTC] Add support for libwebrtc data channel
https://bugs.webkit.org/show_bug.cgi?id=167489

Patch by Youenn Fablet  on 2017-01-30
Reviewed by Alex Christensen.

Partially covered by webrtc/datachannel/basic.html but not yet enabled on bots.

Introducing LibWebRTCDataChannelHandler as the integration layer between WebCore (RTCDataChannel)
and libwebrtc (DataChannelObserver).

* Modules/mediastream/RTCDataChannel.cpp:
(WebCore::RTCDataChannel::create):
(WebCore::RTCDataChannel::RTCDataChannel):
(WebCore::RTCDataChannel::bufferedAmount):
(WebCore::RTCDataChannel::bufferedAmountIsDecreasing):
* Modules/mediastream/RTCDataChannel.h:
* Modules/mediastream/libwebrtc/LibWebRTCDataChannelHandler.cpp: Added.
(WebCore::LibWebRTCDataChannelHandler::~LibWebRTCDataChannelHandler):
(WebCore::LibWebRTCDataChannelHandler::setClient):
(WebCore::LibWebRTCDataChannelHandler::sendStringData):
(WebCore::LibWebRTCDataChannelHandler::sendRawData):
(WebCore::LibWebRTCDataChannelHandler::close):
(WebCore::LibWebRTCDataChannelHandler::OnStateChange):
(WebCore::LibWebRTCDataChannelHandler::OnMessage):
* Modules/mediastream/libwebrtc/LibWebRTCDataChannelHandler.h:
* Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.cpp:
(WebCore::LibWebRTCMediaEndpoint::OnRemoveStream):
(WebCore::LibWebRTCMediaEndpoint::addDataChannel):
(): Deleted.
* Modules/mediastream/libwebrtc/LibWebRTCPeerConnectionBackend.cpp:
(WebCore::LibWebRTCPeerConnectionBackend::createDataChannelHandler):
* dom/EventNames.h:
* platform/mediastream/RTCDataChannelHandler.h:
* platform/mediastream/RTCDataChannelHandlerClient.h:
* platform/mock/RTCDataChannelHandlerMock.h:

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Modules/mediastream/RTCDataChannel.cpp
trunk/Source/WebCore/Modules/mediastream/RTCDataChannel.h
trunk/Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.cpp
trunk/Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.h
trunk/Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCPeerConnectionBackend.cpp
trunk/Source/WebCore/dom/EventNames.h
trunk/Source/WebCore/platform/mediastream/RTCDataChannelHandler.h
trunk/Source/WebCore/platform/mediastream/RTCDataChannelHandlerClient.h
trunk/Source/WebCore/platform/mock/RTCDataChannelHandlerMock.h


Added Paths

trunk/Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCDataChannelHandler.cpp
trunk/Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCDataChannelHandler.h




Diff

Modified: trunk/Source/WebCore/ChangeLog (211370 => 211371)

--- trunk/Source/WebCore/ChangeLog	2017-01-30 17:31:47 UTC (rev 211370)
+++ trunk/Source/WebCore/ChangeLog	2017-01-30 17:36:43 UTC (rev 211371)
@@ -1,3 +1,41 @@
+2017-01-30  Youenn Fablet  
+
+[WebRTC] Add support for libwebrtc data channel
+https://bugs.webkit.org/show_bug.cgi?id=167489
+
+Reviewed by Alex Christensen.
+
+Partially covered by webrtc/datachannel/basic.html but not yet enabled on bots.
+
+Introducing LibWebRTCDataChannelHandler as the integration layer between WebCore (RTCDataChannel)
+and libwebrtc (DataChannelObserver).
+
+* Modules/mediastream/RTCDataChannel.cpp:
+(WebCore::RTCDataChannel::create):
+(WebCore::RTCDataChannel::RTCDataChannel):
+(WebCore::RTCDataChannel::bufferedAmount):
+(WebCore::RTCDataChannel::bufferedAmountIsDecreasing):
+* Modules/mediastream/RTCDataChannel.h:
+* Modules/mediastream/libwebrtc/LibWebRTCDataChannelHandler.cpp: Added.
+(WebCore::LibWebRTCDataChannelHandler::~LibWebRTCDataChannelHandler):
+(WebCore::LibWebRTCDataChannelHandler::setClient):
+(WebCore::LibWebRTCDataChannelHandler::sendStringData):
+(WebCore::LibWebRTCDataChannelHandler::sendRawData):
+(WebCore::LibWebRTCDataChannelHandler::close):
+(WebCore::LibWebRTCDataChannelHandler::OnStateChange):
+(WebCore::LibWebRTCDataChannelHandler::OnMessage):
+* Modules/mediastream/libwebrtc/LibWebRTCDataChannelHandler.h:
+* Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.cpp:
+(WebCore::LibWebRTCMediaEndpoint::OnRemoveStream):
+(WebCore::LibWebRTCMediaEndpoint::addDataChannel):
+(): Deleted.
+* Modules/mediastream/libwebrtc/LibWebRTCPeerConnectionBackend.cpp:
+(WebCore::LibWebRTCPeerConnectionBackend::createDataChannelHandler):
+* dom/EventNames.h:
+* platform/mediastream/RTCDataChannelHandler.h:
+* platform/mediastream/RTCDataChannelHandlerClient.h:
+* platform/mock/RTCDataChannelHandlerMock.h:
+
 2017-01-30  Carlos Garcia Campos  
 
 Several web timing tests crash in GTK+ and AppleWin bots


Modified: trunk/Source/WebCore/Modules/mediastream/RTCDataChannel.cpp (211370 => 211371)

--- trunk/Source/WebCore/Modules/medias

[webkit-changes] [211370] trunk/Tools

2017-01-30 Thread jbedard
Title: [211370] trunk/Tools








Revision 211370
Author jbed...@apple.com
Date 2017-01-30 09:31:47 -0800 (Mon, 30 Jan 2017)


Log Message
Use simctl instead of LayoutTestRelay
https://bugs.webkit.org/show_bug.cgi?id=165927

Reviewed by Daniel Bates.

Part 1

LayoutTestRelay uses SPI, since recent versions of the iOS SDK allow for installing apps on
simulators through simctl (iOS 10 and later), use this functionality instead.

* Scripts/webkitpy/port/base.py:
(Port.__init__): Added _test_runner_process_constructor.
* Scripts/webkitpy/port/darwin.py:
(DarwinPort.app_identifier_from_bundle): Added function to extract bundle ID from plist.
* Scripts/webkitpy/port/driver.py:
(Driver._start): Pass worker_number to server_process so we can look up the correct simulator device to use.
(IOSSimulatorDriver): Deleted.
* Scripts/webkitpy/port/driver_unittest.py:
(DriverTest.test_stop_cleans_up_properly): Set _test_runner_process_constructor for testing.
(DriverTest.test_two_starts_cleans_up_properly): Ditto.
(DriverTest.test_start_actually_starts): Ditto.
* Scripts/webkitpy/port/ios.py:
(IOSSimulatorPort): Remove relay_name.
(IOSSimulatorPort.__init__): Set _test_runner_process_constructor to SimulatorProcess for IOSSimulatorPort.
(IOSSimulatorPort._create_simulators): Formatting change.
(IOSSimulatorPort.relay_path): Deleted.
(IOSSimulatorPort._check_relay): Deleted.
(IOSSimulatorPort._check_port_build): Deleted. Use base class implementation
(IOSSimulatorPort._build_relay): Deleted.
(IOSSimulatorPort._build_driver): Deleted. Use base class implementation
(IOSSimulatorPort._driver_class): Deleted. Use base class implementation
* Scripts/webkitpy/port/ios_unittest.py:
(iosTest.test_32bit): Update test.
(iosTest.test_64bit): Update test.
* Scripts/webkitpy/port/server_process.py:
(ServerProcess.__init__): Added argument worker_number. This class does not make use of it. We will make use of this argument in SimulatorProcess to lookup the associated simulator device.
(ServerProcess._set_file_nonblocking): Added to share common code.
* Scripts/webkitpy/port/server_process_mock.py:
(MockServerProcess.__init__): Added argument worker_number.
* Scripts/webkitpy/port/simulator_process.py: Added.
(SimulatorProcess): Added.
(SimulatorProcess.Popen): Added.
(SimulatorProcess.Popen.__init__): Added. Initialize Popen structure with stdin, stdout, stderr and pid.
(SimulatorProcess.Popen.poll): Added. Check if the process is running.
(SimulatorProcess.Popen.wait): Added. Wait for process to close.
(SimulatorProcess.__init__): Added. Install app to device specified through port and worker_number.
(SimulatorProcess._reset): Added. Unlink fifos.
(SimulatorProcess._start): Added. Launch app on simulator, link fifos.
(SimulatorProcess._kill): Added. Shutdown app on simulator.
* Scripts/webkitpy/xcode/simulator.py:
(Device.__init__): Accept host to run install/launch/terminate.
(Device.install_app): Install app to target Device.
(Device.launch_app): Launch app on target Device.
(Device.terminate_app): Shutdown app on target Device.
(Simulator._parse_devices): Pass host to Device.

Modified Paths

trunk/Tools/ChangeLog
trunk/Tools/Scripts/webkitpy/port/base.py
trunk/Tools/Scripts/webkitpy/port/darwin.py
trunk/Tools/Scripts/webkitpy/port/driver.py
trunk/Tools/Scripts/webkitpy/port/driver_unittest.py
trunk/Tools/Scripts/webkitpy/port/ios.py
trunk/Tools/Scripts/webkitpy/port/ios_unittest.py
trunk/Tools/Scripts/webkitpy/port/server_process.py
trunk/Tools/Scripts/webkitpy/port/server_process_mock.py
trunk/Tools/Scripts/webkitpy/xcode/simulator.py


Added Paths

trunk/Tools/Scripts/webkitpy/port/simulator_process.py




Diff

Modified: trunk/Tools/ChangeLog (211369 => 211370)

--- trunk/Tools/ChangeLog	2017-01-30 17:09:06 UTC (rev 211369)
+++ trunk/Tools/ChangeLog	2017-01-30 17:31:47 UTC (rev 211370)
@@ -1,3 +1,61 @@
+2017-01-30  Jonathan Bedard  
+
+Use simctl instead of LayoutTestRelay
+https://bugs.webkit.org/show_bug.cgi?id=165927
+
+Reviewed by Daniel Bates.
+
+Part 1
+
+LayoutTestRelay uses SPI, since recent versions of the iOS SDK allow for installing apps on
+simulators through simctl (iOS 10 and later), use this functionality instead.
+
+* Scripts/webkitpy/port/base.py:
+(Port.__init__): Added _test_runner_process_constructor.
+* Scripts/webkitpy/port/darwin.py:
+(DarwinPort.app_identifier_from_bundle): Added function to extract bundle ID from plist.
+* Scripts/webkitpy/port/driver.py:
+(Driver._start): Pass worker_number to server_process so we can look up the correct simulator device to use.
+(IOSSimulatorDriver): Deleted.
+* Scripts/webkitpy/port/driver_unittest.py:
+(DriverTest.test_stop_cleans_up_properly): Set _test_runner_process_constructor for testing.
+(DriverTest.test_two_starts_cleans_up_properly): Ditto.
+(DriverTest.test_start_actually_starts): Ditto.
+* Scripts/webkitpy/port/io

[webkit-changes] [211369] trunk/Tools

2017-01-30 Thread clopez
Title: [211369] trunk/Tools








Revision 211369
Author clo...@igalia.com
Date 2017-01-30 09:09:06 -0800 (Mon, 30 Jan 2017)


Log Message
[GTK] pixman fails to compile on Raspberry Pi (GCC crash)
https://bugs.webkit.org/show_bug.cgi?id=167411

Reviewed by Michael Catanzaro.

Disable the ARM iwMMXt fast path for pixman, because it triggers
a GCC bug on the RPi with Raspbian/PIXEL causing a build failure.

* gtk/jhbuild.modules:

Modified Paths

trunk/Tools/ChangeLog
trunk/Tools/gtk/jhbuild.modules




Diff

Modified: trunk/Tools/ChangeLog (211368 => 211369)

--- trunk/Tools/ChangeLog	2017-01-30 17:04:18 UTC (rev 211368)
+++ trunk/Tools/ChangeLog	2017-01-30 17:09:06 UTC (rev 211369)
@@ -1,3 +1,15 @@
+2017-01-30  Carlos Alberto Lopez Perez  
+
+[GTK] pixman fails to compile on Raspberry Pi (GCC crash)
+https://bugs.webkit.org/show_bug.cgi?id=167411
+
+Reviewed by Michael Catanzaro.
+
+Disable the ARM iwMMXt fast path for pixman, because it triggers
+a GCC bug on the RPi with Raspbian/PIXEL causing a build failure.
+
+* gtk/jhbuild.modules:
+
 2017-01-30  Carlos Garcia Campos  
 
 [GTK] Add API to handle the accelerated compositing policy


Modified: trunk/Tools/gtk/jhbuild.modules (211368 => 211369)

--- trunk/Tools/gtk/jhbuild.modules	2017-01-30 17:04:18 UTC (rev 211368)
+++ trunk/Tools/gtk/jhbuild.modules	2017-01-30 17:09:06 UTC (rev 211369)
@@ -101,8 +101,12 @@
   
+  
   - autogenargs="--enable-gtk=no --disable-mmx">
+ autogenargs="--enable-gtk=no --disable-mmx --disable-arm-iwmmxt">
  repo="cairographics.org"
 hash="sha256:3dfed13b8060eadabf0a4945c7045b7793cc7e3e910e748a8bb0f0dc3e794904"






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


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

2017-01-30 Thread ossy
Title: [211368] trunk/Source/WebKit2








Revision 211368
Author o...@webkit.org
Date 2017-01-30 09:04:18 -0800 (Mon, 30 Jan 2017)


Log Message
[Mac][cmake] Fix the build after r211354.
https://bugs.webkit.org/show_bug.cgi?id=167565

Unreviewed buildfix.

* PlatformMac.cmake:

Modified Paths

trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/PlatformMac.cmake




Diff

Modified: trunk/Source/WebKit2/ChangeLog (211367 => 211368)

--- trunk/Source/WebKit2/ChangeLog	2017-01-30 16:53:09 UTC (rev 211367)
+++ trunk/Source/WebKit2/ChangeLog	2017-01-30 17:04:18 UTC (rev 211368)
@@ -1,3 +1,12 @@
+2017-01-30  Csaba Osztrogonác  
+
+[Mac][cmake] Fix the build after r211354.
+https://bugs.webkit.org/show_bug.cgi?id=167565
+
+Unreviewed buildfix.
+
+* PlatformMac.cmake:
+
 2017-01-30  Miguel Gomez  
 
 [GTK] Scrolling iframes, doesn't redraw their content


Modified: trunk/Source/WebKit2/PlatformMac.cmake (211367 => 211368)

--- trunk/Source/WebKit2/PlatformMac.cmake	2017-01-30 16:53:09 UTC (rev 211367)
+++ trunk/Source/WebKit2/PlatformMac.cmake	2017-01-30 17:04:18 UTC (rev 211368)
@@ -492,6 +492,7 @@
 
 UIProcess/API/C
 
+UIProcess/API/C/Cocoa
 UIProcess/API/C/mac
 UIProcess/API/cpp
 






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


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

2017-01-30 Thread carlosgc
Title: [211366] trunk/Source/WebKit2








Revision 211366
Author carlo...@webkit.org
Date 2017-01-30 08:47:15 -0800 (Mon, 30 Jan 2017)


Log Message
Unreviewed. Fix GTK+ debug build after r211365.

Remove invalid assert.

* WebProcess/WebPage/AcceleratedDrawingArea.cpp:
(WebKit::AcceleratedDrawingArea::exitAcceleratedCompositingModeNow):

Modified Paths

trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/WebProcess/WebPage/AcceleratedDrawingArea.cpp




Diff

Modified: trunk/Source/WebKit2/ChangeLog (211365 => 211366)

--- trunk/Source/WebKit2/ChangeLog	2017-01-30 16:42:12 UTC (rev 211365)
+++ trunk/Source/WebKit2/ChangeLog	2017-01-30 16:47:15 UTC (rev 211366)
@@ -1,5 +1,14 @@
 2017-01-30  Carlos Garcia Campos  
 
+Unreviewed. Fix GTK+ debug build after r211365.
+
+Remove invalid assert.
+
+* WebProcess/WebPage/AcceleratedDrawingArea.cpp:
+(WebKit::AcceleratedDrawingArea::exitAcceleratedCompositingModeNow):
+
+2017-01-30  Carlos Garcia Campos  
+
 [GTK] Do not release OpenGL resource immediately when leaving accelerated compositing mode
 https://bugs.webkit.org/show_bug.cgi?id=167544
 


Modified: trunk/Source/WebKit2/WebProcess/WebPage/AcceleratedDrawingArea.cpp (211365 => 211366)

--- trunk/Source/WebKit2/WebProcess/WebPage/AcceleratedDrawingArea.cpp	2017-01-30 16:42:12 UTC (rev 211365)
+++ trunk/Source/WebKit2/WebProcess/WebPage/AcceleratedDrawingArea.cpp	2017-01-30 16:47:15 UTC (rev 211366)
@@ -372,7 +372,6 @@
 
 void AcceleratedDrawingArea::exitAcceleratedCompositingModeNow()
 {
-ASSERT(!m_alwaysUseCompositing);
 ASSERT(!m_layerTreeStateIsFrozen);
 
 m_exitCompositingTimer.stop();






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


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

2017-01-30 Thread carlosgc
Title: [211365] trunk/Source/WebKit2








Revision 211365
Author carlo...@webkit.org
Date 2017-01-30 08:42:12 -0800 (Mon, 30 Jan 2017)


Log Message
[GTK] Do not release OpenGL resource immediately when leaving accelerated compositing mode
https://bugs.webkit.org/show_bug.cgi?id=167544

Reviewed by Michael Catanzaro.

Sometimes the conditions to be in AC mode or not change quickly, and then we leave AC mode just enter it again
after a very short period of time. In those cases we are dropping all the GL resources and the compositor
thread, and creating it again. We could keep the layer tree host alive for a while when exiting AC mode, and
reuse it if we enter AC mode before the previous one has been discarded. While the previous layer tree host is
alive we still need to keep it up to date, for example if the web view is resized or contents size change, and
synchronize with the threaded compositor when it becomes the layer tree host again.

* WebProcess/WebPage/AcceleratedDrawingArea.cpp:
(WebKit::AcceleratedDrawingArea::~AcceleratedDrawingArea): Discard the previous layer tree host.
(WebKit::AcceleratedDrawingArea::AcceleratedDrawingArea): Initialize the timer to discard the previous layer
tree host.
(WebKit::AcceleratedDrawingArea::pageBackgroundTransparencyChanged): Notify the previous layer tree host if needed.
(WebKit::AcceleratedDrawingArea::mainFrameContentSizeChanged): Ditto.
(WebKit::AcceleratedDrawingArea::updateBackingStoreState): Ditto.
(WebKit::AcceleratedDrawingArea::enterAcceleratedCompositingMode): Reuse the previous layer tree host if possible.
(WebKit::AcceleratedDrawingArea::exitAcceleratedCompositingModeNow): Exit AC mode and save the layer tree host
starting a timer of 5 seconds to discard it if not reused.
(WebKit::AcceleratedDrawingArea::discardPreviousLayerTreeHost): Invalidate and destroy the previous layer tree host.
(WebKit::AcceleratedDrawingArea::didChangeViewportAttributes): Notify the previous layer tree host if needed.
(WebKit::AcceleratedDrawingArea::deviceOrPageScaleFactorChanged): Ditto.
* WebProcess/WebPage/AcceleratedDrawingArea.h:
* WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.cpp:
(WebKit::ThreadedCoordinatedLayerTreeHost::scrollNonCompositedContents): If it's discardable add the action to
be synchronized instead.
(WebKit::ThreadedCoordinatedLayerTreeHost::contentsSizeChanged): Ditto.
(WebKit::ThreadedCoordinatedLayerTreeHost::deviceOrPageScaleFactorChanged): Ditto.
(WebKit::ThreadedCoordinatedLayerTreeHost::pageBackgroundTransparencyChanged): Ditto.
(WebKit::ThreadedCoordinatedLayerTreeHost::sizeDidChange): Ditto.
(WebKit::ThreadedCoordinatedLayerTreeHost::didChangeViewportAttributes): Ditto.
(WebKit::ThreadedCoordinatedLayerTreeHost::setIsDiscardable): When the layer tree host becomes discardable,
reset the sync actions and return. When it becomes the real layer tree host again, apply all pending actions to
synchronize with the threaded compositor.
* WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.h:
* WebProcess/WebPage/DrawingAreaImpl.cpp:
(WebKit::DrawingAreaImpl::scroll): Notify the previous layer tree host if needed.
(WebKit::DrawingAreaImpl::mainFrameContentSizeChanged): Ditto.
(WebKit::DrawingAreaImpl::exitAcceleratedCompositingMode): Use AcceleratedDrawingArea::exitAcceleratedCompositingModeNow().
* WebProcess/WebPage/LayerTreeHost.h:
(WebKit::LayerTreeHost::setIsDiscardable): Added.

Modified Paths

trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/WebProcess/WebPage/AcceleratedDrawingArea.cpp
trunk/Source/WebKit2/WebProcess/WebPage/AcceleratedDrawingArea.h
trunk/Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.cpp
trunk/Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.h
trunk/Source/WebKit2/WebProcess/WebPage/DrawingAreaImpl.cpp
trunk/Source/WebKit2/WebProcess/WebPage/LayerTreeHost.h




Diff

Modified: trunk/Source/WebKit2/ChangeLog (211364 => 211365)

--- trunk/Source/WebKit2/ChangeLog	2017-01-30 16:35:03 UTC (rev 211364)
+++ trunk/Source/WebKit2/ChangeLog	2017-01-30 16:42:12 UTC (rev 211365)
@@ -1,3 +1,50 @@
+2017-01-30  Carlos Garcia Campos  
+
+[GTK] Do not release OpenGL resource immediately when leaving accelerated compositing mode
+https://bugs.webkit.org/show_bug.cgi?id=167544
+
+Reviewed by Michael Catanzaro.
+
+Sometimes the conditions to be in AC mode or not change quickly, and then we leave AC mode just enter it again
+after a very short period of time. In those cases we are dropping all the GL resources and the compositor
+thread, and creating it again. We could keep the layer tree host alive for a while when exiting AC mode, and
+reuse it if we enter AC mode before the previous one has been discarded. While the previous layer tree host is
+alive we still need to keep it up to date, for example if the web view is resized or contents size change, and
+ 

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

2017-01-30 Thread rego
Title: [211364] trunk/Source/WebKit2








Revision 211364
Author r...@igalia.com
Date 2017-01-30 08:35:03 -0800 (Mon, 30 Jan 2017)


Log Message
[GTK] Remove support to enable/disable experimental features
https://bugs.webkit.org/show_bug.cgi?id=167586

Reviewed by Michael Catanzaro.

As requested in bug #167578 we should remove the support to enable/disable
experimental features in WebKitGTK+.
One reason is that CSS Grid Layout is going to be enabled by default now,
so we don't need it to be in this file.
Another is that this support needs to be rewritten to use
the enumerable experimental features API.

* PlatformGTK.cmake:
* UIProcess/API/gtk/WebKitSettings.cpp:
(webKitSettingsConstructed):
* UIProcess/gtk/ExperimentalFeatures.cpp: Removed.
* UIProcess/gtk/ExperimentalFeatures.h: Removed.

Modified Paths

trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/PlatformGTK.cmake
trunk/Source/WebKit2/UIProcess/API/gtk/WebKitSettings.cpp


Removed Paths

trunk/Source/WebKit2/UIProcess/gtk/ExperimentalFeatures.cpp
trunk/Source/WebKit2/UIProcess/gtk/ExperimentalFeatures.h




Diff

Modified: trunk/Source/WebKit2/ChangeLog (211363 => 211364)

--- trunk/Source/WebKit2/ChangeLog	2017-01-30 13:50:37 UTC (rev 211363)
+++ trunk/Source/WebKit2/ChangeLog	2017-01-30 16:35:03 UTC (rev 211364)
@@ -1,3 +1,23 @@
+2017-01-30  Manuel Rego Casasnovas  
+
+[GTK] Remove support to enable/disable experimental features
+https://bugs.webkit.org/show_bug.cgi?id=167586
+
+Reviewed by Michael Catanzaro.
+
+As requested in bug #167578 we should remove the support to enable/disable
+experimental features in WebKitGTK+.
+One reason is that CSS Grid Layout is going to be enabled by default now,
+so we don't need it to be in this file.
+Another is that this support needs to be rewritten to use
+the enumerable experimental features API.
+
+* PlatformGTK.cmake:
+* UIProcess/API/gtk/WebKitSettings.cpp:
+(webKitSettingsConstructed):
+* UIProcess/gtk/ExperimentalFeatures.cpp: Removed.
+* UIProcess/gtk/ExperimentalFeatures.h: Removed.
+
 2017-01-30  Carlos Garcia Campos  
 
 [GTK] Add API to handle the accelerated compositing policy


Modified: trunk/Source/WebKit2/PlatformGTK.cmake (211363 => 211364)

--- trunk/Source/WebKit2/PlatformGTK.cmake	2017-01-30 13:50:37 UTC (rev 211363)
+++ trunk/Source/WebKit2/PlatformGTK.cmake	2017-01-30 16:35:03 UTC (rev 211364)
@@ -309,7 +309,6 @@
 UIProcess/gtk/AcceleratedBackingStoreWayland.cpp
 UIProcess/gtk/AcceleratedBackingStoreX11.cpp
 UIProcess/gtk/DragAndDropHandler.cpp
-UIProcess/gtk/ExperimentalFeatures.cpp
 UIProcess/gtk/GestureController.cpp
 UIProcess/gtk/InputMethodFilter.cpp
 UIProcess/gtk/KeyBindingTranslator.cpp


Modified: trunk/Source/WebKit2/UIProcess/API/gtk/WebKitSettings.cpp (211363 => 211364)

--- trunk/Source/WebKit2/UIProcess/API/gtk/WebKitSettings.cpp	2017-01-30 13:50:37 UTC (rev 211363)
+++ trunk/Source/WebKit2/UIProcess/API/gtk/WebKitSettings.cpp	2017-01-30 16:35:03 UTC (rev 211364)
@@ -31,7 +31,6 @@
 #include "config.h"
 #include "WebKitSettings.h"
 
-#include "ExperimentalFeatures.h"
 #include "WebKitEnumTypes.h"
 #include "WebKitPrivate.h"
 #include "WebKitSettingsPrivate.h"
@@ -156,10 +155,6 @@
 
 WebPreferences* prefs = WEBKIT_SETTINGS(object)->priv->preferences.get();
 prefs->setShouldRespectImageOrientation(true);
-ExperimentalFeatures features;
-bool cssGridLayoutEnabled = features.isEnabled(ExperimentalFeatures::CSSGridLayout);
-if (prefs->cssGridLayoutEnabled() != cssGridLayoutEnabled)
-prefs->setCSSGridLayoutEnabled(cssGridLayoutEnabled);
 }
 
 static void webKitSettingsSetProperty(GObject* object, guint propId, const GValue* value, GParamSpec* paramSpec)


Deleted: trunk/Source/WebKit2/UIProcess/gtk/ExperimentalFeatures.cpp (211363 => 211364)

--- trunk/Source/WebKit2/UIProcess/gtk/ExperimentalFeatures.cpp	2017-01-30 13:50:37 UTC (rev 211363)
+++ trunk/Source/WebKit2/UIProcess/gtk/ExperimentalFeatures.cpp	2017-01-30 16:35:03 UTC (rev 211364)
@@ -1,86 +0,0 @@
-/*
- * Copyright (c) 2013, Opera Software ASA. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *notice, this list of conditions and the following disclaimer in the
- *documentation and/or other materials provided with the distribution.
- * 3. Neither the name of Opera Software ASA nor the names of its
- *contributors may be used to endorse or promote products derived
- *from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS

[webkit-changes] [211363] trunk

2017-01-30 Thread carlosgc
Title: [211363] trunk








Revision 211363
Author carlo...@webkit.org
Date 2017-01-30 05:50:37 -0800 (Mon, 30 Jan 2017)


Log Message
[GTK] Add API to handle the accelerated compositing policy
https://bugs.webkit.org/show_bug.cgi?id=167509

Reviewed by Michael Catanzaro.

Source/WebKit2:

Now that we have brought back the on demand mode, we should allow applications to choose the policy, without
having to deal with environment variables. Settings also allows to set different policy depending on the web
view, so for example evolution could disable AC for the composer, but leave the on demand mode for the email
viewer. This patch adds a single new setting hardware-acceleration-policy to handle both
acceleratedCompositingEnabled and forceCompositingMode preferences using an enum with values
WEBKIT_HARDWARE_ACCELERATION_POLICY_ON_DEMAND, WEBKIT_HARDWARE_ACCELERATION_POLICY_ALWAYS and
WEBKIT_HARDWARE_ACCELERATION_POLICY_NEVER.

* UIProcess/API/gtk/WebKitSettings.cpp:
(webKitSettingsSetProperty): Add setter for hardware-acceleration-policy property.
(webKitSettingsGetProperty): Add getter for hardware-acceleration-policy property.
(webkit_settings_class_init): Add hardware-acceleration-policy property.
(webkit_settings_get_hardware_acceleration_policy): Return policy according to the preferences.
(webkit_settings_set_hardware_acceleration_policy): set preferences according to the given policy.
* UIProcess/API/gtk/WebKitSettings.h:
* UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt: Add new symbols.
* WebProcess/WebPage/DrawingAreaImpl.cpp:
(WebKit::DrawingAreaImpl::updatePreferences):

Tools:

Handle new setting in MiniBrowser. The settings dialog doesn't support enum settings so it needs to be handled
as a special case. Also add test cases to the get/set API.

* MiniBrowser/gtk/BrowserSettingsDialog.c:
(hardwareAccelerationPolicyToString):
(stringToHardwareAccelerationPolicy):
(cellRendererChanged):
(browserSettingsDialogConstructed):
* TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitSettings.cpp:
(testWebKitSettings):

Modified Paths

trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/UIProcess/API/gtk/WebKitSettings.cpp
trunk/Source/WebKit2/UIProcess/API/gtk/WebKitSettings.h
trunk/Source/WebKit2/UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt
trunk/Source/WebKit2/WebProcess/WebPage/DrawingAreaImpl.cpp
trunk/Tools/ChangeLog
trunk/Tools/MiniBrowser/gtk/BrowserSettingsDialog.c
trunk/Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitSettings.cpp




Diff

Modified: trunk/Source/WebKit2/ChangeLog (211362 => 211363)

--- trunk/Source/WebKit2/ChangeLog	2017-01-30 12:07:15 UTC (rev 211362)
+++ trunk/Source/WebKit2/ChangeLog	2017-01-30 13:50:37 UTC (rev 211363)
@@ -1,3 +1,29 @@
+2017-01-30  Carlos Garcia Campos  
+
+[GTK] Add API to handle the accelerated compositing policy
+https://bugs.webkit.org/show_bug.cgi?id=167509
+
+Reviewed by Michael Catanzaro.
+
+Now that we have brought back the on demand mode, we should allow applications to choose the policy, without
+having to deal with environment variables. Settings also allows to set different policy depending on the web
+view, so for example evolution could disable AC for the composer, but leave the on demand mode for the email
+viewer. This patch adds a single new setting hardware-acceleration-policy to handle both
+acceleratedCompositingEnabled and forceCompositingMode preferences using an enum with values
+WEBKIT_HARDWARE_ACCELERATION_POLICY_ON_DEMAND, WEBKIT_HARDWARE_ACCELERATION_POLICY_ALWAYS and
+WEBKIT_HARDWARE_ACCELERATION_POLICY_NEVER.
+
+* UIProcess/API/gtk/WebKitSettings.cpp:
+(webKitSettingsSetProperty): Add setter for hardware-acceleration-policy property.
+(webKitSettingsGetProperty): Add getter for hardware-acceleration-policy property.
+(webkit_settings_class_init): Add hardware-acceleration-policy property.
+(webkit_settings_get_hardware_acceleration_policy): Return policy according to the preferences.
+(webkit_settings_set_hardware_acceleration_policy): set preferences according to the given policy.
+* UIProcess/API/gtk/WebKitSettings.h:
+* UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt: Add new symbols.
+* WebProcess/WebPage/DrawingAreaImpl.cpp:
+(WebKit::DrawingAreaImpl::updatePreferences):
+
 2017-01-29  Carlos Garcia Campos  
 
 [Threaded Compositor] Crash on WebCore::GLContext::version()


Modified: trunk/Source/WebKit2/UIProcess/API/gtk/WebKitSettings.cpp (211362 => 211363)

--- trunk/Source/WebKit2/UIProcess/API/gtk/WebKitSettings.cpp	2017-01-30 12:07:15 UTC (rev 211362)
+++ trunk/Source/WebKit2/UIProcess/API/gtk/WebKitSettings.cpp	2017-01-30 13:50:37 UTC (rev 211363)
@@ -32,6 +32,7 @@
 #include "WebKitSettings.h"
 
 #include "ExperimentalFeatures.h"
+#include "WebKitEnumTypes.h"
 #include "WebKitPrivate.h"
 #include "WebKitSettingsPrivate.h"
 #include "WebPageProxy.h"
@@ -

[webkit-changes] [211362] trunk/Source/WebKit/mac

2017-01-30 Thread akling
Title: [211362] trunk/Source/WebKit/mac








Revision 211362
Author akl...@apple.com
Date 2017-01-30 04:07:15 -0800 (Mon, 30 Jan 2017)


Log Message
[macOS] WebHTMLView has an internal retain cycle with its flagsChangedEventMonitor.


Reviewed by Antti Koivisto.

Avoid the implicit strong capture of self by keeping it in a __block variable.
Also add code to dealloc to unregister the event monitor, since it will otherwise leak.
This fixes huge WebHTMLView leaks seen on the leaks bot.

* WebView/WebHTMLView.mm:
(-[WebHTMLViewPrivate dealloc]):
(-[WebHTMLView viewDidMoveToWindow]):

Modified Paths

trunk/Source/WebKit/mac/ChangeLog
trunk/Source/WebKit/mac/WebView/WebHTMLView.mm




Diff

Modified: trunk/Source/WebKit/mac/ChangeLog (211361 => 211362)

--- trunk/Source/WebKit/mac/ChangeLog	2017-01-30 10:27:00 UTC (rev 211361)
+++ trunk/Source/WebKit/mac/ChangeLog	2017-01-30 12:07:15 UTC (rev 211362)
@@ -1,3 +1,18 @@
+2017-01-30  Andreas Kling  
+
+[macOS] WebHTMLView has an internal retain cycle with its flagsChangedEventMonitor.
+
+
+Reviewed by Antti Koivisto.
+
+Avoid the implicit strong capture of self by keeping it in a __block variable.
+Also add code to dealloc to unregister the event monitor, since it will otherwise leak.
+This fixes huge WebHTMLView leaks seen on the leaks bot.
+
+* WebView/WebHTMLView.mm:
+(-[WebHTMLViewPrivate dealloc]):
+(-[WebHTMLView viewDidMoveToWindow]):
+
 2017-01-29  Andy Estes  
 
 [QuickLook] Add a WebPreference to enable saving QuickLook documents in WebKitLegacy


Modified: trunk/Source/WebKit/mac/WebView/WebHTMLView.mm (211361 => 211362)

--- trunk/Source/WebKit/mac/WebView/WebHTMLView.mm	2017-01-30 10:27:00 UTC (rev 211361)
+++ trunk/Source/WebKit/mac/WebView/WebHTMLView.mm	2017-01-30 12:07:15 UTC (rev 211362)
@@ -1066,6 +1066,11 @@
 #if !PLATFORM(IOS)
 if (promisedDragTIFFDataSource)
 promisedDragTIFFDataSource->removeClient(promisedDataClient());
+
+if (flagsChangedEventMonitor) {
+[NSEvent removeMonitor:flagsChangedEventMonitor];
+flagsChangedEventMonitor = nil;
+}
 #endif
 
 [super dealloc];
@@ -3504,8 +3509,9 @@
 
 #if !PLATFORM(IOS)
 if (!_private->flagsChangedEventMonitor) {
+__block WebHTMLView *weakSelf = self;
 _private->flagsChangedEventMonitor = [NSEvent addLocalMonitorForEventsMatchingMask:NSEventMaskFlagsChanged handler:^(NSEvent *flagsChangedEvent) {
-[self _postFakeMouseMovedEventForFlagsChangedEvent:flagsChangedEvent];
+[weakSelf _postFakeMouseMovedEventForFlagsChangedEvent:flagsChangedEvent];
 return flagsChangedEvent;
 }];
 }






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


[webkit-changes] [211361] trunk/LayoutTests

2017-01-30 Thread carlosgc
Title: [211361] trunk/LayoutTests








Revision 211361
Author carlo...@webkit.org
Date 2017-01-30 02:27:00 -0800 (Mon, 30 Jan 2017)


Log Message
Unreviewed. Skip more tests timing out in GTK+ bots.

Skip two mores tests that use UIScriptController to generate events and another one expecting native
HTML form validation popover.

* platform/gtk/TestExpectations:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/platform/gtk/TestExpectations




Diff

Modified: trunk/LayoutTests/ChangeLog (211360 => 211361)

--- trunk/LayoutTests/ChangeLog	2017-01-30 10:14:36 UTC (rev 211360)
+++ trunk/LayoutTests/ChangeLog	2017-01-30 10:27:00 UTC (rev 211361)
@@ -1,5 +1,14 @@
 2017-01-30  Carlos Garcia Campos  
 
+Unreviewed. Skip more tests timing out in GTK+ bots.
+
+Skip two mores tests that use UIScriptController to generate events and another one expecting native
+HTML form validation popover.
+
+* platform/gtk/TestExpectations:
+
+2017-01-30  Carlos Garcia Campos  
+
 Unreviewed. Skip form validation tests timing out in GTK+ bots.
 
 * platform/gtk/TestExpectations:


Modified: trunk/LayoutTests/platform/gtk/TestExpectations (211360 => 211361)

--- trunk/LayoutTests/platform/gtk/TestExpectations	2017-01-30 10:14:36 UTC (rev 211360)
+++ trunk/LayoutTests/platform/gtk/TestExpectations	2017-01-30 10:27:00 UTC (rev 211361)
@@ -667,10 +667,12 @@
 # WIRELESS_PLAYBACK_TARGET not enabled.
 media/airplay-target-availability.html
 
-# Skip tests requiring UIScriptController
+# Skip tests requiring UIScriptController to generate events
 webkit.org/b/153833 css3/touch-action/touch-action-manipulation-fast-clicks.html [ Skip ]
 webkit.org/b/153833 fast/events/can-click-element-on-page-with-active-pseudo-class-and-search-field.html [ Skip ]
 webkit.org/b/153833 fast/shadow-dom/touch-event-ios.html [ Skip ]
+webkit.org/b/153833 fast/events/before-input-prevent-insert-replacement.html [ Skip ]
+webkit.org/b/153833 fast/events/input-event-insert-replacement.html [ Skip ]
 
 # Skip tests expecting native HTML form validation popover
 webkit.org/b/167579 fast/forms/validation-bubble-disappears-when-input-detached.html [ Skip ]
@@ -680,6 +682,7 @@
 webkit.org/b/167579 fast/forms/validation-message-detached-iframe.html [ Skip ]
 webkit.org/b/167579 fast/forms/validation-message-detached-iframe2.html [ Skip ]
 webkit.org/b/167579 fast/forms/validation-messages.html [ Skip ]
+webkit.org/b/167579 http/tests/navigation/navigation-dismisses-validation-bubbles.html [ Skip ]
 
 # Tests failing with GStreamer 1.6.3
 webkit.org/b/154390 http/tests/media/video-referer.html [ Failure ]






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


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

2017-01-30 Thread carlosgc
Title: [211360] trunk/Source/WebCore








Revision 211360
Author carlo...@webkit.org
Date 2017-01-30 02:14:36 -0800 (Mon, 30 Jan 2017)


Log Message
Several web timing tests crash in GTK+ and AppleWin bots
https://bugs.webkit.org/show_bug.cgi?id=167577

Reviewed by Ryosuke Niwa.

The problem is that entry is used in both the key, to get name, and in the value with WTFMove. So, the name is
invalidated by the move. It could be fixed by simply copying the name, instead of using entry->name, but I think
that code could be simplified using HashMap::ensure and then we don't need any string copy, nor even the static
insertPerformanceEntry().

Fix crashes in several imported/w3c/web-platform-tests/user-timing/ tests.

* page/PerformanceUserTiming.cpp:
(WebCore::UserTiming::mark):
(WebCore::UserTiming::measure):
(WebCore::insertPerformanceEntry): Deleted.

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/page/PerformanceUserTiming.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (211359 => 211360)

--- trunk/Source/WebCore/ChangeLog	2017-01-30 10:10:40 UTC (rev 211359)
+++ trunk/Source/WebCore/ChangeLog	2017-01-30 10:14:36 UTC (rev 211360)
@@ -1,5 +1,24 @@
 2017-01-30  Carlos Garcia Campos  
 
+Several web timing tests crash in GTK+ and AppleWin bots
+https://bugs.webkit.org/show_bug.cgi?id=167577
+
+Reviewed by Ryosuke Niwa.
+
+The problem is that entry is used in both the key, to get name, and in the value with WTFMove. So, the name is
+invalidated by the move. It could be fixed by simply copying the name, instead of using entry->name, but I think
+that code could be simplified using HashMap::ensure and then we don't need any string copy, nor even the static
+insertPerformanceEntry().
+
+Fix crashes in several imported/w3c/web-platform-tests/user-timing/ tests.
+
+* page/PerformanceUserTiming.cpp:
+(WebCore::UserTiming::mark):
+(WebCore::UserTiming::measure):
+(WebCore::insertPerformanceEntry): Deleted.
+
+2017-01-30  Carlos Garcia Campos  
+
 [Threaded Compositor] Crash in GraphicsContext3D::deleteTexture when destroying TextureMapperPlatformLayerProxy
 https://bugs.webkit.org/show_bug.cgi?id=167575
 


Modified: trunk/Source/WebCore/page/PerformanceUserTiming.cpp (211359 => 211360)

--- trunk/Source/WebCore/page/PerformanceUserTiming.cpp	2017-01-30 10:10:40 UTC (rev 211359)
+++ trunk/Source/WebCore/page/PerformanceUserTiming.cpp	2017-01-30 10:14:36 UTC (rev 211360)
@@ -88,16 +88,6 @@
 {
 }
 
-static void insertPerformanceEntry(PerformanceEntryMap& performanceEntryMap, Ref&& performanceEntry)
-{
-RefPtr entry = WTFMove(performanceEntry);
-auto it = performanceEntryMap.find(entry->name());
-if (it != performanceEntryMap.end())
-it->value.append(WTFMove(entry));
-else
-performanceEntryMap.set(entry->name(), Vector> { WTFMove(entry) });
-}
-
 static void clearPerformanceEntries(PerformanceEntryMap& performanceEntryMap, const String& name)
 {
 if (name.isNull()) {
@@ -113,7 +103,9 @@
 if (restrictedMarkFunction(markName))
 return Exception { SYNTAX_ERR };
 
-insertPerformanceEntry(m_marksMap, PerformanceMark::create(markName, m_performance.now()));
+auto& performanceEntryList = m_marksMap.ensure(markName, [] { return Vector>(); }).iterator->value;
+performanceEntryList.append(PerformanceMark::create(markName, m_performance.now()));
+
 return { };
 }
 
@@ -161,7 +153,9 @@
 endTime = endMarkResult.releaseReturnValue();
 }
 
-insertPerformanceEntry(m_measuresMap, PerformanceMeasure::create(measureName, startTime, endTime));
+auto& performanceEntryList = m_measuresMap.ensure(measureName, [] { return Vector>(); }).iterator->value;
+performanceEntryList.append(PerformanceMeasure::create(measureName, startTime, endTime));
+
 return { };
 }
 






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


[webkit-changes] [211359] trunk/LayoutTests

2017-01-30 Thread carlosgc
Title: [211359] trunk/LayoutTests








Revision 211359
Author carlo...@webkit.org
Date 2017-01-30 02:10:40 -0800 (Mon, 30 Jan 2017)


Log Message
Unreviewed. Skip form validation tests timing out in GTK+ bots.

* platform/gtk/TestExpectations:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/platform/gtk/TestExpectations




Diff

Modified: trunk/LayoutTests/ChangeLog (211358 => 211359)

--- trunk/LayoutTests/ChangeLog	2017-01-30 08:47:30 UTC (rev 211358)
+++ trunk/LayoutTests/ChangeLog	2017-01-30 10:10:40 UTC (rev 211359)
@@ -1,3 +1,9 @@
+2017-01-30  Carlos Garcia Campos  
+
+Unreviewed. Skip form validation tests timing out in GTK+ bots.
+
+* platform/gtk/TestExpectations:
+
 2017-01-29  Nan Wang  
 
 AX: WKContentView needs to implement UITextInput methods to make speak selection highlighting work


Modified: trunk/LayoutTests/platform/gtk/TestExpectations (211358 => 211359)

--- trunk/LayoutTests/platform/gtk/TestExpectations	2017-01-30 08:47:30 UTC (rev 211358)
+++ trunk/LayoutTests/platform/gtk/TestExpectations	2017-01-30 10:10:40 UTC (rev 211359)
@@ -672,6 +672,15 @@
 webkit.org/b/153833 fast/events/can-click-element-on-page-with-active-pseudo-class-and-search-field.html [ Skip ]
 webkit.org/b/153833 fast/shadow-dom/touch-event-ios.html [ Skip ]
 
+# Skip tests expecting native HTML form validation popover
+webkit.org/b/167579 fast/forms/validation-bubble-disappears-when-input-detached.html [ Skip ]
+webkit.org/b/167579 fast/forms/validation-bubble-disappears-when-input-moved.html [ Skip ]
+webkit.org/b/167579 fast/forms/validation-bubble-disappears-when-input-no-longer-visible.html [ Skip ]
+webkit.org/b/167579 fast/forms/validation-custom-message.html [ Skip ]
+webkit.org/b/167579 fast/forms/validation-message-detached-iframe.html [ Skip ]
+webkit.org/b/167579 fast/forms/validation-message-detached-iframe2.html [ Skip ]
+webkit.org/b/167579 fast/forms/validation-messages.html [ Skip ]
+
 # Tests failing with GStreamer 1.6.3
 webkit.org/b/154390 http/tests/media/video-referer.html [ Failure ]
 webkit.org/b/154390 http/tests/media/video-cancel-load.html [ Pass Timeout Failure ]






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


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

2017-01-30 Thread carlosgc
Title: [211358] trunk/Source/WebCore








Revision 211358
Author carlo...@webkit.org
Date 2017-01-30 00:47:30 -0800 (Mon, 30 Jan 2017)


Log Message
[Threaded Compositor] Crash in GraphicsContext3D::deleteTexture when destroying TextureMapperPlatformLayerProxy
https://bugs.webkit.org/show_bug.cgi?id=167575

Reviewed by Žan Doberšek.

We should clear all the buffers on invalidate to ensure we don't have textures alive after CoordinatedGraphicsScene::purgeGLResources().

Fix crash in media/video-poster-background.html.

* platform/graphics/texmap/TextureMapperPlatformLayerProxy.cpp:
(WebCore::TextureMapperPlatformLayerProxy::invalidate): Clear current, pending and all used buffers.

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/graphics/texmap/TextureMapperPlatformLayerProxy.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (211357 => 211358)

--- trunk/Source/WebCore/ChangeLog	2017-01-30 05:55:34 UTC (rev 211357)
+++ trunk/Source/WebCore/ChangeLog	2017-01-30 08:47:30 UTC (rev 211358)
@@ -1,3 +1,17 @@
+2017-01-30  Carlos Garcia Campos  
+
+[Threaded Compositor] Crash in GraphicsContext3D::deleteTexture when destroying TextureMapperPlatformLayerProxy
+https://bugs.webkit.org/show_bug.cgi?id=167575
+
+Reviewed by Žan Doberšek.
+
+We should clear all the buffers on invalidate to ensure we don't have textures alive after CoordinatedGraphicsScene::purgeGLResources().
+
+Fix crash in media/video-poster-background.html.
+
+* platform/graphics/texmap/TextureMapperPlatformLayerProxy.cpp:
+(WebCore::TextureMapperPlatformLayerProxy::invalidate): Clear current, pending and all used buffers.
+
 2017-01-29  Carlos Garcia Campos  
 
 [Threaded Compositor] Crash on WebCore::GLContext::version()


Modified: trunk/Source/WebCore/platform/graphics/texmap/TextureMapperPlatformLayerProxy.cpp (211357 => 211358)

--- trunk/Source/WebCore/platform/graphics/texmap/TextureMapperPlatformLayerProxy.cpp	2017-01-30 05:55:34 UTC (rev 211357)
+++ trunk/Source/WebCore/platform/graphics/texmap/TextureMapperPlatformLayerProxy.cpp	2017-01-30 08:47:30 UTC (rev 211358)
@@ -78,6 +78,11 @@
 m_compositor = nullptr;
 m_targetLayer = nullptr;
 
+m_currentBuffer = nullptr;
+m_pendingBuffer = nullptr;
+m_releaseUnusedBuffersTimer.stop();
+m_usedBuffers.clear();
+
 // Clear the timer and dispatch the update function manually now.
 m_compositorThreadUpdateTimer = nullptr;
 if (!m_compositorThreadUpdateFunction)






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