zalan@apple.com [Fri, 26 Aug 2016 23:25:29 +0000 (23:25 +0000)]
ASSERT_NOT_REACHED() is touched in WebCore::minimumValueForLength
https://bugs.webkit.org/show_bug.cgi?id=125781
<rdar://problem/
27684457>
Reviewed by Simon Fraser.
Source/WebCore:
RenderTableSection::calcRowLogicalHeight misused minimumValueForLength to fallback to 0 for non-fixed values.
While this patch fixes the assertion, the table section code needs works to support calc values. See webkit.org/b/161273.
Test: fast/table/assert-on-min-max-content-values.html
* rendering/RenderTableSection.cpp:
(WebCore::RenderTableSection::calcRowLogicalHeight):
LayoutTests:
* fast/table/assert-on-min-max-content-values-expected.txt: Added.
* fast/table/assert-on-min-max-content-values.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205056
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ryanhaddad@apple.com [Fri, 26 Aug 2016 23:10:02 +0000 (23:10 +0000)]
Rebaseline fast/dom/focus-contenteditable.html for ios-simulator after r205044.
Unreviewed test gardening.
* platform/ios-simulator-wk2/fast/dom/focus-contenteditable-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205055
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aakash_jain@apple.com [Fri, 26 Aug 2016 22:52:06 +0000 (22:52 +0000)]
webkit-queues queue-status page should should list more recent statuses
https://bugs.webkit.org/show_bug.cgi?id=161220
Reviewed by Daniel Bates.
* QueueStatusServer/handlers/queuestatus.py:
(QueueStatus._fetch_statuses): Increase the number of recent statuses from 15 to 50.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205054
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
akling@apple.com [Fri, 26 Aug 2016 22:41:41 +0000 (22:41 +0000)]
REGRESSION (r204987): fast/canvas-composite-* tests are now flaky assertion failures
<https://webkit.org/b/161259>
Reviewed by Joseph Pecoraro.
Fix a blunder where HTMLCanvasElement::memoryCost() wasn't forwarding the inquiry
to ImageBuffer but HTMLCanvasElement::externalMemoryCost() was.
This fixes flaky "externalMemorySize() <= extraMemorySize()" assertions on debug bots.
* html/HTMLCanvasElement.cpp:
(WebCore::HTMLCanvasElement::memoryCost):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205053
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Fri, 26 Aug 2016 22:16:36 +0000 (22:16 +0000)]
Get rid of NetworkResourceLoader::sendAbortingOnFailure
https://bugs.webkit.org/show_bug.cgi?id=161267
Reviewed by Dan Bernstein.
NetworkResourceLoader::sendAbortingOnFailure sends an IPC message, and if IPC::Connection::send returns false,
it will abort the network resource load.
IPC::Connection::send will only return false if the connection is invalid, and when it becomes invalidated the
connection client member function "didClose" is invoked. For the network process, this will call abort on all outstanding
network loads.
Auditing all the sendAbortingOnFailure call sites, shows that none of them can be called with an invalid connection,
so replace sendAbortingOnFailure with send.
* NetworkProcess/NetworkResourceLoader.cpp:
(WebKit::NetworkResourceLoader::didReceiveResponse):
This is a NetworkLoadClient function which won't be called if the load has been aborted.
(WebKit::NetworkResourceLoader::didReceiveBuffer):
Ditto.
(WebKit::NetworkResourceLoader::didFinishLoading):
Ditto. Also, update a call to sendBufferMaybeAborting to sendBuffer.
(WebKit::NetworkResourceLoader::willSendRedirectedRequest):
This is another NetworkLoadClient function.
(WebKit::NetworkResourceLoader::bufferingTimerFired):
The buffering timer is stopped when abort() is called.
(WebKit::NetworkResourceLoader::sendBuffer):
Rename this from sendBufferMaybeAborting. It has three call sites:
- didReceiveBuffer and didFinishLoading are both NetworkLoadClient functions.
- didRetrieveCacheEntry is called from didFinishLoading (a NetworkLoadClient function) and from
the completion function of retrieveCacheEntry, which has an early return for when the loader has been aborted.
(WebKit::NetworkResourceLoader::didRetrieveCacheEntry):
This is called from the retrieveCacheEntry completion function, which has an early return for when the loader has been aborted.
(WebKit::NetworkResourceLoader::dispatchWillSendRequestForCacheEntry):
Ditto.
(WebKit::NetworkResourceLoader::sendAbortingOnFailure): Deleted.
* NetworkProcess/NetworkResourceLoader.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205052
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jiewen_tan@apple.com [Fri, 26 Aug 2016 22:07:04 +0000 (22:07 +0000)]
Unreviewed, update expectations of tests that can either crash or timeout on iOS simulator WK1
* platform/ios-simulator-wk1/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205051
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
akling@apple.com [Fri, 26 Aug 2016 21:46:07 +0000 (21:46 +0000)]
The :enabled/:disabled selectors should only match elements that can be disabled.
<https://webkit.org/b/161255>
Reviewed by Chris Dumez.
LayoutTests/imported/w3c:
* web-platform-tests/html/semantics/selectors/pseudo-classes/disabled-expected.txt:
Source/WebCore:
Per the HTML spec, only the following elements can be actually disabled:
button, input, select, textarea, optgroup, option, menuitem, fieldset
Since HTMLOutputElement inherits from HTMLFormControlElement, it had some
misguided ideas about being disableable. This was causing it to get matched
by :enabled and :disabled selectors.
Test: imported/w3c/web-platform-tests/html/semantics/selectors/pseudo-classes/disabled.html
* css/SelectorChecker.cpp:
(WebCore::SelectorChecker::checkOne):
* cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::addPseudoClassType):
* css/SelectorCheckerTestFunctions.h:
(WebCore::matchesDisabledPseudoClass):
(WebCore::matchesEnabledPseudoClass): Renamed from isEnabled/isDisabled. Now only allows
:enabled and :disabled selectors to match elements that are actually disableable.
* html/HTMLElement.h:
* html/HTMLElement.cpp:
(WebCore::HTMLElement::canBeActuallyDisabled):
(WebCore::HTMLElement::isActuallyDisabled): Added supporting functions for the aforementioned selectors.
* html/HTMLFormControlElement.cpp:
(WebCore::HTMLFormControlElement::parseAttribute): Don't care about disabled state
changes in elements that are not disableable in the first place.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205050
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ryanhaddad@apple.com [Fri, 26 Aug 2016 21:41:28 +0000 (21:41 +0000)]
Skipping imported/w3c/web-platform-tests/html/dom/interfaces.html on Mac.
https://bugs.webkit.org/show_bug.cgi?id=161142
Unreviewed test gardening.
* platform/mac/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205049
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cdumez@apple.com [Fri, 26 Aug 2016 21:34:21 +0000 (21:34 +0000)]
REGRESSION(r204028): Fix unused-but-set-variable warning in generated JSNavigator.cpp
https://bugs.webkit.org/show_bug.cgi?id=161252
Reviewed by Ryosuke Niwa.
Improve support for [Conditional] with overloaded operations in the IDL.
No new tests, updated bindings tests.
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateHeader):
(GeneratePropertiesHashTable):
(getConditionalForFunctionConsideringOverloads):
(GenerateOverloadedFunctionOrConstructor):
(GenerateImplementation):
* bindings/scripts/test/JS/JSTestGlobalObject.cpp:
(WebCore::jsTestGlobalObjectInstanceFunctionEnabledAtRuntimeOperation): Deleted.
* bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::jsTestObjPrototypeFunctionConditionalOverload1):
(WebCore::jsTestObjPrototypeFunctionConditionalOverload2):
(WebCore::jsTestObjPrototypeFunctionConditionalOverload):
(WebCore::jsTestObjPrototypeFunctionEnabledAtRuntimeOperation): Deleted.
(WebCore::jsTestObjConstructorFunctionOverloadedMethod1): Deleted.
* bindings/scripts/test/TestObj.idl:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205048
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jiewen_tan@apple.com [Fri, 26 Aug 2016 21:23:45 +0000 (21:23 +0000)]
Unreviewed, rebase iOS simulator WK1 tables tests
* platform/ios-simulator-wk1/TestExpectations:
* platform/ios-simulator-wk1/tables/mozilla/bugs/bug30559-expected.txt:
* platform/ios-simulator-wk1/tables/mozilla_expected_failures/bugs/bug128876-expected.txt:
* platform/ios-simulator-wk1/tables/mozilla_expected_failures/bugs/bug3517-expected.txt: Added.
* platform/ios-simulator-wk1/tables/mozilla_expected_failures/bugs/bug8499-expected.txt:
* platform/ios-simulator-wk1/transitions/default-timing-function-expected.txt: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205047
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
joepeck@webkit.org [Fri, 26 Aug 2016 21:20:19 +0000 (21:20 +0000)]
Web Inspector: Add protocol version for iOS 10
https://bugs.webkit.org/show_bug.cgi?id=161266
<rdar://problem/
28036594>
Rubber-stamped by Brian Burg.
* Localizations/en.lproj/localizedStrings.js:
Update missing localized strings.
* Versions/Inspector-iOS-10.0.json: Added.
Protocol for iOS 10.
* UserInterface/Protocol/Legacy/10.0/InspectorBackendCommands.js:
* UserInterface/Protocol/Legacy/7.0/InspectorBackendCommands.js:
* UserInterface/Protocol/Legacy/8.0/InspectorBackendCommands.js:
* UserInterface/Protocol/Legacy/9.0/InspectorBackendCommands.js:
* UserInterface/Protocol/Legacy/9.3/InspectorBackendCommands.js:
Re-generate the legacy backend commands files.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205046
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren@apple.com [Fri, 26 Aug 2016 21:14:15 +0000 (21:14 +0000)]
2016-08-26 Geoffrey Garen <ggaren@apple.com>
Unreviewed build fix.
Fix the CMake build.
* CMakeLists.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205045
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bdakin@apple.com [Fri, 26 Aug 2016 21:11:55 +0000 (21:11 +0000)]
charactersAroundPosition can be wrong because it crosses editing boundaries
https://bugs.webkit.org/show_bug.cgi?id=161215
-and corresponding-
rdar://problem/
27933564
Reviewed by Ryosuke Niwa.
Source/WebCore:
charactersAroundPosition() should not cross editing boundaries. This patch fixes
that by making nextCharacterBoundaryInDirection() take an
EditingBoundaryCrossingRule parameter to pass onto VisiblePosition::next() and
VisiblePosition::previous().
* editing/VisibleUnits.cpp:
(WebCore::nextCharacterBoundaryInDirection):
(WebCore::positionOfNextBoundaryOfGranularity):
(WebCore::charactersAroundPosition):
LayoutTests:
New test.
* editing/mac/spelling/accept-candidate-without-crossing-editing-boundary-expected.txt: Added.
* editing/mac/spelling/accept-candidate-without-crossing-editing-boundary.html: Added.
This test is going back to its pre-https://trac.webkit.org/changeset/195078 state.
That change caused this test to have a different layout because it caused more
layouts to happen. Now that we don’t allow the call to charactersAroundPosition()
to cross editing boundaries, those layouts don’t happen, and we have the old
behavior back.
* platform/mac/fast/dom/focus-contenteditable-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205044
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
joepeck@webkit.org [Fri, 26 Aug 2016 20:59:16 +0000 (20:59 +0000)]
Web Inspector: Show IndexedDB Database/ObjectStore/Index data in a details sidebar
https://bugs.webkit.org/show_bug.cgi?id=161180
<rdar://problem/
28003417>
Reviewed by Brian Burg.
* Localizations/en.lproj/localizedStrings.js:
* UserInterface/Main.html:
New strings and file.
* UserInterface/Base/Main.js:
(WebInspector.contentLoaded):
Instantiate the global details sidebar.
* UserInterface/Views/StorageTabContentView.js:
(WebInspector.StorageTabContentView):
Include the new details sidebar in the Storage tab.
* UserInterface/Controllers/StorageManager.js:
(WebInspector.StorageManager.prototype._addIndexedDBDatabasesIfNeeded.processKeyPath):
Use the protocol generated types.
* UserInterface/Views/IndexedDatabaseDetailsSidebarPanel.js: Added.
(WebInspector.IndexedDatabaseDetailsSidebarPanel):
(WebInspector.IndexedDatabaseDetailsSidebarPanel.prototype.inspect):
(WebInspector.IndexedDatabaseDetailsSidebarPanel.prototype.layout):
(WebInspector.IndexedDatabaseDetailsSidebarPanel.prototype._keyPathString):
Show the sidebar for an IndexedDatabase, ObjectStore, or Index.
Show each section if we can based on the objects we have.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205043
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
joepeck@webkit.org [Fri, 26 Aug 2016 20:59:13 +0000 (20:59 +0000)]
Web Inspector: Test and address issues in IndexedDB.requestData
https://bugs.webkit.org/show_bug.cgi?id=161178
<rdar://problem/
28002467>
Reviewed by Brian Burg.
Source/WebCore:
Test: inspector/indexeddb/requestData.html
* inspector/InspectorIndexedDBAgent.cpp:
(idbKeyRangeFromKeyRange):
Parsing was too strict. "lower" and "upper" keys are optional.
(WebCore::DataLoader::execute):
Ensure the skip count is passed forward.
LayoutTests:
* inspector/indexeddb/requestData-expected.txt: Added.
* inspector/indexeddb/requestData.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205042
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
joepeck@webkit.org [Fri, 26 Aug 2016 20:59:09 +0000 (20:59 +0000)]
Web Inspector: Provide a way to clear an IndexedDB object store
https://bugs.webkit.org/show_bug.cgi?id=161167
<rdar://problem/
27996932>
Reviewed by Brian Burg.
Source/JavaScriptCore:
* inspector/protocol/IndexedDB.json:
Cleanup the protocol file.
Source/WebCore:
Test: inspector/indexeddb/clearObjectStore.html
* inspector/InspectorIndexedDBAgent.cpp:
Make the transaction for clearing an object store readwrite
instead of readonly, and activate it.
Source/WebInspectorUI:
* Localizations/en.lproj/localizedStrings.js:
"Clear object store".
* UserInterface/Controllers/StorageManager.js:
(WebInspector.StorageManager.prototype.clearObjectStore):
Provide a wrapper for clearing an object store.
* UserInterface/Views/IndexedDatabaseObjectStoreContentView.js:
(WebInspector.IndexedDatabaseObjectStoreContentView):
(WebInspector.IndexedDatabaseObjectStoreContentView.prototype.get navigationItems):
(WebInspector.IndexedDatabaseObjectStoreContentView.prototype._clearButtonClicked):
Add a navigation button on ObjectStore content views to clear the object store.
LayoutTests:
* inspector/indexeddb/clearObjectStore-expected.txt: Added.
* inspector/indexeddb/clearObjectStore.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205041
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
joepeck@webkit.org [Fri, 26 Aug 2016 20:59:04 +0000 (20:59 +0000)]
Web Inspector: Test IndexedDB.requestDatabase
https://bugs.webkit.org/show_bug.cgi?id=161122
Reviewed by Brian Burg.
* inspector/indexeddb/requestDatabase-expected.txt: Added.
* inspector/indexeddb/requestDatabase.html: Added.
New tests.
* inspector/indexeddb/deleteDatabaseNamesWithSpace.html:
* inspector/indexeddb/requestDatabaseNames.html:
Share code.
* inspector/indexeddb/resources/utilities.js: Added.
(deleteDatabaseNames):
(createEmptyDatabase):
(createDatabaseWithStores):
Helpers that can be used by each test.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205040
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
joepeck@webkit.org [Fri, 26 Aug 2016 20:59:01 +0000 (20:59 +0000)]
Web Inspector: Modernize inspector/indexeddb tests
https://bugs.webkit.org/show_bug.cgi?id=161113
Reviewed by Brian Burg.
* inspector/indexeddb/deleteDatabaseNamesWithSpace-expected.txt:
* inspector/indexeddb/deleteDatabaseNamesWithSpace.html:
* inspector/indexeddb/requestDatabaseNames-expected.txt:
* inspector/indexeddb/requestDatabaseNames.html:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205039
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jiewen_tan@apple.com [Fri, 26 Aug 2016 20:54:19 +0000 (20:54 +0000)]
Unreviewed, rebase iOS simulator WK1 http tests
* platform/ios-simulator-wk1/TestExpectations:
* platform/ios-simulator-wk1/animations/trigger-container-scroll-simple-expected.txt: Added.
* platform/ios-simulator-wk1/css2.1/t040302-c61-ex-len-00-b-a-expected.txt:
* platform/ios-simulator-wk1/http/tests/dom/window-open-about-blank-and-access-document-expected.txt: Added.
* platform/ios-simulator-wk1/http/tests/dom/window-open-about-uppercase-blank-and-access-document-expected.txt: Added.
* platform/ios-simulator-wk1/http/tests/dom/window-open-about-webkit-org-and-access-document-expected.txt: Added.
* platform/ios-simulator-wk1/http/tests/security/contentSecurityPolicy/upgrade-insecure-requests/proper-open-window-upgrades-expected.txt: Added.
* platform/ios-simulator-wk1/http/tests/security/cross-origin-modal-dialog-base-expected.txt: Added.
* platform/ios-simulator-wk1/http/tests/security/insecure-geolocation-expected.txt: Added.
* platform/ios-simulator-wk1/http/tests/security/mixedContent/insecure-form-in-main-frame-expected.txt: Added.
* platform/ios-simulator-wk1/http/tests/security/mixedContent/insecure-script-in-data-iframe-in-main-frame-blocked-expected.txt: Added.
* platform/ios-simulator-wk1/http/tests/security/mixedContent/insecure-xhr-sync-in-main-frame-expected.txt: Added.
* platform/ios-simulator-wk1/http/tests/security/mixedcontent-geolocation-block-insecure-content-expected.txt: Added.
* platform/ios-simulator-wk1/http/tests/security/mixedcontent-geolocation-expected.txt: Added.
* platform/ios-simulator-wk1/http/tests/security/window-opened-from-sandboxed-iframe-should-inherit-sandbox-expected.txt: Added.
* platform/ios-simulator-wk2/TestExpectations:
* platform/ios-simulator/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205038
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cdumez@apple.com [Fri, 26 Aug 2016 20:35:21 +0000 (20:35 +0000)]
Calling crossOriginWindow.toString() should not be allowed
https://bugs.webkit.org/show_bug.cgi?id=161225
Reviewed by Andreas Kling.
Source/WebCore:
Calling crossOriginWindow.toString() should not be allowed:
- https://html.spec.whatwg.org/#crossoriginproperties-(-o-)
In WebKit, we were printing a security error in the console but
returning "[object Window]" anyway.
In Firefox and Chrome, it throws an exception.
No new tests, updated existing test.
* bindings/js/JSDOMWindowCustom.cpp:
(WebCore::jsDOMWindowGetOwnPropertySlotRestrictedAccess):
LayoutTests:
Update existing tests to reflect the behavior change.
* http/tests/security/cross-frame-access-custom-expected.txt:
* http/tests/security/cross-frame-access-custom.html:
* http/tests/security/cross-frame-access-object-setPrototypeOf-expected.txt:
* http/tests/security/cross-frame-access-object-setPrototypeOf.html:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205037
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Fri, 26 Aug 2016 20:33:34 +0000 (20:33 +0000)]
[Cocoa] Infinite recursion calling -charValue on a WKNSNumber
https://bugs.webkit.org/show_bug.cgi?id=161258
Reviewed by Anders Carlsson.
Source/WebKit2:
* Shared/Cocoa/WKNSNumber.mm:
(-[WKNSNumber charValue]): Override this…
(-[WKNSNumber boolValue]): …not this.
Tools:
* TestWebKitAPI/Tests/WebKit2Cocoa/WKNSNumber.mm:
(TestWebKitAPI::TEST):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205036
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Fri, 26 Aug 2016 20:29:17 +0000 (20:29 +0000)]
Web Inspector: Some CSS selectors in the UI aren't escaped
https://bugs.webkit.org/show_bug.cgi?id=151378
Patch by Devin Rousso <dcrousso+webkit@gmail.com> on 2016-08-26
Reviewed by Joseph Pecoraro.
Source/JavaScriptCore:
Change ElementData from sending a className string to using an array of
classes, allowing for proper escaping of each class value.
* inspector/protocol/OverlayTypes.json:
Source/WebCore:
No new tests, but logic and results of existing tests updated:
* inspector/dom/content-node-region-info.html:
* inspector/dom/content-node-region-info-expected.txt:
* inspector/dom/highlightNode-expected.txt:
* inspector/dom/highlightSelector.html:
* inspector/dom/highlightSelector-expected.txt:
* inspector/InspectorOverlay.cpp:
(WebCore::buildObjectForElementData):
* inspector/InspectorOverlayPage.css:
(.pseudo-type):
(.tag-name): Deleted.
* inspector/InspectorOverlayPage.js:
(_createElementTitle):
Source/WebInspectorUI:
* UserInterface/Base/DOMUtilities.js:
(WebInspector.displayNameForNode): Deleted.
(WebInspector.linkifyNodeReference):
Use DOMNode.prototype.displayName instead of WebInspector.displayNameForNode.
* UserInterface/Models/DOMNode.js:
(WebInspector.DOMNode.prototype.get escapedIdSelector):
(WebInspector.DOMNode.prototype.get escapedClassSelector):
(WebInspector.DOMNode.prototype.get displayName):
(WebInspector.DOMNode.prototype.appropriateSelectorFor):
Rework escaping of ids and class names into separate public functions using CSS.escape.
* UserInterface/Views/CSSStyleDeclarationSection.js:
(WebInspector.CSSStyleDeclarationSection.prototype.refresh):
Use DOMNode.prototype.displayName instead of WebInspector.displayNameForNode.
* UserInterface/Views/DOMTreeDataGridNode.js:
(WebInspector.DOMTreeDataGridNode.prototype._createNameCellDocumentFragment):
Use DOMNode.prototype.displayName instead of WebInspector.displayNameForNode.
* UserInterface/Views/DOMTreeElementPathComponent.js:
(WebInspector.DOMTreeElementPathComponent):
Use DOMNode.prototype.displayName instead of WebInspector.displayNameForNode.
* UserInterface/Views/LayerTreeDataGridNode.js:
(WebInspector.LayerTreeDataGridNode.prototype.set layer):
Use DOMNode.prototype.displayName instead of WebInspector.displayNameForNode.
* UserInterface/Views/VisualStyleSelectorSection.js:
(WebInspector.VisualStyleSelectorSection.prototype.update):
Use DOMNode.prototype.displayName instead of WebInspector.displayNameForNode.
LayoutTests:
* inspector/dom/content-node-region-info.html:
* inspector/dom/content-node-region-info-expected.txt:
Use DOMNode.prototype.displayName instead of WebInspector.displayNameForNode.
* inspector/dom/highlightNode-expected.txt:
* inspector/dom/highlightSelector.html:
* inspector/dom/highlightSelector-expected.txt:
Changed result to replace className with new classes array.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205035
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
joepeck@webkit.org [Fri, 26 Aug 2016 20:22:24 +0000 (20:22 +0000)]
Web Inspector: ScriptProfilerAgent and HeapAgent should do less work when frontend disconnects
https://bugs.webkit.org/show_bug.cgi?id=161213
<rdar://problem/
28017986>
Reviewed by Brian Burg.
* inspector/agents/InspectorHeapAgent.cpp:
(Inspector::InspectorHeapAgent::willDestroyFrontendAndBackend):
Don't take a final snapshot when disconnecting.
* inspector/agents/InspectorScriptProfilerAgent.cpp:
(Inspector::InspectorScriptProfilerAgent::willDestroyFrontendAndBackend):
(Inspector::InspectorScriptProfilerAgent::stopSamplingWhenDisconnecting):
* inspector/agents/InspectorScriptProfilerAgent.h:
* runtime/SamplingProfiler.h:
Don't process samples when disconnecting.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205034
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
joepeck@webkit.org [Fri, 26 Aug 2016 20:22:21 +0000 (20:22 +0000)]
Web Inspector: HeapProfiler/ScriptProfiler do not destruct safely when JSContext is destroyed
https://bugs.webkit.org/show_bug.cgi?id=161027
<rdar://problem/
27871349>
Reviewed by Mark Lam.
For JSContext inspection, when a frontend connects keep the target alive.
This means ref'ing the JSGlobalObject / VM when the first frontend
connects and deref'ing when the last frontend disconnects.
* inspector/JSGlobalObjectInspectorController.h:
* inspector/JSGlobalObjectInspectorController.cpp:
(Inspector::JSGlobalObjectInspectorController::globalObjectDestroyed):
(Inspector::JSGlobalObjectInspectorController::disconnectAllFrontends): Deleted.
Now that frontends keep the global object alive, when the global object
is destroyed that must mean that no frontends exist. Remove the now
stale code path.
(Inspector::JSGlobalObjectInspectorController::connectFrontend):
(Inspector::JSGlobalObjectInspectorController::disconnectFrontend):
Ref the target when the first frontend connects, deref when the last disconnects.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205033
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren@apple.com [Fri, 26 Aug 2016 20:18:00 +0000 (20:18 +0000)]
Renamed XLarge* => Large*
https://bugs.webkit.org/show_bug.cgi?id=161261
Reviewed by Andreas Kling.
XLarge is not a thing anymore: We just have Small and Large.
* bmalloc.xcodeproj/project.pbxproj:
* bmalloc/Heap.cpp:
(bmalloc::Heap::splitAndAllocate):
(bmalloc::Heap::tryAllocateLarge):
(bmalloc::Heap::shrinkLarge):
(bmalloc::Heap::deallocateLarge):
* bmalloc/Heap.h:
* bmalloc/LargeMap.cpp: Copied from Source/bmalloc/bmalloc/XLargeMap.cpp.
(bmalloc::LargeMap::remove):
(bmalloc::LargeMap::add):
(bmalloc::XLargeMap::remove): Deleted.
(bmalloc::XLargeMap::add): Deleted.
* bmalloc/LargeMap.h: Copied from Source/bmalloc/bmalloc/XLargeMap.h.
(bmalloc::LargeMap::ranges):
(bmalloc::XLargeMap::ranges): Deleted.
* bmalloc/LargeRange.h: Copied from Source/bmalloc/bmalloc/XLargeRange.h.
(bmalloc::LargeRange::LargeRange):
(bmalloc::LargeRange::operator<):
(bmalloc::canMerge):
(bmalloc::merge):
(bmalloc::LargeRange::split):
(bmalloc::XLargeRange::XLargeRange): Deleted.
(bmalloc::XLargeRange::operator<): Deleted.
(bmalloc::XLargeRange::split): Deleted.
* bmalloc/VMHeap.cpp:
(bmalloc::VMHeap::tryAllocateLargeChunk):
* bmalloc/VMHeap.h:
* bmalloc/XLargeMap.cpp: Removed.
* bmalloc/XLargeMap.h: Removed.
* bmalloc/XLargeRange.h: Removed.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205032
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bfulgham@apple.com [Fri, 26 Aug 2016 18:12:56 +0000 (18:12 +0000)]
Crash when getting font bounding rect
https://bugs.webkit.org/show_bug.cgi?id=161202
<rdar://problem/
27986981>
Reviewed by Myles C. Maxfield.
We should never store GlyphData objects for later use, because they contain raw pointers to Font elements
contained in caches, and those font caches get periodically purged.
Instead, we should hold onto the ‘key’ representing the GlyphData, and simply ask the system for the
GlyphData the next time it is needed.
Tested by existing MathML tests under ASAN and GuardMalloc.
* rendering/mathml/RenderMathMLToken.cpp:
(WebCore::RenderMathMLToken::RenderMathMLToken): Clean up constructors.
(WebCore::RenderMathMLToken::computePreferredLogicalWidths): Use keys to get correct GlyphData when needed.
(WebCore::RenderMathMLToken::updateMathVariantGlyph): Ditto.
(WebCore::RenderMathMLToken::firstLineBaseline): Ditto.
(WebCore::RenderMathMLToken::layoutBlock): Ditto.
(WebCore::RenderMathMLToken::paint): Ditto.
(WebCore::RenderMathMLToken::paintChildren): Ditto.
* rendering/mathml/RenderMathMLToken.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205031
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cdumez@apple.com [Fri, 26 Aug 2016 18:09:01 +0000 (18:09 +0000)]
HTMLAreaElement's coords attributes parsing does not comply with the HTML specification
https://bugs.webkit.org/show_bug.cgi?id=161216
Reviewed by Andreas Kling.
LayoutTests/imported/w3c:
Rebaseline W3C test now that all checks are passing. Chrome is also passing all the checks.
* web-platform-tests/html/semantics/embedded-content/the-area-element/area-coords-expected.txt:
Source/WebCore:
HTMLAreaElement's coords attributes parsing does not comply with the HTML specification:
- https://html.spec.whatwg.org/#attr-area-coords
This patch aligns our parsing of this attribute with the specification and Chrome.
No new tests, rebaselined existing test.
* html/HTMLAreaElement.cpp:
(WebCore::HTMLAreaElement::HTMLAreaElement):
(WebCore::HTMLAreaElement::parseAttribute):
(WebCore::HTMLAreaElement::getRegion):
* html/HTMLAreaElement.h:
* html/parser/HTMLParserIdioms.cpp:
(WebCore::isHTMLSpaceOrDelimiter):
(WebCore::isNumberStart):
(WebCore::parseHTMLListOfOfFloatingPointNumberValuesInternal):
(WebCore::parseHTMLListOfOfFloatingPointNumberValues):
(WebCore::parseHTMLNonNegativeInteger): Deleted.
* html/parser/HTMLParserIdioms.h:
LayoutTests:
Unskip web-platform-tests/html/semantics/embedded-content/the-area-element/area-coords.html
as it is now passing and not longer crashing in debug builds.
* TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205030
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ossy@webkit.org [Fri, 26 Aug 2016 18:00:28 +0000 (18:00 +0000)]
Fix the !ENABLE(WEB_SOCKETS) build
https://bugs.webkit.org/show_bug.cgi?id=161251
Reviewed by Alex Christensen.
* page/SocketProvider.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205029
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ossy@webkit.org [Fri, 26 Aug 2016 17:58:46 +0000 (17:58 +0000)]
Fix the !ENABLE(WEB_TIMING) build
https://bugs.webkit.org/show_bug.cgi?id=161250
Reviewed by Alex Christensen.
* loader/SubresourceLoader.cpp:
(WebCore::SubresourceLoader::didFinishLoading):
* loader/cache/CachedResourceLoader.h:
(WebCore::CachedResourceLoader::resourceTimingInformation):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205028
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
utatane.tea@gmail.com [Fri, 26 Aug 2016 17:37:31 +0000 (17:37 +0000)]
[ES6] newPromiseCapabilities should check the given argument is constructor
https://bugs.webkit.org/show_bug.cgi?id=161226
Reviewed by Mark Lam.
JSTests:
The arrow function should not be a constructor. So the error should be raised.
* stress/new-promise-capabilities-requires-constructor.js: Added.
(shouldThrow):
Source/JavaScriptCore:
Use @isConstructor.
* builtins/PromiseOperations.js:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205027
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cdumez@apple.com [Fri, 26 Aug 2016 17:36:59 +0000 (17:36 +0000)]
Trying to access cross-origin Location properties should throw a SecurityError
https://bugs.webkit.org/show_bug.cgi?id=161248
Reviewed by Alex Christensen.
Source/WebCore:
Trying to access cross-origin Location properties should throw a SecurityError:
- https://html.spec.whatwg.org/#crossorigingetownpropertyhelper-(-o,-p-)
- https://html.spec.whatwg.org/#crossoriginproperties-(-o-)
Firefox and Chrome already throw. However, WebKit was logging an error message
and returning undefined.
No new tests, updated existing tests.
* bindings/js/JSDOMBinding.cpp:
(WebCore::throwSecurityError):
* bindings/js/JSDOMBinding.h:
* bindings/js/JSLocationCustom.cpp:
(WebCore::JSLocation::getOwnPropertySlotDelegate):
LayoutTests:
Update existing tests to reflect behavior change.
* http/tests/plugins/cross-frame-object-access-expected.txt:
* http/tests/plugins/resources/cross-frame-object-access.html:
* http/tests/security/XFrameOptions/x-frame-options-deny-expected.txt:
* http/tests/security/XFrameOptions/x-frame-options-deny.html:
* http/tests/security/XFrameOptions/x-frame-options-ignore-deny-meta-tag-parent-same-origin-deny-expected.txt:
* http/tests/security/XFrameOptions/x-frame-options-ignore-deny-meta-tag-parent-same-origin-deny.html:
* http/tests/security/XFrameOptions/x-frame-options-multiple-headers-sameorigin-deny-expected.txt:
* http/tests/security/XFrameOptions/x-frame-options-multiple-headers-sameorigin-deny.html:
* http/tests/security/XFrameOptions/x-frame-options-parent-same-origin-deny-expected.txt:
* http/tests/security/XFrameOptions/x-frame-options-parent-same-origin-deny.html:
* http/tests/security/cross-frame-access-callback-explicit-domain-DENY-expected.txt:
* http/tests/security/cross-frame-access-child-explicit-domain-expected.txt:
* http/tests/security/cross-frame-access-custom-expected.txt:
* http/tests/security/cross-frame-access-getOwnPropertyDescriptor-expected.txt:
* http/tests/security/cross-frame-access-history-get-expected.txt:
* http/tests/security/cross-frame-access-history-get-override-expected.txt:
* http/tests/security/cross-frame-access-location-get-expected.txt:
* http/tests/security/cross-frame-access-location-get-override-expected.txt:
* http/tests/security/cross-frame-access-parent-explicit-domain-expected.txt:
* http/tests/security/cross-frame-access-port-expected.txt:
* http/tests/security/cross-frame-access-protocol-expected.txt:
* http/tests/security/cross-frame-access-protocol-explicit-domain-expected.txt:
* http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-expected.txt:
* http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-uppercase-expected.txt:
* http/tests/security/location-cross-origin-expected.txt:
* http/tests/security/location-cross-origin.html:
* http/tests/security/resources/cross-frame-access.js:
(canGet):
(canGetDescriptor):
(canCall):
(toString):
* http/tests/security/sandboxed-iframe-blocks-access-from-parent-expected.txt:
* http/tests/security/xss-DENIED-defineProperty-expected.txt:
* http/tests/security/xss-DENIED-defineProperty.html:
* http/tests/security/xssAuditor/block-does-not-leak-location-expected.txt:
* http/tests/security/xssAuditor/block-does-not-leak-location.html:
* http/tests/security/xssAuditor/full-block-script-tag-cross-domain-expected.txt:
* http/tests/security/xssAuditor/full-block-script-tag-cross-domain.html:
* http/tests/security/xssAuditor/resources/utilities.js:
(checkIfFrameLocationMatchesSrcAndCallDone):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205026
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
pvollan@apple.com [Fri, 26 Aug 2016 17:36:15 +0000 (17:36 +0000)]
[Win] Warning fixes.
https://bugs.webkit.org/show_bug.cgi?id=161241
Reviewed by Brent Fulgham.
MSVC warns about potential use of uninitialized variables.
* accessibility/AXObjectCache.cpp:
* css/parser/CSSParserValues.cpp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205025
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric.carlson@apple.com [Fri, 26 Aug 2016 17:13:35 +0000 (17:13 +0000)]
[MediaStream] Add support for OverConstrainedErrorEvent
https://bugs.webkit.org/show_bug.cgi?id=161199
<rdar://problem/
28011819>
Reviewed by Jer Noble.
Source/WebCore:
Test: fast/events/constructors/overconstrained-error-event-constructor.html
* CMakeLists.txt:
* DerivedSources.make:
* Modules/mediastream/OverconstrainedErrorEvent.h: Added.
(WebCore::OverconstrainedErrorEvent::~OverconstrainedErrorEvent):
(WebCore::OverconstrainedErrorEvent::create):
(WebCore::OverconstrainedErrorEvent::createForBindings):
(WebCore::OverconstrainedErrorEvent::error):
(WebCore::OverconstrainedErrorEvent::eventInterface):
(WebCore::OverconstrainedErrorEvent::OverconstrainedErrorEvent):
* Modules/mediastream/OverconstrainedErrorEvent.idl: Added.
* WebCore.xcodeproj/project.pbxproj: Add new files.
* bindings/js/JSDictionary.cpp:
(WebCore::JSDictionary::convertValue): Add OverconstrainedErrorEvent converter.
* bindings/js/JSDictionary.h:
* dom/EventNames.in: Add OverconstrainedErrorEvent.
LayoutTests:
* fast/events/constructors/overconstrained-error-event-constructor-expected.txt: Added.
* fast/events/constructors/overconstrained-error-event-constructor.html: Added.
* js/dom/global-constructors-attributes-expected.txt: Updated.
* platform/gtk/js/dom/global-constructors-attributes-expected.txt:
* platform/mac/js/dom/global-constructors-attributes-expected.txt:
* platform/mac-yosemite/js/dom/global-constructors-attributes-expected.txt:
* platform/mac-wk1/js/dom/global-constructors-attributes-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205024
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
keith_miller@apple.com [Fri, 26 Aug 2016 17:05:21 +0000 (17:05 +0000)]
toString called on proxies returns incorrect tag
https://bugs.webkit.org/show_bug.cgi?id=161111
Reviewed by Benjamin Poulain.
This patch adds a new Method table function toStringName. This function
is used by Object.prototype.toString to create the string tag that it
inserts. Right now it only changes the stringification of proxy objects.
In future patches I plan to make it work for other classes of objects as
well.
* runtime/ClassInfo.h:
* runtime/JSCell.cpp:
(JSC::JSCell::toStringName):
* runtime/JSCell.h:
* runtime/JSObject.cpp:
(JSC::JSObject::toStringName):
* runtime/JSObject.h:
* runtime/ObjectPrototype.cpp:
(JSC::objectProtoFuncToString):
* runtime/ProxyObject.cpp:
(JSC::ProxyObject::toStringName):
* runtime/ProxyObject.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205023
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
barraclough@apple.com [Fri, 26 Aug 2016 17:02:37 +0000 (17:02 +0000)]
bmalloc: speed up the lock slow path
https://bugs.webkit.org/show_bug.cgi?id=161058
Unreviewed rollout - this caused regressions <rdar://problem/
28026089>.
* bmalloc.xcodeproj/project.pbxproj:
* bmalloc/ScopeExit.h: Removed.
* bmalloc/StaticMutex.cpp:
(bmalloc::StaticMutex::lockSlowCase):
* bmalloc/StaticMutex.h:
(bmalloc::StaticMutex::init):
* bmalloc/ThreadSwitch.h: Removed.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205022
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ossy@webkit.org [Fri, 26 Aug 2016 16:54:14 +0000 (16:54 +0000)]
Fix the ENABLE(WEBASSEMBLY) build on Linux
https://bugs.webkit.org/show_bug.cgi?id=161197
Reviewed by Mark Lam.
Source/JavaScriptCore:
* CMakeLists.txt:
* b3/B3Common.cpp:
(JSC::B3::shouldDumpIR):
* shell/CMakeLists.txt:
* wasm/JSWASMModule.h:
* wasm/WASMB3IRGenerator.cpp:
(JSC::WASM::toB3Op):
* wasm/WASMB3IRGenerator.h:
* wasm/WASMFormat.h:
* wasm/WASMFunctionParser.h:
* wasm/WASMModuleParser.cpp:
(JSC::WASM::WASMModuleParser::parseFunctionTypes):
* wasm/WASMModuleParser.h:
* wasm/WASMParser.h:
* wasm/WASMPlan.cpp:
* wasm/WASMPlan.h:
* wasm/WASMSections.cpp:
Source/WTF:
* wtf/Platform.h:
Tools:
* Scripts/build-jsc:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205021
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
pvollan@apple.com [Fri, 26 Aug 2016 16:50:15 +0000 (16:50 +0000)]
[Win] Compile fix.
https://bugs.webkit.org/show_bug.cgi?id=161235
Reviewed by Brent Fulgham.
YarrPattern::errorMessage has inconsistent dll linkage.
* yarr/YarrPattern.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205020
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Fri, 26 Aug 2016 16:41:48 +0000 (16:41 +0000)]
The annotation-xml element does not need to be behave as an mrow
https://bugs.webkit.org/show_bug.cgi?id=161230
Patch by Frederic Wang <fwang@igalia.com> on 2016-08-26
Reviewed by Manuel Rego Casasnovas.
Source/WebCore:
In r204779, MathMLAnnotationElement was made a MathMLRowElement just because the
annotation-xml element is generating a RenderMathMLRow. This later point is actually not
needed since annotation-xml is just a wrapper for foreign elements and so does not need to
handle special MathML features like operator spacing or stretching. We can thus move back
MathMLAnnotationElement to a generic MathMLPresentationElement and instead make the
annotation-xml element generate a generic RenderMathMLBlock renderer.
No new tests, semantics annotations already covered by existing tests.
* mathml/MathMLAnnotationElement.cpp: Replace RenderMathMLRow.h with RenderMathMLBlock.h
(WebCore::MathMLAnnotationElement::MathMLAnnotationElement): Inherit from
MathMLPresentationElement instead of MathMLRowElement.
(WebCore::MathMLAnnotationElement::createElementRenderer): Make annotation-xml create a
RenderMathMLBlock instead of a RenderMathMLRow.
(WebCore::MathMLAnnotationElement::attributeChanged): Inherit from MathMLPresentationElement
instead of MathMLRowElement.
* mathml/MathMLAnnotationElement.h: Ditto.
LayoutTests:
* platform/efl/accessibility/math-foreign-content-expected.txt: Remove the AXGroup from the
test expectation, which that was used for annotation-xml.
* platform/gtk/accessibility/math-foreign-content-expected.txt: Ditto.
* platform/mac/accessibility/math-foreign-content-expected.txt: Ditto.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205018
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
clopez@igalia.com [Fri, 26 Aug 2016 16:36:29 +0000 (16:36 +0000)]
[GTK] run-gtk-tests should use the driver environment for checking the accessibility bus
https://bugs.webkit.org/show_bug.cgi?id=161149
Reviewed by Carlos Garcia Campos.
Add a new function for waiting for the accesibility bus. It sets
the test environment variables before starting the GLib mainloop.
And restores the previous environment after it has finished.
It also adds a timeout (5 seconds) to abort in case it has not
been able to detect the accesibility bus before the timeout expires.
* Scripts/run-gtk-tests:
(TestRunner):
(TestRunner._wait_for_accessibility_bus):
(TestRunner._wait_for_accessibility_bus.timeout_accessibility_bus):
(TestRunner._start_accessibility_daemons):
(TestRunner._get_tests_from_google_test_suite): Run this command also with the driver test environment.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205017
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
pvollan@apple.com [Fri, 26 Aug 2016 16:35:26 +0000 (16:35 +0000)]
[Win] Warning fix.
https://bugs.webkit.org/show_bug.cgi?id=161236
Reviewed by Brent Fulgham.
The & operator in the Test struct has no body.
* TestWebKitAPI/Tests/WTF/Vector.cpp:
(TestWebKitAPI::TEST):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205016
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ossy@webkit.org [Fri, 26 Aug 2016 16:33:03 +0000 (16:33 +0000)]
Typo fix after r56209
https://bugs.webkit.org/show_bug.cgi?id=161246
Reviewed by Gyuyoung Kim.
* page/FrameView.cpp:
(WebCore::FrameView::adjustMediaTypeForPrinting):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205015
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
clopez@igalia.com [Fri, 26 Aug 2016 16:32:32 +0000 (16:32 +0000)]
[GTK] run-gtk-tests should use webkitpy.port.gtk and webkitpy.port.xvfbdriver
https://bugs.webkit.org/show_bug.cgi?id=160736
Reviewed by Carlos Garcia Campos.
This plugs run-gtk-tests into the webkitpy testing infrastructure.
As a benefit of this, run-gtk-tests now can be executed over any of
the existing supported gtk test display servers (xvfb, weston-over-xvfb,
or native xorg). A new command line switch --wayland is added for
run-gtk-tests.
* Scripts/run-gtk-tests:
(TestRunner.__init__): Remove the --display command line switch, its not longer useful.
Add a --wayland command line switch.
(TestRunner._start_accessibility_daemons):
(TestRunner):
(TestRunner.__init__):
(TestRunner._run_xvfb): Deleted.
(TestRunner._create_driver):
(TestRunner._setup_testing_environment): Delete the environment variable definitions that
are now done by driver._setup_environ_for_test().
(TestRunner._tear_down_testing_environment):
* Scripts/webkitpy/port/driver.py:
(Driver.__init__): Define self._server_name in the constructor of the base class.
It is used by several functions, so it makes sense to store once the value here.
(Driver._setup_environ_for_test): Factorize setting the environment for a given test.
(Driver._start): Get the environment from self._setup_environ_for_test()
* Scripts/webkitpy/port/driver_unittest.py:
(DriverTest):
(DriverTest.test_setup_environ_for_test): Add unittest for driver._setup_environ_for_test()
* Scripts/webkitpy/port/gtk.py: Move the inspection of the env var USE_NATIVE_XDISPLAY to the constructor.
(GtkPort.__init__):
(GtkPort._driver_class):
* Scripts/webkitpy/port/westondriver.py: Define and use self._setup_environ_for_test()
(WestonDriver._setup_environ_for_test):
(WestonDriver._start):
* Scripts/webkitpy/port/xorgdriver.py: Define and use self._setup_environ_for_test()
(XorgDriver._setup_environ_for_test):
(XorgDriver._start):
* Scripts/webkitpy/port/xvfbdriver.py: Define and use self._setup_environ_for_test()
(XvfbDriver._setup_environ_for_test):
(XvfbDriver._start):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205014
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@apple.com [Fri, 26 Aug 2016 16:04:23 +0000 (16:04 +0000)]
Reinstate flakiness expectations for viewport tests, as they are still flaky.
https://bugs.webkit.org/show_bug.cgi?id=153110
* platform/ios-simulator-wk2/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205013
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ossy@webkit.org [Fri, 26 Aug 2016 14:04:42 +0000 (14:04 +0000)]
[EFL][GTK] REGRESSION(204877): Fix the clean build
https://bugs.webkit.org/show_bug.cgi?id=161240
Reviewed by Carlos Garcia Campos.
Source/WebKit2:
* Scripts/generate-forwarding-headers.pl: Added back multiple include-path support. (removed by r183389)
Tools:
* WebKitTestRunner/PlatformEfl.cmake:
* WebKitTestRunner/PlatformGTK.cmake:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205012
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
pvollan@apple.com [Fri, 26 Aug 2016 13:29:31 +0000 (13:29 +0000)]
[Win] Warning fixes.
https://bugs.webkit.org/show_bug.cgi?id=161077
Reviewed by Brent Fulgham.
* css/CSSGrammar.y.includes:
* css/RuleFeature.cpp:
(WebCore::makeAttributeSelectorKey):
* editing/TextIterator.cpp:
(WebCore::SearchBuffer::SearchBuffer):
* html/HTMLElement.cpp:
(WebCore::HTMLElement::textToFragment):
* html/MediaElementSession.h:
* platform/URL.cpp:
* platform/graphics/ca/GraphicsLayerCA.cpp:
* platform/network/HTTPParsers.cpp:
(WebCore::parseHTTPHeader):
* rendering/InlineIterator.h:
(WebCore::InlineIterator::clear):
* rendering/RenderDeprecatedFlexibleBox.cpp:
(WebCore::FlexBoxIterator::reset):
* rendering/RenderText.cpp:
(WebCore::RenderText::secureText):
* rendering/mathml/RenderMathMLToken.cpp:
(WebCore::mathVariant):
* style/InlineTextBoxStyle.cpp:
(WebCore::visualOverflowForDecorations):
* xml/XPathGrammar.y:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205011
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aakash_jain@apple.com [Fri, 26 Aug 2016 10:54:51 +0000 (10:54 +0000)]
EWS should indicate which bot processed the patch
https://bugs.webkit.org/show_bug.cgi?id=161222
Reviewed by Daniel Bates.
* QueueStatusServer/handlers/statusbubble.py:
(StatusBubble._build_bubble): Display the bot id in status bubble. Also removed "Started processing" message since
after bug fix of 161223, bots send the "Started processing patch" message and it would be displayed in Recent messages.
Also added "Started processing patch" message to progress_statuses.
I might consider displaying bot id in other statuses as well later on.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205010
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
gyuyoung.kim@webkit.org [Fri, 26 Aug 2016 08:46:02 +0000 (08:46 +0000)]
Unreviewed EFL build fix since r204996.
Patch by Gyuyoung Kim <gyuyoung.kim@navercorp.com> on 2016-08-26
* UIProcess/efl/WebPageProxyEfl.cpp:
(WebKit::WebPageProxy::editorStateChanged):
(WebKit::WebPageProxy::setThemePath):
(WebKit::WebPageProxy::confirmComposition):
(WebKit::WebPageProxy::setComposition):
(WebKit::WebPageProxy::cancelComposition):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205009
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
nael.ouedraogo@crf.canon.fr [Fri, 26 Aug 2016 08:04:02 +0000 (08:04 +0000)]
Make custom constructors consistent with generated bindings code
https://bugs.webkit.org/show_bug.cgi?id=159550
Reviewed by Youenn Fablet.
Add assertion to check DOMConstructorObject* passed in ExecState is not null.
Rename throwConstructorDocumentUnavailableError to throwConstructorScriptExecutionContextUnavailableError since
ScriptExecutionContext is not necessarily a Document.
Modify error message in case of argument error to be consistent with generated binding code: replace calls to
throwVMError with calls to throwConstructorScriptExecutionContextUnavailableError and throwArgumentTypeError.
No new test required. Modify tests and tests expectations to align with new error messages.
Source/WebCore:
* bindings/js/JSAudioContextCustom.cpp:
(WebCore::constructJSAudioContext):
* bindings/js/JSBlobCustom.cpp:
(WebCore::constructJSBlob):
* bindings/js/JSDOMBinding.cpp:
(WebCore::throwConstructorScriptExecutionContextUnavailableError):
* bindings/js/JSDOMBinding.h:
* bindings/js/JSDOMConstructor.h:
(WebCore::JSBuiltinConstructor<JSClass>::callConstructor):
* bindings/js/JSDOMFormDataCustom.cpp:
(WebCore::constructJSDOMFormData):
* bindings/js/JSDataCueCustom.cpp:
(WebCore::constructJSDataCue):
* bindings/js/JSFileCustom.cpp:
(WebCore::constructJSFile):
* bindings/js/JSHTMLElementCustom.cpp:
(WebCore::constructJSHTMLElement):
* bindings/js/JSMediaSessionCustom.cpp:
(WebCore::constructJSMediaSession):
* bindings/js/JSMutationObserverCustom.cpp:
(WebCore::constructJSMutationObserver):
* bindings/js/JSReadableStreamPrivateConstructors.cpp:
(WebCore::constructJSReadableStreamDefaultReader):
* bindings/js/JSWorkerCustom.cpp:
(WebCore::constructJSWorker):
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateCallbackImplementation):
(NativeToJSValue):
(GenerateHashTableValueArray):
(GenerateConstructorDefinition):
* bindings/scripts/test/JS/JSTestEventConstructor.cpp:
(WebCore::JSTestEventConstructorConstructor::construct):
* bindings/scripts/test/JS/JSTestInterface.cpp:
(WebCore::JSTestInterfaceConstructor::construct):
* bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
(WebCore::JSTestNamedConstructorNamedConstructor::construct):
* bindings/scripts/test/JS/JSTestNode.cpp:
(WebCore::JSTestNodeConstructor::construct):
* bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::JSTestObjConstructor::construct):
* bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:
(WebCore::constructJSTestOverloadedConstructors1):
(WebCore::constructJSTestOverloadedConstructors2):
(WebCore::constructJSTestOverloadedConstructors3):
(WebCore::constructJSTestOverloadedConstructors4):
(WebCore::constructJSTestOverloadedConstructors5):
* bindings/scripts/test/JS/JSTestOverloadedConstructorsWithSequence.cpp:
(WebCore::constructJSTestOverloadedConstructorsWithSequence1):
(WebCore::constructJSTestOverloadedConstructorsWithSequence2):
* bindings/scripts/test/JS/JSTestTypedefs.cpp:
(WebCore::JSTestTypedefsConstructor::construct):
LayoutTests:
* fast/dom/MutationObserver/mutation-observer-constructor-expected.txt:
* fast/files/file-constructor-expected.txt:
* fast/files/file-constructor.html:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205008
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
gyuyoung.kim@webkit.org [Fri, 26 Aug 2016 07:36:01 +0000 (07:36 +0000)]
[EFL] Change homepage url to ewebkit.org on MiniBrowser
https://bugs.webkit.org/show_bug.cgi?id=161184
Reviewed by Carlos Garcia Campos.
* MiniBrowser/efl/main.c: Set www.ewebkit.org.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205007
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
carlosgc@webkit.org [Fri, 26 Aug 2016 06:55:50 +0000 (06:55 +0000)]
Unreviewed. Fix GTK+ build after r204986 and r204996.
Source/WebCore:
* page/DOMWindow.idl:
Source/WebKit2:
* Platform/IPC/unix/ConnectionUnix.cpp:
(IPC::Connection::willSendSyncMessage):
(IPC::Connection::didReceiveSyncReply):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::drawPagesForPrinting):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205004
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aakash_jain@apple.com [Fri, 26 Aug 2016 05:33:58 +0000 (05:33 +0000)]
ews queues should update status server when they start processing patch
https://bugs.webkit.org/show_bug.cgi?id=161223
Reviewed by Daniel Bates.
* Scripts/webkitpy/tool/commands/queues.py:
(AbstractReviewQueue.process_work_item): Update status server that the bot started processing the patch.
* Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:
(EarlyWarningSystemTest._default_expected_logs): Updated the unit test accordingly.
* Scripts/webkitpy/tool/commands/queues_unittest.py:
(StyleQueueTest.test_style_queue_with_style_exception): Same.
(test_style_queue_with_watch_list_exception): Same.
(test_non_valid_patch): Same.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205003
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jiewen_tan@apple.com [Fri, 26 Aug 2016 02:16:41 +0000 (02:16 +0000)]
Unreviewed, rebase iOS simulator WK1 imported/w3c tests
* platform/ios-simulator-wk1/TestExpectations:
* platform/ios-simulator-wk1/imported/w3c/web-platform-tests/html/browsers/browsing-the-web/history-traversal/persisted-user-state-restoration/scroll-restoration-fragment-scrolling-cross-origin-expected.txt: Added.
* platform/ios-simulator-wk1/imported/w3c/web-platform-tests/html/browsers/browsing-the-web/history-traversal/persisted-user-state-restoration/scroll-restoration-navigation-samedoc-expected.txt: Added.
* platform/ios-simulator-wk1/imported/w3c/web-platform-tests/html/browsers/browsing-the-web/scroll-to-fragid/scroll-frag-percent-encoded-expected.txt: Added.
* platform/ios-simulator-wk1/imported/w3c/web-platform-tests/html/browsers/browsing-the-web/unloading-documents/001-expected.txt: Added.
* platform/ios-simulator-wk1/imported/w3c/web-platform-tests/html/browsers/windows/noreferrer-window-name-expected.txt: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205002
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Fri, 26 Aug 2016 01:53:06 +0000 (01:53 +0000)]
[iOS Simulator] Rebaseline many tests under LayoutTests/svg/ for ios-simulator and enable them for testing
https://bugs.webkit.org/show_bug.cgi?id=161166
Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2016-08-25
Reviewed by Simon Fraser.
* platform/ios-simulator/TestExpectations:
* platform/ios-simulator/svg/W3C-I18N: Added.
* platform/ios-simulator/svg/W3C-I18N/g-dirLTR-ubNone-expected.txt: Added.
* platform/ios-simulator/svg/W3C-I18N/g-dirLTR-ubOverride-expected.txt: Added.
* platform/ios-simulator/svg/W3C-I18N/g-dirRTL-ubNone-expected.txt: Added.
* platform/ios-simulator/svg/W3C-I18N/g-dirRTL-ubOverride-expected.txt: Added.
* platform/ios-simulator/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.txt: Added.
* platform/ios-simulator/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.txt: Added.
* platform/ios-simulator/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.txt: Added.
* platform/ios-simulator/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.txt: Added.
* platform/ios-simulator/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.txt: Added.
* platform/ios-simulator/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.txt: Added.
* platform/ios-simulator/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.txt: Added.
* platform/ios-simulator/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.txt: Added.
* platform/ios-simulator/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.txt: Added.
* platform/ios-simulator/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.txt: Added.
* platform/ios-simulator/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.txt: Added.
* platform/ios-simulator/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.txt: Added.
* platform/ios-simulator/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.txt: Added.
* platform/ios-simulator/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.txt: Added.
* platform/ios-simulator/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.txt: Added.
* platform/ios-simulator/svg/W3C-I18N/text-anchor-no-markup-expected.txt: Added.
* platform/ios-simulator/svg/W3C-I18N/text-dirLTR-ubNone-expected.txt: Added.
* platform/ios-simulator/svg/W3C-I18N/text-dirLTR-ubOverride-expected.txt: Added.
* platform/ios-simulator/svg/W3C-I18N/text-dirRTL-ubNone-expected.txt: Added.
* platform/ios-simulator/svg/W3C-I18N/text-dirRTL-ubOverride-expected.txt: Added.
* platform/ios-simulator/svg/W3C-I18N/tspan-dirLTR-ubEmbed-in-rtl-context-expected.txt: Added.
* platform/ios-simulator/svg/W3C-I18N/tspan-dirLTR-ubNone-in-rtl-context-expected.txt: Added.
* platform/ios-simulator/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-default-context-expected.txt: Added.
* platform/ios-simulator/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-ltr-context-expected.txt: Added.
* platform/ios-simulator/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-rtl-context-expected.txt: Added.
* platform/ios-simulator/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.txt: Added.
* platform/ios-simulator/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.txt: Added.
* platform/ios-simulator/svg/W3C-I18N/tspan-dirNone-ubOverride-in-rtl-context-expected.txt: Added.
* platform/ios-simulator/svg/W3C-I18N/tspan-dirRTL-ubEmbed-in-default-context-expected.txt: Added.
* platform/ios-simulator/svg/W3C-I18N/tspan-dirRTL-ubEmbed-in-ltr-context-expected.txt: Added.
* platform/ios-simulator/svg/W3C-I18N/tspan-dirRTL-ubNone-in-default-context-expected.txt: Added.
* platform/ios-simulator/svg/W3C-I18N/tspan-dirRTL-ubNone-in-ltr-context-expected.txt: Added.
* platform/ios-simulator/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-default-context-expected.txt: Added.
* platform/ios-simulator/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-ltr-context-expected.txt: Added.
* platform/ios-simulator/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-rtl-context-expected.txt: Added.
* platform/ios-simulator/svg/W3C-I18N/tspan-direction-ltr-expected.txt: Added.
* platform/ios-simulator/svg/W3C-I18N/tspan-direction-rtl-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1-SE: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1-SE/color-prop-05-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1-SE/coords-dom-01-f-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1-SE/coords-dom-02-f-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1-SE/coords-dom-03-f-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1-SE/coords-dom-04-f-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1-SE/coords-units-03-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1-SE/filters-felem-01-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1-SE/filters-image-03-f-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1-SE/filters-image-05-f-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1-SE/interact-pointer-03-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1-SE/linking-uri-01-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1-SE/painting-control-04-f-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1-SE/painting-marker-05-f-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1-SE/painting-marker-06-f-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1-SE/painting-marker-07-f-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1-SE/paths-dom-02-f-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1-SE/pservers-grad-17-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1-SE/pservers-grad-20-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1-SE/pservers-pattern-03-f-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1-SE/pservers-pattern-04-f-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1-SE/struct-dom-11-f-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1-SE/struct-use-11-f-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1-SE/struct-use-14-f-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1-SE/styling-css-04-f-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1-SE/styling-pres-02-f-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1-SE/svgdom-over-01-f-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1-SE/text-intro-09-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1-SE/text-tref-03-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1-SE/text-tspan-02-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1-SE/types-dom-01-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1-SE/types-dom-02-f-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1-SE/types-dom-03-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1-SE/types-dom-04-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1-SE/types-dom-05-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1-SE/types-dom-06-f-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1-SE/types-dom-07-f-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/animate-elem-02-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/animate-elem-03-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/animate-elem-05-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/animate-elem-06-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/animate-elem-08-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/animate-elem-09-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/animate-elem-10-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/animate-elem-11-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/animate-elem-13-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/animate-elem-14-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/animate-elem-18-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/animate-elem-20-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/animate-elem-21-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/animate-elem-22-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/animate-elem-23-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/animate-elem-24-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/animate-elem-25-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/animate-elem-26-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/animate-elem-27-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/animate-elem-28-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/animate-elem-29-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/animate-elem-31-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/animate-elem-32-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/animate-elem-34-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/animate-elem-39-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/animate-elem-44-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/animate-elem-52-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/animate-elem-60-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/animate-elem-61-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/animate-elem-62-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/animate-elem-63-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/animate-elem-64-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/animate-elem-65-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/animate-elem-66-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/animate-elem-67-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/animate-elem-68-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/animate-elem-69-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/animate-elem-70-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/animate-elem-77-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/animate-elem-78-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/animate-elem-80-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/animate-elem-81-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/animate-elem-83-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/animate-elem-84-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/animate-elem-85-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/color-prof-01-f-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/color-prop-01-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/color-prop-02-f-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/color-prop-03-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/coords-coord-01-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/coords-coord-02-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/coords-trans-01-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/coords-trans-02-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/coords-trans-03-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/coords-trans-04-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/coords-trans-05-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/coords-trans-06-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/coords-units-01-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/coords-units-02-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/coords-units-03-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/coords-viewattr-01-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/coords-viewattr-02-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/coords-viewattr-03-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/extend-namespace-01-f-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/filters-blend-01-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/filters-color-01-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/filters-composite-02-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/filters-comptran-01-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/filters-conv-01-f-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/filters-diffuse-01-f-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/filters-displace-01-f-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/filters-example-01-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/filters-felem-01-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/filters-gauss-01-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/filters-image-01-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/filters-light-01-f-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/filters-light-04-f-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/filters-morph-01-f-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/filters-offset-01-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/filters-specular-01-f-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/filters-tile-01-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/filters-turb-01-f-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/filters-turb-02-f-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/fonts-desc-02-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/fonts-elem-01-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/fonts-elem-02-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/fonts-elem-03-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/fonts-elem-04-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/fonts-elem-05-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/fonts-elem-06-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/fonts-elem-07-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/fonts-glyph-02-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/fonts-glyph-03-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/fonts-kern-01-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/interact-cursor-01-f-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/interact-dom-01-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/interact-events-01-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/interact-order-01-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/interact-order-02-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/interact-order-03-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/interact-zoom-01-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/linking-a-01-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/linking-a-02-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/linking-a-03-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/linking-a-04-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/linking-a-05-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/linking-a-07-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/linking-uri-01-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/linking-uri-02-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/linking-uri-03-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/masking-intro-01-f-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/masking-mask-01-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/masking-opacity-01-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/masking-path-01-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/masking-path-02-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/masking-path-03-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/masking-path-04-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/masking-path-05-f-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/metadata-example-01-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/painting-fill-01-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/painting-fill-02-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/painting-fill-03-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/painting-fill-04-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/painting-fill-05-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/painting-marker-01-f-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/painting-marker-02-f-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/painting-marker-03-f-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/painting-render-01-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/painting-stroke-01-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/painting-stroke-02-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/painting-stroke-03-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/painting-stroke-04-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/painting-stroke-07-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/paths-data-01-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/paths-data-02-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/paths-data-03-f-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/paths-data-04-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/paths-data-05-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/paths-data-06-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/paths-data-07-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/paths-data-08-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/paths-data-09-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/paths-data-10-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/paths-data-12-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/paths-data-13-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/paths-data-14-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/paths-data-15-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/pservers-grad-01-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/pservers-grad-02-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/pservers-grad-03-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/pservers-grad-04-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/pservers-grad-05-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/pservers-grad-06-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/pservers-grad-07-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/pservers-grad-08-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/pservers-grad-09-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/pservers-grad-10-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/pservers-grad-11-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/pservers-grad-12-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/pservers-grad-14-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/pservers-grad-15-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/pservers-grad-16-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/pservers-grad-17-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/pservers-grad-18-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/pservers-grad-19-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/pservers-pattern-01-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/render-elems-01-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/render-elems-02-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/render-elems-03-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/render-elems-06-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/render-elems-07-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/render-elems-08-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/render-groups-01-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/render-groups-03-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/script-handle-01-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/script-handle-02-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/script-handle-03-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/script-handle-04-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/shapes-circle-01-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/shapes-circle-02-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/shapes-ellipse-01-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/shapes-ellipse-02-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/shapes-intro-01-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/shapes-line-01-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/shapes-polygon-01-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/shapes-polyline-01-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/shapes-rect-01-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/shapes-rect-02-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/struct-cond-01-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/struct-cond-02-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/struct-cond-03-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/struct-defs-01-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/struct-dom-01-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/struct-dom-02-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/struct-dom-03-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/struct-dom-04-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/struct-dom-05-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/struct-frag-02-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/struct-frag-03-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/struct-frag-04-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/struct-frag-05-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/struct-frag-06-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/struct-group-01-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/struct-group-02-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/struct-group-03-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/struct-image-01-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/struct-image-02-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/struct-image-03-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/struct-image-04-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/struct-image-05-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/struct-image-06-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/struct-image-07-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/struct-image-08-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/struct-image-09-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/struct-image-10-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/struct-symbol-01-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/struct-use-01-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/struct-use-03-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/struct-use-05-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/styling-css-01-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/styling-css-02-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/styling-css-03-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/styling-css-04-f-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/styling-css-05-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/styling-css-06-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/styling-inherit-01-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/styling-pres-01-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/text-align-01-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/text-align-02-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/text-align-03-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/text-align-04-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/text-align-05-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/text-align-06-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/text-align-08-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/text-altglyph-01-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/text-deco-01-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/text-fonts-01-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/text-fonts-02-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/text-fonts-03-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/text-intro-01-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/text-intro-02-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/text-intro-03-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/text-intro-04-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/text-intro-05-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/text-path-01-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/text-spacing-01-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/text-text-01-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/text-text-03-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/text-text-04-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/text-text-05-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/text-text-06-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/text-text-07-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/text-text-08-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/text-tref-01-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/text-tselect-01-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/text-tselect-02-f-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/text-tspan-01-b-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/text-ws-01-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/text-ws-02-t-expected.txt: Added.
* platform/ios-simulator/svg/W3C-SVG-1.1/types-basicDOM-01-b-expected.txt: Added.
* platform/ios-simulator/svg/batik: Added.
* platform/ios-simulator/svg/batik/text: Added.
* platform/ios-simulator/svg/batik/text/longTextOnPath-expected.txt: Added.
* platform/ios-simulator/svg/batik/text/smallFonts-expected.txt: Added.
* platform/ios-simulator/svg/batik/text/textAnchor-expected.txt: Added.
* platform/ios-simulator/svg/batik/text/textAnchor2-expected.txt: Added.
* platform/ios-simulator/svg/batik/text/textAnchor3-expected.txt: Added.
* platform/ios-simulator/svg/batik/text/textDecoration-expected.txt: Added.
* platform/ios-simulator/svg/batik/text/textDecoration2-expected.txt: Added.
* platform/ios-simulator/svg/batik/text/textEffect-expected.txt: Added.
* platform/ios-simulator/svg/batik/text/textEffect2-expected.txt: Added.
* platform/ios-simulator/svg/batik/text/textEffect3-expected.txt: Added.
* platform/ios-simulator/svg/batik/text/textFeatures-expected.txt: Added.
* platform/ios-simulator/svg/batik/text/textGlyphOrientationHorizontal-expected.txt: Added.
* platform/ios-simulator/svg/batik/text/textLayout-expected.txt: Added.
* platform/ios-simulator/svg/batik/text/textLayout2-expected.txt: Added.
* platform/ios-simulator/svg/batik/text/textLength-expected.txt: Added.
* platform/ios-simulator/svg/batik/text/textOnPath-expected.txt: Added.
* platform/ios-simulator/svg/batik/text/textOnPath2-expected.txt: Added.
* platform/ios-simulator/svg/batik/text/textOnPath3-expected.txt: Added.
* platform/ios-simulator/svg/batik/text/textOnPathSpaces-expected.txt: Added.
* platform/ios-simulator/svg/batik/text/textPCDATA-expected.txt: Added.
* platform/ios-simulator/svg/batik/text/textPosition-expected.txt: Added.
* platform/ios-simulator/svg/batik/text/textPosition2-expected.txt: Added.
* platform/ios-simulator/svg/batik/text/textProperties-expected.txt: Added.
* platform/ios-simulator/svg/batik/text/textProperties2-expected.txt: Added.
* platform/ios-simulator/svg/batik/text/textStyles-expected.txt: Added.
* platform/ios-simulator/svg/batik/text/verticalText-expected.txt: Added.
* platform/ios-simulator/svg/batik/text/verticalTextOnPath-expected.txt: Added.
* platform/ios-simulator/svg/text/selection-background-color-expected.txt: Added.
* platform/ios-simulator/svg/text/small-fonts-2-expected.txt: Added.
* platform/ios-simulator/svg/text/small-fonts-3-expected.txt: Added.
* platform/ios-simulator/svg/text/small-fonts-expected.txt: Added.
* platform/ios-simulator/svg/text/text-align-01-b-expected.txt: Added.
* platform/ios-simulator/svg/text/text-align-02-b-expected.txt: Added.
* platform/ios-simulator/svg/text/text-align-03-b-expected.txt: Added.
* platform/ios-simulator/svg/text/text-align-04-b-expected.txt: Added.
* platform/ios-simulator/svg/text/text-align-05-b-expected.txt: Added.
* platform/ios-simulator/svg/text/text-align-06-b-expected.txt: Added.
* platform/ios-simulator/svg/text/text-altglyph-01-b-expected.txt: Added.
* platform/ios-simulator/svg/text/text-deco-01-b-expected.txt: Added.
* platform/ios-simulator/svg/text/text-fill-opacity-expected.txt: Added.
* platform/ios-simulator/svg/text/text-fonts-01-t-expected.txt: Added.
* platform/ios-simulator/svg/text/text-fonts-02-t-expected.txt: Added.
* platform/ios-simulator/svg/text/text-gradient-positioning-expected.txt: Added.
* platform/ios-simulator/svg/text/text-hkern-expected.txt: Added.
* platform/ios-simulator/svg/text/text-intro-05-t-expected.txt: Added.
* platform/ios-simulator/svg/text/text-midpoint-split-bug-expected.txt: Added.
* platform/ios-simulator/svg/text/text-path-01-b-expected.txt: Added.
* platform/ios-simulator/svg/text/text-path-middle-align-expected.txt: Added.
* platform/ios-simulator/svg/text/text-spacing-01-b-expected.txt: Added.
* platform/ios-simulator/svg/text/text-text-01-b-expected.txt: Added.
* platform/ios-simulator/svg/text/text-text-03-b-expected.txt: Added.
* platform/ios-simulator/svg/text/text-text-04-t-expected.txt: Added.
* platform/ios-simulator/svg/text/text-text-05-t-expected.txt: Added.
* platform/ios-simulator/svg/text/text-text-06-t-expected.txt: Added.
* platform/ios-simulator/svg/text/text-text-07-t-expected.txt: Added.
* platform/ios-simulator/svg/text/text-text-08-b-expected.txt: Added.
* platform/ios-simulator/svg/text/text-tref-01-b-expected.txt: Added.
* platform/ios-simulator/svg/text/text-tselect-01-b-expected.txt: Added.
* platform/ios-simulator/svg/text/text-tselect-02-f-expected.txt: Added.
* platform/ios-simulator/svg/text/text-tspan-01-b-expected.txt: Added.
* platform/ios-simulator/svg/text/text-viewbox-rescale-expected.txt: Added.
* platform/ios-simulator/svg/text/text-vkern-expected.txt: Added.
* platform/ios-simulator/svg/text/text-ws-01-t-expected.txt: Added.
* platform/ios-simulator/svg/text/text-ws-02-t-expected.txt: Added.
* platform/ios-simulator/svg/text/tspan-dynamic-positioning-expected.txt: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205001
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Fri, 26 Aug 2016 00:57:07 +0000 (00:57 +0000)]
js/regress/polymorphic-put-by-id.html does not exist.
* platform/ios-simulator-wk2/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@205000
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jiewen_tan@apple.com [Fri, 26 Aug 2016 00:49:34 +0000 (00:49 +0000)]
Unreviewed, rebase iOS simulator WK1 imported/mozilla tests
* platform/ios-simulator-wk1/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@204999
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
achristensen@apple.com [Fri, 26 Aug 2016 00:28:13 +0000 (00:28 +0000)]
CMake build fix.
Source/JavaScriptCore:
* ForwardingHeaders/JavaScriptCore/JSObjectRefPrivate.h: Added.
This is needed for the internal Windows build.
Source/WebKit:
* PlatformMac.cmake:
Availability was spelled wrong, resulting in a missing header.
Tools:
* DumpRenderTree/PlatformMac.cmake:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@204998
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jiewen_tan@apple.com [Fri, 26 Aug 2016 00:14:37 +0000 (00:14 +0000)]
Unreviewed, rebase iOS simulator WK1 imported/blink tests
* platform/ios-simulator-wk1/TestExpectations:
* platform/ios-simulator-wk1/imported/blink/fast/shapes/shape-outside-floats/shape-outside-negative-height-crash-width-expected.txt: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@204997
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Thu, 25 Aug 2016 23:09:28 +0000 (23:09 +0000)]
Replace all IPC message send flags with OptionSet
https://bugs.webkit.org/show_bug.cgi?id=161211
Reviewed by Tim Horton.
* NetworkProcess/NetworkResourceLoader.cpp:
(WebKit::NetworkResourceLoader::didFailLoading):
(WebKit::NetworkResourceLoader::sendAbortingOnFailure):
* NetworkProcess/NetworkResourceLoader.h:
* Platform/IPC/Connection.cpp:
(IPC::WaitForMessageState::WaitForMessageState):
(IPC::Connection::sendMessage):
(IPC::Connection::sendSyncReply):
(IPC::Connection::waitForMessage):
(IPC::Connection::sendSyncMessage):
(IPC::Connection::sendSyncMessageFromSecondaryThread):
(IPC::Connection::waitForSyncReply):
(IPC::Connection::processIncomingMessage):
* Platform/IPC/Connection.h:
(IPC::Connection::send):
(IPC::Connection::sendSync):
(IPC::Connection::waitForAndDispatchImmediately):
* Platform/IPC/MessageSender.cpp:
(IPC::MessageSender::sendMessage):
* Platform/IPC/MessageSender.h:
(IPC::MessageSender::send):
(IPC::MessageSender::sendSync):
* Platform/IPC/mac/ConnectionMac.mm:
(IPC::Connection::open):
(IPC::Connection::willSendSyncMessage):
(IPC::Connection::didReceiveSyncReply):
* PluginProcess/mac/PluginControllerProxyMac.mm:
(WebKit::PluginControllerProxy::setComplexTextInputState):
* UIProcess/ChildProcessProxy.cpp:
(WebKit::ChildProcessProxy::sendMessage):
(WebKit::ChildProcessProxy::didFinishLaunching):
* UIProcess/ChildProcessProxy.h:
(WebKit::ChildProcessProxy::send):
(WebKit::ChildProcessProxy::sendSync):
* UIProcess/Databases/DatabaseProcessProxy.cpp:
(WebKit::DatabaseProcessProxy::getDatabaseProcessConnection):
* UIProcess/Network/NetworkProcessProxy.cpp:
(WebKit::NetworkProcessProxy::getNetworkProcessConnection):
* UIProcess/Plugins/PluginProcessProxy.cpp:
(WebKit::PluginProcessProxy::getPluginProcessConnection):
* UIProcess/WebEditCommandProxy.cpp:
(WebKit::WebEditCommandProxy::unapply):
(WebKit::WebEditCommandProxy::reapply):
* UIProcess/WebPageProxy.cpp:
(WebKit::printingSendOptions):
(WebKit::WebPageProxy::preferencesDidChange):
(WebKit::WebPageProxy::sendMessage):
(WebKit::WebPageProxy::beginPrinting):
(WebKit::WebPageProxy::endPrinting):
(WebKit::WebPageProxy::computePagesForPrinting):
(WebKit::WebPageProxy::drawRectToImage):
(WebKit::WebPageProxy::drawPagesToPDF):
(WebKit::WebPageProxy::drawPagesForPrinting):
(WebKit::WebPageProxy::setMinimumLayoutSize): Deleted.
(WebKit::WebPageProxy::setAutoSizingShouldExpandToViewHeight): Deleted.
(WebKit::WebPageProxy::handleAlternativeTextUIResult): Deleted.
* UIProcess/WebPageProxy.h:
* UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm:
(WebKit::RemoteLayerTreeDrawingAreaProxy::waitForDidUpdateViewState):
* UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.mm:
(WebKit::TiledCoreAnimationDrawingAreaProxy::waitForDidUpdateViewState):
* WebProcess/Plugins/PluginProxy.cpp:
(WebKit::PluginProxy::geometryDidChange):
* WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::runBeforeUnloadConfirmPanel):
(WebKit::WebChromeClient::runJavaScriptAlert):
(WebKit::WebChromeClient::runJavaScriptConfirm):
(WebKit::WebChromeClient::runJavaScriptPrompt):
(WebKit::WebChromeClient::print):
(WebKit::WebChromeClient::exceededDatabaseQuota):
(WebKit::WebChromeClient::reachedApplicationCacheOriginQuota):
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::dispatchDecidePolicyForResponse):
* WebProcess/WebPage/WebFrame.cpp:
(WebKit::WebFrame::createWithCoreMainFrame):
(WebKit::WebFrame::createSubframe):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::sendPostLayoutEditorStateIfNeeded):
(WebKit::WebPage::postSynchronousMessageForTesting):
* WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
(WebKit::RemoteLayerTreeDrawingArea::BackingStoreFlusher::flush):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@204996
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Thu, 25 Aug 2016 23:02:52 +0000 (23:02 +0000)]
[JSC] Clean up the abstract interpreter for cos/sin/sqrt/fround/log
https://bugs.webkit.org/show_bug.cgi?id=161181
Patch by Benjamin Poulain <bpoulain@apple.com> on 2016-08-25
Reviewed by Geoffrey Garen.
JSTests:
Extend the tests to constants.
Add no-argument cases where needed.
* stress/arith-cos-on-various-types.js:
* stress/arith-fround-on-various-types.js:
* stress/arith-log-on-various-types.js:
* stress/arith-sin-on-various-types.js:
* stress/arith-sqrt-on-various-types.js:
Source/JavaScriptCore:
All the nodes are doing the exact same thing with a single
difference: how to process constants. I made that into a separate
function called from each node.
I also generalized the constant-to-number code of DoubleRep
to make it available for all those nodes.
* dfg/DFGAbstractInterpreter.h:
* dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeDoubleUnaryOpEffects):
* runtime/JSCJSValue.cpp:
(JSC::JSValue::toNumberFromPrimitive):
* runtime/JSCJSValue.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@204995
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
utatane.tea@gmail.com [Thu, 25 Aug 2016 22:55:10 +0000 (22:55 +0000)]
[DFG][FTL] Implement ES6 Generators in DFG / FTL
https://bugs.webkit.org/show_bug.cgi?id=152723
Reviewed by Filip Pizlo.
JSTests:
* stress/generator-fib-ftl-and-array.js: Added.
(fib):
* stress/generator-fib-ftl-and-object.js: Added.
(fib):
* stress/generator-fib-ftl-and-string.js: Added.
(fib):
* stress/generator-fib-ftl.js: Added.
(fib):
* stress/generator-frame-empty.js: Added.
(shouldThrow):
(shouldThrow.fib):
* stress/generator-reduced-save-point-put-to-scope.js: Added.
(shouldBe):
(gen):
* stress/generator-transfer-register-beyond-mutiple-yields.js: Added.
(shouldBe):
(gen):
Source/JavaScriptCore:
This patch introduces DFG and FTL support for ES6 generators.
ES6 generator is compiled by the BytecodeGenerator. But at the last phase, BytecodeGenerator performs "generatorification" onto the unlinked code.
In BytecodeGenerator phase, we just emit op_yield for each yield point. And we don't emit any generator related switch, save, and resume sequences
here. Those are emitted by the generatorification phase.
So the graph is super simple! Before the generatorification, the graph looks like this.
op_enter -> ...... -> op_yield -> ..... -> op_yield -> ...
Roughly speaking, in the generatorification phase, we turn out which variables should be saved and resumed at each op_yield.
This is done by liveness analysis. After that, we convert op_yield to the sequence of "op_put_to_scope", "op_ret", and "op_get_from_scope".
op_put_to_scope and op_get_from_scope sequences are corresponding to the save and resume sequences. We set up the scope for the generator frame and
perform op_put_to_scope and op_get_from_scope onto it. The live registers are saved and resumed over the generator's next() calls by using this
special generator frame scope. And we also set up the global switch for the generator.
In the generatorification phase,
1. We construct the BytecodeGraph from the unlinked instructions. This constructs the basic blocks, and it is used in the subsequent analysis.
2. We perform the analysis onto the unlinked code. We extract the live variables at each op_yield.
3. We insert the get_from_scope and put_to_scope at each op_yield. Which registers should be saved and resumed is offered by (2).
Then, clip the op_yield themselves. And we also insert the switch_imm. The jump targets of this switch are just after this op_switch_imm and each op_yield point.
One interesting point is the try-range. We split the try-range at the op_yield point in BytecodeGenerator phase.
This drops the hacky thing that is introduced in [1].
If the try-range covers the resume sequences, the exception handler's use-registers are incorrectly transferred to the entry block.
For example,
handler uses r2
try-range
label:(entry block can jump here) ^
r1 = get_from_scope # resume sequence starts | use r2 is transferred to the entry block!
r2 = get_from_scope |
starts usual sequences |
... |
Handler's r2 use should be considered at the `r1 = get_from_scope` point.
Previously, we handle this edge case by treating op_resume specially in the liveness analysis[1].
To drop this workaround, we split the try-range not to cover this resume sequence.
handler uses r2
try-range
label:(entry block can jump here)
r1 = get_from_scope # resume sequence starts
r2 = get_from_scope
starts usual sequences ^ try-range should start from here.
... |
OK. Let's show the detailed example.
1. First, there is the normal bytecode sequence. Here, | represents the offsets, and [] represents the bytecodes.
bytecodes | [ ] | [ ] | [ ] | [ ] | [ ] | [ ] |
try-range <----------------------------------->
2. When we emit the op_yield in the bytecode generator, we carefully split the try-range.
bytecodes | [ ] | [ ] | [op_yield] | [ ] | [ ] | [ ] |
try-range <-----------> <----------------->
3. And in the generatorification phase, we insert the switch's jump target and save & resume sequences. And we also drop op_yield.
Insert save seq Insert resume seq
before op_yield. after op_yield's point.
v v
bytecodes | [ ] | [ ] | [op_yield] | [ ] | [ ] | [ ] |
try-range <-----------> ^ <----------------->
^ |
Jump to here. Drop this op_yield.
4. The final layout is the following.
bytecodes | [ ] | [ ][save seq][op_ret] | [resume seq] | [ ] | [ ] | [ ] |
try-range <-----------------------------> <---------------->
^
Jump to here.
The rewriting done by the BytecodeRewriter is executed in a batch manner. Since these modification changes the basic blocks and size of unlinked instructions,
BytecodeRewriter also performs the offset adjustment for UnlinkedCodeBlock. So, this rewriting is performed onto the BytecodeGraph rather than BytecodeBasicBlock.
The reason why we take this design is simple: we don't want to newly create the basic blocks and opcodes for this early phase like DFG. Instead, we perform the
modification and adjustment to the unlinked instructions and UnlinkedCodeBlock in a in-place manner.
Bytecode rewriting functionality is offered by BytecodeRewriter. BytecodeRewriter allows us to insert any bytecodes to any places
in a in-place manner. BytecodeRewriter handles the original bytecode offsets as labels. And you can insert bytecodes before and after
these labels. You can also insert any jumps to any places. When you insert jumps, you need to specify jump target with this labels.
These labels (original bytecode offsets) are automatically converted to the appropriate offsets by BytecodeRewriter.
After that phase, the data flow of the generator-saved-and-resumed-registers are explicitly represented by the get_from_scope and put_to_scope.
And the switch is inserted to represent the actual control flow for the generator. And op_yield is removed. Since we use the existing bytecodes (op_switch_imm, op_put_to_scope
op_ret, and op_get_from_scope), DFG and FTL changes are not necessary. This patch also drops data structures and implementations for the old generator,
op_resume, op_save implementations and GeneratorFrame.
Note that this patch does not leverage the recent multi entrypoints support in B3. After this patch is introduced, we will submit a new patch that leverages the multi
entrypoints for generator's resume and sees the performance gain.
Microbenchmarks related to generators show up to 2.9x improvements.
Baseline Patched
generator-fib 102.0116+-3.2880 ^ 34.9670+-0.2221 ^ definitely 2.9174x faster
generator-sunspider-access-nsieve 5.8596+-0.0371 ^ 4.9051+-0.0720 ^ definitely 1.1946x faster
generator-with-several-types 332.1478+-4.2425 ^ 124.6642+-2.4826 ^ definitely 2.6643x faster
<geometric> 58.2998+-0.7758 ^ 27.7425+-0.2577 ^ definitely 2.1015x faster
In ES6SampleBench's Basic, we can observe 41% improvement (Macbook Pro).
Baseline:
Geometric Mean Result: 133.55 ms +- 4.49 ms
Benchmark First Iteration Worst 2% Steady State
Air 54.03 ms +- 7.51 ms 29.06 ms +- 3.13 ms 2276.59 ms +- 61.17 ms
Basic 30.18 ms +- 1.86 ms 18.85 ms +- 0.45 ms 2851.16 ms +- 41.87 ms
Patched:
Geometric Mean Result: 121.78 ms +- 3.96 ms
Benchmark First Iteration Worst 2% Steady State
Air 52.09 ms +- 6.89 ms 29.59 ms +- 3.16 ms 2239.90 ms +- 54.60 ms
Basic 29.28 ms +- 1.46 ms 16.26 ms +- 0.66 ms 2025.15 ms +- 38.56 ms
[1]: https://bugs.webkit.org/show_bug.cgi?id=159281
* CMakeLists.txt:
* JavaScriptCore.xcodeproj/project.pbxproj:
* builtins/GeneratorPrototype.js:
(globalPrivate.generatorResume):
* bytecode/BytecodeBasicBlock.cpp:
(JSC::BytecodeBasicBlock::shrinkToFit):
(JSC::BytecodeBasicBlock::computeImpl):
(JSC::BytecodeBasicBlock::compute):
(JSC::isBranch): Deleted.
(JSC::isUnconditionalBranch): Deleted.
(JSC::isTerminal): Deleted.
(JSC::isThrow): Deleted.
(JSC::linkBlocks): Deleted.
(JSC::computeBytecodeBasicBlocks): Deleted.
* bytecode/BytecodeBasicBlock.h:
(JSC::BytecodeBasicBlock::isEntryBlock):
(JSC::BytecodeBasicBlock::isExitBlock):
(JSC::BytecodeBasicBlock::leaderOffset):
(JSC::BytecodeBasicBlock::totalLength):
(JSC::BytecodeBasicBlock::offsets):
(JSC::BytecodeBasicBlock::successors):
(JSC::BytecodeBasicBlock::index):
(JSC::BytecodeBasicBlock::addSuccessor):
(JSC::BytecodeBasicBlock::BytecodeBasicBlock):
(JSC::BytecodeBasicBlock::addLength):
(JSC::BytecodeBasicBlock::leaderBytecodeOffset): Deleted.
(JSC::BytecodeBasicBlock::totalBytecodeLength): Deleted.
(JSC::BytecodeBasicBlock::bytecodeOffsets): Deleted.
(JSC::BytecodeBasicBlock::addBytecodeLength): Deleted.
* bytecode/BytecodeGeneratorification.cpp: Added.
(JSC::BytecodeGeneratorification::BytecodeGeneratorification):
(JSC::BytecodeGeneratorification::graph):
(JSC::BytecodeGeneratorification::yields):
(JSC::BytecodeGeneratorification::enterPoint):
(JSC::BytecodeGeneratorification::storageForGeneratorLocal):
(JSC::GeneratorLivenessAnalysis::GeneratorLivenessAnalysis):
(JSC::GeneratorLivenessAnalysis::computeDefsForBytecodeOffset):
(JSC::GeneratorLivenessAnalysis::computeUsesForBytecodeOffset):
(JSC::GeneratorLivenessAnalysis::run):
(JSC::BytecodeGeneratorification::run):
(JSC::performGeneratorification):
* bytecode/BytecodeGeneratorification.h: Copied from Source/JavaScriptCore/bytecode/BytecodeLivenessAnalysisInlines.h.
* bytecode/BytecodeGraph.h: Added.
(JSC::BytecodeGraph::codeBlock):
(JSC::BytecodeGraph::instructions):
(JSC::BytecodeGraph::basicBlocksInReverseOrder):
(JSC::BytecodeGraph::blockContainsBytecodeOffset):
(JSC::BytecodeGraph::findBasicBlockForBytecodeOffset):
(JSC::BytecodeGraph::findBasicBlockWithLeaderOffset):
(JSC::BytecodeGraph::size):
(JSC::BytecodeGraph::at):
(JSC::BytecodeGraph::operator[]):
(JSC::BytecodeGraph::begin):
(JSC::BytecodeGraph::end):
(JSC::BytecodeGraph::first):
(JSC::BytecodeGraph::last):
(JSC::BytecodeGraph<Block>::BytecodeGraph):
* bytecode/BytecodeList.json:
* bytecode/BytecodeLivenessAnalysis.cpp:
(JSC::BytecodeLivenessAnalysis::BytecodeLivenessAnalysis):
(JSC::BytecodeLivenessAnalysis::computeDefsForBytecodeOffset):
(JSC::BytecodeLivenessAnalysis::computeUsesForBytecodeOffset):
(JSC::BytecodeLivenessAnalysis::getLivenessInfoAtBytecodeOffset):
(JSC::BytecodeLivenessAnalysis::computeFullLiveness):
(JSC::BytecodeLivenessAnalysis::computeKills):
(JSC::BytecodeLivenessAnalysis::dumpResults):
(JSC::BytecodeLivenessAnalysis::compute):
(JSC::isValidRegisterForLiveness): Deleted.
(JSC::getLeaderOffsetForBasicBlock): Deleted.
(JSC::findBasicBlockWithLeaderOffset): Deleted.
(JSC::blockContainsBytecodeOffset): Deleted.
(JSC::findBasicBlockForBytecodeOffset): Deleted.
(JSC::stepOverInstruction): Deleted.
(JSC::computeLocalLivenessForBytecodeOffset): Deleted.
(JSC::computeLocalLivenessForBlock): Deleted.
(JSC::BytecodeLivenessAnalysis::runLivenessFixpoint): Deleted.
* bytecode/BytecodeLivenessAnalysis.h:
* bytecode/BytecodeLivenessAnalysisInlines.h:
(JSC::isValidRegisterForLiveness):
(JSC::BytecodeLivenessPropagation<DerivedAnalysis>::stepOverInstruction):
(JSC::BytecodeLivenessPropagation<DerivedAnalysis>::computeLocalLivenessForBytecodeOffset):
(JSC::BytecodeLivenessPropagation<DerivedAnalysis>::computeLocalLivenessForBlock):
(JSC::BytecodeLivenessPropagation<DerivedAnalysis>::getLivenessInfoAtBytecodeOffset):
(JSC::BytecodeLivenessPropagation<DerivedAnalysis>::runLivenessFixpoint):
* bytecode/BytecodeRewriter.cpp: Added.
(JSC::BytecodeRewriter::applyModification):
(JSC::BytecodeRewriter::execute):
(JSC::BytecodeRewriter::adjustJumpTargetsInFragment):
(JSC::BytecodeRewriter::insertImpl):
(JSC::BytecodeRewriter::adjustJumpTarget):
* bytecode/BytecodeRewriter.h: Added.
(JSC::BytecodeRewriter::InsertionPoint::InsertionPoint):
(JSC::BytecodeRewriter::InsertionPoint::operator<):
(JSC::BytecodeRewriter::InsertionPoint::operator==):
(JSC::BytecodeRewriter::Insertion::length):
(JSC::BytecodeRewriter::Fragment::Fragment):
(JSC::BytecodeRewriter::Fragment::appendInstruction):
(JSC::BytecodeRewriter::BytecodeRewriter):
(JSC::BytecodeRewriter::insertFragmentBefore):
(JSC::BytecodeRewriter::insertFragmentAfter):
(JSC::BytecodeRewriter::removeBytecode):
(JSC::BytecodeRewriter::graph):
(JSC::BytecodeRewriter::adjustAbsoluteOffset):
(JSC::BytecodeRewriter::adjustJumpTarget):
(JSC::BytecodeRewriter::calculateDifference):
* bytecode/BytecodeUseDef.h:
(JSC::computeUsesForBytecodeOffset):
(JSC::computeDefsForBytecodeOffset):
* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::dumpBytecode):
(JSC::CodeBlock::finishCreation):
(JSC::CodeBlock::handlerForIndex):
(JSC::CodeBlock::shrinkToFit):
(JSC::CodeBlock::valueProfileForBytecodeOffset):
(JSC::CodeBlock::livenessAnalysisSlow):
* bytecode/CodeBlock.h:
(JSC::CodeBlock::isConstantRegisterIndex):
(JSC::CodeBlock::livenessAnalysis):
(JSC::CodeBlock::liveCalleeLocalsAtYield): Deleted.
* bytecode/HandlerInfo.h:
(JSC::HandlerInfoBase::handlerForIndex):
* bytecode/Opcode.h:
(JSC::isBranch):
(JSC::isUnconditionalBranch):
(JSC::isTerminal):
(JSC::isThrow):
* bytecode/PreciseJumpTargets.cpp:
(JSC::getJumpTargetsForBytecodeOffset):
(JSC::computePreciseJumpTargetsInternal):
(JSC::computePreciseJumpTargets):
(JSC::recomputePreciseJumpTargets):
(JSC::findJumpTargetsForBytecodeOffset):
* bytecode/PreciseJumpTargets.h:
* bytecode/PreciseJumpTargetsInlines.h: Added.
(JSC::extractStoredJumpTargetsForBytecodeOffset):
* bytecode/UnlinkedCodeBlock.cpp:
(JSC::UnlinkedCodeBlock::handlerForBytecodeOffset):
(JSC::UnlinkedCodeBlock::handlerForIndex):
(JSC::UnlinkedCodeBlock::applyModification):
* bytecode/UnlinkedCodeBlock.h:
(JSC::UnlinkedStringJumpTable::offsetForValue):
(JSC::UnlinkedCodeBlock::numCalleeLocals):
* bytecode/VirtualRegister.h:
* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::generate):
(JSC::BytecodeGenerator::BytecodeGenerator):
(JSC::BytecodeGenerator::emitComplexPopScopes):
(JSC::prepareJumpTableForStringSwitch):
(JSC::BytecodeGenerator::emitYieldPoint):
(JSC::BytecodeGenerator::emitSave): Deleted.
(JSC::BytecodeGenerator::emitResume): Deleted.
(JSC::BytecodeGenerator::emitGeneratorStateLabel): Deleted.
(JSC::BytecodeGenerator::beginGenerator): Deleted.
(JSC::BytecodeGenerator::endGenerator): Deleted.
* bytecompiler/BytecodeGenerator.h:
(JSC::BytecodeGenerator::generatorStateRegister):
(JSC::BytecodeGenerator::generatorValueRegister):
(JSC::BytecodeGenerator::generatorResumeModeRegister):
(JSC::BytecodeGenerator::generatorFrameRegister):
* bytecompiler/NodesCodegen.cpp:
(JSC::FunctionNode::emitBytecode):
* dfg/DFGOperations.cpp:
* interpreter/Interpreter.cpp:
(JSC::findExceptionHandler):
(JSC::GetCatchHandlerFunctor::operator()):
(JSC::UnwindFunctor::operator()):
* interpreter/Interpreter.h:
* interpreter/InterpreterInlines.h: Copied from Source/JavaScriptCore/bytecode/PreciseJumpTargets.h.
(JSC::Interpreter::getOpcodeID):
* jit/JIT.cpp:
(JSC::JIT::privateCompileMainPass):
* jit/JIT.h:
* jit/JITOpcodes.cpp:
(JSC::JIT::emit_op_save): Deleted.
(JSC::JIT::emit_op_resume): Deleted.
* llint/LowLevelInterpreter.asm:
* parser/Parser.cpp:
(JSC::Parser<LexerType>::parseInner):
(JSC::Parser<LexerType>::parseGeneratorFunctionSourceElements):
(JSC::Parser<LexerType>::createGeneratorParameters):
* parser/Parser.h:
* runtime/CommonSlowPaths.cpp:
(JSC::SLOW_PATH_DECL): Deleted.
* runtime/CommonSlowPaths.h:
* runtime/GeneratorFrame.cpp: Removed.
(JSC::GeneratorFrame::GeneratorFrame): Deleted.
(JSC::GeneratorFrame::finishCreation): Deleted.
(JSC::GeneratorFrame::createStructure): Deleted.
(JSC::GeneratorFrame::create): Deleted.
(JSC::GeneratorFrame::save): Deleted.
(JSC::GeneratorFrame::resume): Deleted.
(JSC::GeneratorFrame::visitChildren): Deleted.
* runtime/GeneratorFrame.h: Removed.
(JSC::GeneratorFrame::locals): Deleted.
(JSC::GeneratorFrame::localAt): Deleted.
(JSC::GeneratorFrame::offsetOfLocals): Deleted.
(JSC::GeneratorFrame::allocationSizeForLocals): Deleted.
* runtime/JSGeneratorFunction.h:
* runtime/VM.cpp:
(JSC::VM::VM):
* runtime/VM.h:
Source/WTF:
* wtf/FastBitVector.h:
(WTF::FastBitVector::FastBitVector):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@204994
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jiewen_tan@apple.com [Thu, 25 Aug 2016 22:27:02 +0000 (22:27 +0000)]
Unreviewed, rebase iOS simulator WK1 fast tests
* platform/ios-simulator-wk1/TestExpectations:
* platform/ios-simulator-wk1/fast/attachment/attachment-select-on-click-expected.txt: Added.
* platform/ios-simulator-wk1/fast/block/float/overhanging-tall-block-expected.txt: Added.
* platform/ios-simulator-wk1/fast/clip/014-expected.txt: Added.
* platform/ios-simulator-wk1/fast/encoding/utf-16-big-endian-expected.txt:
* platform/ios-simulator-wk1/fast/encoding/utf-16-little-endian-expected.txt:
* platform/ios-simulator-wk1/fast/events/ghostly-mousemoves-in-subframe-expected.txt: Added.
* platform/ios-simulator-wk1/fast/forms/form-element-geometry-expected.txt:
* platform/ios-simulator-wk1/fast/replaced/width100percent-textarea-expected.txt: Added.
* platform/ios-simulator-wk1/fast/shadow-dom/trusted-event-scoped-flags-expected.txt: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@204993
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Thu, 25 Aug 2016 22:11:59 +0000 (22:11 +0000)]
TryGetById should have a ValueProfile so that it can predict its output type
https://bugs.webkit.org/show_bug.cgi?id=160921
Patch by JF Bastien <jfbastien@apple.com> on 2016-08-25
Reviewed by Saam Barati.
JSTests:
* microbenchmarks/try-get-by-id-basic.js: Added.
(const.check):
(const.bench.f.const.fooPlusBar.createBuiltin):
* microbenchmarks/try-get-by-id-polymorphic.js: Added.
(const.check):
(fooPlusBar.createBuiltin):
(bench):
Source/JavaScriptCore:
Add a ValueProfile to TryGetById, and make sure DFG picks it up.
A microbenchmark for perfectly predicted computation shows a 20%
runtime reduction with no hit if the prediction goes polymorphic.
* bytecode/BytecodeList.json:
* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::dumpBytecode):
(JSC::CodeBlock::finishCreation):
* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::emitTryGetById):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::parseBlock):
* dfg/DFGNode.h:
(JSC::DFG::Node::hasHeapPrediction):
* dfg/DFGPredictionPropagationPhase.cpp:
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* jit/JITPropertyAccess.cpp:
(JSC::JIT::emit_op_try_get_by_id):
* jit/JITPropertyAccess32_64.cpp:
(JSC::JIT::emit_op_try_get_by_id):
* llint/LLIntSlowPaths.cpp:
(JSC::LLInt::LLINT_SLOW_PATH_DECL):
* llint/LowLevelInterpreter.asm:
Source/WTF:
Add WTF_CONCAT to StdLibExtras.h
* wtf/StdLibExtras.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@204992
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Thu, 25 Aug 2016 22:11:25 +0000 (22:11 +0000)]
WK1 Sierra: LayoutTests fast/html/marquee-scroll.html and fast/inline-block/003.html failing
rdar://problem/
28017216
This test is sensitive to how WK1 does layouts as a result of updateScrollbars(),
giving different results in WK1 and WK1. Land Sierra results, and mark the test
as failing on earlier OS versions.
* platform/mac-wk1/TestExpectations:
* platform/mac-wk1/fast/inline-block/003-expected.txt: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@204991
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
achristensen@apple.com [Thu, 25 Aug 2016 22:02:08 +0000 (22:02 +0000)]
Fix URLParserTest with GuardMalloc
https://bugs.webkit.org/show_bug.cgi?id=161214
rdar://problem/
28014390
Reviewed by Tim Horton.
The CString returned by String::utf8 was going out of scope before we were doing a string comparison on its data.
This just does the comparison of the CStrings instead to keep them in scope during the comparison.
* TestWebKitAPI/Tests/WebCore/URLParser.cpp:
(TestWebKitAPI::eq):
(TestWebKitAPI::checkURL):
(TestWebKitAPI::checkURLDifferences):
(TestWebKitAPI::s): Deleted.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@204990
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
wenson_hsieh@apple.com [Thu, 25 Aug 2016 22:01:07 +0000 (22:01 +0000)]
Dragging against the end of the inline media scrubber causes the media scrubber to hide
https://bugs.webkit.org/show_bug.cgi?id=161207
Reviewed by Eric Carlson.
Source/WebCore:
Previously, we would re-enable behavior restrictions when firing an ended event. However, if the ended event is
caused by the user seeking to the end of the video, the media controls would be taken away from under the user.
To prevent this, we don't add the relevant behavior restrictions upon media ended if media was seeking before
firing the event.
Tweaked an existing WebKit API test to cover this change.
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::mediaPlayerTimeChanged):
(WebCore::HTMLMediaElement::addBehaviorRestrictionsOnEndIfNecessary):
* html/HTMLMediaElement.h:
* html/MediaElementSession.cpp:
(WebCore::MediaElementSession::canControlControlsManager):
Tools:
Tweaks an existing WebKit API test covering this behavior change. After some discussion, rather than hide media
controls in this case, we should actually continue showing them. This is because seeking due to user gestures
similar to "scrubbing" are indistinguishable from gestures that immediately seek to the end.
* TestWebKitAPI/Tests/WebKit2Cocoa/VideoControlsManager.mm:
(TestWebKitAPI::TEST):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@204989
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
akling@apple.com [Thu, 25 Aug 2016 21:57:13 +0000 (21:57 +0000)]
REGRESSION: RELEASE_ASSERT in ResourceUsageThread::platformThreadBody when ASan is enabled
<https://webkit.org/b/161203>
<rdar://problem/
28011251>
Reviewed by Joseph Pecoraro.
* page/cocoa/ResourceUsageThreadCocoa.mm:
(WebCore::ResourceUsageThread::platformThreadBody): Remove overly optimistic assertions about
"GC owned" memory never being higher than total malloc memory usage. This accounting is not
really exact and pretending otherwise will just lead to crashes.
* html/HTMLCanvasElement.cpp:
(WebCore::HTMLCanvasElement::externalMemoryCost): Hook up HTMLCanvasElement to the ImageBuffer
helper for reporting external memory cost. This makes accounting slightly more correct.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@204987
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cdumez@apple.com [Thu, 25 Aug 2016 21:48:33 +0000 (21:48 +0000)]
Regression(r203623): Breaks App Store application
https://bugs.webkit.org/show_bug.cgi?id=161206
<rdar://problem/
28015060>
Reviewed by Ryosuke Niwa.
Source/WebCore:
Add quirks for the App Store application so that we log an error message
when passing a Document node to Window.getComputedStyle() instead of
throwing an exception.
* page/DOMWindow.cpp:
(WebCore::DOMWindow::getComputedStyle):
* page/DOMWindow.h:
* page/DOMWindow.idl:
* platform/RuntimeApplicationChecks.h:
* platform/RuntimeApplicationChecks.mm:
(WebCore::MacApplication::isAppStore):
LayoutTests:
Rebaseline existing test as the exception message is slightly different.
* fast/dom/Window/getComputedStyle-missing-parameter-expected.txt:
* fast/dom/Window/getComputedStyle-missing-parameter.html:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@204986
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Thu, 25 Aug 2016 20:53:15 +0000 (20:53 +0000)]
Remove some more MessageRecorder gunk
https://bugs.webkit.org/show_bug.cgi?id=161209
Reviewed by Tim Horton.
* DatabaseProcess/DatabaseProcess.h:
* DatabaseProcess/DatabaseToWebProcessConnection.h:
* NetworkProcess/NetworkConnectionToWebProcess.h:
* NetworkProcess/NetworkProcess.h:
* Platform/IPC/Connection.h:
* Platform/IPC/ProcessType.h: Removed.
* PluginProcess/PluginProcess.h:
* PluginProcess/WebProcessConnection.h:
* UIProcess/Databases/DatabaseProcessProxy.h:
* UIProcess/Network/NetworkProcessProxy.h:
* UIProcess/Plugins/PluginProcessProxy.h:
* UIProcess/WebProcessProxy.h:
* WebKit2.xcodeproj/project.pbxproj:
* WebProcess/Databases/WebToDatabaseProcessConnection.h:
* WebProcess/Network/NetworkProcessConnection.h:
* WebProcess/Plugins/PluginProcessConnection.h:
* WebProcess/WebPage/WebInspector.h:
* WebProcess/WebPage/WebInspectorUI.h:
* WebProcess/WebProcess.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@204985
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jiewen_tan@apple.com [Thu, 25 Aug 2016 19:20:28 +0000 (19:20 +0000)]
Unreviewed, rebase iOS simulator WK1 fast/css tests
* platform/ios-simulator-wk1/TestExpectations:
* platform/ios-simulator-wk1/fast/css/layerZOrderCrash-expected.txt: Added.
* platform/ios-simulator-wk1/fast/css/viewport-units-dynamic-expected.txt: Added.
* platform/ios-simulator-wk1/fast/css/word-space-extra-expected.txt: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@204984
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Thu, 25 Aug 2016 19:18:29 +0000 (19:18 +0000)]
REGRESSION (r203378): [iOS] The PDF image is rendered stretched if a sub image of it is cached first
https://bugs.webkit.org/show_bug.cgi?id=160617
Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2016-08-25
Reviewed by Tim Horton.
Source/WebCore:
When caching only a sub-image of the PDF ensure the source rectangle starts
at the top-left of the cached sub-image rectangle. When drawing the cached
sub-image to the destination context ensure the destination rectangle is the
sub-image rectangle so no stretching or shrinking happens.
Test: fast/images/cached-clipped-pdf.html
* page/Settings.cpp:
(WebCore::Settings::Settings):
(WebCore::Settings::setCachedPDFImageEnabled): Deleted.
* page/Settings.h:
(WebCore::Settings::isCachedPDFImageEnabled): Deleted.
* page/Settings.in:
Change the boolean setting CachedPDFImageEnabled to be enum property and
rename it PDFImageCachingPolicy. Allow the "PDFImageCachingBelowMemoryLimit"
option to be available on a;; platforms. The "PDFImageCachingClipBoundsOnly"
option is added for testing purpose. If forces recaching the PDF with each
draw and it sets the cached image rectangle to the clipping rectangle.
* platform/graphics/cg/PDFDocumentImage.cpp:
(WebCore::PDFDocumentImage::setPdfImageCachingPolicy): Take an enum instead of boolean.
(WebCore::cachedImageRect):
(WebCore::PDFDocumentImage::decodedSizeChanged): Enable PDFImageCachingBelowMemoryLimit
on all platforms.
(WebCore::PDFDocumentImage::updateCachedImageIfNeeded): Fix the source rectangle
when caching a sub-image of the PDF.
(WebCore::PDFDocumentImage::draw): Fix the destination rectangle when drawing
a sub-image to the destination context.
(WebCore::PDFDocumentImage::setCachedPDFImageEnabled): Deleted.
* platform/graphics/cg/PDFDocumentImage.h:
* rendering/RenderImage.cpp:
(WebCore::RenderImage::paintIntoRect):
* testing/InternalSettings.cpp:
(WebCore::InternalSettings::Backup::Backup):
(WebCore::InternalSettings::Backup::restoreTo):
(WebCore::InternalSettings::setPDFImageCachingPolicy):
(WebCore::InternalSettings::setCachedPDFImageEnabled): Deleted.
* testing/InternalSettings.h:
* testing/InternalSettings.idl:
Change the internal setting CachedPDFImageEnabled to PDFImageCachingPolicy.
LayoutTests:
* fast/images/cached-clipped-pdf-expected.html: Added.
* fast/images/cached-clipped-pdf.html: Added.
* fast/images/displaced-non-cached-pdf.html:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@204983
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ryanhaddad@apple.com [Thu, 25 Aug 2016 19:02:10 +0000 (19:02 +0000)]
Skipping imported/w3c/web-platform-tests/url/url-setters.html because it asserts.
https://bugs.webkit.org/show_bug.cgi?id=161191
Unreviewed test gardening.
* platform/ios-simulator-wk1/TestExpectations:
* platform/mac-wk1/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@204982
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zalan@apple.com [Thu, 25 Aug 2016 18:41:22 +0000 (18:41 +0000)]
Infinite recursion crash in WebCore::RenderBlockFlow::layoutBlock
https://bugs.webkit.org/show_bug.cgi?id=139474
<rdar://problem/
27705190>
Reviewed by David Hyatt.
Source/WebCore:
We should just give up trying to avoid widow when the page is too small to break line.
Test: fast/multicol/assert-on-small-page-height-with-widow.html
* rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::clearShouldBreakAtLineToAvoidWidowIfNeeded):
(WebCore::RenderBlockFlow::adjustLinePositionForPagination):
* rendering/RenderBlockFlow.h:
LayoutTests:
* fast/multicol/assert-on-small-page-height-with-widow-expected.txt: Added.
* fast/multicol/assert-on-small-page-height-with-widow.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@204980
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ossy@webkit.org [Thu, 25 Aug 2016 18:39:22 +0000 (18:39 +0000)]
generate-js-builtins.py should generate platform independent files
https://bugs.webkit.org/show_bug.cgi?id=161196
Reviewed by Mark Lam.
* Scripts/generate-js-builtins.py: Files should be processed in fixed order.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@204979
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Thu, 25 Aug 2016 18:36:05 +0000 (18:36 +0000)]
Add the ability to override the implementation name of IDL enums and dictionaries
https://bugs.webkit.org/show_bug.cgi?id=161185
Reviewed by Anders Carlsson.
* bindings/scripts/CodeGenerator.pm:
(ProcessDocument):
Build a dictionary of IDL name -> implementation name overrides
for enums and dictionaries up front based on ImplementedAs extended
attribute.
(HasEnumImplementationNameOverride):
(GetEnumImplementationNameOverride):
(HasDictionaryImplementationNameOverride):
(GetDictionaryImplementationNameOverride):
Expose predicate and getter for name overrides.
* bindings/scripts/CodeGeneratorJS.pm:
(GetEnumerationClassName):
(GetDictionaryClassName):
Use the override names as necessary.
* bindings/scripts/test/TestObj.idl:
Add tests for enums and dictionaries with ImplementedAs extended
attributes.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@204978
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
achristensen@apple.com [Thu, 25 Aug 2016 18:23:54 +0000 (18:23 +0000)]
Don't store networkLoadTiming in the disk cache
https://bugs.webkit.org/show_bug.cgi?id=161161
Patch by Johan K. Jensen <johan_jensen@apple.com> on 2016-08-25
Reviewed by Antti Koivisto.
Source/WebCore:
No functionality changed. So, no new tests.
* platform/network/ResourceResponseBase.h:
(WebCore::ResourceResponseBase::encode):
(WebCore::ResourceResponseBase::decode):
Source/WebKit2:
* NetworkProcess/cache/NetworkCacheStorage.h: Updated version to 10.
* NetworkProcess/cache/NetworkCacheDecoder.h:
* NetworkProcess/cache/NetworkCacheEncoder.h:
* Platform/IPC/Decoder.h:
* Platform/IPC/Encoder.h:
Added isIPCDecoder/isIPCEncoder static members.
Source/WTF:
* wtf/Forward.h:
Remove Encode and Decode forward declarations.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@204977
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
achristensen@apple.com [Thu, 25 Aug 2016 18:22:25 +0000 (18:22 +0000)]
Update the Resource Timing implementation
https://bugs.webkit.org/show_bug.cgi?id=161068
Patch by Johan K. Jensen <johan_jensen@apple.com> on 2016-08-25
Reviewed by Alex Christensen.
LayoutTests/imported/w3c:
Added W3C Web Platform Tests for Resource Timing.
* web-platform-tests/resource-timing/OWNERS: Added.
* web-platform-tests/resource-timing/SyntheticResponse.py: Added.
(main):
* web-platform-tests/resource-timing/iframe-setdomain.sub.html: Added.
* web-platform-tests/resource-timing/resource-timing.html: Added.
* web-platform-tests/resource-timing/resource-timing.js: Added.
(testCases.test):
(test):
(runNextCase):
(assertInvariants):
(assertResourceEntryInvariants):
(canonicalize):
(createUniqueQueryArgument):
(getSyntheticUrl):
(initiateFetch):
(window.onload):
* web-platform-tests/resource-timing/resources/resource_timing_test0.css: Added.
(div#resource_link_css):
* web-platform-tests/resource-timing/resources/resource_timing_test0.html: Added.
* web-platform-tests/resource-timing/resources/resource_timing_test0.js: Added.
* web-platform-tests/resource-timing/resources/resource_timing_test0.png: Added.
* web-platform-tests/resource-timing/resources/resource_timing_test0.xml: Added.
* web-platform-tests/resource-timing/resources/webperftestharness.js: Added.
(wp_test):
(test_namespace):
(test_timing_order):
(test_timing_equals):
(sleep_milliseconds):
(test_true):
(test_equals):
(test_greater_than):
(test_greater_or_equals):
* web-platform-tests/resource-timing/test_resource_timing.html: Added.
* web-platform-tests/resource-timing/test_resource_timing.js: Added.
(setup):
(resolve):
(switch.):
(switch.case.string_appeared_here.xmlhttp.onload):
(switch.default.element.onload):
(onload):
(poll_for_stylesheet_load.inner):
(poll_for_stylesheet_load):
(resource_load):
Source/WebCore:
Tests: imported/w3c/web-platform-tests/resource-timing/resource-timing.html
imported/w3c/web-platform-tests/resource-timing/test_resource_timing.html
Update the Resource Timing implementation for better compatibility with the Resource Timing API spec.
Use LoadTiming for general timing information about a resources load timeline.
Mark timestamps for newly loaded resources as well as cached resources.
* loader/DocumentLoader.cpp:
(WebCore::DocumentLoader::startLoadingMainResource):
StartTime and fetchStart should be equal initially.
* loader/LoadTiming.cpp:
(WebCore::LoadTiming::LoadTiming): Moved member initialization out. Removed constructor.
* loader/LoadTiming.h:
(WebCore::LoadTiming::markStartTimeAndFetchStart):
Mark startTime and fetchStart simultaneously.
* loader/ResourceLoader.cpp:
(WebCore::ResourceLoader::init):
Mark the start time of resources.
* loader/ResourceLoader.h:
(WebCore::ResourceLoader::loadTiming):
Add LoadTiming info to handle a resources load timing.
* loader/ResourceTimingInformation.cpp:
(WebCore::ResourceTimingInformation::addResourceTiming):
* loader/ResourceTimingInformation.h:
Only pass in the URL from the ResourceRequest.
Pass LoadTiming instead of timestamps.
* loader/SubresourceLoader.cpp:
(WebCore::SubresourceLoader::willSendRequestInternal):
Mark redirects.
(WebCore::SubresourceLoader::didFinishLoading):
Mark the responseEnd timestamp.
Add the ResourceEntry to the timeline before notifyDone is called.
* loader/cache/CachedResourceLoader.cpp:
(WebCore::CachedResourceLoader::requestResource):
(WebCore::CachedResourceLoader::revalidateResource):
(WebCore::CachedResourceLoader::loadDone):
Mark timestamps for cached resources and use them instead of a cached LoadTiming.
* loader/cache/CachedResourceLoader.h:
(WebCore::CachedResourceLoader::resourceTimingInformation):
Add ResourceTimingInformation getter so SubresourceLoader.cpp can add entries before callbacks.
* page/Performance.cpp:
(WebCore::Performance::addResourceTiming):
* page/Performance.h:
Update signature: URLs and LoadTiming instead of timestamps.
* page/PerformanceResourceTiming.cpp:
(WebCore::PerformanceResourceTiming::PerformanceResourceTiming):
(WebCore::PerformanceResourceTiming::redirectStart):
(WebCore::PerformanceResourceTiming::redirectEnd):
(WebCore::PerformanceResourceTiming::fetchStart):
(WebCore::PerformanceResourceTiming::domainLookupStart):
(WebCore::PerformanceResourceTiming::domainLookupEnd):
(WebCore::PerformanceResourceTiming::connectStart):
(WebCore::PerformanceResourceTiming::connectEnd):
(WebCore::PerformanceResourceTiming::requestStart):
(WebCore::PerformanceResourceTiming::responseStart):
(WebCore::PerformanceResourceTiming::responseEnd):
(WebCore::PerformanceResourceTiming::resourceTimeToDocumentMilliseconds):
* page/PerformanceResourceTiming.h:
Update signatures and properties to use LoadTiming.
Use LoadTiming’s redirectStart/End, fetchStart, responseStart/End.
Make sure dns and connection timestamps are in increasing order, even when cached.
* page/PerformanceResourceTiming.idl:
Add responseStart.
LayoutTests:
* TestExpectations:
Skip resource outside of resource-folder.
Mark one test as flaky (see bug 161088).
* resources/testharnessreport.js:
(self.testRunner.add_completion_callback):
Updated completion callback to wait for any other completion callbacks
before finishing, so the Resource Timing tests can cleanup first.
Enabled the ResourceTiming runtime flag.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@204976
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jiewen_tan@apple.com [Thu, 25 Aug 2016 18:21:16 +0000 (18:21 +0000)]
Unreviewed, rebase iOS simulator WK1 fast/multicol tests
* platform/ios-simulator-wk1/fast/multicol/overflow-unsplittable-expected.txt: Added.
* platform/ios-simulator-wk1/fast/multicol/pagination/BottomToTop-bt-expected.txt:
* platform/ios-simulator-wk1/fast/multicol/pagination/BottomToTop-lr-expected.txt:
* platform/ios-simulator-wk1/fast/multicol/pagination/BottomToTop-rl-expected.txt:
* platform/ios-simulator-wk1/fast/multicol/pagination/BottomToTop-tb-expected.txt:
* platform/ios-simulator-wk1/fast/multicol/pagination/RightToLeft-bt-expected.txt:
* platform/ios-simulator-wk1/fast/multicol/pagination/RightToLeft-lr-expected.txt:
* platform/ios-simulator-wk1/fast/multicol/pagination/RightToLeft-rl-dynamic-expected.txt:
* platform/ios-simulator-wk1/fast/multicol/pagination/RightToLeft-rl-expected.txt:
* platform/ios-simulator-wk1/fast/multicol/pagination/RightToLeft-tb-expected.txt:
* platform/ios-simulator-wk1/fast/multicol/vertical-rl/column-break-with-balancing-expected.txt:
* platform/ios-simulator-wk1/fast/multicol/vertical-rl/column-rules-expected.txt:
* platform/ios-simulator-wk1/fast/multicol/vertical-rl/float-paginate-complex-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@204975
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
achristensen@apple.com [Thu, 25 Aug 2016 18:12:56 +0000 (18:12 +0000)]
Re-export DOMException NSStrings after r204717
https://bugs.webkit.org/show_bug.cgi?id=161200
<rdar://problem/
27959937>
Patch by Anders Carlsson <andersca@apple.com> on 2016-08-25
Reviewed by Alex Christensen.
* DOM/ExceptionHandlers.mm:
(raiseDOMException):
* WebKit.exp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@204974
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Thu, 25 Aug 2016 17:50:30 +0000 (17:50 +0000)]
TestExpectations cleanup
Remove references to non-existant JS tests.
* platform/ios-simulator/TestExpectations:
* platform/mac-wk1/TestExpectations:
* platform/mac/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@204973
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Thu, 25 Aug 2016 17:37:09 +0000 (17:37 +0000)]
Simplify createMouseEvent in DragController
https://bugs.webkit.org/show_bug.cgi?id=161168
Reviewed by Dan Bernstein.
* page/DragController.cpp:
(WebCore::createMouseEvent):
* platform/DragData.cpp:
(WebCore::DragData::modifierKeyState): Deleted.
* platform/DragData.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@204972
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dbates@webkit.org [Thu, 25 Aug 2016 17:19:16 +0000 (17:19 +0000)]
Watch more things.
* Scripts/webkitpy/common/config/watchlist:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@204971
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cdumez@apple.com [Thu, 25 Aug 2016 17:08:41 +0000 (17:08 +0000)]
DOMTokenList.value should be a stringifier attribute
https://bugs.webkit.org/show_bug.cgi?id=161195
Reviewed by Darin Adler.
DOMTokenList.value should be a stringifier attribute:
- https://dom.spec.whatwg.org/#domtokenlist
No new tests, this change is not observable from the Web.
* html/DOMTokenList.h:
(WebCore::DOMTokenList::toString): Deleted.
* html/DOMTokenList.idl:
* html/HTMLLinkElement.cpp:
(WebCore::HTMLLinkElement::iconSizes): Deleted.
* html/HTMLLinkElement.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@204970
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dbates@webkit.org [Thu, 25 Aug 2016 16:54:44 +0000 (16:54 +0000)]
Fix test failure on GTK Linux bots after <trac.webkit.org/changeset/204695>
(https://bugs.webkit.org/show_bug.cgi?id=148437)
Remove use of module File::Slurp as it is not part of the standard Perl 5 distribution
and is not installed on the GTK Linux bots.
* Scripts/webkitperl/prepare-ChangeLog_unittest/generateFunctionLists.pl:
(writeFileWithContent): Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@204969
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ryanhaddad@apple.com [Thu, 25 Aug 2016 16:42:16 +0000 (16:42 +0000)]
Rebaseline js/dom/global-constructors-attributes.html for mac-wk1 after r204935
Unreviewed test gardening.
* platform/mac-wk1/js/dom/global-constructors-attributes-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@204968
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ryanhaddad@apple.com [Thu, 25 Aug 2016 16:18:56 +0000 (16:18 +0000)]
Skip svg/animations/animate-text-nested-transforms.html on ios-simulator
Unreviewed test gardening.
* platform/ios-simulator-wk2/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@204967
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
pvollan@apple.com [Thu, 25 Aug 2016 16:18:23 +0000 (16:18 +0000)]
[Win] run-api-tests is failing.
https://bugs.webkit.org/show_bug.cgi?id=161140
Reviewed by Brent Fulgham.
Since the move constructor is called 3 more times on Windows, we will have 3 more destructor calls.
* TestWebKitAPI/Tests/WTF/CrossThreadTask.cpp:
(TestWebKitAPI::TEST):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@204966
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ryanhaddad@apple.com [Thu, 25 Aug 2016 16:00:40 +0000 (16:00 +0000)]
Marking imported/w3c/web-platform-tests/url/url-setters.html as failing on mac and ios-simulator wk1.
https://bugs.webkit.org/show_bug.cgi?id=161191
Unreviewed test gardening.
* platform/ios-simulator-wk1/TestExpectations:
* platform/mac-wk1/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@204965
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ossy@webkit.org [Thu, 25 Aug 2016 15:58:06 +0000 (15:58 +0000)]
[Mac][cmake] Unreviewed speculative buildfix after r204852, just for fun.
* PlatformMac.cmake:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@204964
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ryanhaddad@apple.com [Thu, 25 Aug 2016 15:46:55 +0000 (15:46 +0000)]
Rebaseline js/dom/global-constructors-attributes.html for mac after r204935
Unreviewed test gardening.
* platform/mac-yosemite/js/dom/global-constructors-attributes-expected.txt:
* platform/mac/js/dom/global-constructors-attributes-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@204963
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ryanhaddad@apple.com [Thu, 25 Aug 2016 15:42:26 +0000 (15:42 +0000)]
Marking gamepad/gamepad-timestamp.html as flaky on mac-wk2.
https://bugs.webkit.org/show_bug.cgi?id=161148
Unreviewed test gardening.
* platform/mac-wk2/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@204962
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
carlosgc@webkit.org [Thu, 25 Aug 2016 15:39:09 +0000 (15:39 +0000)]
[GTK][Threaded Compositor] Several flaky tests due to differences in scrollbars
https://bugs.webkit.org/show_bug.cgi?id=160450
Reviewed by Michael Catanzaro.
The issue is that ThreadedCompositor::didChangeVisibleRect() dispatches the setVisibleContentsRect() call that
ends up in CompositingCoordinator. Since we're compositing the scrollbars as well, this visible contents rect
needs to encompass the complete width of the view, but that's not happening.
In case of non-overlay scrollbars, the scrollbars are clipped from this rect, but that doesn't prevent the
scrollbar overlay layers to be flushed and rendered. What does happen is that during tile creation in the
backing store the tiles that would normally intersect the visible rect of the view (if it were spanning over the
whole actual visible area) are sorted by distance to the visible rect.
The top of the two tiles used for the scrollbar is closer to the visible rect, so that gets created and filled
in first. The second tile is stored as pending for creation, and does get rendered at the point of the next
layer flush.
* WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.cpp:
(WebKit::ThreadedCoordinatedLayerTreeHost::setVisibleContentsRect): Update the visible rect taking into account
the non-overlay scrollbars before passing it to the compositor.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@204961
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
pvollan@apple.com [Thu, 25 Aug 2016 09:53:58 +0000 (09:53 +0000)]
Unreviewed test gardening.
Update test expectations on Windows for failing tests. These failures are tracked in
https://bugs.webkit.org/show_bug.cgi?id=160447.
* platform/win/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@204960
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
pvollan@apple.com [Thu, 25 Aug 2016 07:45:43 +0000 (07:45 +0000)]
Unreviewed test gardening.
Update test expectations on Windows for failing tests. These failures are tracked in
https://bugs.webkit.org/show_bug.cgi?id=160447.
* platform/win/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@204959
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Thu, 25 Aug 2016 07:04:00 +0000 (07:04 +0000)]
NewRegexp should not prevent inlining
https://bugs.webkit.org/show_bug.cgi?id=154808
Patch by Caio Lima <ticaiolima@gmail.com> on 2016-08-25
Reviewed by Geoffrey Garen.
JSTests:
Added test where functions with NewRegExp can be inlined right now.
* stress/new-regex-inline.js: Added.
(assert):
(testRegexpInline):
(toInlineGlobal):
(withRegexp):
(inlineRegexpNotGlobal):
(toInlineRecursive):
(regexpContainsRecursive):
Source/JavaScriptCore:
In this patch we are changing the current mechanism used to represent
RegExp in NewRegexp nodes. We are changing the use of a index
pointing to RegExp in
CodeBlock->m_unlinkedCodeBlock->m_rareData->m_regexps as the operand of
NewRegexp node to RegExp address as the operand. To make sure that RegExp* is
pointing to a valid object, we are using m_graph.freezeStrong
mechanism.
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::parseBlock):
* dfg/DFGCapabilities.cpp:
(JSC::DFG::capabilityLevel):
* dfg/DFGNode.h:
(JSC::DFG::Node::hasCellOperand):
(JSC::DFG::Node::hasRegexpIndex): Deleted.
(JSC::DFG::Node::regexpIndex): Deleted.
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGStrengthReductionPhase.cpp:
(JSC::DFG::StrengthReductionPhase::handleNode):
* ftl/FTLLowerDFGToB3.cpp:
(JSC::FTL::DFG::LowerDFGToB3::compileNewRegexp):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@204958
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
pvollan@apple.com [Thu, 25 Aug 2016 06:51:04 +0000 (06:51 +0000)]
[Win] run-api-tests is failing.
https://bugs.webkit.org/show_bug.cgi?id=161140
Reviewed by Brent Fulgham.
The number of times the move constructor is called is different on Windows in this test. This seems
to be caused by differences in MSVC's implementation of lambdas or std functions like std::make_tuple.
* TestWebKitAPI/Tests/WTF/CrossThreadTask.cpp:
(TestWebKitAPI::TEST):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@204957
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fred.wang@free.fr [Thu, 25 Aug 2016 06:31:58 +0000 (06:31 +0000)]
Do not store layout parameters on the RenderMathMLRoot class
https://bugs.webkit.org/show_bug.cgi?id=161132
Patch by Frederic Wang <fwang@igalia.com> on 2016-08-24
Reviewed by Darin Adler.
Storing layout parameters on the RenderMathMLRoot class is not really needed since reading
the parameters from the MATH table is not too expensive and updateStyle() is currently always
called in layoutBlock() and computePreferredLogicalWidths(). Most of these parameters are
actually only used in layoutBlock(). We separate horizontal and vertical parameters since
the latter are not needed for preferred width calculations. This removes the need for calling
an updateStyle functions and may also fix update issues when zooming in or out.
No new tests, already covered by existing tests.
* rendering/mathml/MathMLStyle.cpp:
(WebCore::MathMLStyle::updateStyleIfNeeded): No need to update layout parameters for the
RenderMathMLRoot class.
* rendering/mathml/RenderMathMLRoot.cpp:
(WebCore::RenderMathMLRoot::styleDidChange): No need to update layout parameters.
(WebCore::RenderMathMLRoot::horizontalParameters): Move code from updateStyle to retrieve the
horizontal parameters.
(WebCore::RenderMathMLRoot::verticalParameters): Ditto for vertical parameters.
(WebCore::RenderMathMLRoot::computePreferredLogicalWidths): Call horizontalParameters() to
get the kernings of the index instead of calling updateStyle().
(WebCore::RenderMathMLRoot::layoutBlock): Call horizontalParameters() and
verticalParameters() to get the layout parameters instead of calling updateStyle().
(WebCore::RenderMathMLRoot::paint): Call horizontalParameters() and verticalParameters()
to get the layout parameters.
(WebCore::RenderMathMLRoot::updateFromElement): Deleted. No need to call updateStyle().
(WebCore::RenderMathMLRoot::updateStyle): Deleted.
* rendering/mathml/RenderMathMLRoot.h: Do not override updateFromElement(). Replace some
layout parameters stored on the class with struct and helper functions to manipulate them.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@204956
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Thu, 25 Aug 2016 06:25:04 +0000 (06:25 +0000)]
Fix iOS DRT build.
* DumpRenderTree/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::zoomToScale):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@204955
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cdumez@apple.com [Thu, 25 Aug 2016 06:07:44 +0000 (06:07 +0000)]
WorkerLocation.prototype.toString() should be enumerable
https://bugs.webkit.org/show_bug.cgi?id=161183
Reviewed by Ryosuke Niwa.
Source/WebCore:
WorkerLocation.prototype.toString() should be enumerable:
- https://html.spec.whatwg.org/#workerlocation
- http://heycam.github.io/webidl/#es-stringifier
No new tests, updated existing test.
* workers/WorkerLocation.h:
(WebCore::WorkerLocation::toString): Deleted.
* workers/WorkerLocation.idl:
Also use USVString string type instead of DOMString to match the
specification. There is no behavior change because those attributes
are readonly.
LayoutTests:
Add layout test coverage.
* fast/workers/resources/worker-location.js:
* fast/workers/worker-location-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@204954
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cdumez@apple.com [Thu, 25 Aug 2016 03:06:50 +0000 (03:06 +0000)]
Location.toString() should be enumerable
https://bugs.webkit.org/show_bug.cgi?id=161179
Reviewed by Geoffrey Garen.
Source/WebCore:
Location.toString() should be enumerable as per:
- https://html.spec.whatwg.org/#location
- http://heycam.github.io/webidl/#es-stringifier
This patch stops hard-coding the toString() operation on the Location
interface and makes the 'href' attribute a stringifier attribute instead,
as per the specification. The generated toString() has the same behavior
as it used to but it is now enumerable, as it should.
No new tests, updated existing test.
* bindings/js/JSLocationCustom.cpp:
(WebCore::JSLocation::toStringFunction): Deleted.
* page/Location.idl:
LayoutTests:
Update existing tests and add layout test coverage.
* fast/dom/Window/window-appendages-cleared-expected.txt:
* fast/dom/toString_attributes-expected.txt:
* fast/dom/toString_attributes.html:
* js/dom/toString-dontEnum-expected.txt:
* js/dom/toString-dontEnum.html:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@204953
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Thu, 25 Aug 2016 02:40:55 +0000 (02:40 +0000)]
Implement `CSS.escape` as per CSSOM
https://bugs.webkit.org/show_bug.cgi?id=126337
Patch by Joseph Pecoraro <pecoraro@apple.com> on 2016-08-24
Reviewed by Dean Jackson.
Source/WebCore:
Test: css3/escape-dom-api.html
* css/CSSOMUtils.cpp:
(WebCore::serializeIdentifier):
Update serialization to match the latest version of the spec:
<https://drafts.csswg.org/cssom/#serialize-an-identifier>
New handling for 0x0, 0x7f, just "-", and "--" is now allowed.
* css/DOMCSSNamespace.cpp:
(WebCore::DOMCSSNamespace::escape):
* css/DOMCSSNamespace.h:
* css/DOMCSSNamespace.idl:
New CSS.escape method.
LayoutTests:
CSS.escape is part of the CSSOM Spec:
https://drafts.csswg.org/cssom/#the-css.escape%28%29-method
Tests:
https://github.com/mathiasbynens/CSS.escape/blob/master/tests/tests.js
Change is based on the Blink change (patch by <rob.buis@samsung.com>) and follow-ups:
<https://chromium.googlesource.com/chromium/blink/+/
c1a5ffdc924b089e70cd33ad2726b58cc8312abe>
* css3/escape-dom-api-expected.txt: Added.
* css3/escape-dom-api.html: Added.
New tests, taken from the polyfill.
* fast/css/parsing-css-nonascii-expected.txt:
* fast/css/parsing-css-nonascii.html:
* fast/css/selector-text-escape.html:
Update existing tests now that 0x7f is escaped.
* js/dom/function-removed-after-parsing-expected.txt:
* js/dom/function-removed-after-parsing.html:
Rename use of `CSS.escape` here now that `CSS.escape` exists.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@204952
268f45cc-cd09-0410-ab3c-
d52691b4dbfc