[webkit-changes] [199808] trunk/Tools

2016-04-20 Thread simon . fraser
Title: [199808] trunk/Tools








Revision 199808
Author simon.fra...@apple.com
Date 2016-04-20 22:04:47 -0700 (Wed, 20 Apr 2016)


Log Message
Add content animation tests to benchmark_runner, and allow the runner to collect device data as part of the results
https://bugs.webkit.org/show_bug.cgi?id=156827

Update the .plan file now that the files are present in SVN.

* Scripts/webkitpy/benchmark_runner/data/plans/content-animation.plan:

Modified Paths

trunk/Tools/ChangeLog
trunk/Tools/Scripts/webkitpy/benchmark_runner/data/plans/content-animation.plan




Diff

Modified: trunk/Tools/ChangeLog (199807 => 199808)

--- trunk/Tools/ChangeLog	2016-04-21 05:02:23 UTC (rev 199807)
+++ trunk/Tools/ChangeLog	2016-04-21 05:04:47 UTC (rev 199808)
@@ -2,6 +2,15 @@
 
 Add content animation tests to benchmark_runner, and allow the runner to collect device data as part of the results
 https://bugs.webkit.org/show_bug.cgi?id=156827
+
+Update the .plan file now that the files are present in SVN.
+
+* Scripts/webkitpy/benchmark_runner/data/plans/content-animation.plan:
+
+2016-04-20  Simon Fraser  
+
+Add content animation tests to benchmark_runner, and allow the runner to collect device data as part of the results
+https://bugs.webkit.org/show_bug.cgi?id=156827
 rdar://problem/24358135
 
 Reviewed by Stephanie Lewis.


Modified: trunk/Tools/Scripts/webkitpy/benchmark_runner/data/plans/content-animation.plan (199807 => 199808)

--- trunk/Tools/Scripts/webkitpy/benchmark_runner/data/plans/content-animation.plan	2016-04-21 05:02:23 UTC (rev 199807)
+++ trunk/Tools/Scripts/webkitpy/benchmark_runner/data/plans/content-animation.plan	2016-04-21 05:04:47 UTC (rev 199808)
@@ -1,7 +1,7 @@
 {
 "timeout": 120,
 "count": 5,
-"svn_source": "https://svn.webkit.org/repository/webkit/trunk/PerformanceTests/Animometer/@r",
+"svn_source": "https://svn.webkit.org/repository/webkit/trunk/PerformanceTests/Animation/@r199806",
 "test_files": [
 	"css-animation.html",
 	"raf-animation.html"






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


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

2016-04-20 Thread cdumez
Title: [199807] trunk/Source/WebCore








Revision 199807
Author cdu...@apple.com
Date 2016-04-20 22:02:23 -0700 (Wed, 20 Apr 2016)


Log Message
Crash under WebCore::TextIterator::subrange()
https://bugs.webkit.org/show_bug.cgi?id=156809


Reviewed by Ryosuke Niwa.

TextIterator::rangeFromLocationAndLength() may return null. However, we
failed to do a null check before calling TextIterator::subrange() with
that range.

No new tests, do not know how to reproduce.

* editing/AlternativeTextController.cpp:
(WebCore::AlternativeTextController::applyAlternativeTextToRange):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/editing/AlternativeTextController.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (199806 => 199807)

--- trunk/Source/WebCore/ChangeLog	2016-04-21 05:01:42 UTC (rev 199806)
+++ trunk/Source/WebCore/ChangeLog	2016-04-21 05:02:23 UTC (rev 199807)
@@ -1,3 +1,20 @@
+2016-04-20  Chris Dumez  
+
+Crash under WebCore::TextIterator::subrange()
+https://bugs.webkit.org/show_bug.cgi?id=156809
+
+
+Reviewed by Ryosuke Niwa.
+
+TextIterator::rangeFromLocationAndLength() may return null. However, we
+failed to do a null check before calling TextIterator::subrange() with
+that range.
+
+No new tests, do not know how to reproduce.
+
+* editing/AlternativeTextController.cpp:
+(WebCore::AlternativeTextController::applyAlternativeTextToRange):
+
 2016-04-20  Brady Eidson  
 
 Modern IDB (Workers): Remove IDBRequest/IDBOpenDBRequest's requirement to get an IDBServerConnection around.


Modified: trunk/Source/WebCore/editing/AlternativeTextController.cpp (199806 => 199807)

--- trunk/Source/WebCore/editing/AlternativeTextController.cpp	2016-04-21 05:01:42 UTC (rev 199806)
+++ trunk/Source/WebCore/editing/AlternativeTextController.cpp	2016-04-21 05:02:23 UTC (rev 199807)
@@ -273,6 +273,8 @@
 applyCommand(SpellingCorrectionCommand::create(rangeWithAlternative.ptr(), alternative));
 // Recalculate pragraphRangeContainingCorrection, since SpellingCorrectionCommand modified the DOM, such that the original paragraphRangeContainingCorrection is no longer valid. Radar: 10305315 Bugzilla: 89526
 paragraphRangeContainingCorrection = TextIterator::rangeFromLocationAndLength(&rootNode, paragraphStartIndex, correctionStartOffsetInParagraph + alternative.length());
+if (!paragraphRangeContainingCorrection)
+return;
 
 setEnd(paragraphRangeContainingCorrection.get(), m_frame.selection().selection().start());
 RefPtr replacementRange = TextIterator::subrange(paragraphRangeContainingCorrection.get(), correctionStartOffsetInParagraph, alternative.length());






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


[webkit-changes] [199806] trunk/PerformanceTests

2016-04-20 Thread simon . fraser
Title: [199806] trunk/PerformanceTests








Revision 199806
Author simon.fra...@apple.com
Date 2016-04-20 22:01:42 -0700 (Wed, 20 Apr 2016)


Log Message
Add content animation tests to benchmark_runner, and allow the runner to collect device data as part of the results
https://bugs.webkit.org/show_bug.cgi?id=156827

Add two files missing from the previous commit.

* Animation/css-animation.html: Added.
* Animation/raf-animation.html: Added.

Modified Paths

trunk/PerformanceTests/ChangeLog


Added Paths

trunk/PerformanceTests/Animation/css-animation.html
trunk/PerformanceTests/Animation/raf-animation.html




Diff

Added: trunk/PerformanceTests/Animation/css-animation.html (0 => 199806)

--- trunk/PerformanceTests/Animation/css-animation.html	(rev 0)
+++ trunk/PerformanceTests/Animation/css-animation.html	2016-04-21 05:01:42 UTC (rev 199806)
@@ -0,0 +1,181 @@
+
+
+
+
+
+
+body {
+margin: 0;
+}
+#stage {
+position: relative;
+width: 320px;
+height: 320px;
+border: 1px solid black;
+overflow: hidden;
+}
+
+.particle {
+position: absolute;
+height: 20px;
+width: 20px;
+background-color: blue;
+border-radius: 50%;
+animation: horizontal infinite 2s alternate ease-in-out, vertical infinite 2s alternate ease-in-out;
+}
+
+@keyframes horizontal {
+from {
+left: 0;
+}
+50% {
+left: 300px;
+}
+to {
+left: 0;
+}
+}
+
+@keyframes vertical {
+from {
+top: 0;
+}
+50% {
+top: 300px;
+}
+to {
+top: 0;
+}
+}
+
+
+
+var animationDuration = 2;
+
+function randomInt(min, max)
+{
+return Math.round(this.random(min, max));
+}
+
+function random(min, max)
+{
+return (Math.random() * (max - min)) + min;
+}
+
+function randomColor()
+{
+var min = 32;
+var max = 256 - 32;
+return "#"
++ this.randomInt(min, max).toString(16)
++ this.randomInt(min, max).toString(16)
++ this.randomInt(min, max).toString(16);
+}
+
+function Point(x, y)
+{
+this.x = x;
+this.y = y;
+}
+
+Point.pointOnCircle = function(angle, radius)
+{
+return new Point(radius * Math.cos(angle), radius * Math.sin(angle));
+}
+
+Point.prototype =
+{
+add: function(other)
+{
+if(isNaN(other.x))
+return new Point(this.x + other, this.y + other);
+return new Point(this.x + other.x, this.y + other.y);
+},
+
+subtract: function(other)
+{
+if(isNaN(other.x))
+return new Point(this.x - other, this.y - other);
+return new Point(this.x - other.x, this.y - other.y);
+},
+
+move: function(angle, velocity, timeDelta)
+{
+return this.add(Point.pointOnCircle(angle, velocity * (timeDelta / 1000)));
+},
+
+multiply: function(other)
+{
+if(isNaN(other.x))
+return new Point(this.x * other, this.y * other);
+return new Point(this.x * other.x, this.y * other.y);
+},
+
+length: function() {
+return Math.sqrt( this.x * this.x + this.y * this.y );
+},
+
+normalize: function() {
+var l = Math.sqrt( this.x * this.x + this.y * this.y );
+this.x /= l;
+this.y /= l;
+return this;
+}
+}
+
+function Particle(maxPosition)
+{
+this.element = document.createElement('div');
+this.element.className = 'particle';
+this.element.style.backgroundColor = randomColor();
+var slop = 0.2;
+this.element.style.animationDuration = random(animationDuration - slop, animationDuration + slop) + 's, ' + random(animationDuration - slop, animationDuration + slop) + 's';
+this.element.style.animationDelay = '-' + random(0, animationDuration) + 's';
+this.maxPosition = maxPosition;
+this.reset();
+this.move();
+}
+
+Particle.prototype =
+{
+reset: function()
+{
+this.size = new Point(20, 20);
+this.maxLocation = this.maxPosition.subtract(this.size);
+this.posit

[webkit-changes] [199805] trunk

2016-04-20 Thread simon . fraser
Title: [199805] trunk








Revision 199805
Author simon.fra...@apple.com
Date 2016-04-20 21:56:57 -0700 (Wed, 20 Apr 2016)


Log Message
Add content animation tests to benchmark_runner, and allow the runner to collect device data as part of the results
https://bugs.webkit.org/show_bug.cgi?id=156827
PerformanceTests:

Reviewed by Stephanie Lewis.

Two new files for the content-animation suite.

After patching for use in the benchmark, these tests are a little different to other benchmarks.
The test content itself does not collect performance data; the tests spit out a boilerplate JSON
result with a placeholder for framerate, which is collected in native code.

When run as a benchmark, test completion involves a couple of bounces between the test and MobileSafari.
Test completion is initiated by a setTimeout() in the test, at which point location.hash is set to "#done".
MobileSafari detects that, and asynchronously dumps performance data. Once this is complete, MobileSafari
changes the URL has to "#submit", which triggers the XHR to the test relay that indicates the test is
complete.

* Animation/css-animation.html: Added.
* Animation/raf-animation.html: Added.

Tools:

rdar://problem/24358135

Reviewed by Stephanie Lewis.

Enhance benchmark_runner so that a benchmark can load a set of tests sequentially,
and collate results across them. Also add the ability for the browser_driver to supply
additional results, allowing for tests that collect results data in native code, rather
than generating it in the web page.

Add a set of "content animation" tests that use this new functionality, which test
CSS animation and requestAnimationFrame performance.

'plan' files have two new optional keys:
'test_files': a list of files to run as a suite
'options': optional parameters. Currently supports one new option,
'animation_command', which affects the way that iOS tests are run,
and is passed to MobileSafari as a parameter on launch.

* Scripts/webkitpy/benchmark_runner/benchmark_runner.py:
(BenchmarkRunner.__init__): If options is not specified in the plan file, set it to an empty dictionary.
(BenchmarkRunner._get_result): Allow the browser_driver to modify the test results.
(BenchmarkRunner):
(BenchmarkRunner._run_one_test): Factored out of _run_benchmark, this contains logic for
running a single test. It starts and stops the http_server_driver.
(BenchmarkRunner._run_benchmark): Run a test in the traditional way if the plan has an 'entry_point'
key, otherwise look for the new 'test_files' and load each in a loop.
(BenchmarkRunner._dump):
* Scripts/webkitpy/benchmark_runner/browser_driver/browser_driver.py:
(BrowserDriver.launch_url): Pass options.
(BrowserDriver.add_additional_results): Allow a driver to supply additional results.
(BrowserDriver):
* Scripts/webkitpy/benchmark_runner/browser_driver/gtk_minibrowser_driver.py:
(GTKMiniBrowserDriver.launch_url):
* Scripts/webkitpy/benchmark_runner/browser_driver/osx_browser_driver.py:
(OSXBrowserDriver.close_browsers):
(OSXBrowserDriver._terminate_processes): Fix spelling mistake.
(OSXBrowserDriver._terminiate_processes): Deleted.
* Scripts/webkitpy/benchmark_runner/browser_driver/osx_chrome_driver.py:
(OSXChromeDriver.launch_url):
(OSXChromeCanaryDriver.launch_url):
* Scripts/webkitpy/benchmark_runner/browser_driver/osx_firefox_driver.py:
(OSXFirefoxDriver.launch_url):
(OSXFirefoxNightlyDriver.launch_url):
* Scripts/webkitpy/benchmark_runner/browser_driver/osx_safari_driver.py:
(OSXSafariDriver.launch_url):
* Scripts/webkitpy/benchmark_runner/data/patches/ContentAnimation.patch: Added.
* Scripts/webkitpy/benchmark_runner/data/plans/content-animation.plan: Added.

Modified Paths

trunk/PerformanceTests/ChangeLog
trunk/Tools/ChangeLog
trunk/Tools/Scripts/webkitpy/benchmark_runner/benchmark_runner.py
trunk/Tools/Scripts/webkitpy/benchmark_runner/browser_driver/browser_driver.py
trunk/Tools/Scripts/webkitpy/benchmark_runner/browser_driver/gtk_minibrowser_driver.py
trunk/Tools/Scripts/webkitpy/benchmark_runner/browser_driver/osx_browser_driver.py
trunk/Tools/Scripts/webkitpy/benchmark_runner/browser_driver/osx_chrome_driver.py
trunk/Tools/Scripts/webkitpy/benchmark_runner/browser_driver/osx_firefox_driver.py
trunk/Tools/Scripts/webkitpy/benchmark_runner/browser_driver/osx_safari_driver.py


Added Paths

trunk/Tools/Scripts/webkitpy/benchmark_runner/data/patches/ContentAnimation.patch
trunk/Tools/Scripts/webkitpy/benchmark_runner/data/plans/content-animation.plan




Diff

Modified: trunk/PerformanceTests/ChangeLog (199804 => 199805)

--- trunk/PerformanceTests/ChangeLog	2016-04-21 04:42:17 UTC (rev 199804)
+++ trunk/PerformanceTests/ChangeLog	2016-04-21 04:56:57 UTC (rev 199805)
@@ -1,3 +1,25 @@
+2016-04-20  Simon Fraser  
+
+Add content animation tests to benchmark_runner, and allow the runner to collect device data as part of the results
+https://bugs.webkit.org/show_bug.cgi?id=156827
+
+Reviewed by Stephanie Lewis.
+
+ 

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

2016-04-20 Thread beidson
Title: [199804] trunk/Source/WebCore








Revision 199804
Author beid...@apple.com
Date 2016-04-20 21:42:17 -0700 (Wed, 20 Apr 2016)


Log Message
Modern IDB (Workers): Remove IDBRequest/IDBOpenDBRequest's requirement to get an IDBServerConnection around.
https://bugs.webkit.org/show_bug.cgi?id=156826

Reviewed by Alex Christensen.

No new tests (No behavior change, existing tests pass).

This doesn't appear to do much but make things a little more complicated, but it's the first of a few
small pushes in the right direction.

* Modules/indexeddb/IDBOpenDBRequest.cpp:
(WebCore::IDBOpenDBRequest::maybeCreateDeleteRequest):
(WebCore::IDBOpenDBRequest::maybeCreateOpenRequest):
(WebCore::IDBOpenDBRequest::IDBOpenDBRequest):
(WebCore::IDBOpenDBRequest::onSuccess):
(WebCore::IDBOpenDBRequest::onUpgradeNeeded):
(WebCore::IDBOpenDBRequest::requestCompleted):
(WebCore::IDBOpenDBRequest::createDeleteRequest): Deleted.
(WebCore::IDBOpenDBRequest::createOpenRequest): Deleted.
* Modules/indexeddb/IDBOpenDBRequest.h:

* Modules/indexeddb/IDBRequest.cpp:
(WebCore::IDBRequest::IDBRequest):
(WebCore::IDBRequest::connectionToServer):
* Modules/indexeddb/IDBRequest.h:
(WebCore::IDBRequest::connection): Deleted.

* Modules/indexeddb/client/IDBConnectionProxy.cpp:
(WebCore::IDBClient::IDBConnectionProxy::IDBConnectionProxy):
(WebCore::IDBClient::IDBConnectionProxy::connectionToServer):
(WebCore::IDBClient::IDBConnectionProxy::openDatabase):
(WebCore::IDBClient::IDBConnectionProxy::deleteDatabase):
* Modules/indexeddb/client/IDBConnectionProxy.h:
(WebCore::IDBClient::IDBConnectionProxy::serverConnectionIdentifier):

* Modules/indexeddb/shared/IDBResourceIdentifier.cpp:
(WebCore::IDBResourceIdentifier::IDBResourceIdentifier):
* Modules/indexeddb/shared/IDBResourceIdentifier.h:

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Modules/indexeddb/IDBOpenDBRequest.cpp
trunk/Source/WebCore/Modules/indexeddb/IDBOpenDBRequest.h
trunk/Source/WebCore/Modules/indexeddb/IDBRequest.cpp
trunk/Source/WebCore/Modules/indexeddb/IDBRequest.h
trunk/Source/WebCore/Modules/indexeddb/client/IDBConnectionProxy.cpp
trunk/Source/WebCore/Modules/indexeddb/client/IDBConnectionProxy.h
trunk/Source/WebCore/Modules/indexeddb/shared/IDBResourceIdentifier.cpp
trunk/Source/WebCore/Modules/indexeddb/shared/IDBResourceIdentifier.h




Diff

Modified: trunk/Source/WebCore/ChangeLog (199803 => 199804)

--- trunk/Source/WebCore/ChangeLog	2016-04-21 04:40:18 UTC (rev 199803)
+++ trunk/Source/WebCore/ChangeLog	2016-04-21 04:42:17 UTC (rev 199804)
@@ -1,3 +1,44 @@
+2016-04-20  Brady Eidson  
+
+Modern IDB (Workers): Remove IDBRequest/IDBOpenDBRequest's requirement to get an IDBServerConnection around.
+https://bugs.webkit.org/show_bug.cgi?id=156826
+
+Reviewed by Alex Christensen.
+
+No new tests (No behavior change, existing tests pass).
+
+This doesn't appear to do much but make things a little more complicated, but it's the first of a few 
+small pushes in the right direction.
+
+* Modules/indexeddb/IDBOpenDBRequest.cpp:
+(WebCore::IDBOpenDBRequest::maybeCreateDeleteRequest):
+(WebCore::IDBOpenDBRequest::maybeCreateOpenRequest):
+(WebCore::IDBOpenDBRequest::IDBOpenDBRequest):
+(WebCore::IDBOpenDBRequest::onSuccess):
+(WebCore::IDBOpenDBRequest::onUpgradeNeeded):
+(WebCore::IDBOpenDBRequest::requestCompleted):
+(WebCore::IDBOpenDBRequest::createDeleteRequest): Deleted.
+(WebCore::IDBOpenDBRequest::createOpenRequest): Deleted.
+* Modules/indexeddb/IDBOpenDBRequest.h:
+
+* Modules/indexeddb/IDBRequest.cpp:
+(WebCore::IDBRequest::IDBRequest):
+(WebCore::IDBRequest::connectionToServer):
+* Modules/indexeddb/IDBRequest.h:
+(WebCore::IDBRequest::connection): Deleted.
+
+* Modules/indexeddb/client/IDBConnectionProxy.cpp:
+(WebCore::IDBClient::IDBConnectionProxy::IDBConnectionProxy):
+(WebCore::IDBClient::IDBConnectionProxy::connectionToServer):
+(WebCore::IDBClient::IDBConnectionProxy::openDatabase):
+(WebCore::IDBClient::IDBConnectionProxy::deleteDatabase):
+* Modules/indexeddb/client/IDBConnectionProxy.h:
+(WebCore::IDBClient::IDBConnectionProxy::serverConnectionIdentifier):
+
+* Modules/indexeddb/shared/IDBResourceIdentifier.cpp:
+(WebCore::IDBResourceIdentifier::IDBResourceIdentifier):
+* Modules/indexeddb/shared/IDBResourceIdentifier.h:
+
 2016-04-20  John Wilander  
 
 Add Subresource Integrity as "Under consideration".


Modified: trunk/Source/WebCore/Modules/indexeddb/IDBOpenDBRequest.cpp (199803 => 199804)

--- trunk/Source/WebCore/Modules/indexeddb/IDBOpenDBRequest.cpp	2016-04-21 04:40:18 UTC (rev 199803)
+++ trunk/Source/WebCore/Modules/indexeddb/IDBOpenDBRequest.cpp	2016-04-21 04:42:17 UTC (rev 199804)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2015 Apple Inc. Al

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

2016-04-20 Thread ggaren
Title: [199803] trunk/Source/_javascript_Core








Revision 199803
Author gga...@apple.com
Date 2016-04-20 21:40:18 -0700 (Wed, 20 Apr 2016)


Log Message
_javascript_Core garbage collection is missing an autorelease pool
https://bugs.webkit.org/show_bug.cgi?id=156751


Reviewed by Mark Lam.

* heap/Heap.cpp:
(JSC::Heap::releaseDelayedReleasedObjects): Add an autorelease pool to
catch autoreleases when we call out to arbitrary ObjC code.

We use the C interface here because this is not an ObjC compilation unit.

Modified Paths

trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/heap/Heap.cpp
trunk/Source/_javascript_Core/heap/Heap.h
trunk/Source/_javascript_Core/heap/HeapInlines.h




Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (199802 => 199803)

--- trunk/Source/_javascript_Core/ChangeLog	2016-04-21 04:25:02 UTC (rev 199802)
+++ trunk/Source/_javascript_Core/ChangeLog	2016-04-21 04:40:18 UTC (rev 199803)
@@ -1,3 +1,17 @@
+2016-04-20  Geoffrey Garen  
+
+_javascript_Core garbage collection is missing an autorelease pool
+https://bugs.webkit.org/show_bug.cgi?id=156751
+
+
+Reviewed by Mark Lam.
+
+* heap/Heap.cpp:
+(JSC::Heap::releaseDelayedReleasedObjects): Add an autorelease pool to
+catch autoreleases when we call out to arbitrary ObjC code.
+
+We use the C interface here because this is not an ObjC compilation unit.
+
 2016-04-20  Filip Pizlo  
 
 DFG del_by_id support forgets to set()


Modified: trunk/Source/_javascript_Core/heap/Heap.cpp (199802 => 199803)

--- trunk/Source/_javascript_Core/heap/Heap.cpp	2016-04-21 04:25:02 UTC (rev 199802)
+++ trunk/Source/_javascript_Core/heap/Heap.cpp	2016-04-21 04:40:18 UTC (rev 199803)
@@ -58,6 +58,13 @@
 #include 
 #include 
 
+#if __has_include()
+#include 
+#else
+extern "C" void* objc_autoreleasePoolPush(void);
+extern "C" void objc_autoreleasePoolPop(void *context);
+#endif
+
 using namespace std;
 
 namespace JSC {
@@ -355,7 +362,7 @@
 , m_sweeper(std::make_unique(this))
 #endif
 , m_deferralDepth(0)
-#if USE(CF)
+#if USE(FOUNDATION)
 , m_delayedReleaseRecursionCount(0)
 #endif
 , m_helperClient(&heapHelperPool())
@@ -393,7 +400,7 @@
 
 void Heap::releaseDelayedReleasedObjects()
 {
-#if USE(CF)
+#if USE(FOUNDATION)
 // We need to guard against the case that releasing an object can create more objects due to the
 // release calling into JS. When those JS call(s) exit and all locks are being dropped we end up
 // back here and could try to recursively release objects. We guard that with a recursive entry
@@ -411,7 +418,9 @@
 // We need to drop locks before calling out to arbitrary code.
 JSLock::DropAllLocks dropAllLocks(m_vm);
 
+void* context = objc_autoreleasePoolPush();
 objectsToRelease.clear();
+objc_autoreleasePoolPop(context);
 }
 }
 }


Modified: trunk/Source/_javascript_Core/heap/Heap.h (199802 => 199803)

--- trunk/Source/_javascript_Core/heap/Heap.h	2016-04-21 04:25:02 UTC (rev 199802)
+++ trunk/Source/_javascript_Core/heap/Heap.h	2016-04-21 04:40:18 UTC (rev 199803)
@@ -236,8 +236,8 @@
 
 CodeBlockSet& codeBlockSet() { return m_codeBlocks; }
 
-#if USE(CF)
-template void releaseSoon(RetainPtr&&);
+#if USE(FOUNDATION)
+template void releaseSoon(RetainPtr&&);
 #endif
 
 static bool isZombified(JSCell* cell) { return *(void**)cell == zombifiedBits; }
@@ -435,7 +435,8 @@
 Vector m_suspendedCompilerWorklists;
 
 std::unique_ptr m_verifier;
-#if USE(CF)
+
+#if USE(FOUNDATION)
 Vector> m_delayedReleaseObjects;
 unsigned m_delayedReleaseRecursionCount;
 #endif


Modified: trunk/Source/_javascript_Core/heap/HeapInlines.h (199802 => 199803)

--- trunk/Source/_javascript_Core/heap/HeapInlines.h	2016-04-21 04:25:02 UTC (rev 199802)
+++ trunk/Source/_javascript_Core/heap/HeapInlines.h	2016-04-21 04:40:18 UTC (rev 199803)
@@ -256,7 +256,7 @@
 #endif
 }
 
-#if USE(CF)
+#if USE(FOUNDATION)
 template 
 inline void Heap::releaseSoon(RetainPtr&& object)
 {






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


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

2016-04-20 Thread commit-queue
Title: [199802] trunk/Source/WebCore








Revision 199802
Author commit-qu...@webkit.org
Date 2016-04-20 21:25:02 -0700 (Wed, 20 Apr 2016)


Log Message
Add Subresource Integrity as "Under consideration".
https://bugs.webkit.org/show_bug.cgi?id=156800

Patch by John Wilander  on 2016-04-20
Reviewed by Alexey Proskuryakov.

No new tests needed.

* features.json:
Added an entry for Subresource Integrity.

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/features.json




Diff

Modified: trunk/Source/WebCore/ChangeLog (199801 => 199802)

--- trunk/Source/WebCore/ChangeLog	2016-04-21 02:35:29 UTC (rev 199801)
+++ trunk/Source/WebCore/ChangeLog	2016-04-21 04:25:02 UTC (rev 199802)
@@ -1,3 +1,15 @@
+2016-04-20  John Wilander  
+
+Add Subresource Integrity as "Under consideration".
+https://bugs.webkit.org/show_bug.cgi?id=156800
+
+Reviewed by Alexey Proskuryakov.
+
+No new tests needed.
+
+* features.json:
+Added an entry for Subresource Integrity.
+
 2016-04-20  Anders Carlsson  
 
 Get rid of a couple of uses of ApplicationCacheStorage::singleton()


Modified: trunk/Source/WebCore/features.json (199801 => 199802)

--- trunk/Source/WebCore/features.json	2016-04-21 02:35:29 UTC (rev 199801)
+++ trunk/Source/WebCore/features.json	2016-04-21 04:25:02 UTC (rev 199802)
@@ -659,6 +659,19 @@
 }
 },
 {
+"name": "Subresource Integrity",
+"status": {
+"status": "Under Consideration"
+},
+"url": "https://w3c.github.io/webappsec-subresource-integrity/",
+"description": "Extends script and link elements with an integrity attribute that contains a cryptographic hash of the representation of the resource the author expects to load.",
+"contact": {
+"name": "Jonathan Davis",
+"email": "web-evangel...@apple.com",
+"twitter": "@jonathandavis"
+}
+},
+{
 "name": "Template Element",
 "status": {
 "status": "Done",






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


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

2016-04-20 Thread fpizlo
Title: [199801] trunk/Source/_javascript_Core








Revision 199801
Author fpi...@apple.com
Date 2016-04-20 19:35:29 -0700 (Wed, 20 Apr 2016)


Log Message
DFG del_by_id support forgets to set()
https://bugs.webkit.org/show_bug.cgi?id=156830

Reviewed by Saam Barati.

* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::parseBlock):
* tests/stress/dfg-del-by-id.js: Added.

Modified Paths

trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/dfg/DFGByteCodeParser.cpp


Added Paths

trunk/Source/_javascript_Core/tests/stress/dfg-del-by-id.js




Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (199800 => 199801)

--- trunk/Source/_javascript_Core/ChangeLog	2016-04-21 00:55:03 UTC (rev 199800)
+++ trunk/Source/_javascript_Core/ChangeLog	2016-04-21 02:35:29 UTC (rev 199801)
@@ -1,3 +1,14 @@
+2016-04-20  Filip Pizlo  
+
+DFG del_by_id support forgets to set()
+https://bugs.webkit.org/show_bug.cgi?id=156830
+
+Reviewed by Saam Barati.
+
+* dfg/DFGByteCodeParser.cpp:
+(JSC::DFG::ByteCodeParser::parseBlock):
+* tests/stress/dfg-del-by-id.js: Added.
+
 2016-04-20  Saam barati  
 
 Improve sampling profiler CLI JSC tool


Modified: trunk/Source/_javascript_Core/dfg/DFGByteCodeParser.cpp (199800 => 199801)

--- trunk/Source/_javascript_Core/dfg/DFGByteCodeParser.cpp	2016-04-21 00:55:03 UTC (rev 199800)
+++ trunk/Source/_javascript_Core/dfg/DFGByteCodeParser.cpp	2016-04-21 02:35:29 UTC (rev 199801)
@@ -4044,7 +4044,8 @@
 case op_del_by_id: {
 Node* base = get(VirtualRegister(currentInstruction[2].u.operand));
 unsigned identifierNumber = m_inlineStackTop->m_identifierRemap[currentInstruction[3].u.operand];
-addToGraph(DeleteById, OpInfo(identifierNumber), base);
+set(VirtualRegister(currentInstruction[1].u.operand),
+addToGraph(DeleteById, OpInfo(identifierNumber), base));
 NEXT_OPCODE(op_del_by_id);
 }
 


Added: trunk/Source/_javascript_Core/tests/stress/dfg-del-by-id.js (0 => 199801)

--- trunk/Source/_javascript_Core/tests/stress/dfg-del-by-id.js	(rev 0)
+++ trunk/Source/_javascript_Core/tests/stress/dfg-del-by-id.js	2016-04-21 02:35:29 UTC (rev 199801)
@@ -0,0 +1,14 @@
+function foo(o) {
+return delete o.f;
+}
+
+noInline(foo);
+
+for (var i = 0; i < 1; ++i) {
+var o = {f:42};
+var result = foo(o);
+if (result !== true)
+throw "Error: bad result: " + result;
+if ("f" in o)
+throw "Error: \"f\" still in ok";
+}






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


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

2016-04-20 Thread sbarati
Title: [199800] trunk/Source/_javascript_Core








Revision 199800
Author sbar...@apple.com
Date 2016-04-20 17:55:03 -0700 (Wed, 20 Apr 2016)


Log Message
Improve sampling profiler CLI JSC tool
https://bugs.webkit.org/show_bug.cgi?id=156824

Reviewed by Mark Lam.

This patch enhances the Sampling Profiler CLI tool from the JSC shell
to display the JITType of a particular CodeBlock. Because this happens
once we process a log of stack frames, the data for a particular frame
being in LLInt vs. Baseline could be wrong. For example, we may have taken 
a stack trace of a CodeBlock while it was executing in the LLInt, then 
it tiers up to the baseline, then we process the log. We will show such CodeBlocks
as being in the baseline JIT. We could be smarter about this in the future if
it turns out to truly be a problem.

This patch also adds a 'samplingProfilerTimingInterval' JSC option to allow
CLI users to control the sleep time between stack traces.

* jsc.cpp:
(jscmain):
* runtime/Options.h:
* runtime/SamplingProfiler.cpp:
(JSC::SamplingProfiler::SamplingProfiler):
(JSC::SamplingProfiler::processUnverifiedStackTraces):
(JSC::SamplingProfiler::reportTopBytecodes):
* runtime/SamplingProfiler.h:
(JSC::SamplingProfiler::StackFrame::hasExpressionInfo):

Modified Paths

trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/jsc.cpp
trunk/Source/_javascript_Core/runtime/Options.h
trunk/Source/_javascript_Core/runtime/SamplingProfiler.cpp
trunk/Source/_javascript_Core/runtime/SamplingProfiler.h




Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (199799 => 199800)

--- trunk/Source/_javascript_Core/ChangeLog	2016-04-21 00:35:18 UTC (rev 199799)
+++ trunk/Source/_javascript_Core/ChangeLog	2016-04-21 00:55:03 UTC (rev 199800)
@@ -1,3 +1,32 @@
+2016-04-20  Saam barati  
+
+Improve sampling profiler CLI JSC tool
+https://bugs.webkit.org/show_bug.cgi?id=156824
+
+Reviewed by Mark Lam.
+
+This patch enhances the Sampling Profiler CLI tool from the JSC shell
+to display the JITType of a particular CodeBlock. Because this happens
+once we process a log of stack frames, the data for a particular frame
+being in LLInt vs. Baseline could be wrong. For example, we may have taken 
+a stack trace of a CodeBlock while it was executing in the LLInt, then 
+it tiers up to the baseline, then we process the log. We will show such CodeBlocks
+as being in the baseline JIT. We could be smarter about this in the future if
+it turns out to truly be a problem.
+
+This patch also adds a 'samplingProfilerTimingInterval' JSC option to allow
+CLI users to control the sleep time between stack traces.
+
+* jsc.cpp:
+(jscmain):
+* runtime/Options.h:
+* runtime/SamplingProfiler.cpp:
+(JSC::SamplingProfiler::SamplingProfiler):
+(JSC::SamplingProfiler::processUnverifiedStackTraces):
+(JSC::SamplingProfiler::reportTopBytecodes):
+* runtime/SamplingProfiler.h:
+(JSC::SamplingProfiler::StackFrame::hasExpressionInfo):
+
 2016-04-20  Benjamin Poulain  
 
 [JSC] DFG should not generate two jumps when the target of DoubleBranch is the next block  


Modified: trunk/Source/_javascript_Core/jsc.cpp (199799 => 199800)

--- trunk/Source/_javascript_Core/jsc.cpp	2016-04-21 00:35:18 UTC (rev 199799)
+++ trunk/Source/_javascript_Core/jsc.cpp	2016-04-21 00:55:03 UTC (rev 199800)
@@ -2275,6 +2275,7 @@
 
 if (options.m_dumpSamplingProfilerData) {
 #if ENABLE(SAMPLING_PROFILER)
+JSLockHolder locker(vm);
 vm->samplingProfiler()->reportTopFunctions();
 vm->samplingProfiler()->reportTopBytecodes();
 #else


Modified: trunk/Source/_javascript_Core/runtime/Options.h (199799 => 199800)

--- trunk/Source/_javascript_Core/runtime/Options.h	2016-04-21 00:35:18 UTC (rev 199799)
+++ trunk/Source/_javascript_Core/runtime/Options.h	2016-04-21 00:55:03 UTC (rev 199800)
@@ -318,6 +318,7 @@
 v(bool, useTypeProfiler, false, nullptr) \
 v(bool, useControlFlowProfiler, false, nullptr) \
 v(bool, useSamplingProfiler, false, nullptr) \
+v(unsigned, samplingProfilerTimingInterval, 1000, "Time between stack traces in microseconds.") \
 v(bool, collectSamplingProfilerDataForJSCShell, false, "This corresponds to the JSC shell's --reportSamplingProfilerData option.") \
 v(bool, alwaysGeneratePCToCodeOriginMap, false, "This will make sure we always generate a PCToCodeOriginMap for JITed code.") \
 \


Modified: trunk/Source/_javascript_Core/runtime/SamplingProfiler.cpp (199799 => 199800)

--- trunk/Source/_javascript_Core/runtime/SamplingProfiler.cpp	2016-04-21 00:35:18 UTC (rev 199799)
+++ trunk/Source/_javascript_Core/runtime/SamplingProfiler.cpp	2016-04-21 00:55:03 UTC (rev 199800)
@@ -185,7 +185,7 @@
 SamplingProfiler::SamplingProfiler(VM& vm, RefPtr&& stopwatch)
 : m_vm(vm)
 , m_stopwatch(WTFMove(stopwatch))
-, m_timing

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

2016-04-20 Thread andersca
Title: [199798] trunk/Source/WebCore








Revision 199798
Author ander...@apple.com
Date 2016-04-20 16:49:20 -0700 (Wed, 20 Apr 2016)


Log Message
Get rid of a couple of uses of ApplicationCacheStorage::singleton()
https://bugs.webkit.org/show_bug.cgi?id=156818

Reviewed by Geoffrey Garen.

* loader/appcache/ApplicationCache.cpp:
(WebCore::ApplicationCache::addResource):
* loader/appcache/ApplicationCacheGroup.h:
(WebCore::ApplicationCacheGroup::storage):
* testing/Internals.cpp:
(WebCore::Internals::resetToConsistentState):
(WebCore::Internals::setApplicationCacheOriginQuota):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/loader/appcache/ApplicationCache.cpp
trunk/Source/WebCore/loader/appcache/ApplicationCacheGroup.h
trunk/Source/WebCore/testing/Internals.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (199797 => 199798)

--- trunk/Source/WebCore/ChangeLog	2016-04-20 23:43:34 UTC (rev 199797)
+++ trunk/Source/WebCore/ChangeLog	2016-04-20 23:49:20 UTC (rev 199798)
@@ -1,3 +1,18 @@
+2016-04-20  Anders Carlsson  
+
+Get rid of a couple of uses of ApplicationCacheStorage::singleton()
+https://bugs.webkit.org/show_bug.cgi?id=156818
+
+Reviewed by Geoffrey Garen.
+
+* loader/appcache/ApplicationCache.cpp:
+(WebCore::ApplicationCache::addResource):
+* loader/appcache/ApplicationCacheGroup.h:
+(WebCore::ApplicationCacheGroup::storage):
+* testing/Internals.cpp:
+(WebCore::Internals::resetToConsistentState):
+(WebCore::Internals::setApplicationCacheOriginQuota):
+
 2016-04-20  Brady Eidson  
 
 Modern IDB (Workers): Introduce "IDBConnectionProxy" for future threading abstraction, and adopt it in IDBFactory.


Modified: trunk/Source/WebCore/loader/appcache/ApplicationCache.cpp (199797 => 199798)

--- trunk/Source/WebCore/loader/appcache/ApplicationCache.cpp	2016-04-20 23:43:34 UTC (rev 199797)
+++ trunk/Source/WebCore/loader/appcache/ApplicationCache.cpp	2016-04-20 23:49:20 UTC (rev 199798)
@@ -91,7 +91,7 @@
 ASSERT(resource->type() & ApplicationCacheResource::Master);
 
 // Add the resource to the storage.
-ApplicationCacheStorage::singleton().store(resource.get(), this);
+m_group->storage().store(resource.get(), this);
 }
 
 m_estimatedSizeInStorage += resource->estimatedSizeInStorage();


Modified: trunk/Source/WebCore/loader/appcache/ApplicationCacheGroup.h (199797 => 199798)

--- trunk/Source/WebCore/loader/appcache/ApplicationCacheGroup.h	2016-04-20 23:43:34 UTC (rev 199797)
+++ trunk/Source/WebCore/loader/appcache/ApplicationCacheGroup.h	2016-04-20 23:49:20 UTC (rev 199798)
@@ -63,7 +63,8 @@
 
 static void selectCache(Frame*, const URL& manifestURL);
 static void selectCacheWithoutManifestURL(Frame*);
-
+
+ApplicationCacheStorage& storage() { return m_storage; }
 const URL& manifestURL() const { return m_manifestURL; }
 const SecurityOrigin* origin() const { return m_origin.get(); }
 UpdateStatus updateStatus() const { return m_updateStatus; }


Modified: trunk/Source/WebCore/testing/Internals.cpp (199797 => 199798)

--- trunk/Source/WebCore/testing/Internals.cpp	2016-04-20 23:43:34 UTC (rev 199797)
+++ trunk/Source/WebCore/testing/Internals.cpp	2016-04-20 23:49:20 UTC (rev 199798)
@@ -398,7 +398,7 @@
 if (page.mainFrame().editor().isOverwriteModeEnabled())
 page.mainFrame().editor().toggleOverwriteModeEnabled();
 page.mainFrame().loader().clearTestingOverrides();
-ApplicationCacheStorage::singleton().setDefaultOriginQuota(ApplicationCacheStorage::noQuota());
+page.applicationCacheStorage().setDefaultOriginQuota(ApplicationCacheStorage::noQuota());
 #if ENABLE(VIDEO)
 PlatformMediaSessionManager::sharedManager().resetRestrictions();
 PlatformMediaSessionManager::sharedManager().setWillIgnoreSystemInterruptions(true);
@@ -2276,7 +2276,7 @@
 Document* document = contextDocument();
 if (!document)
 return;
-ApplicationCacheStorage::singleton().storeUpdatedQuotaForOrigin(document->securityOrigin(), quota);
+document->page()->applicationCacheStorage().storeUpdatedQuotaForOrigin(document->securityOrigin(), quota);
 }
 
 void Internals::registerURLSchemeAsBypassingContentSecurityPolicy(const String& scheme)






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


[webkit-changes] [199797] trunk

2016-04-20 Thread beidson
Title: [199797] trunk








Revision 199797
Author beid...@apple.com
Date 2016-04-20 16:43:34 -0700 (Wed, 20 Apr 2016)


Log Message
Modern IDB (Workers): Introduce "IDBConnectionProxy" for future threading abstraction, and adopt it in IDBFactory.
https://bugs.webkit.org/show_bug.cgi?id=156810

Reviewed by Alex Christensen.

Source/WebCore:

No new tests (Covered by changes to existing tests).

Add the IDBConnectionProxy object, including the ability to replicate IDBFactory functionality:
* Modules/indexeddb/client/IDBConnectionProxy.cpp: Added.
(WebCore::IDBClient::IDBConnectionProxy::IDBConnectionProxy):
(WebCore::IDBClient::IDBConnectionProxy::openDatabase):
(WebCore::IDBClient::IDBConnectionProxy::deleteDatabase):
* Modules/indexeddb/client/IDBConnectionProxy.h:

Add pure virtual IDBConnectionProxy accessor:
* dom/ScriptExecutionContext.h:

Implement it:
* dom/Document.cpp:
(WebCore::Document::idbConnectionProxy):
* dom/Document.h:

Implement it:
* workers/WorkerGlobalScope.cpp:
(WebCore::WorkerGlobalScope::idbConnectionProxy):
* workers/WorkerGlobalScope.h:

* Modules/indexeddb/DOMWindowIndexedDatabase.cpp:
(WebCore::DOMWindowIndexedDatabase::indexedDB):

Don't keep a reference to IDBConnectionToServer, but rather get at the context's IDBConnectionProxy:
* Modules/indexeddb/IDBFactory.cpp:
(WebCore::IDBFactory::create):
(WebCore::IDBFactory::IDBFactory):
(WebCore::IDBFactory::open):
(WebCore::IDBFactory::openInternal):
(WebCore::IDBFactory::deleteDatabase):
* Modules/indexeddb/IDBFactory.h:
* Modules/indexeddb/IDBFactory.idl:

* Modules/indexeddb/WorkerGlobalScopeIndexedDatabase.cpp:
(WebCore::WorkerGlobalScopeIndexedDatabase::indexedDB):

* Modules/indexeddb/client/IDBConnectionToServer.h:

* inspector/InspectorIndexedDBAgent.cpp:

* CMakeLists.txt:
* WebCore.xcodeproj/project.pbxproj:

LayoutTests:

* storage/indexeddb/intversion-bad-parameters-expected.txt:
* storage/indexeddb/intversion-bad-parameters-private-expected.txt:
* storage/indexeddb/modern/opendatabase-request-event-expected.txt:
* storage/indexeddb/modern/opendatabase-request-event-private-expected.txt:
* storage/indexeddb/modern/opendatabase-request-expected.txt:
* storage/indexeddb/modern/opendatabase-request-private-expected.txt:
* storage/indexeddb/modern/workers-enable-expected.txt:
* storage/indexeddb/version-change-event-basic-expected.txt:
* storage/indexeddb/version-change-event-basic-private-expected.txt:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/storage/indexeddb/intversion-bad-parameters-expected.txt
trunk/LayoutTests/storage/indexeddb/intversion-bad-parameters-private-expected.txt
trunk/LayoutTests/storage/indexeddb/modern/opendatabase-request-event-expected.txt
trunk/LayoutTests/storage/indexeddb/modern/opendatabase-request-event-private-expected.txt
trunk/LayoutTests/storage/indexeddb/modern/opendatabase-request-expected.txt
trunk/LayoutTests/storage/indexeddb/modern/opendatabase-request-private-expected.txt
trunk/LayoutTests/storage/indexeddb/modern/workers-enable-expected.txt
trunk/LayoutTests/storage/indexeddb/version-change-event-basic-expected.txt
trunk/LayoutTests/storage/indexeddb/version-change-event-basic-private-expected.txt
trunk/Source/WebCore/CMakeLists.txt
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Modules/indexeddb/DOMWindowIndexedDatabase.cpp
trunk/Source/WebCore/Modules/indexeddb/IDBFactory.cpp
trunk/Source/WebCore/Modules/indexeddb/IDBFactory.h
trunk/Source/WebCore/Modules/indexeddb/IDBFactory.idl
trunk/Source/WebCore/Modules/indexeddb/WorkerGlobalScopeIndexedDatabase.cpp
trunk/Source/WebCore/Modules/indexeddb/client/IDBConnectionToServer.h
trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj
trunk/Source/WebCore/dom/Document.cpp
trunk/Source/WebCore/dom/Document.h
trunk/Source/WebCore/dom/ScriptExecutionContext.h
trunk/Source/WebCore/inspector/InspectorIndexedDBAgent.cpp
trunk/Source/WebCore/workers/WorkerGlobalScope.cpp
trunk/Source/WebCore/workers/WorkerGlobalScope.h


Added Paths

trunk/Source/WebCore/Modules/indexeddb/client/IDBConnectionProxy.cpp
trunk/Source/WebCore/Modules/indexeddb/client/IDBConnectionProxy.h




Diff

Modified: trunk/LayoutTests/ChangeLog (199796 => 199797)

--- trunk/LayoutTests/ChangeLog	2016-04-20 23:28:29 UTC (rev 199796)
+++ trunk/LayoutTests/ChangeLog	2016-04-20 23:43:34 UTC (rev 199797)
@@ -1,3 +1,20 @@
+2016-04-20  Brady Eidson  
+
+Modern IDB (Workers): Introduce "IDBConnectionProxy" for future threading abstraction, and adopt it in IDBFactory.
+https://bugs.webkit.org/show_bug.cgi?id=156810
+
+Reviewed by Alex Christensen.
+
+* storage/indexeddb/intversion-bad-parameters-expected.txt:
+* storage/indexeddb/intversion-bad-parameters-private-expected.txt:
+* storage/indexeddb/modern/opendatabase-request-event-expected.txt:
+* storage/indexeddb/modern/opendatabase-request-event-private-expected.txt:
+* storage/indexeddb/modern/opendatabase-request-expected.txt:
+* sto

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

2016-04-20 Thread commit-queue
Title: [199796] trunk/Source/_javascript_Core








Revision 199796
Author commit-qu...@webkit.org
Date 2016-04-20 16:28:29 -0700 (Wed, 20 Apr 2016)


Log Message
[JSC] DFG should not generate two jumps when the target of DoubleBranch is the next block
https://bugs.webkit.org/show_bug.cgi?id=156815

Patch by Benjamin Poulain  on 2016-04-20
Reviewed by Mark Lam.

* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compilePeepHoleDoubleBranch):

Modified Paths

trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/dfg/DFGSpeculativeJIT.cpp




Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (199795 => 199796)

--- trunk/Source/_javascript_Core/ChangeLog	2016-04-20 22:56:40 UTC (rev 199795)
+++ trunk/Source/_javascript_Core/ChangeLog	2016-04-20 23:28:29 UTC (rev 199796)
@@ -1,5 +1,15 @@
 2016-04-20  Benjamin Poulain  
 
+[JSC] DFG should not generate two jumps when the target of DoubleBranch is the next block  
+https://bugs.webkit.org/show_bug.cgi?id=156815
+
+Reviewed by Mark Lam.
+
+* dfg/DFGSpeculativeJIT.cpp:
+(JSC::DFG::SpeculativeJIT::compilePeepHoleDoubleBranch):
+
+2016-04-20  Benjamin Poulain  
+
 [JSC] Add register reuse for ArithAdd of an Int32 and constant in DFG
 https://bugs.webkit.org/show_bug.cgi?id=155164
 


Modified: trunk/Source/_javascript_Core/dfg/DFGSpeculativeJIT.cpp (199795 => 199796)

--- trunk/Source/_javascript_Core/dfg/DFGSpeculativeJIT.cpp	2016-04-20 22:56:40 UTC (rev 199795)
+++ trunk/Source/_javascript_Core/dfg/DFGSpeculativeJIT.cpp	2016-04-20 23:28:29 UTC (rev 199796)
@@ -1334,7 +1334,12 @@
 {
 BasicBlock* taken = branchNode->branchData()->taken.block;
 BasicBlock* notTaken = branchNode->branchData()->notTaken.block;
-
+
+if (taken == nextBlock()) {
+condition = MacroAssembler::invert(condition);
+std::swap(taken, notTaken);
+}
+
 SpeculateDoubleOperand op1(this, node->child1());
 SpeculateDoubleOperand op2(this, node->child2());
 






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


[webkit-changes] [199795] trunk

2016-04-20 Thread commit-queue
Title: [199795] trunk








Revision 199795
Author commit-qu...@webkit.org
Date 2016-04-20 15:56:40 -0700 (Wed, 20 Apr 2016)


Log Message
[GTK] Expose AllowUniversalAccessFromFileURLs preference now that calling localStorage.getItem() results in SecurityError: DOM Exception 18
Source/WebKit2:

Patch by Dustin Falgout  on 2016-04-20
Reviewed by Michael Catanzaro.

As of r197858 _javascript_ loaded in the context of a file scheme url cannot access local storage. That is a major
breaking change as many applications that serve files locally rely on having access to local storage. The point
of that security fix is to avoid cases of downloaded HTML content (such as e-mail attachments or JS injected
into local contexts) from having access to your local file system and arbitrary local storage. If you are serving
local files in your applications, you can use the WebKitAllowUniversalAccessFromFileURLs preference key to tell
Webkit that you are approve of these kinds of interactions.

https://bugs.webkit.org/show_bug.cgi?id=156651

* UIProcess/API/gtk/WebKitSettings.cpp:
(webKitSettingsSetProperty):
(webKitSettingsGetProperty):
(webkit_settings_class_init):
(webkit_settings_get_allow_universal_access_from_file_urls):
(webkit_settings_set_allow_universal_access_from_file_urls):
* UIProcess/API/gtk/WebKitSettings.h:
* UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt:

Tools:

https://bugs.webkit.org/show_bug.cgi?id=156651

Patch by Dustin Falgout  on 2016-04-20
Reviewed by Michael Catanzaro.

* 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/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitSettings.cpp




Diff

Modified: trunk/Source/WebKit2/ChangeLog (199794 => 199795)

--- trunk/Source/WebKit2/ChangeLog	2016-04-20 22:51:41 UTC (rev 199794)
+++ trunk/Source/WebKit2/ChangeLog	2016-04-20 22:56:40 UTC (rev 199795)
@@ -1,3 +1,27 @@
+2016-04-20  Dustin Falgout  
+
+[GTK] Expose AllowUniversalAccessFromFileURLs preference now that calling localStorage.getItem() results in SecurityError: DOM Exception 18
+
+Reviewed by Michael Catanzaro.
+
+As of r197858 _javascript_ loaded in the context of a file scheme url cannot access local storage. That is a major 
+breaking change as many applications that serve files locally rely on having access to local storage. The point  
+of that security fix is to avoid cases of downloaded HTML content (such as e-mail attachments or JS injected
+into local contexts) from having access to your local file system and arbitrary local storage. If you are serving 
+local files in your applications, you can use the WebKitAllowUniversalAccessFromFileURLs preference key to tell 
+Webkit that you are approve of these kinds of interactions.
+  
+https://bugs.webkit.org/show_bug.cgi?id=156651
+
+* UIProcess/API/gtk/WebKitSettings.cpp:
+(webKitSettingsSetProperty):
+(webKitSettingsGetProperty):
+(webkit_settings_class_init):
+(webkit_settings_get_allow_universal_access_from_file_urls):
+(webkit_settings_set_allow_universal_access_from_file_urls):
+* UIProcess/API/gtk/WebKitSettings.h:
+* UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt:
+
 2016-04-20  Brady Eidson  
 
 Modern IDB (Workers): Enable INDEXED_DATABASE_IN_WORKERS compile time flag, but disabled in RuntimeEnabledFeatures.


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

--- trunk/Source/WebKit2/UIProcess/API/gtk/WebKitSettings.cpp	2016-04-20 22:51:41 UTC (rev 199794)
+++ trunk/Source/WebKit2/UIProcess/API/gtk/WebKitSettings.cpp	2016-04-20 22:56:40 UTC (rev 199795)
@@ -144,7 +144,8 @@
 PROP_ENABLE_MEDIA_STREAM,
 PROP_ENABLE_SPATIAL_NAVIGATION,
 PROP_ENABLE_MEDIASOURCE,
-PROP_ALLOW_FILE_ACCESS_FROM_FILE_URLS
+PROP_ALLOW_FILE_ACCESS_FROM_FILE_URLS,
+PROP_ALLOW_UNIVERSAL_ACCESS_FROM_FILE_URLS
 };
 
 static void webKitSettingsConstructed(GObject* object)
@@ -313,6 +314,9 @@
 case PROP_ALLOW_FILE_ACCESS_FROM_FILE_URLS:
 webkit_settings_set_allow_file_access_from_file_urls(settings, g_value_get_boolean(value));
 break;
+case PROP_ALLOW_UNIVERSAL_ACCESS_FROM_FILE_URLS:
+webkit_settings_set_allow_universal_access_from_file_urls(settings, g_value_get_boolean(value));
+break;
 default:
 G_OBJECT_WARN_INVALID_PROPERTY_ID(object, propId, paramSpec);
 break;
@@ -471,6 +475,9 @@
 case PROP_ALLOW_FILE_ACCESS_FROM_FILE_URLS:
 g_value_set_boolean(value, webkit_settings_get_allow_file_access_from_file_urls(settings));
 brea

[webkit-changes] [199794] trunk/LayoutTests

2016-04-20 Thread ryanhaddad
Title: [199794] trunk/LayoutTests








Revision 199794
Author ryanhad...@apple.com
Date 2016-04-20 15:51:41 -0700 (Wed, 20 Apr 2016)


Log Message
Marking compositing/webgl/webgl-reflection.html as failing on ios-simulator
https://bugs.webkit.org/show_bug.cgi?id=156812

Unreviewed test gardening.

* platform/ios-simulator/TestExpectations:

Modified Paths

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




Diff

Modified: trunk/LayoutTests/ChangeLog (199793 => 199794)

--- trunk/LayoutTests/ChangeLog	2016-04-20 22:45:04 UTC (rev 199793)
+++ trunk/LayoutTests/ChangeLog	2016-04-20 22:51:41 UTC (rev 199794)
@@ -1,3 +1,12 @@
+2016-04-20  Ryan Haddad  
+
+Marking compositing/webgl/webgl-reflection.html as failing on ios-simulator
+https://bugs.webkit.org/show_bug.cgi?id=156812
+
+Unreviewed test gardening.
+
+* platform/ios-simulator/TestExpectations:
+
 2016-04-20  Joseph Pecoraro  
 
 Web Inspector: console.table(navigator) throws exception about `rowPreview.propertyPreviews.length`


Modified: trunk/LayoutTests/platform/ios-simulator/TestExpectations (199793 => 199794)

--- trunk/LayoutTests/platform/ios-simulator/TestExpectations	2016-04-20 22:45:04 UTC (rev 199793)
+++ trunk/LayoutTests/platform/ios-simulator/TestExpectations	2016-04-20 22:51:41 UTC (rev 199794)
@@ -3044,3 +3044,5 @@
 fast/images/image-map-outline-in-positioned-container.html [ Pass ImageOnlyFailure ]
 fast/images/image-map-outline-with-paint-root-offset.html [ Pass ImageOnlyFailure ]
 fast/images/image-map-outline-with-scale-transform.html [ Pass ImageOnlyFailure ]
+
+webkit.org/b/156812 compositing/webgl/webgl-reflection.html [ Failure ]






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


[webkit-changes] [199793] trunk

2016-04-20 Thread commit-queue
Title: [199793] trunk








Revision 199793
Author commit-qu...@webkit.org
Date 2016-04-20 15:45:04 -0700 (Wed, 20 Apr 2016)


Log Message
Web Inspector: console.table(navigator) throws exception about `rowPreview.propertyPreviews.length`
https://bugs.webkit.org/show_bug.cgi?id=156698


Patch by Joseph Pecoraro  on 2016-04-20
Reviewed by Timothy Hatcher.

Source/WebInspectorUI:

* UserInterface/Views/ConsoleMessageView.js:
(WebInspector.ConsoleMessageView.prototype._formatParameterAsTable):
Handle a row with a value preview but no sub-property previews (a function).

LayoutTests:

* inspector/console/console-table-expected.txt:
* inspector/console/console-table.html:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/inspector/console/console-table-expected.txt
trunk/LayoutTests/inspector/console/console-table.html
trunk/Source/WebInspectorUI/ChangeLog
trunk/Source/WebInspectorUI/UserInterface/Views/ConsoleMessageView.js




Diff

Modified: trunk/LayoutTests/ChangeLog (199792 => 199793)

--- trunk/LayoutTests/ChangeLog	2016-04-20 22:24:32 UTC (rev 199792)
+++ trunk/LayoutTests/ChangeLog	2016-04-20 22:45:04 UTC (rev 199793)
@@ -1,3 +1,14 @@
+2016-04-20  Joseph Pecoraro  
+
+Web Inspector: console.table(navigator) throws exception about `rowPreview.propertyPreviews.length`
+https://bugs.webkit.org/show_bug.cgi?id=156698
+
+
+Reviewed by Timothy Hatcher.
+
+* inspector/console/console-table-expected.txt:
+* inspector/console/console-table.html:
+
 2016-04-20  Ryan Haddad  
 
 Remove flaky expectation for imported/mozilla/svg/image/image-filter-01.svg on ios-simulator-wk2


Modified: trunk/LayoutTests/inspector/console/console-table-expected.txt (199792 => 199793)

--- trunk/LayoutTests/inspector/console/console-table-expected.txt	2016-04-20 22:24:32 UTC (rev 199792)
+++ trunk/LayoutTests/inspector/console/console-table-expected.txt	2016-04-20 22:45:04 UTC (rev 199793)
@@ -1,6 +1,7 @@
 CONSOLE MESSAGE: line 3: 
 CONSOLE MESSAGE: line 3: apple,orange,banana
 CONSOLE MESSAGE: line 3: [object Object]
+CONSOLE MESSAGE: line 3: [object Object]
 CONSOLE MESSAGE: line 3: John,Smith,Jane,Doe,Emily,Jones
 CONSOLE MESSAGE: line 3: [object Object],[object Object],[object Object]
 CONSOLE MESSAGE: line 3: [object Object],[object Object],[object Object]
@@ -141,6 +142,59 @@
   "_request": null
 }
 
+STEP: console.table({f: function(){}, x: 10})
+{
+  "_listeners": null,
+  "_source": "console-api",
+  "_level": "log",
+  "_messageText": "[object Object]",
+  "_type": "table",
+  "_url": null,
+  "_line": 3,
+  "_column": 14,
+  "_repeatCount": 1,
+  "_parameters": [
+{
+  "_type": "object",
+  "_objectId": "",
+  "_description": "Object",
+  "_hasChildren": true,
+  "_preview": {
+"_listeners": null,
+"_type": "object",
+"_description": "Object",
+"_lossless": true,
+"_overflow": false,
+"_properties": [
+  {
+"_listeners": null,
+"_name": "f",
+"_type": "function",
+"_valuePreview": {
+  "_listeners": null,
+  "_type": "function",
+  "_description": "function (){}",
+  "_lossless": true,
+  "_overflow": false,
+  "_properties": null,
+  "_entries": null
+}
+  },
+  {
+"_listeners": null,
+"_name": "x",
+"_type": "number",
+"_value": "10"
+  }
+],
+"_entries": null
+  }
+}
+  ],
+  "_stackTrace": "",
+  "_request": null
+}
+
 STEP: console.table([['John', 'Smith'], ['Jane', 'Doe'], ['Emily', 'Jones']])
 {
   "_listeners": null,


Modified: trunk/LayoutTests/inspector/console/console-table.html (199792 => 199793)

--- trunk/LayoutTests/inspector/console/console-table.html	2016-04-20 22:24:32 UTC (rev 199792)
+++ trunk/LayoutTests/inspector/console/console-table.html	2016-04-20 22:45:04 UTC (rev 199793)
@@ -20,6 +20,7 @@
 "console.table([])", // Empty.
 "console.table(['apple', 'orange', 'banana'])", // Index (array index), Value
 "console.table({firstName: 'John', lastName: 'Smith'})", // Index (property name), Value (property value)
+"console.table({f: function(){}, x: 10})", // Index (property name), Value (property value)
 "console.table([['John', 'Smith'], ['Jane', 'Doe'], ['Emily', 'Jones']])", // Index, 0, 1
 "console.table([john, jane, emily])", // Index, firstName, lastName
 "console.table([john, jane, emily], ['firstName'])", // Index, firstName (at least).


Modified: trunk/Source/WebInspectorUI/ChangeLog (199792 => 199793)

--- trunk/Source/WebInspectorUI/ChangeLog	2016-04-20 22:24:32 UTC (rev 199792)
+++ trunk/Source/WebInspectorUI/ChangeLog	2016-04-20 22:45:04 UTC (rev 199793)
@@ -1,3 +1,15 @@
+2016-04-20  Joseph Pecoraro  
+
+Web Inspector: console.table(navigator)

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

2016-04-20 Thread commit-queue
Title: [199792] trunk/Source/_javascript_Core








Revision 199792
Author commit-qu...@webkit.org
Date 2016-04-20 15:24:32 -0700 (Wed, 20 Apr 2016)


Log Message
[JSC] Add register reuse for ArithAdd of an Int32 and constant in DFG
https://bugs.webkit.org/show_bug.cgi?id=155164

Patch by Benjamin Poulain  on 2016-04-20
Reviewed by Mark Lam.

Every "inc" in loop was looking like this:
move rX, rY
inc rY
jo 0x230f4a200580

This patch add register Reuse to that case to remove
the extra "move".

* dfg/DFGOSRExit.h:
(JSC::DFG::SpeculationRecovery::SpeculationRecovery):
(JSC::DFG::SpeculationRecovery::immediate):
* dfg/DFGOSRExitCompiler32_64.cpp:
(JSC::DFG::OSRExitCompiler::compileExit):
* dfg/DFGOSRExitCompiler64.cpp:
(JSC::DFG::OSRExitCompiler::compileExit):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileArithAdd):
* tests/stress/arith-add-with-constant-overflow.js: Added.
(opaqueAdd):

Modified Paths

trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/assembler/MacroAssembler.h
trunk/Source/_javascript_Core/dfg/DFGOSRExit.h
trunk/Source/_javascript_Core/dfg/DFGOSRExitCompiler32_64.cpp
trunk/Source/_javascript_Core/dfg/DFGOSRExitCompiler64.cpp
trunk/Source/_javascript_Core/dfg/DFGSpeculativeJIT.cpp


Added Paths

trunk/Source/_javascript_Core/tests/stress/arith-add-with-constant-overflow.js




Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (199791 => 199792)

--- trunk/Source/_javascript_Core/ChangeLog	2016-04-20 22:03:09 UTC (rev 199791)
+++ trunk/Source/_javascript_Core/ChangeLog	2016-04-20 22:24:32 UTC (rev 199792)
@@ -1,3 +1,30 @@
+2016-04-20  Benjamin Poulain  
+
+[JSC] Add register reuse for ArithAdd of an Int32 and constant in DFG
+https://bugs.webkit.org/show_bug.cgi?id=155164
+
+Reviewed by Mark Lam.
+
+Every "inc" in loop was looking like this:
+move rX, rY
+inc rY
+jo 0x230f4a200580
+
+This patch add register Reuse to that case to remove
+the extra "move".
+
+* dfg/DFGOSRExit.h:
+(JSC::DFG::SpeculationRecovery::SpeculationRecovery):
+(JSC::DFG::SpeculationRecovery::immediate):
+* dfg/DFGOSRExitCompiler32_64.cpp:
+(JSC::DFG::OSRExitCompiler::compileExit):
+* dfg/DFGOSRExitCompiler64.cpp:
+(JSC::DFG::OSRExitCompiler::compileExit):
+* dfg/DFGSpeculativeJIT.cpp:
+(JSC::DFG::SpeculativeJIT::compileArithAdd):
+* tests/stress/arith-add-with-constant-overflow.js: Added.
+(opaqueAdd):
+
 2016-04-20  Saam barati  
 
 We don't need a manual stack for an RAII object when the machine's stack will do just fine


Modified: trunk/Source/_javascript_Core/assembler/MacroAssembler.h (199791 => 199792)

--- trunk/Source/_javascript_Core/assembler/MacroAssembler.h	2016-04-20 22:03:09 UTC (rev 199791)
+++ trunk/Source/_javascript_Core/assembler/MacroAssembler.h	2016-04-20 22:24:32 UTC (rev 199792)
@@ -1694,16 +1694,20 @@
 
 Jump branchAdd32(ResultCondition cond, RegisterID src, Imm32 imm, RegisterID dest)
 {
-if (src == dest)
-ASSERT(haveScratchRegisterForBlinding());
-
 if (shouldBlind(imm)) {
-if (src == dest) {
-move(src, scratchRegisterForBlinding());
-src = ""
+if (src != dest || haveScratchRegisterForBlinding()) {
+if (src == dest) {
+move(src, scratchRegisterForBlinding());
+src = ""
+}
+loadXorBlindedConstant(xorBlindConstant(imm), dest);
+return branchAdd32(cond, src, dest);
 }
-loadXorBlindedConstant(xorBlindConstant(imm), dest);
-return branchAdd32(cond, src, dest);  
+// If we don't have a scratch register available for use, we'll just
+// place a random number of nops.
+uint32_t nopCount = random() & 3;
+while (nopCount--)
+nop();
 }
 return branchAdd32(cond, src, imm.asTrustedImm32(), dest);
 }


Modified: trunk/Source/_javascript_Core/dfg/DFGOSRExit.h (199791 => 199792)

--- trunk/Source/_javascript_Core/dfg/DFGOSRExit.h	2016-04-20 22:03:09 UTC (rev 199791)
+++ trunk/Source/_javascript_Core/dfg/DFGOSRExit.h	2016-04-20 22:24:32 UTC (rev 199792)
@@ -48,8 +48,9 @@
 
 // This enum describes the types of additional recovery that
 // may need be performed should a speculation check fail.
-enum SpeculationRecoveryType {
+enum SpeculationRecoveryType : uint8_t {
 SpeculativeAdd,
+SpeculativeAddImmediate,
 BooleanSpeculationCheck
 };
 
@@ -60,22 +61,36 @@
 class SpeculationRecovery {
 public:
 SpeculationRecovery(SpeculationRecoveryType type, GPRReg dest, GPRReg src)
-: m_type(type)
+: m_src(src)
 , m_dest(dest)
-, m_src(src)
+, m_type(type)
 {
+ASSERT(m_type == SpeculativeAdd || m_type == 

[webkit-changes] [199791] trunk/LayoutTests

2016-04-20 Thread ryanhaddad
Title: [199791] trunk/LayoutTests








Revision 199791
Author ryanhad...@apple.com
Date 2016-04-20 15:03:09 -0700 (Wed, 20 Apr 2016)


Log Message
Remove flaky expectation for imported/mozilla/svg/image/image-filter-01.svg on ios-simulator-wk2

Unreviewed test gardening.

* platform/ios-simulator-wk2/TestExpectations:

Modified Paths

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




Diff

Modified: trunk/LayoutTests/ChangeLog (199790 => 199791)

--- trunk/LayoutTests/ChangeLog	2016-04-20 21:58:46 UTC (rev 199790)
+++ trunk/LayoutTests/ChangeLog	2016-04-20 22:03:09 UTC (rev 199791)
@@ -1,3 +1,11 @@
+2016-04-20  Ryan Haddad  
+
+Remove flaky expectation for imported/mozilla/svg/image/image-filter-01.svg on ios-simulator-wk2
+
+Unreviewed test gardening.
+
+* platform/ios-simulator-wk2/TestExpectations:
+
 2016-04-19  Timothy Hatcher  
 
 Web Inspector: Make debounce use an ES6 Proxy


Modified: trunk/LayoutTests/platform/ios-simulator-wk2/TestExpectations (199790 => 199791)

--- trunk/LayoutTests/platform/ios-simulator-wk2/TestExpectations	2016-04-20 21:58:46 UTC (rev 199790)
+++ trunk/LayoutTests/platform/ios-simulator-wk2/TestExpectations	2016-04-20 22:03:09 UTC (rev 199791)
@@ -1506,7 +1506,6 @@
 imported/mozilla/svg/filters/filter-marked-line-07.svg [ Failure Pass ]
 imported/mozilla/svg/filters/filter-marked-line-08.svg [ Failure Pass ]
 imported/mozilla/svg/filters/filter-marked-line-09.svg [ Failure Pass ]
-imported/mozilla/svg/image/image-filter-01.svg [ Failure Pass ]
 imported/w3c/canvas/2d.gradient.interpolate.colouralpha.html [ Failure Pass ]
 imported/w3c/canvas/2d.line.cap.round.html [ Failure Pass ]
 imported/w3c/canvas/2d.line.join.parallel.html [ Failure Pass ]






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


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

2016-04-20 Thread timothy
Title: [199790] trunk/Source/WebInspectorUI








Revision 199790
Author timo...@apple.com
Date 2016-04-20 14:58:46 -0700 (Wed, 20 Apr 2016)


Log Message
Web Inspector: Use debounce proxies in a couple more places

https://bugs.webkit.org/show_bug.cgi?id=156759

Reviewed by Joseph Pecoraro.

* UserInterface/Views/ContentBrowser.js:
(WebInspector.ContentBrowser.prototype._dispatchCurrentRepresentedObjectsDidChangeEvent):
(WebInspector.ContentBrowser.prototype._contentViewSelectionPathComponentDidChange):
(WebInspector.ContentBrowser.prototype._contentViewSupplementalRepresentedObjectsDidChange):
(WebInspector.ContentBrowser.prototype._dispatchCurrentRepresentedObjectsDidChangeEventSoon): Deleted.
* UserInterface/Views/DOMTreeUpdater.js:
(WebInspector.DOMTreeUpdater.prototype._attributesUpdated):
(WebInspector.DOMTreeUpdater.prototype._characterDataModified):
(WebInspector.DOMTreeUpdater.prototype._nodeInserted):
(WebInspector.DOMTreeUpdater.prototype._nodeRemoved):
(WebInspector.DOMTreeUpdater.prototype._updateModifiedNodes):
(WebInspector.DOMTreeUpdater.prototype._updateModifiedNodesSoon): Deleted.
* UserInterface/Views/NavigationSidebarPanel.js:
(WebInspector.NavigationSidebarPanel):
(WebInspector.NavigationSidebarPanel.prototype._updateContentOverflowShadowVisibility):
(WebInspector.NavigationSidebarPanel.prototype._treeElementAddedOrChanged):
(WebInspector.NavigationSidebarPanel.prototype._treeElementDisclosureDidChange):
(WebInspector.NavigationSidebarPanel.prototype._updateContentOverflowShadowVisibilitySoon): Deleted.

Modified Paths

trunk/Source/WebInspectorUI/ChangeLog
trunk/Source/WebInspectorUI/UserInterface/Views/ContentBrowser.js
trunk/Source/WebInspectorUI/UserInterface/Views/DOMTreeUpdater.js
trunk/Source/WebInspectorUI/UserInterface/Views/NavigationSidebarPanel.js




Diff

Modified: trunk/Source/WebInspectorUI/ChangeLog (199789 => 199790)

--- trunk/Source/WebInspectorUI/ChangeLog	2016-04-20 21:58:44 UTC (rev 199789)
+++ trunk/Source/WebInspectorUI/ChangeLog	2016-04-20 21:58:46 UTC (rev 199790)
@@ -1,5 +1,32 @@
 2016-04-19  Timothy Hatcher  
 
+Web Inspector: Use debounce proxies in a couple more places
+
+https://bugs.webkit.org/show_bug.cgi?id=156759
+
+Reviewed by Joseph Pecoraro.
+
+* UserInterface/Views/ContentBrowser.js:
+(WebInspector.ContentBrowser.prototype._dispatchCurrentRepresentedObjectsDidChangeEvent):
+(WebInspector.ContentBrowser.prototype._contentViewSelectionPathComponentDidChange):
+(WebInspector.ContentBrowser.prototype._contentViewSupplementalRepresentedObjectsDidChange):
+(WebInspector.ContentBrowser.prototype._dispatchCurrentRepresentedObjectsDidChangeEventSoon): Deleted.
+* UserInterface/Views/DOMTreeUpdater.js:
+(WebInspector.DOMTreeUpdater.prototype._attributesUpdated):
+(WebInspector.DOMTreeUpdater.prototype._characterDataModified):
+(WebInspector.DOMTreeUpdater.prototype._nodeInserted):
+(WebInspector.DOMTreeUpdater.prototype._nodeRemoved):
+(WebInspector.DOMTreeUpdater.prototype._updateModifiedNodes):
+(WebInspector.DOMTreeUpdater.prototype._updateModifiedNodesSoon): Deleted.
+* UserInterface/Views/NavigationSidebarPanel.js:
+(WebInspector.NavigationSidebarPanel):
+(WebInspector.NavigationSidebarPanel.prototype._updateContentOverflowShadowVisibility):
+(WebInspector.NavigationSidebarPanel.prototype._treeElementAddedOrChanged):
+(WebInspector.NavigationSidebarPanel.prototype._treeElementDisclosureDidChange):
+(WebInspector.NavigationSidebarPanel.prototype._updateContentOverflowShadowVisibilitySoon): Deleted.
+
+2016-04-19  Timothy Hatcher  
+
 Web Inspector: Make debounce use an ES6 Proxy
 
 https://bugs.webkit.org/show_bug.cgi?id=156756


Modified: trunk/Source/WebInspectorUI/UserInterface/Views/ContentBrowser.js (199789 => 199790)

--- trunk/Source/WebInspectorUI/UserInterface/Views/ContentBrowser.js	2016-04-20 21:58:44 UTC (rev 199789)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/ContentBrowser.js	2016-04-20 21:58:46 UTC (rev 199790)
@@ -421,19 +421,9 @@
 }
 }
 
-_dispatchCurrentRepresentedObjectsDidChangeEventSoon()
-{
-if (this._currentRepresentedObjectsDidChangeTimeout)
-return;
-this._currentRepresentedObjectsDidChangeTimeout = setTimeout(this._dispatchCurrentRepresentedObjectsDidChangeEvent.bind(this), 0);
-}
-
 _dispatchCurrentRepresentedObjectsDidChangeEvent()
 {
-if (this._currentRepresentedObjectsDidChangeTimeout) {
-clearTimeout(this._currentRepresentedObjectsDidChangeTimeout);
-delete this._currentRepresentedObjectsDidChangeTimeout;
-}
+this._dispatchCurrentRepresentedObjectsDidChangeEvent.cancelDebounce();
 
 this.dispatchEventToListeners(WebInspector.ContentBrowser.Event.CurrentRepresentedObjectsDidChange);
 }
@@ -450,7 +440,7 @@
 
  

[webkit-changes] [199789] trunk

2016-04-20 Thread timothy
Title: [199789] trunk








Revision 199789
Author timo...@apple.com
Date 2016-04-20 14:58:44 -0700 (Wed, 20 Apr 2016)


Log Message
Web Inspector: Make debounce use an ES6 Proxy

https://bugs.webkit.org/show_bug.cgi?id=156756
rdar://problem/25809771

Reviewed by Joseph Pecoraro.

Source/WebInspectorUI:

* UserInterface/Base/Utilities.js:
(Object.prototype.soon): Added.
(Object.prototype.debounce): Added.
(Function.prototype.debounce): Deleted.
(Function.prototype.cancelDebounce): Added.

* UserInterface/Views/BezierEditor.js:
(WebInspector.BezierEditor.createBezierInput): Use new debounce proxy.
* UserInterface/Views/VisualStyleBackgroundPicker.js:
(WebInspector.VisualStyleBackgroundPicker): Ditto.
* UserInterface/Views/VisualStyleURLInput.js:
(WebInspector.VisualStyleURLInput): Ditto.

LayoutTests:

* inspector/unit-tests/debounce-expected.txt: Added.
* inspector/unit-tests/debounce.html: Added.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/Source/WebInspectorUI/ChangeLog
trunk/Source/WebInspectorUI/UserInterface/Base/Utilities.js
trunk/Source/WebInspectorUI/UserInterface/Views/BezierEditor.js
trunk/Source/WebInspectorUI/UserInterface/Views/VisualStyleBackgroundPicker.js
trunk/Source/WebInspectorUI/UserInterface/Views/VisualStyleURLInput.js


Added Paths

trunk/LayoutTests/inspector/unit-tests/debounce-expected.txt
trunk/LayoutTests/inspector/unit-tests/debounce.html




Diff

Modified: trunk/LayoutTests/ChangeLog (199788 => 199789)

--- trunk/LayoutTests/ChangeLog	2016-04-20 21:54:09 UTC (rev 199788)
+++ trunk/LayoutTests/ChangeLog	2016-04-20 21:58:44 UTC (rev 199789)
@@ -1,3 +1,15 @@
+2016-04-19  Timothy Hatcher  
+
+Web Inspector: Make debounce use an ES6 Proxy
+
+https://bugs.webkit.org/show_bug.cgi?id=156756
+rdar://problem/25809771
+
+Reviewed by Joseph Pecoraro.
+
+* inspector/unit-tests/debounce-expected.txt: Added.
+* inspector/unit-tests/debounce.html: Added.
+
 2016-04-20  Ryan Haddad  
 
 Rebaseline tests for iOS simulator.


Added: trunk/LayoutTests/inspector/unit-tests/debounce-expected.txt (0 => 199789)

--- trunk/LayoutTests/inspector/unit-tests/debounce-expected.txt	(rev 0)
+++ trunk/LayoutTests/inspector/unit-tests/debounce-expected.txt	2016-04-20 21:58:44 UTC (rev 199789)
@@ -0,0 +1,30 @@
+Testing debounce proxy support.
+
+
+== Running test suite: Debouce
+-- Running test case: Basic Debounce
+PASS: Debounced successfully.
+PASS: Call delayed at least 100ms.
+PASS: `this` is the right object.
+PASS: Arguments length is 2.
+PASS: First argument is 4.
+PASS: Second argument is 'abc'.
+
+-- Running test case: Multiple Debounce Delays
+PASS: Debounced successfully.
+PASS: Call delayed at least 400ms.
+PASS: `this` is the right object.
+PASS: Arguments length is 2.
+PASS: First argument is 4.
+PASS: Second argument is 'abc'.
+
+-- Running test case: Soon Debounce
+PASS: Debounced successfully.
+PASS: `this` is the right object.
+PASS: Arguments length is 2.
+PASS: First argument is 4.
+PASS: Second argument is 'abc'.
+
+-- Running test case: Cancel Debounce
+PASS: Debounced function canceled.
+


Added: trunk/LayoutTests/inspector/unit-tests/debounce.html (0 => 199789)

--- trunk/LayoutTests/inspector/unit-tests/debounce.html	(rev 0)
+++ trunk/LayoutTests/inspector/unit-tests/debounce.html	2016-04-20 21:58:44 UTC (rev 199789)
@@ -0,0 +1,152 @@
+
+
+
+
+function test()
+{
+let suite = InspectorTest.createAsyncSuite("Debouce");
+
+suite.addTestCase({
+name: "Basic Debounce",
+test: function(resolve, reject) {
+let callCount = 0;
+let startTime = performance.now();
+
+let object = {
+test(foo, bar) {
+if (++callCount === 1)
+InspectorTest.pass("Debounced successfully.");
+else
+InspectorTest.fail("Debounced function called multiple times.");
+
+InspectorTest.expectThat(performance.now() - startTime >= 100, "Call delayed at least 100ms.");
+
+InspectorTest.expectThat(this === object, "`this` is the right object.");
+InspectorTest.expectThat(arguments.length === 2, "Arguments length is 2.");
+InspectorTest.expectThat(foo === 4, "First argument is 4.");
+InspectorTest.expectThat(bar === "abc", "Second argument is 'abc'.");
+
+resolve();
+}
+};
+
+let debounceProxy = object.debounce(100);
+debounceProxy.test(1, 'xyz');
+debounceProxy.test(2, 'fgh');
+debounceProxy.test(3, 'ert');
+debounceProxy.test(4, 'abc');
+
+if (!callCount)
+return;
+
+InspectorTest.fail("Debounced function called immediately.");
+resolve();
+}
+});
+
+suite.addTestCase({
+nam

[webkit-changes] [199788] trunk/LayoutTests

2016-04-20 Thread ryanhaddad
Title: [199788] trunk/LayoutTests








Revision 199788
Author ryanhad...@apple.com
Date 2016-04-20 14:54:09 -0700 (Wed, 20 Apr 2016)


Log Message
Rebaseline tests for iOS simulator.

Unreviewed test gardening.

* platform/ios-simulator-wk2/css2.1/t0905-c5525-flthw-00-c-g-expected.txt:
* platform/ios-simulator-wk2/css2.1/t0905-c5526-flthw-00-c-g-expected.txt:
* platform/ios-simulator/fast/canvas/set-colors-expected.txt: Added.
* platform/ios-simulator/fast/text/emoji-expected.txt:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/platform/ios-simulator/fast/text/emoji-expected.txt
trunk/LayoutTests/platform/ios-simulator-wk2/css2.1/t0905-c5525-flthw-00-c-g-expected.txt
trunk/LayoutTests/platform/ios-simulator-wk2/css2.1/t0905-c5526-flthw-00-c-g-expected.txt


Added Paths

trunk/LayoutTests/platform/ios-simulator/fast/canvas/set-colors-expected.txt




Diff

Modified: trunk/LayoutTests/ChangeLog (199787 => 199788)

--- trunk/LayoutTests/ChangeLog	2016-04-20 21:47:39 UTC (rev 199787)
+++ trunk/LayoutTests/ChangeLog	2016-04-20 21:54:09 UTC (rev 199788)
@@ -1,3 +1,14 @@
+2016-04-20  Ryan Haddad  
+
+Rebaseline tests for iOS simulator.
+
+Unreviewed test gardening.
+
+* platform/ios-simulator-wk2/css2.1/t0905-c5525-flthw-00-c-g-expected.txt:
+* platform/ios-simulator-wk2/css2.1/t0905-c5526-flthw-00-c-g-expected.txt:
+* platform/ios-simulator/fast/canvas/set-colors-expected.txt: Added.
+* platform/ios-simulator/fast/text/emoji-expected.txt:
+
 2016-04-20  Yoav Weiss  
 
 Speculative unflake of dynamic_remove_preload_href layout test


Added: trunk/LayoutTests/platform/ios-simulator/fast/canvas/set-colors-expected.txt (0 => 199788)

--- trunk/LayoutTests/platform/ios-simulator/fast/canvas/set-colors-expected.txt	(rev 0)
+++ trunk/LayoutTests/platform/ios-simulator/fast/canvas/set-colors-expected.txt	2016-04-20 21:54:09 UTC (rev 199788)
@@ -0,0 +1,71 @@
+Test of various canvas graphics context calls for setting colors.
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+
+PASS testFillStyle('transparent') is transparent
+PASS testFillStyle('blue') is blue
+PASS testFillStyle('#FF') is red
+PASS testFillStyle('#f00') is red
+PASS testFillStyle('rgb(255, 0, 0)') is red
+PASS testFillStyle('rgba(255, 0, 0, 1)') is red
+PASS testFillStyle('rgba(255, 0, 0, 0.8)') is translucentRed
+PASS testFillStyle('rgba(255, 0, 0, 0)') is transparent
+PASS testFillGradient('transparent') is transparent
+PASS testFillGradient('blue') is blue
+PASS testFillGradient('#FF') is red
+PASS testFillGradient('#f00') is red
+PASS testFillGradient('rgb(255, 0, 0)') is red
+PASS testFillGradient('rgba(255, 0, 0, 1)') is red
+PASS testFillGradient('rgba(255, 0, 0, 0.8)') is translucentRed
+PASS testFillGradient('rgba(255, 0, 0, 0)') is transparent
+PASS testSetFillColor('"blue"') is blue
+PASS testSetFillColor('"#FF"') is red
+PASS testSetFillColor('"#f00"') is red
+PASS testSetFillColor('"rgb(255, 0, 0)"') is red
+PASS testSetFillColor('"rgba(255, 0, 0, 1)"') is red
+PASS testSetFillColor('"rgba(255, 0, 0, 0.8)"') is translucentRed
+PASS testSetFillColor('"rgba(255, 0, 0, 0)"') is transparent
+PASS testSetFillColor('"blue", 0.8') is translucentBlue
+PASS testSetFillColor('1') is white
+PASS testSetFillColor('1, 0.8') is translucentWhite
+PASS testSetFillColor('0, 1, 0, 1') is green
+PASS testSetFillColor('0, 1, 0, 0.8') is translucentGreen
+FAIL testSetFillColor('0, 0, 0, 1, 1') should be #1a1a1a. Was #1a1919.
+FAIL testSetFillColor('0, 0, 0, 1, 0.8') should be rgba(25, 25, 25, 0.8). Was rgba(26, 25, 25, 0.8).
+PASS testSetFillColor('0, 0, 0, 1, 0') is transparent
+PASS testStrokeStyle('transparent') is transparent
+PASS testStrokeStyle('blue') is blue
+PASS testStrokeStyle('#FF') is red
+PASS testStrokeStyle('#f00') is red
+PASS testStrokeStyle('rgb(255, 0, 0)') is red
+PASS testStrokeStyle('rgba(255, 0, 0, 1)') is red
+PASS testStrokeStyle('rgba(255, 0, 0, 0.8)') is translucentRed
+PASS testStrokeStyle('rgba(255, 0, 0, 0)') is transparent
+PASS testStrokeGradient('transparent') is transparent
+PASS testStrokeGradient('blue') is blue
+PASS testStrokeGradient('#FF') is red
+PASS testStrokeGradient('#f00') is red
+PASS testStrokeGradient('rgb(255, 0, 0)') is red
+PASS testStrokeGradient('rgba(255, 0, 0, 1)') is red
+PASS testStrokeGradient('rgba(255, 0, 0, 0.8)') is translucentRed
+PASS testStrokeGradient('rgba(255, 0, 0, 0)') is transparent
+PASS testSetStrokeColor('"blue"') is blue
+PASS testSetStrokeColor('"#FF"') is red
+PASS testSetStrokeColor('"#f00"') is red
+PASS testSetStrokeColor('"rgb(255, 0, 0)"') is red
+PASS testSetStrokeColor('"rgba(255, 0, 0, 1)"') is red
+PASS testSetStrokeColor('"rgba(255, 0, 0, 0.8)"') is translucentRed
+PASS testSetStrokeColor('"rgba(255, 0, 0, 0)"') is transparent
+PASS testSetStrokeColor('"blue", 0.8') is translucentBlue
+PASS testSetStrokeColor('1') is

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

2016-04-20 Thread sbarati
Title: [199787] trunk/Source/_javascript_Core








Revision 199787
Author sbar...@apple.com
Date 2016-04-20 14:47:39 -0700 (Wed, 20 Apr 2016)


Log Message
We don't need a manual stack for an RAII object when the machine's stack will do just fine
https://bugs.webkit.org/show_bug.cgi?id=156807

Reviewed by Mark Lam.

We kept around a vector for an RAII object to maintain
the recursive nature of having these RAII objects on
the stack as the parser recursed. Instead, the RAII object
can just have a field with the value it wants to restore
and use the machine's stack.

This is a 1% octane code-load progression.

* parser/SyntaxChecker.h:
(JSC::SyntaxChecker::BinaryExprContext::BinaryExprContext):
(JSC::SyntaxChecker::BinaryExprContext::~BinaryExprContext):
(JSC::SyntaxChecker::UnaryExprContext::UnaryExprContext):
(JSC::SyntaxChecker::UnaryExprContext::~UnaryExprContext):
(JSC::SyntaxChecker::operatorStackPop):

Modified Paths

trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/parser/SyntaxChecker.h




Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (199786 => 199787)

--- trunk/Source/_javascript_Core/ChangeLog	2016-04-20 21:25:11 UTC (rev 199786)
+++ trunk/Source/_javascript_Core/ChangeLog	2016-04-20 21:47:39 UTC (rev 199787)
@@ -1,3 +1,25 @@
+2016-04-20  Saam barati  
+
+We don't need a manual stack for an RAII object when the machine's stack will do just fine
+https://bugs.webkit.org/show_bug.cgi?id=156807
+
+Reviewed by Mark Lam.
+
+We kept around a vector for an RAII object to maintain
+the recursive nature of having these RAII objects on
+the stack as the parser recursed. Instead, the RAII object
+can just have a field with the value it wants to restore
+and use the machine's stack.
+
+This is a 1% octane code-load progression.
+
+* parser/SyntaxChecker.h:
+(JSC::SyntaxChecker::BinaryExprContext::BinaryExprContext):
+(JSC::SyntaxChecker::BinaryExprContext::~BinaryExprContext):
+(JSC::SyntaxChecker::UnaryExprContext::UnaryExprContext):
+(JSC::SyntaxChecker::UnaryExprContext::~UnaryExprContext):
+(JSC::SyntaxChecker::operatorStackPop):
+
 2016-04-20  Michael Saboff  
 
 REGRESSION(r190289): Spin trying to view/sign in to hbogo.com


Modified: trunk/Source/_javascript_Core/parser/SyntaxChecker.h (199786 => 199787)

--- trunk/Source/_javascript_Core/parser/SyntaxChecker.h	2016-04-20 21:25:11 UTC (rev 199786)
+++ trunk/Source/_javascript_Core/parser/SyntaxChecker.h	2016-04-20 21:47:39 UTC (rev 199787)
@@ -38,30 +38,30 @@
 BinaryExprContext(SyntaxChecker& context)
 : m_context(&context)
 {
-m_context->m_topBinaryExprs.append(m_context->m_topBinaryExpr);
+m_token = m_context->m_topBinaryExpr;
 m_context->m_topBinaryExpr = 0;
 }
 ~BinaryExprContext()
 {
-m_context->m_topBinaryExpr = m_context->m_topBinaryExprs.last();
-m_context->m_topBinaryExprs.removeLast();
+m_context->m_topBinaryExpr = m_token;
 }
 private:
+int m_token;
 SyntaxChecker* m_context;
 };
 struct UnaryExprContext {
 UnaryExprContext(SyntaxChecker& context)
 : m_context(&context)
 {
-m_context->m_topUnaryTokens.append(m_context->m_topUnaryToken);
+m_token = m_context->m_topUnaryToken;
 m_context->m_topUnaryToken = 0;
 }
 ~UnaryExprContext()
 {
-m_context->m_topUnaryToken = m_context->m_topUnaryTokens.last();
-m_context->m_topUnaryTokens.removeLast();
+m_context->m_topUnaryToken = m_token;
 }
 private:
+int m_token;
 SyntaxChecker* m_context;
 };
 
@@ -397,8 +397,6 @@
 private:
 int m_topBinaryExpr;
 int m_topUnaryToken;
-Vector m_topBinaryExprs;
-Vector m_topUnaryTokens;
 };
 
 }






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


[webkit-changes] [199786] trunk/LayoutTests

2016-04-20 Thread yoav
Title: [199786] trunk/LayoutTests








Revision 199786
Author y...@yoav.ws
Date 2016-04-20 14:25:11 -0700 (Wed, 20 Apr 2016)


Log Message
Speculative unflake of dynamic_remove_preload_href layout test
https://bugs.webkit.org/show_bug.cgi?id=156773

Reviewed by Alexey Proskuryakov.

* http/tests/preload/dynamic_remove_preload_href.html: Avoid using a blocking script based timeout.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/http/tests/preload/dynamic_remove_preload_href.html




Diff

Modified: trunk/LayoutTests/ChangeLog (199785 => 199786)

--- trunk/LayoutTests/ChangeLog	2016-04-20 21:07:37 UTC (rev 199785)
+++ trunk/LayoutTests/ChangeLog	2016-04-20 21:25:11 UTC (rev 199786)
@@ -1,3 +1,12 @@
+2016-04-20  Yoav Weiss  
+
+Speculative unflake of dynamic_remove_preload_href layout test
+https://bugs.webkit.org/show_bug.cgi?id=156773
+
+Reviewed by Alexey Proskuryakov.
+
+* http/tests/preload/dynamic_remove_preload_href.html: Avoid using a blocking script based timeout.
+
 2016-04-20  Brady Eidson  
 
 Modern IDB (Workers): Enable INDEXED_DATABASE_IN_WORKERS compile time flag, but disabled in RuntimeEnabledFeatures.


Modified: trunk/LayoutTests/http/tests/preload/dynamic_remove_preload_href.html (199785 => 199786)

--- trunk/LayoutTests/http/tests/preload/dynamic_remove_preload_href.html	2016-04-20 21:07:37 UTC (rev 199785)
+++ trunk/LayoutTests/http/tests/preload/dynamic_remove_preload_href.html	2016-04-20 21:25:11 UTC (rev 199786)
@@ -16,11 +16,8 @@
 link.href = ""
 window.addEventListener("load", function() {
 shouldBeFalse("internals.isPreloaded('../resources/dummy.js');");
+if (window.internals)
+window.internals.setLinkPreloadSupport(false);
 });
 
-
-if (window.internals)
-window.internals.setLinkPreloadSupport(false);
-
 






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


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

2016-04-20 Thread cdumez
Title: [199785] trunk/Source/WebCore








Revision 199785
Author cdu...@apple.com
Date 2016-04-20 14:07:37 -0700 (Wed, 20 Apr 2016)


Log Message
Use Optional for OrderIterator::m_orderIndex instead of int
https://bugs.webkit.org/show_bug.cgi?id=156796

Reviewed by Anders Carlsson.

Use Optional for OrderIterator::m_orderIndex instead of int
(with invalid value of -1). m_orderIndex a vector index and therefore
is in the range of an unsigned (type used internally by Vector, even
though the index is exposed as size_t). Therefore, assigning it to an
int is unsafe as it may overflow.

This may fix  which is a top crasher.

* rendering/OrderIterator.cpp:
(WebCore::OrderIterator::next):
(WebCore::OrderIterator::reset):
* rendering/OrderIterator.h:

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/rendering/OrderIterator.cpp
trunk/Source/WebCore/rendering/OrderIterator.h




Diff

Modified: trunk/Source/WebCore/ChangeLog (199784 => 199785)

--- trunk/Source/WebCore/ChangeLog	2016-04-20 21:07:02 UTC (rev 199784)
+++ trunk/Source/WebCore/ChangeLog	2016-04-20 21:07:37 UTC (rev 199785)
@@ -1,5 +1,25 @@
 2016-04-20  Chris Dumez  
 
+Use Optional for OrderIterator::m_orderIndex instead of int
+https://bugs.webkit.org/show_bug.cgi?id=156796
+
+Reviewed by Anders Carlsson.
+
+Use Optional for OrderIterator::m_orderIndex instead of int
+(with invalid value of -1). m_orderIndex a vector index and therefore
+is in the range of an unsigned (type used internally by Vector, even
+though the index is exposed as size_t). Therefore, assigning it to an
+int is unsafe as it may overflow.
+
+This may fix  which is a top crasher.
+
+* rendering/OrderIterator.cpp:
+(WebCore::OrderIterator::next):
+(WebCore::OrderIterator::reset):
+* rendering/OrderIterator.h:
+
+2016-04-20  Chris Dumez  
+
 Crash under needsAppleMailPaginationQuirk()
 https://bugs.webkit.org/show_bug.cgi?id=156806
 


Modified: trunk/Source/WebCore/rendering/OrderIterator.cpp (199784 => 199785)

--- trunk/Source/WebCore/rendering/OrderIterator.cpp	2016-04-20 21:07:02 UTC (rev 199784)
+++ trunk/Source/WebCore/rendering/OrderIterator.cpp	2016-04-20 21:07:37 UTC (rev 199785)
@@ -36,8 +36,6 @@
 
 namespace WebCore {
 
-static const int cInvalidIndex = -1;
-
 OrderIterator::OrderIterator(RenderBox& containerBox)
 : m_containerBox(containerBox)
 {
@@ -52,23 +50,22 @@
 
 RenderBox* OrderIterator::next()
 {
-int endIndex = m_orderValues.size();
 do {
 if (m_currentChild) {
 m_currentChild = m_currentChild->nextSiblingBox();
 continue;
 }
 
-if (m_orderIndex != cInvalidIndex)
-++m_orderIndex;
+if (m_orderIndex)
+++m_orderIndex.value();
 else
 m_orderIndex = 0;
 
-if (m_orderIndex == endIndex)
+if (m_orderIndex.value() >= m_orderValues.size())
 return nullptr;
 
 m_currentChild = m_containerBox.firstChildBox();
-} while (!m_currentChild || m_currentChild->style().order() != m_orderValues[m_orderIndex]);
+} while (!m_currentChild || m_currentChild->style().order() != m_orderValues[m_orderIndex.value()]);
 
 return m_currentChild;
 }
@@ -76,7 +73,7 @@
 void OrderIterator::reset()
 {
 m_currentChild = nullptr;
-m_orderIndex = cInvalidIndex;
+m_orderIndex = Nullopt;
 }
 
 OrderIteratorPopulator::OrderIteratorPopulator(OrderIterator& iterator)


Modified: trunk/Source/WebCore/rendering/OrderIterator.h (199784 => 199785)

--- trunk/Source/WebCore/rendering/OrderIterator.h	2016-04-20 21:07:02 UTC (rev 199784)
+++ trunk/Source/WebCore/rendering/OrderIterator.h	2016-04-20 21:07:37 UTC (rev 199785)
@@ -33,6 +33,7 @@
 #define OrderIterator_h
 
 #include 
+#include 
 #include 
 
 namespace WebCore {
@@ -56,7 +57,7 @@
 RenderBox* m_currentChild;
 
 Vector m_orderValues;
-int m_orderIndex;
+Optional m_orderIndex;
 };
 
 class OrderIteratorPopulator {






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


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

2016-04-20 Thread cdumez
Title: [199784] trunk/Source/WebCore








Revision 199784
Author cdu...@apple.com
Date 2016-04-20 14:07:02 -0700 (Wed, 20 Apr 2016)


Log Message
Crash under needsAppleMailPaginationQuirk()
https://bugs.webkit.org/show_bug.cgi?id=156806


Reviewed by Simon Fraser.

Add check for element()->hasID() before calling element()->idForStyleResolution()
so that we don't dereference a potentially null element()->elementData().
Also stop repeatedly atomizing "messageContentContainer" and leverage
the operator==(const AtomicString&, const char*) instead for performance.

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

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/rendering/RenderBlockFlow.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (199783 => 199784)

--- trunk/Source/WebCore/ChangeLog	2016-04-20 20:31:21 UTC (rev 199783)
+++ trunk/Source/WebCore/ChangeLog	2016-04-20 21:07:02 UTC (rev 199784)
@@ -1,3 +1,19 @@
+2016-04-20  Chris Dumez  
+
+Crash under needsAppleMailPaginationQuirk()
+https://bugs.webkit.org/show_bug.cgi?id=156806
+
+
+Reviewed by Simon Fraser.
+
+Add check for element()->hasID() before calling element()->idForStyleResolution()
+so that we don't dereference a potentially null element()->elementData().
+Also stop repeatedly atomizing "messageContentContainer" and leverage
+the operator==(const AtomicString&, const char*) instead for performance.
+
+* rendering/RenderBlockFlow.cpp:
+(WebCore::needsAppleMailPaginationQuirk):
+
 2016-04-20  Brady Eidson  
 
 Attempt to fix non-INDEXED_DATABASE_IN_WORKERS builds after r199779


Modified: trunk/Source/WebCore/rendering/RenderBlockFlow.cpp (199783 => 199784)

--- trunk/Source/WebCore/rendering/RenderBlockFlow.cpp	2016-04-20 20:31:21 UTC (rev 199783)
+++ trunk/Source/WebCore/rendering/RenderBlockFlow.cpp	2016-04-20 21:07:02 UTC (rev 199784)
@@ -1643,7 +1643,7 @@
 if (!renderer.document().settings()->appleMailPaginationQuirkEnabled())
 return false;
 
-if (renderer.element() && renderer.element()->idForStyleResolution() == AtomicString("messageContentContainer", AtomicString::ConstructFromLiteral))
+if (renderer.element() && renderer.element()->hasID() && renderer.element()->idForStyleResolution() == "messageContentContainer")
 return true;
 
 return false;






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


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

2016-04-20 Thread msaboff
Title: [199783] trunk/Source/_javascript_Core








Revision 199783
Author msab...@apple.com
Date 2016-04-20 13:31:21 -0700 (Wed, 20 Apr 2016)


Log Message
REGRESSION(r190289): Spin trying to view/sign in to hbogo.com
https://bugs.webkit.org/show_bug.cgi?id=156765

Reviewed by Saam Barati.

In the op_get_by_val case, we were holding the lock on a profiled CodeBlock
when we call into handleGetById(). Changed to drop the lock before calling
handleGetById().

The bug here was that the call to handleGetById() may end up calling in to
getPredictionWithoutOSRExit() for a tail call opcode. As part of that
processing, we walk back up the stack to find the effective caller and when
found, we lock the corresponding CodeBlock to get the predicition.
That CodeBLock may be the same one locked above. There is no need anyway
to hold the CodeBlock lock when calling handleGetById().

Added a new stress test.

* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::parseBlock):
* tests/stress/regress-156765.js: Added.
(realValue):
(object.get hello):
(ok):

Modified Paths

trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/dfg/DFGByteCodeParser.cpp


Added Paths

trunk/Source/_javascript_Core/tests/stress/regress-156765.js




Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (199782 => 199783)

--- trunk/Source/_javascript_Core/ChangeLog	2016-04-20 20:21:21 UTC (rev 199782)
+++ trunk/Source/_javascript_Core/ChangeLog	2016-04-20 20:31:21 UTC (rev 199783)
@@ -1,3 +1,30 @@
+2016-04-20  Michael Saboff  
+
+REGRESSION(r190289): Spin trying to view/sign in to hbogo.com
+https://bugs.webkit.org/show_bug.cgi?id=156765
+
+Reviewed by Saam Barati.
+
+In the op_get_by_val case, we were holding the lock on a profiled CodeBlock
+when we call into handleGetById(). Changed to drop the lock before calling
+handleGetById().
+
+The bug here was that the call to handleGetById() may end up calling in to
+getPredictionWithoutOSRExit() for a tail call opcode. As part of that
+processing, we walk back up the stack to find the effective caller and when
+found, we lock the corresponding CodeBlock to get the predicition.
+That CodeBLock may be the same one locked above. There is no need anyway
+to hold the CodeBlock lock when calling handleGetById().
+
+Added a new stress test.
+
+* dfg/DFGByteCodeParser.cpp:
+(JSC::DFG::ByteCodeParser::parseBlock):
+* tests/stress/regress-156765.js: Added.
+(realValue):
+(object.get hello):
+(ok):
+
 2016-04-20  Mark Lam  
 
 Unindent an unnecessary block in stringProtoFuncSplitFast().


Modified: trunk/Source/_javascript_Core/dfg/DFGByteCodeParser.cpp (199782 => 199783)

--- trunk/Source/_javascript_Core/dfg/DFGByteCodeParser.cpp	2016-04-20 20:21:21 UTC (rev 199782)
+++ trunk/Source/_javascript_Core/dfg/DFGByteCodeParser.cpp	2016-04-20 20:31:21 UTC (rev 199783)
@@ -3888,6 +3888,8 @@
 Node* base = get(VirtualRegister(currentInstruction[2].u.operand));
 Node* property = get(VirtualRegister(currentInstruction[3].u.operand));
 bool compiledAsGetById = false;
+GetByIdStatus getByIdStatus;
+unsigned identifierNumber = 0;
 {
 ConcurrentJITLocker locker(m_inlineStackTop->m_profiledBlock->m_lock);
 ByValInfo* byValInfo = m_inlineStackTop->m_byValInfos.get(CodeOrigin(currentCodeOrigin().bytecodeIndex));
@@ -3895,20 +3897,20 @@
 // At that time, there is no information.
 if (byValInfo && byValInfo->stubInfo && !byValInfo->tookSlowPath && !m_inlineStackTop->m_exitProfile.hasExitSite(m_currentIndex, BadIdent)) {
 compiledAsGetById = true;
-unsigned identifierNumber = m_graph.identifiers().ensure(byValInfo->cachedId.impl());
+identifierNumber = m_graph.identifiers().ensure(byValInfo->cachedId.impl());
 UniquedStringImpl* uid = m_graph.identifiers()[identifierNumber];
 
 addToGraph(CheckIdent, OpInfo(uid), property);
 
-GetByIdStatus getByIdStatus = GetByIdStatus::computeForStubInfo(
+getByIdStatus = GetByIdStatus::computeForStubInfo(
 locker, m_inlineStackTop->m_profiledBlock,
 byValInfo->stubInfo, currentCodeOrigin(), uid);
-
-handleGetById(currentInstruction[1].u.operand, prediction, base, identifierNumber, getByIdStatus, AccessType::Get);
 }
 }
 
-if (!compiledAsGetById) {
+if (compiledAsGetById)
+handleGetById(currentInstruction[1].u.operand, prediction, base, identifierNumber, getByIdStatus, AccessType::Get);
+else {
 ArrayMode arrayMode = getArrayMode(currentInstruction[4].u.arrayProfile, Array::Read);
  

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

2016-04-20 Thread beidson
Title: [199782] trunk/Source/WebCore








Revision 199782
Author beid...@apple.com
Date 2016-04-20 13:21:21 -0700 (Wed, 20 Apr 2016)


Log Message
Attempt to fix non-INDEXED_DATABASE_IN_WORKERS builds after r199779

* testing/InternalSettings.cpp:
(WebCore::InternalSettings::Backup::Backup):
(WebCore::InternalSettings::Backup::restoreTo):
(WebCore::InternalSettings::setIndexedDBWorkersEnabled):
* testing/InternalSettings.h:

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/testing/InternalSettings.cpp
trunk/Source/WebCore/testing/InternalSettings.h




Diff

Modified: trunk/Source/WebCore/ChangeLog (199781 => 199782)

--- trunk/Source/WebCore/ChangeLog	2016-04-20 19:57:10 UTC (rev 199781)
+++ trunk/Source/WebCore/ChangeLog	2016-04-20 20:21:21 UTC (rev 199782)
@@ -1,3 +1,13 @@
+2016-04-20  Brady Eidson  
+
+Attempt to fix non-INDEXED_DATABASE_IN_WORKERS builds after r199779
+
+* testing/InternalSettings.cpp:
+(WebCore::InternalSettings::Backup::Backup):
+(WebCore::InternalSettings::Backup::restoreTo):
+(WebCore::InternalSettings::setIndexedDBWorkersEnabled):
+* testing/InternalSettings.h:
+
 2016-04-20  Chris Dumez  
 
 Potential overflow in RenderLayer::hitTestList()


Modified: trunk/Source/WebCore/testing/InternalSettings.cpp (199781 => 199782)

--- trunk/Source/WebCore/testing/InternalSettings.cpp	2016-04-20 19:57:10 UTC (rev 199781)
+++ trunk/Source/WebCore/testing/InternalSettings.cpp	2016-04-20 20:21:21 UTC (rev 199782)
@@ -103,7 +103,9 @@
 #endif
 , m_allowsInlineMediaPlayback(settings.allowsInlineMediaPlayback())
 , m_inlineMediaPlaybackRequiresPlaysInlineAttribute(settings.inlineMediaPlaybackRequiresPlaysInlineAttribute())
+#if ENABLE(INDEXED_DATABASE_IN_WORKERS)
 , m_indexedDBWorkersEnabled(RuntimeEnabledFeatures::sharedFeatures().indexedDBWorkersEnabled())
+#endif
 {
 }
 
@@ -171,7 +173,9 @@
 settings.setAllowsInlineMediaPlayback(m_allowsInlineMediaPlayback);
 settings.setInlineMediaPlaybackRequiresPlaysInlineAttribute(m_inlineMediaPlaybackRequiresPlaysInlineAttribute);
 RuntimeEnabledFeatures::sharedFeatures().setPluginReplacementEnabled(m_pluginReplacementEnabled);
+#if ENABLE(INDEXED_DATABASE_IN_WORKERS)
 RuntimeEnabledFeatures::sharedFeatures().setIndexedDBWorkersEnabled(m_indexedDBWorkersEnabled);
+#endif
 }
 
 class InternalSettingsWrapper : public Supplement {
@@ -546,6 +550,8 @@
 {
 #if ENABLE(INDEXED_DATABASE_IN_WORKERS)
 RuntimeEnabledFeatures::sharedFeatures().setIndexedDBWorkersEnabled(enabled);
+#else
+UNUSED_PARAM(enabled);
 #endif
 }
 


Modified: trunk/Source/WebCore/testing/InternalSettings.h (199781 => 199782)

--- trunk/Source/WebCore/testing/InternalSettings.h	2016-04-20 19:57:10 UTC (rev 199781)
+++ trunk/Source/WebCore/testing/InternalSettings.h	2016-04-20 20:21:21 UTC (rev 199782)
@@ -99,7 +99,9 @@
 #endif
 bool m_allowsInlineMediaPlayback;
 bool m_inlineMediaPlaybackRequiresPlaysInlineAttribute;
+#if ENABLE(INDEXED_DATABASE_IN_WORKERS)
 bool m_indexedDBWorkersEnabled;
+#endif
 };
 
 static Ref create(Page* page)






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


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

2016-04-20 Thread cdumez
Title: [199781] trunk/Source/WebCore








Revision 199781
Author cdu...@apple.com
Date 2016-04-20 12:57:10 -0700 (Wed, 20 Apr 2016)


Log Message
Potential overflow in RenderLayer::hitTestList()
https://bugs.webkit.org/show_bug.cgi?id=156804

Reviewed by Simon Fraser.

Use size_t type instead of int to iterate over the Vector to make sure
we don't overflow. This is a speculative fix for .

* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::hitTestList):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/rendering/RenderLayer.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (199780 => 199781)

--- trunk/Source/WebCore/ChangeLog	2016-04-20 19:10:43 UTC (rev 199780)
+++ trunk/Source/WebCore/ChangeLog	2016-04-20 19:57:10 UTC (rev 199781)
@@ -1,3 +1,16 @@
+2016-04-20  Chris Dumez  
+
+Potential overflow in RenderLayer::hitTestList()
+https://bugs.webkit.org/show_bug.cgi?id=156804
+
+Reviewed by Simon Fraser.
+
+Use size_t type instead of int to iterate over the Vector to make sure
+we don't overflow. This is a speculative fix for .
+
+* rendering/RenderLayer.cpp:
+(WebCore::RenderLayer::hitTestList):
+
 2016-04-20  Brady Eidson  
 
 Modern IDB (Workers): Enable INDEXED_DATABASE_IN_WORKERS compile time flag, but disabled in RuntimeEnabledFeatures.


Modified: trunk/Source/WebCore/rendering/RenderLayer.cpp (199780 => 199781)

--- trunk/Source/WebCore/rendering/RenderLayer.cpp	2016-04-20 19:10:43 UTC (rev 199780)
+++ trunk/Source/WebCore/rendering/RenderLayer.cpp	2016-04-20 19:57:10 UTC (rev 199781)
@@ -5352,8 +5352,8 @@
 return nullptr;
 
 RenderLayer* resultLayer = nullptr;
-for (int i = list->size() - 1; i >= 0; --i) {
-RenderLayer* childLayer = list->at(i);
+for (size_t i = list->size(); i > 0; --i) {
+RenderLayer* childLayer = list->at(i - 1);
 if (childLayer->isFlowThreadCollectingGraphicsLayersUnderRegions())
 continue;
 RenderLayer* hitLayer = nullptr;






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


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

2016-04-20 Thread mark . lam
Title: [199780] trunk/Source/_javascript_Core








Revision 199780
Author mark@apple.com
Date 2016-04-20 12:10:43 -0700 (Wed, 20 Apr 2016)


Log Message
Unindent an unnecessary block in stringProtoFuncSplitFast().
https://bugs.webkit.org/show_bug.cgi?id=156802

Reviewed by Filip Pizlo.

In webkit.org/b/156013, I refactored stringProtoFuncSplit into
stringProtoFuncSplitFast.  In that patch, I left an unnecessary block of code in
its original block (with FIXMEs) to keep the diff for that patch minimal.  Now
that the patch for webkit.org/b/156013 has landed, I will unindent that block and
remove the FIXMEs.

* runtime/StringPrototype.cpp:
(JSC::stringProtoFuncSplitFast):

Modified Paths

trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/runtime/StringPrototype.cpp




Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (199779 => 199780)

--- trunk/Source/_javascript_Core/ChangeLog	2016-04-20 18:59:45 UTC (rev 199779)
+++ trunk/Source/_javascript_Core/ChangeLog	2016-04-20 19:10:43 UTC (rev 199780)
@@ -1,3 +1,19 @@
+2016-04-20  Mark Lam  
+
+Unindent an unnecessary block in stringProtoFuncSplitFast().
+https://bugs.webkit.org/show_bug.cgi?id=156802
+
+Reviewed by Filip Pizlo.
+
+In webkit.org/b/156013, I refactored stringProtoFuncSplit into
+stringProtoFuncSplitFast.  In that patch, I left an unnecessary block of code in
+its original block (with FIXMEs) to keep the diff for that patch minimal.  Now
+that the patch for webkit.org/b/156013 has landed, I will unindent that block and
+remove the FIXMEs.
+
+* runtime/StringPrototype.cpp:
+(JSC::stringProtoFuncSplitFast):
+
 2016-04-20  Brady Eidson  
 
 Modern IDB (Workers): Enable INDEXED_DATABASE_IN_WORKERS compile time flag, but disabled in RuntimeEnabledFeatures.


Modified: trunk/Source/_javascript_Core/runtime/StringPrototype.cpp (199779 => 199780)

--- trunk/Source/_javascript_Core/runtime/StringPrototype.cpp	2016-04-20 18:59:45 UTC (rev 199779)
+++ trunk/Source/_javascript_Core/runtime/StringPrototype.cpp	2016-04-20 19:10:43 UTC (rev 199780)
@@ -1188,92 +1188,90 @@
 // 9. If separator is a RegExp object (its [[Class]] is "RegExp"), let R = separator;
 //otherwise let R = ToString(separator).
 JSValue separatorValue = exec->uncheckedArgument(0);
-{ // FIXME: Keeping this indentation here to minimize the diff. Will unindent and remove this later.
-String separator = separatorValue.toString(exec)->value(exec);
-if (exec->hadException())
-return JSValue::encode(jsUndefined());
+String separator = separatorValue.toString(exec)->value(exec);
+if (exec->hadException())
+return JSValue::encode(jsUndefined());
 
-// 10. If lim == 0, return A.
-if (!limit)
-return JSValue::encode(result);
+// 10. If lim == 0, return A.
+if (!limit)
+return JSValue::encode(result);
 
-// 11. If separator is undefined, then
-if (separatorValue.isUndefined()) {
-// a.  Call the [[DefineOwnProperty]] internal method of A with arguments "0",
+// 11. If separator is undefined, then
+if (separatorValue.isUndefined()) {
+// a. Call the [[DefineOwnProperty]] internal method of A with arguments "0",
+result->putDirectIndex(exec, 0, jsStringWithReuse(exec, thisValue, input));
+// b. Return A.
+return JSValue::encode(result);
+}
+
+// 12. If s == 0, then
+if (input.isEmpty()) {
+// a. Let z be SplitMatch(S, 0, R) where S is input, R is separator.
+// b. If z is not false, return A.
+// c. Call CreateDataProperty(A, "0", S).
+// d. Return A.
+if (!separator.isEmpty())
 result->putDirectIndex(exec, 0, jsStringWithReuse(exec, thisValue, input));
-// b.  Return A.
-return JSValue::encode(result);
-}
+return JSValue::encode(result);
+}
 
-// 12. If s == 0, then
-if (input.isEmpty()) {
-// a. Let z be SplitMatch(S, 0, R) where S is input, R is separator.
-// b. If z is not false, return A.
-// c. Call CreateDataProperty(A, "0", S).
-// d. Return A.
-if (!separator.isEmpty())
-result->putDirectIndex(exec, 0, jsStringWithReuse(exec, thisValue, input));
-return JSValue::encode(result);
-}
+// Optimized case for splitting on the empty string.
+if (separator.isEmpty()) {
+limit = std::min(limit, input.length());
+// Zero limt/input length handled in steps 9/11 respectively, above.
+ASSERT(limit);
 
-// Optimized case for splitting on the empty string.
-if (separator.isEmpty()) {
-limit = std::min(limit, input.length());
-// Zero limt/input length handled in steps 9/11 respectively, above.
-ASSERT(limit);
+do {

[webkit-changes] [199779] trunk

2016-04-20 Thread beidson
Title: [199779] trunk








Revision 199779
Author beid...@apple.com
Date 2016-04-20 11:59:45 -0700 (Wed, 20 Apr 2016)


Log Message
Modern IDB (Workers): Enable INDEXED_DATABASE_IN_WORKERS compile time flag, but disabled in RuntimeEnabledFeatures.
https://bugs.webkit.org/show_bug.cgi?id=156782

Reviewed by Alex Christensen.

Source/_javascript_Core:

* Configurations/FeatureDefines.xcconfig:

Source/WebCore:

Test: storage/indexeddb/modern/workers-disabled.html
  storage/indexeddb/modern/workers-enable.html

* Configurations/FeatureDefines.xcconfig:

ScriptExecutionContext shouldn't really be supplementable:
* dom/ScriptExecutionContext.h:

WorkerGlobalScope should be supplementable.
Also modernize this archaic header (pragma once, and re-indent):
* workers/WorkerGlobalScope.h:

Update for WorkerGlobalScope now being directly supplementable:
* Modules/indexeddb/WorkerGlobalScopeIndexedDatabase.cpp:
(WebCore::WorkerGlobalScopeIndexedDatabase::WorkerGlobalScopeIndexedDatabase):
(WebCore::WorkerGlobalScopeIndexedDatabase::from):
(WebCore::WorkerGlobalScopeIndexedDatabase::indexedDB):
* Modules/indexeddb/WorkerGlobalScopeIndexedDatabase.h:
* Modules/indexeddb/WorkerGlobalScopeIndexedDatabase.idl:
* Modules/notifications/WorkerGlobalScopeNotifications.cpp:
(WebCore::WorkerGlobalScopeNotifications::WorkerGlobalScopeNotifications):
(WebCore::WorkerGlobalScopeNotifications::from):
(WebCore::WorkerGlobalScopeNotifications::webkitNotifications):
* Modules/notifications/WorkerGlobalScopeNotifications.h:

Expose IndexedDBWorkers to RuntimeEnabledFeatures:
* bindings/generic/RuntimeEnabledFeatures.cpp:
(WebCore::RuntimeEnabledFeatures::RuntimeEnabledFeatures):
* bindings/generic/RuntimeEnabledFeatures.h:
(WebCore::RuntimeEnabledFeatures::setIndexedDBWorkersEnabled):
(WebCore::RuntimeEnabledFeatures::indexedDBWorkersEnabled):

Expose IndexedDBWorkers to InternalSettings:
* testing/InternalSettings.cpp:
(WebCore::InternalSettings::Backup::Backup):
(WebCore::InternalSettings::Backup::restoreTo):
(WebCore::InternalSettings::setIndexedDBWorkersEnabled):
* testing/InternalSettings.h:
* testing/InternalSettings.idl:

Source/WebKit/mac:

* Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

* Configurations/FeatureDefines.xcconfig:

Tools:

* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:

LayoutTests:

Note: One test has some "FAIL" lines in the expected results, which is intentional.
As work on this progresses, those FAILs will become PASSes and the expectations will be updated.

* storage/indexeddb/modern/resources/workers-disabled.js: Added.
* storage/indexeddb/modern/resources/workers-enable.js: Added.
* storage/indexeddb/modern/workers-disabled-expected.txt: Added.
* storage/indexeddb/modern/workers-disabled.html: Added.
* storage/indexeddb/modern/workers-enable-expected.txt: Added.
* storage/indexeddb/modern/workers-enable.html: Added.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/Configurations/FeatureDefines.xcconfig
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Configurations/FeatureDefines.xcconfig
trunk/Source/WebCore/Modules/indexeddb/WorkerGlobalScopeIndexedDatabase.cpp
trunk/Source/WebCore/Modules/indexeddb/WorkerGlobalScopeIndexedDatabase.h
trunk/Source/WebCore/Modules/indexeddb/WorkerGlobalScopeIndexedDatabase.idl
trunk/Source/WebCore/Modules/notifications/WorkerGlobalScopeNotifications.cpp
trunk/Source/WebCore/Modules/notifications/WorkerGlobalScopeNotifications.h
trunk/Source/WebCore/bindings/generic/RuntimeEnabledFeatures.cpp
trunk/Source/WebCore/bindings/generic/RuntimeEnabledFeatures.h
trunk/Source/WebCore/dom/ScriptExecutionContext.h
trunk/Source/WebCore/testing/InternalSettings.cpp
trunk/Source/WebCore/testing/InternalSettings.h
trunk/Source/WebCore/testing/InternalSettings.idl
trunk/Source/WebCore/workers/WorkerGlobalScope.h
trunk/Source/WebKit/mac/ChangeLog
trunk/Source/WebKit/mac/Configurations/FeatureDefines.xcconfig
trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/Configurations/FeatureDefines.xcconfig
trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/Configurations/FeatureDefines.xcconfig


Added Paths

trunk/LayoutTests/storage/indexeddb/modern/resources/workers-disabled.js
trunk/LayoutTests/storage/indexeddb/modern/resources/workers-enable.js
trunk/LayoutTests/storage/indexeddb/modern/workers-disabled-expected.txt
trunk/LayoutTests/storage/indexeddb/modern/workers-disabled.html
trunk/LayoutTests/storage/indexeddb/modern/workers-enable-expected.txt
trunk/LayoutTests/storage/indexeddb/modern/workers-enable.html




Diff

Modified: trunk/LayoutTests/ChangeLog (199778 => 199779)

--- trunk/LayoutTests/ChangeLog	2016-04-20 18:26:20 UTC (rev 199778)
+++ trunk/LayoutTests/ChangeLog	2016-04-20 18:59:45 UTC (rev 199779)
@@ -1,3 +1,20 @@
+2016-04-20  Brady Eidson  
+
+Modern IDB (Workers): Enable INDEXED_DATABASE_IN_WORKERS compile time flag, but disabled in RuntimeEnabledFeatures.
+https://bugs

[webkit-changes] [199778] trunk

2016-04-20 Thread bfulgham
Title: [199778] trunk








Revision 199778
Author bfulg...@apple.com
Date 2016-04-20 11:26:20 -0700 (Wed, 20 Apr 2016)


Log Message
[WK2][Mac][iOS] WebContent crash when using special file:// URI scheme @ WebKit::resolveSymlinksInPath(WTF::CString const&) + 159
https://bugs.webkit.org/show_bug.cgi?id=156747


Reviewed by Alexey Proskuryakov.

Source/WebKit2:

FileSystemCF::fileSystemRepresentation return a null string when presented with a file URL that contains embedded nulls. When
this happens, SandboxExtension::createHandle attempts to pass a null string to 'resolveSymlinksInPath', which attemps to call
'strrchr' on the null pointer, causing a crash.

Test: fast/url/file-uri-with-embedded-null-no-crash.html

* Shared/mac/SandboxExtensionMac.mm:
(WebKit::SandboxExtension::createHandle): If 'fileSystemRepresentation' is null, return early with an error.

LayoutTests:

* fast/url/file-uri-with-embedded-null-no-crash-expected.txt: Added.
* fast/url/file-uri-with-embedded-null-no-crash.html: Added.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/Shared/mac/SandboxExtensionMac.mm


Added Paths

trunk/LayoutTests/fast/url/file-uri-with-embedded-null-no-crash-expected.txt
trunk/LayoutTests/fast/url/file-uri-with-embedded-null-no-crash.html




Diff

Modified: trunk/LayoutTests/ChangeLog (199777 => 199778)

--- trunk/LayoutTests/ChangeLog	2016-04-20 18:01:40 UTC (rev 199777)
+++ trunk/LayoutTests/ChangeLog	2016-04-20 18:26:20 UTC (rev 199778)
@@ -1,3 +1,14 @@
+2016-04-20  Brent Fulgham  
+
+[WK2][Mac][iOS] WebContent crash when using special file:// URI scheme @ WebKit::resolveSymlinksInPath(WTF::CString const&) + 159
+https://bugs.webkit.org/show_bug.cgi?id=156747
+
+
+Reviewed by Alexey Proskuryakov.
+
+* fast/url/file-uri-with-embedded-null-no-crash-expected.txt: Added.
+* fast/url/file-uri-with-embedded-null-no-crash.html: Added.
+
 2016-04-20  Dave Hyatt  
 
 Hangable punctuation measurement using the wrong indices.


Added: trunk/LayoutTests/fast/url/file-uri-with-embedded-null-no-crash-expected.txt (0 => 199778)

--- trunk/LayoutTests/fast/url/file-uri-with-embedded-null-no-crash-expected.txt	(rev 0)
+++ trunk/LayoutTests/fast/url/file-uri-with-embedded-null-no-crash-expected.txt	2016-04-20 18:26:20 UTC (rev 199778)
@@ -0,0 +1,4 @@
+Tests that attempting to ping an invalid file URI doesn't crash WebKit.
+
+Click Me
+The test passes if it does not crash.


Added: trunk/LayoutTests/fast/url/file-uri-with-embedded-null-no-crash.html (0 => 199778)

--- trunk/LayoutTests/fast/url/file-uri-with-embedded-null-no-crash.html	(rev 0)
+++ trunk/LayoutTests/fast/url/file-uri-with-embedded-null-no-crash.html	2016-04-20 18:26:20 UTC (rev 199778)
@@ -0,0 +1,12 @@
+
+
+
+
+if (window.testRunner)
+testRunner.dumpAsText();
+
+Tests that attempting to ping an invalid file URI doesn't crash WebKit.
+Click Medocument.querySelector('a').click();
+The test passes if it does not crash.
+
+
\ No newline at end of file


Modified: trunk/Source/WebKit2/ChangeLog (199777 => 199778)

--- trunk/Source/WebKit2/ChangeLog	2016-04-20 18:01:40 UTC (rev 199777)
+++ trunk/Source/WebKit2/ChangeLog	2016-04-20 18:26:20 UTC (rev 199778)
@@ -1,3 +1,20 @@
+2016-04-20  Brent Fulgham  
+
+[WK2][Mac][iOS] WebContent crash when using special file:// URI scheme @ WebKit::resolveSymlinksInPath(WTF::CString const&) + 159
+https://bugs.webkit.org/show_bug.cgi?id=156747
+
+
+Reviewed by Alexey Proskuryakov.
+
+FileSystemCF::fileSystemRepresentation return a null string when presented with a file URL that contains embedded nulls. When
+this happens, SandboxExtension::createHandle attempts to pass a null string to 'resolveSymlinksInPath', which attemps to call
+'strrchr' on the null pointer, causing a crash.
+
+Test: fast/url/file-uri-with-embedded-null-no-crash.html
+
+* Shared/mac/SandboxExtensionMac.mm:
+(WebKit::SandboxExtension::createHandle): If 'fileSystemRepresentation' is null, return early with an error.
+
 2016-04-19  Alex Christensen  
 
 Fix CMake build.


Modified: trunk/Source/WebKit2/Shared/mac/SandboxExtensionMac.mm (199777 => 199778)

--- trunk/Source/WebKit2/Shared/mac/SandboxExtensionMac.mm	2016-04-20 18:01:40 UTC (rev 199777)
+++ trunk/Source/WebKit2/Shared/mac/SandboxExtensionMac.mm	2016-04-20 18:26:20 UTC (rev 199778)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010 Apple Inc. All rights reserved.
+ * Copyright (C) 2010-2016 Apple Inc. All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
@@ -217,7 +217,13 @@
 ASSERT(!handle.m_sandboxExtension);
 
 // FIXME: Do we need both resolveSymlinksInPath() and -stringByStandardizingPath?
-CString standardizedPath = resolveSymlinksInP

[webkit-changes] [199777] trunk

2016-04-20 Thread hyatt
Title: [199777] trunk








Revision 199777
Author hy...@apple.com
Date 2016-04-20 11:01:40 -0700 (Wed, 20 Apr 2016)


Log Message
Hangable punctuation measurement using the wrong indices.
https://bugs.webkit.org/show_bug.cgi?id=155899

Reviewed by Simon Fraser.

Source/WebCore:

New tests in fast/text.

* rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::computeInlinePreferredLogicalWidths):
* rendering/RenderText.cpp:
(WebCore::RenderText::hangablePunctuationStartWidth):
(WebCore::RenderText::hangablePunctuationEndWidth):
(WebCore::RenderText::isHangableStopOrComma):

LayoutTests:

* fast/text/hanging-punctuation-variable-font-size-expected.html: Added.
* fast/text/hanging-punctuation-variable-font-size.html: Added.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/rendering/RenderBlockFlow.cpp
trunk/Source/WebCore/rendering/RenderText.cpp


Added Paths

trunk/LayoutTests/fast/text/hanging-punctuation-variable-font-size-expected.html
trunk/LayoutTests/fast/text/hanging-punctuation-variable-font-size.html




Diff

Modified: trunk/LayoutTests/ChangeLog (199776 => 199777)

--- trunk/LayoutTests/ChangeLog	2016-04-20 17:40:02 UTC (rev 199776)
+++ trunk/LayoutTests/ChangeLog	2016-04-20 18:01:40 UTC (rev 199777)
@@ -1,3 +1,13 @@
+2016-04-20  Dave Hyatt  
+
+Hangable punctuation measurement using the wrong indices.
+https://bugs.webkit.org/show_bug.cgi?id=155899
+
+Reviewed by Simon Fraser.
+
+* fast/text/hanging-punctuation-variable-font-size-expected.html: Added.
+* fast/text/hanging-punctuation-variable-font-size.html: Added.
+
 2016-04-20  Chris Dumez  
 
 Drop [UsePointersEvenForNonNullableObjectArguments] from several Canvas interfaces


Added: trunk/LayoutTests/fast/text/hanging-punctuation-variable-font-size-expected.html (0 => 199777)

--- trunk/LayoutTests/fast/text/hanging-punctuation-variable-font-size-expected.html	(rev 0)
+++ trunk/LayoutTests/fast/text/hanging-punctuation-variable-font-size-expected.html	2016-04-20 18:01:40 UTC (rev 199777)
@@ -0,0 +1,11 @@
+
+
+body { font-family: 'Ahem'; color:green }
+.hang { white-space: nowrap; margin:1em; border:1px solid black; float:left }
+
+
+
+
+(1234
+
+1234)


Added: trunk/LayoutTests/fast/text/hanging-punctuation-variable-font-size.html (0 => 199777)

--- trunk/LayoutTests/fast/text/hanging-punctuation-variable-font-size.html	(rev 0)
+++ trunk/LayoutTests/fast/text/hanging-punctuation-variable-font-size.html	2016-04-20 18:01:40 UTC (rev 199777)
@@ -0,0 +1,11 @@
+
+
+body { font-family: 'Ahem'; color:green }
+.hang { hanging-punctuation: first last; margin:1em; border:1px solid black; float:left }
+
+
+
+
+(1234
+
+1234)


Modified: trunk/Source/WebCore/ChangeLog (199776 => 199777)

--- trunk/Source/WebCore/ChangeLog	2016-04-20 17:40:02 UTC (rev 199776)
+++ trunk/Source/WebCore/ChangeLog	2016-04-20 18:01:40 UTC (rev 199777)
@@ -1,3 +1,19 @@
+2016-04-20  Dave Hyatt  
+
+Hangable punctuation measurement using the wrong indices.
+https://bugs.webkit.org/show_bug.cgi?id=155899
+
+Reviewed by Simon Fraser.
+
+New tests in fast/text.
+
+* rendering/RenderBlockFlow.cpp:
+(WebCore::RenderBlockFlow::computeInlinePreferredLogicalWidths):
+* rendering/RenderText.cpp:
+(WebCore::RenderText::hangablePunctuationStartWidth):
+(WebCore::RenderText::hangablePunctuationEndWidth):
+(WebCore::RenderText::isHangableStopOrComma):
+
 2016-04-20  Chris Dumez  
 
 Drop [UsePointersEvenForNonNullableObjectArguments] from several Canvas interfaces


Modified: trunk/Source/WebCore/rendering/RenderBlockFlow.cpp (199776 => 199777)

--- trunk/Source/WebCore/rendering/RenderBlockFlow.cpp	2016-04-20 17:40:02 UTC (rev 199776)
+++ trunk/Source/WebCore/rendering/RenderBlockFlow.cpp	2016-04-20 18:01:40 UTC (rev 199777)
@@ -4114,7 +4114,6 @@
 float childMax = 0;
 
 if (!child->isText()) {
-lastText = nullptr;
 if (child->isLineBreakOpportunity()) {
 minLogicalWidth = preferredWidth(minLogicalWidth, inlineMin);
 inlineMin = 0;
@@ -4134,6 +4133,8 @@
 child->setPreferredLogicalWidthsDirty(false);
 } else {
 // Inline replaced elts add in their margins to their min/max values.
+if (!child->isFloating())
+lastText = nullptr;
 LayoutUnit margins = 0;
 Length startMargin = childStyle.marginStart();
 Length endMargin = childStyle.marginEnd();


Modified: trunk/Source/WebCore/rendering/RenderText.cpp (199776 => 199777)

--- trunk/Source/WebCore/rendering/RenderText.cpp	2016-04-20 17:40:02 UTC (rev 199776)
+++ trunk/Source/WebCore/rendering/RenderText.cpp	2016-04-20 18:01:40 UTC (rev 199777)
@@

[webkit-changes] [199776] trunk

2016-04-20 Thread cdumez
Title: [199776] trunk








Revision 199776
Author cdu...@apple.com
Date 2016-04-20 10:40:02 -0700 (Wed, 20 Apr 2016)


Log Message
Drop [UsePointersEvenForNonNullableObjectArguments] from several Canvas interfaces
https://bugs.webkit.org/show_bug.cgi?id=156781

Reviewed by Darin Adler.

Source/WebCore:

* html/canvas/CanvasRenderingContext2D.cpp:
(WebCore::CanvasRenderingContext2D::fill):
(WebCore::CanvasRenderingContext2D::stroke):
(WebCore::CanvasRenderingContext2D::clip):
(WebCore::CanvasRenderingContext2D::isPointInPath):
(WebCore::CanvasRenderingContext2D::isPointInStroke):
(WebCore::size):
(WebCore::CanvasRenderingContext2D::drawImage):
(WebCore::CanvasRenderingContext2D::drawImageFromRect):
(WebCore::CanvasRenderingContext2D::drawFocusIfNeeded):
* html/canvas/CanvasRenderingContext2D.h:
* html/canvas/CanvasRenderingContext2D.idl:
* html/canvas/DOMPath.h:
* html/canvas/DOMPath.idl:
* html/canvas/WebGLDebugShaders.cpp:
(WebCore::WebGLDebugShaders::getTranslatedShaderSource):
* html/canvas/WebGLDebugShaders.h:
* html/canvas/WebGLDebugShaders.idl:

LayoutTests:

Update outdated test which expected a legacy TYPE_MISMATCH_ERR exception
to be thrown when passing null instead of the newer TypeError.

* canvas/philip/tests/2d.drawImage.null.html:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/canvas/philip/tests/2d.drawImage.null.html
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/html/canvas/CanvasRenderingContext2D.cpp
trunk/Source/WebCore/html/canvas/CanvasRenderingContext2D.h
trunk/Source/WebCore/html/canvas/CanvasRenderingContext2D.idl
trunk/Source/WebCore/html/canvas/DOMPath.h
trunk/Source/WebCore/html/canvas/DOMPath.idl
trunk/Source/WebCore/html/canvas/WebGLDebugShaders.cpp
trunk/Source/WebCore/html/canvas/WebGLDebugShaders.h
trunk/Source/WebCore/html/canvas/WebGLDebugShaders.idl




Diff

Modified: trunk/LayoutTests/ChangeLog (199775 => 199776)

--- trunk/LayoutTests/ChangeLog	2016-04-20 17:27:37 UTC (rev 199775)
+++ trunk/LayoutTests/ChangeLog	2016-04-20 17:40:02 UTC (rev 199776)
@@ -1,5 +1,17 @@
 2016-04-20  Chris Dumez  
 
+Drop [UsePointersEvenForNonNullableObjectArguments] from several Canvas interfaces
+https://bugs.webkit.org/show_bug.cgi?id=156781
+
+Reviewed by Darin Adler.
+
+Update outdated test which expected a legacy TYPE_MISMATCH_ERR exception
+to be thrown when passing null instead of the newer TypeError.
+
+* canvas/philip/tests/2d.drawImage.null.html:
+
+2016-04-20  Chris Dumez  
+
 Drop [UsePointersEvenForNonNullableObjectArguments] from WebAudio
 https://bugs.webkit.org/show_bug.cgi?id=156777
 


Modified: trunk/LayoutTests/canvas/philip/tests/2d.drawImage.null.html (199775 => 199776)

--- trunk/LayoutTests/canvas/philip/tests/2d.drawImage.null.html	2016-04-20 17:27:37 UTC (rev 199775)
+++ trunk/LayoutTests/canvas/philip/tests/2d.drawImage.null.html	2016-04-20 17:40:02 UTC (rev 199776)
@@ -14,7 +14,7 @@
 
 try { var _thrown = false;
   ctx.drawImage(null, 0, 0);
-} catch (e) { if (e.code != DOMException.TYPE_MISMATCH_ERR) _fail("Failed assertion: expected exception of type TYPE_MISMATCH_ERR, got: "+e.message); _thrown = true; } finally { _assert(_thrown, "should throw exception of type TYPE_MISMATCH_ERR: ctx.drawImage(null, 0, 0)"); }
+} catch (e) { if (e.name != "TypeError") _fail("Failed assertion: expected TypeError exception, got: "+e.message); _thrown = true; } finally { _assert(_thrown, "should throw TypeError exception: ctx.drawImage(null, 0, 0)"); }
 
 
 });


Modified: trunk/Source/WebCore/ChangeLog (199775 => 199776)

--- trunk/Source/WebCore/ChangeLog	2016-04-20 17:27:37 UTC (rev 199775)
+++ trunk/Source/WebCore/ChangeLog	2016-04-20 17:40:02 UTC (rev 199776)
@@ -1,5 +1,31 @@
 2016-04-20  Chris Dumez  
 
+Drop [UsePointersEvenForNonNullableObjectArguments] from several Canvas interfaces
+https://bugs.webkit.org/show_bug.cgi?id=156781
+
+Reviewed by Darin Adler.
+
+* html/canvas/CanvasRenderingContext2D.cpp:
+(WebCore::CanvasRenderingContext2D::fill):
+(WebCore::CanvasRenderingContext2D::stroke):
+(WebCore::CanvasRenderingContext2D::clip):
+(WebCore::CanvasRenderingContext2D::isPointInPath):
+(WebCore::CanvasRenderingContext2D::isPointInStroke):
+(WebCore::size):
+(WebCore::CanvasRenderingContext2D::drawImage):
+(WebCore::CanvasRenderingContext2D::drawImageFromRect):
+(WebCore::CanvasRenderingContext2D::drawFocusIfNeeded):
+* html/canvas/CanvasRenderingContext2D.h:
+* html/canvas/CanvasRenderingContext2D.idl:
+* html/canvas/DOMPath.h:
+* html/canvas/DOMPath.idl:
+* html/canvas/WebGLDebugShaders.cpp:
+(WebCore::WebGLDebugShaders::getTranslatedShaderSource):
+* html/canvas/WebGLDebugShaders.h:
+* html/canvas/WebGLDebugShaders.idl:
+
+2016-04-20  Chris Dumez  
+
 Drop [UsePointersEvenForNonNullableObjectArguments] fr

[webkit-changes] [199775] trunk

2016-04-20 Thread cdumez
Title: [199775] trunk








Revision 199775
Author cdu...@apple.com
Date 2016-04-20 10:27:37 -0700 (Wed, 20 Apr 2016)


Log Message
Drop [UsePointersEvenForNonNullableObjectArguments] from WebAudio
https://bugs.webkit.org/show_bug.cgi?id=156777

Reviewed by Darin Adler.

Source/WebCore:

Drop [UsePointersEvenForNonNullableObjectArguments] from WebAudio and
modernize the interface a bit.

There is no major Web-exposed behavioral change except for
the exception type thrown when passing null (now always TypeError).
Tests were updated to add coverage for this.

* Modules/webaudio/AsyncAudioDecoder.cpp:
(WebCore::AsyncAudioDecoder::decodeAsync):
(WebCore::AsyncAudioDecoder::DecodingTask::DecodingTask):
(WebCore::AsyncAudioDecoder::DecodingTask::decode): Deleted.
* Modules/webaudio/AsyncAudioDecoder.h:
(WebCore::AsyncAudioDecoder::DecodingTask::audioData):
* Modules/webaudio/AudioContext.cpp:
(WebCore::AudioContext::lazyInitialize):
(WebCore::AudioContext::createBuffer):
(WebCore::AudioContext::decodeAudioData):
(WebCore::AudioContext::createBufferSource):
(WebCore::AudioContext::createMediaElementSource):
(WebCore::AudioContext::createMediaStreamSource):
(WebCore::AudioContext::createMediaStreamDestination):
(WebCore::AudioContext::createScriptProcessor):
(WebCore::AudioContext::createBiquadFilter):
(WebCore::AudioContext::createWaveShaper):
(WebCore::AudioContext::createPanner):
(WebCore::AudioContext::createConvolver):
(WebCore::AudioContext::createDynamicsCompressor):
(WebCore::AudioContext::createAnalyser):
(WebCore::AudioContext::createGain):
(WebCore::AudioContext::createDelay):
(WebCore::AudioContext::createChannelSplitter):
(WebCore::AudioContext::createChannelMerger):
(WebCore::AudioContext::createOscillator):
(WebCore::AudioContext::createPeriodicWave):
(WebCore::AudioContext::derefFinishedSourceNodes):
(WebCore::AudioContext::refNode):
(WebCore::AudioContext::derefNode):
(WebCore::AudioContext::notifyNodeFinishedProcessing): Deleted.
(WebCore::AudioContext::derefUnfinishedSourceNodes): Deleted.
(WebCore::AudioContext::lock): Deleted.
* Modules/webaudio/AudioContext.h:
* Modules/webaudio/AudioContext.idl:
* Modules/webaudio/MediaElementAudioSourceNode.cpp:
(WebCore::MediaElementAudioSourceNode::create):
(WebCore::MediaElementAudioSourceNode::MediaElementAudioSourceNode):
(WebCore::MediaElementAudioSourceNode::process):
* Modules/webaudio/MediaElementAudioSourceNode.h:
(WebCore::MediaElementAudioSourceNode::mediaElement):
* Modules/webaudio/OscillatorNode.idl:

LayoutTests:

Added test coverage for the type of the exception being thrown when
pasing null to various WebAudio API.

* webaudio/audiobuffer-expected.txt:
* webaudio/audiobuffer.html:
* webaudio/createMediaStreamSource-null-expected.txt: Added.
* webaudio/createMediaStreamSource-null.html: Added.
* webaudio/decode-audio-data-basic-expected.txt:
* webaudio/decode-audio-data-basic.html:
* webaudio/mediaelementaudiosourcenode-expected.txt:
* webaudio/mediaelementaudiosourcenode.html:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/webaudio/audiobuffer-expected.txt
trunk/LayoutTests/webaudio/audiobuffer.html
trunk/LayoutTests/webaudio/decode-audio-data-basic-expected.txt
trunk/LayoutTests/webaudio/decode-audio-data-basic.html
trunk/LayoutTests/webaudio/mediaelementaudiosourcenode-expected.txt
trunk/LayoutTests/webaudio/mediaelementaudiosourcenode.html
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Modules/webaudio/AsyncAudioDecoder.cpp
trunk/Source/WebCore/Modules/webaudio/AsyncAudioDecoder.h
trunk/Source/WebCore/Modules/webaudio/AudioContext.cpp
trunk/Source/WebCore/Modules/webaudio/AudioContext.h
trunk/Source/WebCore/Modules/webaudio/AudioContext.idl
trunk/Source/WebCore/Modules/webaudio/MediaElementAudioSourceNode.cpp
trunk/Source/WebCore/Modules/webaudio/MediaElementAudioSourceNode.h
trunk/Source/WebCore/Modules/webaudio/OscillatorNode.idl


Added Paths

trunk/LayoutTests/webaudio/createMediaStreamSource-null-expected.txt
trunk/LayoutTests/webaudio/createMediaStreamSource-null.html




Diff

Modified: trunk/LayoutTests/ChangeLog (199774 => 199775)

--- trunk/LayoutTests/ChangeLog	2016-04-20 16:14:14 UTC (rev 199774)
+++ trunk/LayoutTests/ChangeLog	2016-04-20 17:27:37 UTC (rev 199775)
@@ -1,3 +1,22 @@
+2016-04-20  Chris Dumez  
+
+Drop [UsePointersEvenForNonNullableObjectArguments] from WebAudio
+https://bugs.webkit.org/show_bug.cgi?id=156777
+
+Reviewed by Darin Adler.
+
+Added test coverage for the type of the exception being thrown when
+pasing null to various WebAudio API.
+
+* webaudio/audiobuffer-expected.txt:
+* webaudio/audiobuffer.html:
+* webaudio/createMediaStreamSource-null-expected.txt: Added.
+* webaudio/createMediaStreamSource-null.html: Added.
+* webaudio/decode-audio-data-basic-expected.txt:
+* webaudio/decode-audio-data-basic.html:
+* webaudio/mediaelementaudiosourcenode-expected.txt:
+* webaudio/mediae

[webkit-changes] [199774] trunk

2016-04-20 Thread beidson
Title: [199774] trunk








Revision 199774
Author beid...@apple.com
Date 2016-04-20 09:14:14 -0700 (Wed, 20 Apr 2016)


Log Message
Addressing additional review feedback for:
Modern IDB: Lots of IDB bindings cleanup (including making IDBVersionChangeEvent constructible).
https://bugs.webkit.org/show_bug.cgi?id=156760

Source/WebCore:

* Modules/indexeddb/IDBVersionChangeEvent.h:

LayoutTests:

* storage/indexeddb/modern/idbversionchangeevent-constructor-expected.txt:
* storage/indexeddb/modern/idbversionchangeevent-constructor.html:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/storage/indexeddb/modern/idbversionchangeevent-constructor-expected.txt
trunk/LayoutTests/storage/indexeddb/modern/idbversionchangeevent-constructor.html
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Modules/indexeddb/IDBVersionChangeEvent.h




Diff

Modified: trunk/LayoutTests/ChangeLog (199773 => 199774)

--- trunk/LayoutTests/ChangeLog	2016-04-20 15:43:51 UTC (rev 199773)
+++ trunk/LayoutTests/ChangeLog	2016-04-20 16:14:14 UTC (rev 199774)
@@ -1,3 +1,12 @@
+2016-04-20  Brady Eidson  
+
+Addressing additional review feedback for:
+Modern IDB: Lots of IDB bindings cleanup (including making IDBVersionChangeEvent constructible).
+https://bugs.webkit.org/show_bug.cgi?id=156760
+
+* storage/indexeddb/modern/idbversionchangeevent-constructor-expected.txt:
+* storage/indexeddb/modern/idbversionchangeevent-constructor.html:
+
 2016-04-20  Frederic Wang  
 
 Refactor RenderMathMLSpace to avoid using flexbox


Modified: trunk/LayoutTests/storage/indexeddb/modern/idbversionchangeevent-constructor-expected.txt (199773 => 199774)

--- trunk/LayoutTests/storage/indexeddb/modern/idbversionchangeevent-constructor-expected.txt	2016-04-20 15:43:51 UTC (rev 199773)
+++ trunk/LayoutTests/storage/indexeddb/modern/idbversionchangeevent-constructor-expected.txt	2016-04-20 16:14:14 UTC (rev 199774)
@@ -10,6 +10,9 @@
 event = new IDBVersionChangeEvent('bar', { oldVersion: 6, newVersion: null });
 PASS event.oldVersion is 6
 PASS event.newVersion is null
+event = new IDBVersionChangeEvent('bar', { oldVersion: 4, newVersion: undefined });
+PASS event.oldVersion is 4
+PASS event.newVersion is null
 event = new IDBVersionChangeEvent('bar', { oldVersion: 0, newVersion: 17 });
 PASS event.oldVersion is 0
 PASS event.newVersion is 17


Modified: trunk/LayoutTests/storage/indexeddb/modern/idbversionchangeevent-constructor.html (199773 => 199774)

--- trunk/LayoutTests/storage/indexeddb/modern/idbversionchangeevent-constructor.html	2016-04-20 15:43:51 UTC (rev 199773)
+++ trunk/LayoutTests/storage/indexeddb/modern/idbversionchangeevent-constructor.html	2016-04-20 16:14:14 UTC (rev 199774)
@@ -23,6 +23,10 @@
 shouldBeEqualToNumber("event.oldVersion", 6);
 shouldBeNull("event.newVersion");
 
+evalAndLog("event = new IDBVersionChangeEvent('bar', { oldVersion: 4, newVersion: undefined });");
+shouldBeEqualToNumber("event.oldVersion", 4);
+shouldBeNull("event.newVersion");
+
 evalAndLog("event = new IDBVersionChangeEvent('bar', { oldVersion: 0, newVersion: 17 });");
 shouldBeEqualToNumber("event.oldVersion", 0);
 shouldBeEqualToNumber("event.newVersion", 17);


Modified: trunk/Source/WebCore/ChangeLog (199773 => 199774)

--- trunk/Source/WebCore/ChangeLog	2016-04-20 15:43:51 UTC (rev 199773)
+++ trunk/Source/WebCore/ChangeLog	2016-04-20 16:14:14 UTC (rev 199774)
@@ -1,3 +1,11 @@
+2016-04-20  Brady Eidson  
+
+Addressing additional review feedback for:
+Modern IDB: Lots of IDB bindings cleanup (including making IDBVersionChangeEvent constructible).
+https://bugs.webkit.org/show_bug.cgi?id=156760
+
+* Modules/indexeddb/IDBVersionChangeEvent.h:
+
 2016-04-20  Frederic Wang  
 
 Use OpenType MATH fonts by default


Modified: trunk/Source/WebCore/Modules/indexeddb/IDBVersionChangeEvent.h (199773 => 199774)

--- trunk/Source/WebCore/Modules/indexeddb/IDBVersionChangeEvent.h	2016-04-20 15:43:51 UTC (rev 199773)
+++ trunk/Source/WebCore/Modules/indexeddb/IDBVersionChangeEvent.h	2016-04-20 16:14:14 UTC (rev 199774)
@@ -35,7 +35,7 @@
 
 struct IDBVersionChangeEventInit : public EventInit {
 uint64_t oldVersion { 0 };
-Optional newVersion { Nullopt };
+Optional newVersion;
 };
 
 class IDBVersionChangeEvent final : public Event {






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


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

2016-04-20 Thread fred . wang
Title: [199773] trunk/Source/WebCore








Revision 199773
Author fred.w...@free.fr
Date 2016-04-20 08:43:51 -0700 (Wed, 20 Apr 2016)


Log Message
Use OpenType MATH fonts by default
https://bugs.webkit.org/show_bug.cgi?id=133603

Patch by Frederic Wang  on 2016-04-20
Reviewed by Alejandro G. Castro.

No new tests. This is already tested by pixel tests like roots.xhtml.
However, new math fonts are not used during test execution.

* css/mathml.css:
(math): We use only a list of known OpenType fonts with a MATH table but keep some pre-installed fallback fonts for OS X and iOS.

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/css/mathml.css




Diff

Modified: trunk/Source/WebCore/ChangeLog (199772 => 199773)

--- trunk/Source/WebCore/ChangeLog	2016-04-20 15:03:05 UTC (rev 199772)
+++ trunk/Source/WebCore/ChangeLog	2016-04-20 15:43:51 UTC (rev 199773)
@@ -1,3 +1,16 @@
+2016-04-20  Frederic Wang  
+
+Use OpenType MATH fonts by default
+https://bugs.webkit.org/show_bug.cgi?id=133603
+
+Reviewed by Alejandro G. Castro.
+
+No new tests. This is already tested by pixel tests like roots.xhtml.
+However, new math fonts are not used during test execution.
+
+* css/mathml.css:
+(math): We use only a list of known OpenType fonts with a MATH table but keep some pre-installed fallback fonts for OS X and iOS.
+
 2016-04-20  Claudio Saavedra  
 
 [GTK] Move GTK+-independent platform code to platform/glib


Modified: trunk/Source/WebCore/css/mathml.css (199772 => 199773)

--- trunk/Source/WebCore/css/mathml.css	2016-04-20 15:03:05 UTC (rev 199772)
+++ trunk/Source/WebCore/css/mathml.css	2016-04-20 15:43:51 UTC (rev 199773)
@@ -12,14 +12,32 @@
 line-height: 1.0;
 }
 
-/* Keep font-family and other defaults here consistent with http://mxr.mozilla.org/mozilla-central/source/layout/mathml/mathml.css and feedback from www-math. */
+/* Fonts with appropriate Unicode coverage and OpenType features are required for good math rendering.
+   Consequently the default font-family on the  tag is not inherited but set to a list of known math fonts.
+   See http://trac.webkit.org/wiki/MathML/Fonts.
+   FIXME: OS X and iOS do not have such fonts pre-installed (bugs 17021145, 16841023 and 16843041 from Apple bug tracker).
+   Hence we also append some system fonts to provide minimal Unicode coverage and limited operator stretching.
+*/
 math {
+font-family: "Latin Modern Math",
+ "XITS Math",
+ "STIX Math",
+ "Libertinus Math",
+ "TeX Gyre Bonum Math",
+ "TeX Gyre Pagella Math",
+ "TeX Gyre Schola",
+ "TeX Gyre Termes Math",
+ "Cambria Math",
+ "Asana Math",
+ "Lucida Bright Math",
+ "Minion Math",
+ STIXGeneral,
+ STIXSizeOneSym,
 #if defined(WTF_PLATFORM_IOS) && WTF_PLATFORM_IOS
-/* We explicitly include the font Symbol as it's the iOS equivalent of font STIXGeneral. */
-font-family: STIXGeneral, Symbol, "Times New Roman", sans-serif;
-#else
-font-family: "Latin Modern Math", MathJax_Main, STIXGeneral, STIXSizeOneSym, "DejaVu Sans", "DejaVu Serif", Cambria, "Cambria Math", "Lucida Sans Unicode", "Arial Unicode MS", "Lucida Grande", OpenSymbol, "Standard Symbols L", Times, serif;
+ Symbol,
+ "Times New Roman",
 #endif
+ serif;
 }
 
 math {






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


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

2016-04-20 Thread csaavedra
Title: [199772] trunk/Source/WebCore








Revision 199772
Author csaave...@igalia.com
Date 2016-04-20 08:03:05 -0700 (Wed, 20 Apr 2016)


Log Message
[GTK] Move GTK+-independent platform code to platform/glib
https://bugs.webkit.org/show_bug.cgi?id=156787

Reviewed by Carlos Garcia Campos.

There is plenty of code in platform/gtk that is independent from the GTK+ library.
Move those files to platform/glib so that they can be reused by other GLib-based ports.

Also clean some style warnings in those files.

* PlatformGTK.cmake: Move the files.
* platform/glib/EventLoopGlib.cpp: Renamed from Source/WebCore/platform/gtk/EventLoopGtk.cpp.
(WebCore::EventLoop::cycle):
* platform/glib/FileSystemGlib.cpp: Renamed from Source/WebCore/platform/gtk/FileSystemGtk.cpp.
(WebCore::filenameToString):
(WebCore::unescapedFilename):
(WebCore::fileSystemRepresentation):
(WebCore::filenameForDisplay):
(WebCore::fileExists):
(WebCore::deleteFile):
(WebCore::deleteEmptyDirectory):
(WebCore::getFileStat):
(WebCore::getFileSize):
(WebCore::getFileCreationTime):
(WebCore::getFileModificationTime):
(WebCore::getFileMetadata):
(WebCore::pathByAppendingComponent):
(WebCore::makeAllDirectories):
(WebCore::homeDirectoryPath):
(WebCore::pathGetFileName):
(WebCore::applicationDirectoryPath):
(WebCore::sharedResourcesPath):
(WebCore::getVolumeFreeSizeForPath):
(WebCore::directoryName):
(WebCore::listDirectory):
(WebCore::openTemporaryFile):
(WebCore::openFile):
(WebCore::closeFile):
(WebCore::seekFile):
(WebCore::writeToFile):
(WebCore::readFromFile):
(WebCore::unloadModule):
(WebCore::hardLinkOrCopyFile):
* platform/glib/GamepadsGlib.cpp: Renamed from Source/WebCore/platform/gtk/GamepadsGtk.cpp.
(WebCore::GamepadDeviceGlib::GamepadDeviceGlib):
(WebCore::GamepadDeviceGlib::~GamepadDeviceGlib):
(WebCore::GamepadDeviceGlib::readCallback):
(WebCore::GamepadsGlib::GamepadsGlib):
(WebCore::GamepadsGlib::~GamepadsGlib):
(WebCore::GamepadsGlib::registerDevice):
(WebCore::GamepadsGlib::unregisterDevice):
(WebCore::GamepadsGlib::updateGamepadList):
(WebCore::GamepadsGlib::onUEventCallback):
(WebCore::GamepadsGlib::isGamepadDevice):
(WebCore::sampleGamepads):
* platform/glib/SharedBufferGlib.cpp: Renamed from Source/WebCore/platform/gtk/SharedBufferGtk.cpp.
(WebCore::SharedBuffer::createFromReadingFile):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/PlatformGTK.cmake


Added Paths

trunk/Source/WebCore/platform/glib/EventLoopGlib.cpp
trunk/Source/WebCore/platform/glib/FileSystemGlib.cpp
trunk/Source/WebCore/platform/glib/GamepadsGlib.cpp
trunk/Source/WebCore/platform/glib/SharedBufferGlib.cpp


Removed Paths

trunk/Source/WebCore/platform/gtk/EventLoopGtk.cpp
trunk/Source/WebCore/platform/gtk/FileSystemGtk.cpp
trunk/Source/WebCore/platform/gtk/GamepadsGtk.cpp
trunk/Source/WebCore/platform/gtk/SharedBufferGtk.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (199771 => 199772)

--- trunk/Source/WebCore/ChangeLog	2016-04-20 13:25:39 UTC (rev 199771)
+++ trunk/Source/WebCore/ChangeLog	2016-04-20 15:03:05 UTC (rev 199772)
@@ -1,3 +1,63 @@
+2016-04-20  Claudio Saavedra  
+
+[GTK] Move GTK+-independent platform code to platform/glib
+https://bugs.webkit.org/show_bug.cgi?id=156787
+
+Reviewed by Carlos Garcia Campos.
+
+There is plenty of code in platform/gtk that is independent from the GTK+ library.
+Move those files to platform/glib so that they can be reused by other GLib-based ports.
+
+Also clean some style warnings in those files.
+
+* PlatformGTK.cmake: Move the files.
+* platform/glib/EventLoopGlib.cpp: Renamed from Source/WebCore/platform/gtk/EventLoopGtk.cpp.
+(WebCore::EventLoop::cycle):
+* platform/glib/FileSystemGlib.cpp: Renamed from Source/WebCore/platform/gtk/FileSystemGtk.cpp.
+(WebCore::filenameToString):
+(WebCore::unescapedFilename):
+(WebCore::fileSystemRepresentation):
+(WebCore::filenameForDisplay):
+(WebCore::fileExists):
+(WebCore::deleteFile):
+(WebCore::deleteEmptyDirectory):
+(WebCore::getFileStat):
+(WebCore::getFileSize):
+(WebCore::getFileCreationTime):
+(WebCore::getFileModificationTime):
+(WebCore::getFileMetadata):
+(WebCore::pathByAppendingComponent):
+(WebCore::makeAllDirectories):
+(WebCore::homeDirectoryPath):
+(WebCore::pathGetFileName):
+(WebCore::applicationDirectoryPath):
+(WebCore::sharedResourcesPath):
+(WebCore::getVolumeFreeSizeForPath):
+(WebCore::directoryName):
+(WebCore::listDirectory):
+(WebCore::openTemporaryFile):
+(WebCore::openFile):
+(WebCore::closeFile):
+(WebCore::seekFile):
+(WebCore::writeToFile):
+(WebCore::readFromFile):
+(WebCore::unloadModule):
+(WebCore::hardLinkOrCopyFile):
+* platform/glib/GamepadsGlib.cpp: Renamed from Source/WebCore/platform/

[webkit-changes] [199771] trunk

2016-04-20 Thread fred . wang
Title: [199771] trunk








Revision 199771
Author fred.w...@free.fr
Date 2016-04-20 06:25:39 -0700 (Wed, 20 Apr 2016)


Log Message
Refactor RenderMathMLSpace to avoid using flexbox
https://bugs.webkit.org/show_bug.cgi?id=155168

Patch by Frederic Wang  on 2016-04-20
Reviewed by Martin Robinson.

Source/WebCore:

No new tests, already covered by existing tests. The behavior of mspace-prefered-width-expected is not specified by the MathML recommendation, we update that test to match our new behavior.

* rendering/mathml/RenderMathMLSpace.cpp: Implement layout functions without passing by flebox.
(WebCore::RenderMathMLSpace::computePreferredLogicalWidths): Implement this function.
(WebCore::RenderMathMLSpace::layoutBlock): Implement this function.
(WebCore::RenderMathMLSpace::computeIntrinsicLogicalWidths): Deleted.
(WebCore::RenderMathMLSpace::updateLogicalWidth): Deleted.
(WebCore::RenderMathMLSpace::updateLogicalHeight): Deleted.
* rendering/mathml/RenderMathMLSpace.h: Update function declarations.

LayoutTests:

* mathml/presentation/mspace-prefered-width-expected.html: Update the expectation so that the logical width and preferred width are both equal to the one specified by the width attribute.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/mathml/presentation/mspace-prefered-width-expected.html
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/rendering/mathml/RenderMathMLSpace.cpp
trunk/Source/WebCore/rendering/mathml/RenderMathMLSpace.h




Diff

Modified: trunk/LayoutTests/ChangeLog (199770 => 199771)

--- trunk/LayoutTests/ChangeLog	2016-04-20 09:06:00 UTC (rev 199770)
+++ trunk/LayoutTests/ChangeLog	2016-04-20 13:25:39 UTC (rev 199771)
@@ -1,3 +1,12 @@
+2016-04-20  Frederic Wang  
+
+Refactor RenderMathMLSpace to avoid using flexbox
+https://bugs.webkit.org/show_bug.cgi?id=155168
+
+Reviewed by Martin Robinson.
+
+* mathml/presentation/mspace-prefered-width-expected.html: Update the expectation so that the logical width and preferred width are both equal to the one specified by the width attribute.
+
 2016-04-20  Carlos Garcia Campos  
 
 Unreviewed GTK+ gardening. Mark HLS tests release expectations as release only.


Modified: trunk/LayoutTests/mathml/presentation/mspace-prefered-width-expected.html (199770 => 199771)

--- trunk/LayoutTests/mathml/presentation/mspace-prefered-width-expected.html	2016-04-20 09:06:00 UTC (rev 199770)
+++ trunk/LayoutTests/mathml/presentation/mspace-prefered-width-expected.html	2016-04-20 13:25:39 UTC (rev 199771)
@@ -14,10 +14,10 @@
 	 
 	
 
-	 
+	 
 	
 
-	 
+	 
 	
   
 


Modified: trunk/Source/WebCore/ChangeLog (199770 => 199771)

--- trunk/Source/WebCore/ChangeLog	2016-04-20 09:06:00 UTC (rev 199770)
+++ trunk/Source/WebCore/ChangeLog	2016-04-20 13:25:39 UTC (rev 199771)
@@ -1,3 +1,20 @@
+2016-04-20  Frederic Wang  
+
+Refactor RenderMathMLSpace to avoid using flexbox
+https://bugs.webkit.org/show_bug.cgi?id=155168
+
+Reviewed by Martin Robinson.
+
+No new tests, already covered by existing tests. The behavior of mspace-prefered-width-expected is not specified by the MathML recommendation, we update that test to match our new behavior.
+
+* rendering/mathml/RenderMathMLSpace.cpp: Implement layout functions without passing by flebox.
+(WebCore::RenderMathMLSpace::computePreferredLogicalWidths): Implement this function.
+(WebCore::RenderMathMLSpace::layoutBlock): Implement this function.
+(WebCore::RenderMathMLSpace::computeIntrinsicLogicalWidths): Deleted.
+(WebCore::RenderMathMLSpace::updateLogicalWidth): Deleted.
+(WebCore::RenderMathMLSpace::updateLogicalHeight): Deleted.
+* rendering/mathml/RenderMathMLSpace.h: Update function declarations.
+
 2016-04-20  Carlos Garcia Campos  
 
 [Cairo] Crash in GraphicsContext::drawFocusRing when painting is disabled


Modified: trunk/Source/WebCore/rendering/mathml/RenderMathMLSpace.cpp (199770 => 199771)

--- trunk/Source/WebCore/rendering/mathml/RenderMathMLSpace.cpp	2016-04-20 09:06:00 UTC (rev 199770)
+++ trunk/Source/WebCore/rendering/mathml/RenderMathMLSpace.cpp	2016-04-20 13:25:39 UTC (rev 199771)
@@ -44,10 +44,13 @@
 {
 }
 
-void RenderMathMLSpace::computeIntrinsicLogicalWidths(LayoutUnit& minLogicalWidth, LayoutUnit& maxLogicalWidth) const
+void RenderMathMLSpace::computePreferredLogicalWidths()
 {
-minLogicalWidth = m_width;
-maxLogicalWidth = m_width;
+ASSERT(preferredLogicalWidthsDirty());
+
+m_minPreferredLogicalWidth = m_maxPreferredLogicalWidth = m_width;
+
+setPreferredLogicalWidthsDirty(false);
 }
 
 void RenderMathMLSpace::updateFromElement()
@@ -75,14 +78,17 @@
 setNeedsLayoutAndPrefWidthsRecalc();
 }
 
-void RenderMathMLSpace::updateLogicalWidth()
+void RenderMathMLSpace::layoutBlock(bool relayoutChildren, LayoutUnit)
 {
+ASSERT(needsLayout());
+
+if (!relayoutChildren && simplifiedLayout())
+return

[webkit-changes] [199770] trunk/LayoutTests

2016-04-20 Thread carlosgc
Title: [199770] trunk/LayoutTests








Revision 199770
Author carlo...@webkit.org
Date 2016-04-20 02:06:00 -0700 (Wed, 20 Apr 2016)


Log Message
Unreviewed GTK+ gardening. Mark HLS tests release expectations as release only.

* platform/gtk/TestExpectations:

Modified Paths

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




Diff

Modified: trunk/LayoutTests/ChangeLog (199769 => 199770)

--- trunk/LayoutTests/ChangeLog	2016-04-20 08:47:45 UTC (rev 199769)
+++ trunk/LayoutTests/ChangeLog	2016-04-20 09:06:00 UTC (rev 199770)
@@ -1,3 +1,9 @@
+2016-04-20  Carlos Garcia Campos  
+
+Unreviewed GTK+ gardening. Mark HLS tests release expectations as release only.
+
+* platform/gtk/TestExpectations:
+
 2016-04-20  Gyuyoung Kim  
 
 Unreviewed EFL gardening. Follow up gardening for media test.


Modified: trunk/LayoutTests/platform/gtk/TestExpectations (199769 => 199770)

--- trunk/LayoutTests/platform/gtk/TestExpectations	2016-04-20 08:47:45 UTC (rev 199769)
+++ trunk/LayoutTests/platform/gtk/TestExpectations	2016-04-20 09:06:00 UTC (rev 199770)
@@ -677,13 +677,13 @@
 webkit.org/b/154390 http/tests/media/video-throttled-load-metadata.html [ Failure ]
 webkit.org/b/154390 http/tests/media/video-served-as-text.html [ Failure ]
 webkit.org/b/154390 http/tests/media/video-redirect.html [ Failure ]
-webkit.org/b/154390 http/tests/media/hls/video-controller-getStartDate.html [ Timeout Failure ]
-webkit.org/b/154390 http/tests/media/hls/hls-audio-tracks-locale-selection.html [ Timeout Failure ]
-webkit.org/b/154390 http/tests/media/hls/hls-video-resize.html [ Timeout Failure ]
-webkit.org/b/154390 http/tests/media/hls/hls-audio-tracks.html [ Timeout Failure ]
-webkit.org/b/154390 http/tests/media/hls/hls-audio-tracks-has-audio.html [ Timeout Failure ]
-webkit.org/b/154390 http/tests/media/hls/hls-accessiblity-describes-video.html [ Timeout Failure ]
-webkit.org/b/154390 http/tests/media/hls/video-cookie.html [ Failure ]
+webkit.org/b/154390 [ Release ] http/tests/media/hls/video-controller-getStartDate.html [ Timeout Failure ]
+webkit.org/b/154390 [ Release ] http/tests/media/hls/hls-audio-tracks-locale-selection.html [ Timeout Failure ]
+webkit.org/b/154390 [ Release ] http/tests/media/hls/hls-video-resize.html [ Timeout Failure ]
+webkit.org/b/154390 [ Release ] http/tests/media/hls/hls-audio-tracks.html [ Timeout Failure ]
+webkit.org/b/154390 [ Release ] http/tests/media/hls/hls-audio-tracks-has-audio.html [ Timeout Failure ]
+webkit.org/b/154390 [ Release ] http/tests/media/hls/hls-accessiblity-describes-video.html [ Timeout Failure ]
+webkit.org/b/154390 [ Release ] http/tests/media/hls/video-cookie.html [ Failure ]
 webkit.org/b/154390 http/tests/security/local-video-source-from-remote.html [ Timeout Pass ]
 
 webkit.org/b/155505 http/tests/security/contentSecurityPolicy/userAgentShadowDOM/allow-audio.html [ Skip ]






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


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

2016-04-20 Thread carlosgc
Title: [199769] trunk/Source/WebCore








Revision 199769
Author carlo...@webkit.org
Date 2016-04-20 01:47:45 -0700 (Wed, 20 Apr 2016)


Log Message
[Cairo] Crash in GraphicsContext::drawFocusRing when painting is disabled
https://bugs.webkit.org/show_bug.cgi?id=156785

Reviewed by Žan Doberšek.

This happens for example when view state changes to focus and paint is called from
FrameView::updateControlTints() with a graphics context that doesn't have a platform context. Layout test
fast/images/image-map-outline-with-scale-transform.html sometimes crashes because of this.

* platform/graphics/cairo/GraphicsContextCairo.cpp:
(WebCore::GraphicsContext::drawFocusRing): Return early if painting is disabled.

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/graphics/cairo/GraphicsContextCairo.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (199768 => 199769)

--- trunk/Source/WebCore/ChangeLog	2016-04-20 08:44:43 UTC (rev 199768)
+++ trunk/Source/WebCore/ChangeLog	2016-04-20 08:47:45 UTC (rev 199769)
@@ -1,3 +1,17 @@
+2016-04-20  Carlos Garcia Campos  
+
+[Cairo] Crash in GraphicsContext::drawFocusRing when painting is disabled
+https://bugs.webkit.org/show_bug.cgi?id=156785
+
+Reviewed by Žan Doberšek.
+
+This happens for example when view state changes to focus and paint is called from
+FrameView::updateControlTints() with a graphics context that doesn't have a platform context. Layout test
+fast/images/image-map-outline-with-scale-transform.html sometimes crashes because of this.
+
+* platform/graphics/cairo/GraphicsContextCairo.cpp:
+(WebCore::GraphicsContext::drawFocusRing): Return early if painting is disabled.
+
 2016-04-19  Carlos Garcia Campos  
 
 REGRESSION(r198782): SHOULD NEVER BE REACHED failure in ImageSource::setData since r198782


Modified: trunk/Source/WebCore/platform/graphics/cairo/GraphicsContextCairo.cpp (199768 => 199769)

--- trunk/Source/WebCore/platform/graphics/cairo/GraphicsContextCairo.cpp	2016-04-20 08:44:43 UTC (rev 199768)
+++ trunk/Source/WebCore/platform/graphics/cairo/GraphicsContextCairo.cpp	2016-04-20 08:47:45 UTC (rev 199769)
@@ -591,6 +591,9 @@
 
 void GraphicsContext::drawFocusRing(const Path& path, float width, float /* offset */, const Color& color)
 {
+if (paintingDisabled())
+return;
+
 // FIXME: We should draw paths that describe a rectangle with rounded corners
 // so as to be consistent with how we draw rectangular focus rings.
 Color ringColor = color;






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


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

2016-04-20 Thread sbarati
Title: [199768] trunk/Source/_javascript_Core








Revision 199768
Author sbar...@apple.com
Date 2016-04-20 01:44:43 -0700 (Wed, 20 Apr 2016)


Log Message
Remove unused m_writtenVariables from the parser and related bits
https://bugs.webkit.org/show_bug.cgi?id=156784

Reviewed by Yusuke Suzuki.

This isn't a octane/codeload speedup even though we're doing less work in
collectFreeVariables. But it's good to get rid of things that are not used.

* parser/Nodes.h:
(JSC::ScopeNode::usesEval):
(JSC::ScopeNode::usesArguments):
(JSC::ScopeNode::usesArrowFunction):
(JSC::ScopeNode::isStrictMode):
(JSC::ScopeNode::setUsesArguments):
(JSC::ScopeNode::usesThis):
(JSC::ScopeNode::modifiesParameter): Deleted.
(JSC::ScopeNode::modifiesArguments): Deleted.
* parser/Parser.cpp:
(JSC::Parser::parseInner):
(JSC::Parser::parseAssignmentExpression):
* parser/Parser.h:
(JSC::Scope::Scope):
(JSC::Scope::hasDeclaredParameter):
(JSC::Scope::preventAllVariableDeclarations):
(JSC::Scope::collectFreeVariables):
(JSC::Scope::mergeInnerArrowFunctionFeatures):
(JSC::Scope::getSloppyModeHoistedFunctions):
(JSC::Scope::getCapturedVars):
(JSC::Scope::setStrictMode):
(JSC::Scope::strictMode):
(JSC::Scope::fillParametersForSourceProviderCache):
(JSC::Scope::restoreFromSourceProviderCache):
(JSC::Parser::hasDeclaredParameter):
(JSC::Parser::exportName):
(JSC::Scope::declareWrite): Deleted.
(JSC::Parser::declareWrite): Deleted.
* parser/ParserModes.h:

Modified Paths

trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/parser/Nodes.h
trunk/Source/_javascript_Core/parser/Parser.cpp
trunk/Source/_javascript_Core/parser/Parser.h
trunk/Source/_javascript_Core/parser/ParserModes.h




Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (199767 => 199768)

--- trunk/Source/_javascript_Core/ChangeLog	2016-04-20 08:33:22 UTC (rev 199767)
+++ trunk/Source/_javascript_Core/ChangeLog	2016-04-20 08:44:43 UTC (rev 199768)
@@ -1,3 +1,43 @@
+2016-04-20  Saam barati  
+
+Remove unused m_writtenVariables from the parser and related bits
+https://bugs.webkit.org/show_bug.cgi?id=156784
+
+Reviewed by Yusuke Suzuki.
+
+This isn't a octane/codeload speedup even though we're doing less work in
+collectFreeVariables. But it's good to get rid of things that are not used.
+
+* parser/Nodes.h:
+(JSC::ScopeNode::usesEval):
+(JSC::ScopeNode::usesArguments):
+(JSC::ScopeNode::usesArrowFunction):
+(JSC::ScopeNode::isStrictMode):
+(JSC::ScopeNode::setUsesArguments):
+(JSC::ScopeNode::usesThis):
+(JSC::ScopeNode::modifiesParameter): Deleted.
+(JSC::ScopeNode::modifiesArguments): Deleted.
+* parser/Parser.cpp:
+(JSC::Parser::parseInner):
+(JSC::Parser::parseAssignmentExpression):
+* parser/Parser.h:
+(JSC::Scope::Scope):
+(JSC::Scope::hasDeclaredParameter):
+(JSC::Scope::preventAllVariableDeclarations):
+(JSC::Scope::collectFreeVariables):
+(JSC::Scope::mergeInnerArrowFunctionFeatures):
+(JSC::Scope::getSloppyModeHoistedFunctions):
+(JSC::Scope::getCapturedVars):
+(JSC::Scope::setStrictMode):
+(JSC::Scope::strictMode):
+(JSC::Scope::fillParametersForSourceProviderCache):
+(JSC::Scope::restoreFromSourceProviderCache):
+(JSC::Parser::hasDeclaredParameter):
+(JSC::Parser::exportName):
+(JSC::Scope::declareWrite): Deleted.
+(JSC::Parser::declareWrite): Deleted.
+* parser/ParserModes.h:
+
 2016-04-19  Saam barati  
 
 Unreviewed, fix cloop build after r199754.


Modified: trunk/Source/_javascript_Core/parser/Nodes.h (199767 => 199768)

--- trunk/Source/_javascript_Core/parser/Nodes.h	2016-04-20 08:33:22 UTC (rev 199767)
+++ trunk/Source/_javascript_Core/parser/Nodes.h	2016-04-20 08:44:43 UTC (rev 199768)
@@ -1592,8 +1592,6 @@
 bool usesEval() const { return m_features & EvalFeature; }
 bool usesArguments() const { return (m_features & ArgumentsFeature) && !(m_features & ShadowsArgumentsFeature); }
 bool usesArrowFunction() const { return m_features & ArrowFunctionFeature; }
-bool modifiesParameter() const { return m_features & ModifiedParameterFeature; }
-bool modifiesArguments() const { return m_features & (EvalFeature | ModifiedArgumentsFeature); }
 bool isStrictMode() const { return m_features & StrictModeFeature; }
 void setUsesArguments() { m_features |= ArgumentsFeature; }
 bool usesThis() const { return m_features & ThisFeature; }


Modified: trunk/Source/_javascript_Core/parser/Parser.cpp (199767 => 199768)

--- trunk/Source/_javascript_Core/parser/Parser.cpp	2016-04-20 08:33:22 UTC (rev 199767)
+++ trunk/Source/_javascript_Core/parser/Parser.cpp	2016-04-20 08:44:43 UTC (rev 199768)
@@ -297,10 +297,8 @@
 
 IdentifierSet capturedVariables;
 UniquedStringImplPtrSet sloppyModeHoistedFunctions;
-bool 

[webkit-changes] [199767] trunk/LayoutTests

2016-04-20 Thread gyuyoung . kim
Title: [199767] trunk/LayoutTests








Revision 199767
Author gyuyoung@webkit.org
Date 2016-04-20 01:33:22 -0700 (Wed, 20 Apr 2016)


Log Message
Unreviewed EFL gardening. Follow up gardening for media test.

* platform/efl/TestExpectations: Unskip 3 media tests.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/platform/efl/TestExpectations




Diff

Modified: trunk/LayoutTests/ChangeLog (199766 => 199767)

--- trunk/LayoutTests/ChangeLog	2016-04-20 06:38:59 UTC (rev 199766)
+++ trunk/LayoutTests/ChangeLog	2016-04-20 08:33:22 UTC (rev 199767)
@@ -1,3 +1,9 @@
+2016-04-20  Gyuyoung Kim  
+
+Unreviewed EFL gardening. Follow up gardening for media test.
+
+* platform/efl/TestExpectations: Unskip 3 media tests.
+
 2016-04-19  Michael Saboff  
 
 iTunes crashing _javascript_Core.dll


Modified: trunk/LayoutTests/platform/efl/TestExpectations (199766 => 199767)

--- trunk/LayoutTests/platform/efl/TestExpectations	2016-04-20 06:38:59 UTC (rev 199766)
+++ trunk/LayoutTests/platform/efl/TestExpectations	2016-04-20 08:33:22 UTC (rev 199767)
@@ -597,7 +597,6 @@
 webkit.org/b/116587 http/tests/security/contentSecurityPolicy/directive-parsing-03.html [ Skip ]
 webkit.org/b/116587 http/tests/security/contentSecurityPolicy/directive-parsing-04.html [ Skip ]
 webkit.org/b/116587 http/tests/security/contentSecurityPolicy/directive-parsing-05.html [ Skip ]
-webkit.org/b/116587 http/tests/security/contentSecurityPolicy/video-redirect-allowed.html [ Crash ]
 webkit.org/b/116587 http/tests/security/contentSecurityPolicy/video-with-http-url-allowed-by-csp-media-src-star.html [ Skip ]
 webkit.org/b/116587 http/tests/security/contentSecurityPolicy/video-with-https-url-allowed-by-csp-media-src-star.html [ Skip ]
 
@@ -669,7 +668,6 @@
 Bug(EFL) fast/history/link-inside-any.html [ Crash ]
 Bug(EFL) fast/loader/image-in-page-cache.html [ Crash ]
 Bug(EFL) fast/selectors/querySelector-in-range-crash.html [ Crash ]
-Bug(EFL) fast/spatial-navigation/snav-media-elements.html [ Crash ]
 Bug(EFL) http/tests/cache/history-only-cached-subresource-loads.html [ Crash ]
 Bug(EFL) http/tests/security/mixedContent/insecure-audio-video-in-main-frame.html [ Crash ]
 Bug(EFL) imported/blink/svg/custom/svg-image-layers-crash.html [ Crash ]
@@ -2059,7 +2057,6 @@
 webkit.org/b/128061 ietestcenter/css3/bordersbackgrounds/border-radius-with-three-values-001.htm [ Failure ]
 webkit.org/b/128061 ietestcenter/css3/bordersbackgrounds/border-radius-with-two-values-001.htm [ Failure ]
 webkit.org/b/128061 ietestcenter/css3/bordersbackgrounds/border-top-left-radius-values-003.htm [ Failure ]
-webkit.org/b/128061 media/video-zoom.html [ Crash ]
 webkit.org/b/128061 svg/zoom/page/zoom-background-image-tiled.html [ Failure ]
 webkit.org/b/128061 svg/zoom/page/zoom-background-images.html [ Failure ]
 webkit.org/b/128061 svg/zoom/page/zoom-img-preserveAspectRatio-support-1.html [ Failure ]






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