WebKit-https.git
6 years agoMarking imported/blink/fast/overflow/hidden-html-auto-body.html as flaky
commit-queue@webkit.org [Thu, 22 Oct 2015 02:49:05 +0000 (02:49 +0000)]
Marking imported/blink/fast/overflow/hidden-html-auto-body.html as flaky
https://bugs.webkit.org/show_bug.cgi?id=150419

Patch by Ryan Haddad <ryanhaddad@apple.com> on 2015-10-21
Reviewed by Alexey Proskuryakov.

* platform/mac-wk2/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191430 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[EFL][GTK][WK2] Fix build break since r191402, r191401
gyuyoung.kim@webkit.org [Thu, 22 Oct 2015 02:27:15 +0000 (02:27 +0000)]
[EFL][GTK][WK2] Fix build break since r191402, r191401
https://bugs.webkit.org/show_bug.cgi?id=150432

Unreviewed EFL and GTK build fix.

Source/WebCore:

* loader/EmptyClients.h:

Source/WebKit2:

* CMakeLists.txt:
* UIProcess/CoordinatedGraphics/WebView.cpp:
(WebKit::WebView::createContextMenuProxy):
* UIProcess/CoordinatedGraphics/WebView.h:
* UIProcess/efl/WebContextMenuProxyEfl.cpp:
(WebKit::WebContextMenuProxyEfl::show):
* UIProcess/efl/WebContextMenuProxyEfl.h:
(WebKit::WebContextMenuProxyEfl::create): Deleted.
* UIProcess/efl/WebViewEfl.cpp:
(WebKit::WebViewEfl::createContextMenuProxy):
* UIProcess/efl/WebViewEfl.h:
* WebProcess/WebCoreSupport/WebContextMenuClient.cpp:
(WebKit::WebContextMenuClient::customizeMenu):
* WebProcess/WebCoreSupport/WebContextMenuClient.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191429 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoBuild fix after r191422.
achristensen@apple.com [Thu, 22 Oct 2015 02:18:42 +0000 (02:18 +0000)]
Build fix after r191422.

* page/ContextMenuClient.h:
(WebCore::ContextMenuClient::~ContextMenuClient):
Completely remove customizeMenu.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191428 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoRemove unnecessary default quota setting in DatabaseContext::databaseExceededQuota
gyuyoung.kim@webkit.org [Thu, 22 Oct 2015 02:02:04 +0000 (02:02 +0000)]
Remove unnecessary default quota setting in DatabaseContext::databaseExceededQuota
https://bugs.webkit.org/show_bug.cgi?id=150356

Reviewed by Darin Adler.

All ports have supported DatabaseContext::databaseExceededQuota(). Thus we don't need to
keep a test code to extend database quota anymore.

* Modules/webdatabase/DatabaseContext.cpp:
(WebCore::DatabaseContext::databaseExceededQuota): Deleted.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191427 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[JSC] Remove FTL Native Inlining, it is dead code
benjamin@webkit.org [Thu, 22 Oct 2015 01:58:24 +0000 (01:58 +0000)]
[JSC] Remove FTL Native Inlining, it is dead code
https://bugs.webkit.org/show_bug.cgi?id=150429

Patch by Benjamin Poulain <bpoulain@apple.com> on 2015-10-21
Reviewed by Filip Pizlo.

The code is not used and it is in the way of other changes.

* ftl/FTLAbbreviations.h:
(JSC::FTL::getFirstInstruction): Deleted.
(JSC::FTL::getNextInstruction): Deleted.
(JSC::FTL::getFirstBasicBlock): Deleted.
(JSC::FTL::getNextBasicBlock): Deleted.
* ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::DFG::LowerDFGToLLVM::isInlinableSize): Deleted.
* runtime/Options.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191426 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[JSC] Remove two useless temporaries from the PutByOffset codegen
benjamin@webkit.org [Thu, 22 Oct 2015 01:57:26 +0000 (01:57 +0000)]
[JSC] Remove two useless temporaries from the PutByOffset codegen
https://bugs.webkit.org/show_bug.cgi?id=150421

Patch by Benjamin Poulain <bpoulain@apple.com> on 2015-10-21
Reviewed by Geoffrey Garen.

* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile): Deleted.
Looks like they were added by accident in r160796.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191425 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoFactor out the graph node worklists from DFG into WTF
fpizlo@apple.com [Thu, 22 Oct 2015 01:46:06 +0000 (01:46 +0000)]
Factor out the graph node worklists from DFG into WTF
https://bugs.webkit.org/show_bug.cgi?id=150411

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

Rewrite the DFGBlockWorklist.h file as a bunch of typedefs and aliases for things in
wtf/GraphNodeWorklist.h. Most users won't notice, except that some small things got
renamed. For example PreOrder becomes VisitOrder::Pre and item.block becomes item.node.

* CMakeLists.txt:
* JavaScriptCore.xcodeproj/project.pbxproj:
* dfg/DFGBlockWorklist.cpp: Removed.
* dfg/DFGBlockWorklist.h:
(JSC::DFG::BlockWorklist::notEmpty): Deleted.
(JSC::DFG::BlockWith::BlockWith): Deleted.
(JSC::DFG::BlockWith::operator bool): Deleted.
(JSC::DFG::ExtendedBlockWorklist::ExtendedBlockWorklist): Deleted.
(JSC::DFG::ExtendedBlockWorklist::forcePush): Deleted.
(JSC::DFG::ExtendedBlockWorklist::push): Deleted.
(JSC::DFG::ExtendedBlockWorklist::notEmpty): Deleted.
(JSC::DFG::ExtendedBlockWorklist::pop): Deleted.
(JSC::DFG::BlockWithOrder::BlockWithOrder): Deleted.
(JSC::DFG::BlockWithOrder::operator bool): Deleted.
(JSC::DFG::PostOrderBlockWorklist::push): Deleted.
(JSC::DFG::PostOrderBlockWorklist::notEmpty): Deleted.
* dfg/DFGDominators.cpp:
(JSC::DFG::Dominators::compute):
* dfg/DFGGraph.cpp:
(JSC::DFG::Graph::blocksInPostOrder):
* dfg/DFGPrePostNumbering.cpp:
(JSC::DFG::PrePostNumbering::compute):

Source/WTF:

The new GraphNodeWorklist.h file is basically just the functionality from the old
DFGBlockWorklist.h, but templatized to work for any graph node type and any kind of graph
node set.

* WTF.xcodeproj/project.pbxproj:
* wtf/CMakeLists.txt:
* wtf/GraphNodeWorklist.h: Added.
(WTF::GraphNodeWorklist::push):
(WTF::GraphNodeWorklist::notEmpty):
(WTF::GraphNodeWorklist::pop):
(WTF::GraphNodeWith::GraphNodeWith):
(WTF::GraphNodeWith::operator bool):
(WTF::ExtendedGraphNodeWorklist::ExtendedGraphNodeWorklist):
(WTF::ExtendedGraphNodeWorklist::forcePush):
(WTF::ExtendedGraphNodeWorklist::push):
(WTF::ExtendedGraphNodeWorklist::notEmpty):
(WTF::ExtendedGraphNodeWorklist::pop):
(WTF::GraphNodeWithOrder::GraphNodeWithOrder):
(WTF::GraphNodeWithOrder::operator bool):
(WTF::PostOrderGraphNodeWorklist::PostOrderGraphNodeWorklist):
(WTF::PostOrderGraphNodeWorklist::~PostOrderGraphNodeWorklist):
(WTF::PostOrderGraphNodeWorklist::pushPre):
(WTF::PostOrderGraphNodeWorklist::pushPost):
(WTF::PostOrderGraphNodeWorklist::push):
(WTF::PostOrderGraphNodeWorklist::notEmpty):
(WTF::PostOrderGraphNodeWorklist::pop):
* wtf/HashTable.h:
(WTF::HashTableAddResult::HashTableAddResult):
(WTF::HashTableAddResult::operator bool):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191424 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoUn-expose obsolete HTMLBaseFontElement
cdumez@apple.com [Thu, 22 Oct 2015 00:58:24 +0000 (00:58 +0000)]
Un-expose obsolete HTMLBaseFontElement
https://bugs.webkit.org/show_bug.cgi?id=150397

Reviewed by Anders Carlsson.

LayoutTests/imported/w3c:

Rebaseline a couple of W3C HTML tests now that more checks are passing.

* web-platform-tests/html/dom/interfaces-expected.txt:
* web-platform-tests/html/semantics/interfaces-expected.txt:

Source/WebCore:

Un-expose obsolete HTMLBaseFontElement:
- https://html.spec.whatwg.org/multipage/obsolete.html#non-conforming-features

This means that we no longer expose HTMLBaseFontElement on the global
Window object. Firefox and Chrome do not expose it either.

Also, document.createElement("basefont") now returns an HTMLUnknownElement
as per the specification. Firefox and Chrome return a generic HTMLElement
instead but I don't think this is a big compatibility risk.

No new tests, already covered by existing tests.

* html/HTMLBaseFontElement.cpp:
(WebCore::HTMLBaseFontElement::HTMLBaseFontElement):
* html/HTMLBaseFontElement.h:
* html/HTMLBaseFontElement.idl:
* html/HTMLTagNames.in:

LayoutTests:

Update existing layout tests to stop expecting HTMLBaseFontElement to
be exposed.

* dom/html/level2/html/HTMLBaseFontElement01-expected.txt: Removed.
* dom/html/level2/html/HTMLBaseFontElement01.html: Removed.
* dom/html/level2/html/HTMLBaseFontElement01.js: Removed.
* dom/html/level2/html/HTMLBaseFontElement02-expected.txt: Removed.
* dom/html/level2/html/HTMLBaseFontElement02.html: Removed.
* dom/html/level2/html/HTMLBaseFontElement02.js: Removed.
* dom/html/level2/html/HTMLBaseFontElement03-expected.txt: Removed.
* dom/html/level2/html/HTMLBaseFontElement03.html: Removed.
* dom/html/level2/html/HTMLBaseFontElement03.js: Removed.
* dom/html/level2/html/basefont01-expected.txt: Removed.
* dom/html/level2/html/basefont01.html: Removed.
* dom/html/level2/html/basefont01.js: Removed.
* dom/xhtml/level2/html/HTMLBaseFontElement01-expected.txt: Removed.
* dom/xhtml/level2/html/HTMLBaseFontElement01.js: Removed.
* dom/xhtml/level2/html/HTMLBaseFontElement01.xhtml: Removed.
* dom/xhtml/level2/html/HTMLBaseFontElement02-expected.txt: Removed.
* dom/xhtml/level2/html/HTMLBaseFontElement02.js: Removed.
* dom/xhtml/level2/html/HTMLBaseFontElement02.xhtml: Removed.
* dom/xhtml/level2/html/HTMLBaseFontElement03-expected.txt: Removed.
* dom/xhtml/level2/html/HTMLBaseFontElement03.js: Removed.
* dom/xhtml/level2/html/HTMLBaseFontElement03.xhtml: Removed.
* dom/xhtml/level2/html/basefont01-expected.txt: Removed.
* dom/xhtml/level2/html/basefont01.js: Removed.
* dom/xhtml/level2/html/basefont01.xhtml: Removed.
Drop Legacy W3C DOM level 2 basefont tests.

* fast/dom/Window/element-constructors-on-window-expected.txt:
* fast/dom/Window/element-constructors-on-window.html:
* fast/dom/Window/get-set-properties-expected.txt:
* fast/dom/Window/get-set-properties.html:
* fast/dom/Window/resources/window-properties.js:
* fast/dom/Window/window-lookup-precedence-expected.txt:
* fast/dom/dom-constructors-expected.txt:
* fast/dom/dom-constructors.html:
* fast/dom/element-attribute-js-null-expected.txt:
* fast/dom/element-attribute-js-null.html:
* fast/dom/html-attribute-types-expected.txt:
* fast/dom/html-attribute-types.html:
* fast/dom/wrapper-classes-expected.txt:
* fast/dom/wrapper-classes.html:
* js/dom/global-constructors-attributes-expected.txt:
* platform/efl/js/dom/global-constructors-attributes-expected.txt:
* platform/gtk/fast/dom/Window/window-lookup-precedence-expected.txt:
* platform/gtk/js/dom/global-constructors-attributes-expected.txt:
* platform/mac-mavericks/js/dom/global-constructors-attributes-expected.txt:
* platform/mac-yosemite/js/dom/global-constructors-attributes-expected.txt:
* platform/mac/fast/dom/Window/window-lookup-precedence-expected.txt:
* platform/mac/js/dom/global-constructors-attributes-expected.txt:
* platform/win/js/dom/global-constructors-attributes-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191423 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoGet rid of WebContextMenuClient::customizeMenu, it's no longer used
andersca@apple.com [Thu, 22 Oct 2015 00:50:27 +0000 (00:50 +0000)]
Get rid of WebContextMenuClient::customizeMenu, it's no longer used
https://bugs.webkit.org/show_bug.cgi?id=150427

Reviewed by Tim Horton.
Source/WebCore:

* loader/EmptyClients.cpp:
(WebCore::EmptyContextMenuClient::customizeMenu): Deleted.
* loader/EmptyClients.h:
* page/ContextMenuController.cpp:
(WebCore::ContextMenuController::showContextMenu):

Source/WebKit/win:

* WebCoreSupport/WebContextMenuClient.cpp:
(WebContextMenuClient::customizeMenu): Deleted.
* WebCoreSupport/WebContextMenuClient.h:

Source/WebKit2:

* WebProcess/WebCoreSupport/WebContextMenuClient.cpp:
(WebKit::WebContextMenuClient::customizeMenu): Deleted.
* WebProcess/WebCoreSupport/WebContextMenuClient.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191422 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoWeb Inspector: srcset attributes should have hyperlinks to the resources
commit-queue@webkit.org [Thu, 22 Oct 2015 00:50:25 +0000 (00:50 +0000)]
Web Inspector: srcset attributes should have hyperlinks to the resources
https://bugs.webkit.org/show_bug.cgi?id=150409

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2015-10-21
Reviewed by Timothy Hatcher.

The "srcset" attribute parsing is a simplification of:
https://html.spec.whatwg.org/multipage/embedded-content.html#attr-img-srcset

The "srcset" attribute value is expected to be in comma
separated groups. Within each group we always expect a link,
and an optional descriptor. We want to linkify the link.

* UserInterface/Views/CodeMirrorAdditions.js:
(tokenizeSrcSetString):
(extendedXMLToken):
When parsing srcset attribute, parse links as link tokens
so that they are linkified in resource content views.

* UserInterface/Views/DOMTreeElement.js:
(WebInspector.DOMTreeElement.prototype._buildAttributeDOM):
When creating the DOMTree DOM for srcset attributes,
create link elements for the link values of attribute value.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191421 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoRemove dead MHTML code
andersca@apple.com [Thu, 22 Oct 2015 00:46:20 +0000 (00:46 +0000)]
Remove dead MHTML code
https://bugs.webkit.org/show_bug.cgi?id=150426

Reviewed by Tim Horton.

* loader/archive/mhtml/MHTMLArchive.cpp:
(WebCore::MHTMLArchive::generateMHTMLData):
(WebCore::MHTMLArchive::generateMHTMLDataUsingBinaryEncoding): Deleted.
* loader/archive/mhtml/MHTMLArchive.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191420 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoWeb Inspector: Autocompletion previews in the CSS sidebar do not apply
commit-queue@webkit.org [Thu, 22 Oct 2015 00:31:23 +0000 (00:31 +0000)]
Web Inspector: Autocompletion previews in the CSS sidebar do not apply
https://bugs.webkit.org/show_bug.cgi?id=147720

Patch by Devin Rousso <dcrousso+webkit@gmail.com> on 2015-10-21
Reviewed by Timothy Hatcher.

When autocompletion hints are added to styles or the console, the history
object used by CodeMirror was edited to remove the last entry. Instead of
using this method (which caused glitchy behaviour when undo-ing), call
CodeMirror.undo() and adjust accordingly. In addition, a marker was being
used as the completion hint instead of applying text, whereas these
changes use actual text, ensuring that completions are previewed in the page.

* UserInterface/Controllers/CodeMirrorCompletionController.js:
(WebInspector.CodeMirrorCompletionController):
(WebInspector.CodeMirrorCompletionController.prototype.close):
(WebInspector.CodeMirrorCompletionController.prototype._applyCompletionHint.update):
(WebInspector.CodeMirrorCompletionController.prototype._commitCompletionHint.update):
(WebInspector.CodeMirrorCompletionController.prototype._removeCompletionHint.update):
(WebInspector.CodeMirrorCompletionController.prototype._removeCompletionHint):
(WebInspector.CodeMirrorCompletionController.prototype._handleBeforeChange):
(WebInspector.CodeMirrorCompletionController.prototype._createCompletionHintMarker): Deleted.
(WebInspector.CodeMirrorCompletionController.prototype._removeCompletionHint.clearMarker): Deleted.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191419 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoWeb Inspector: Add forgotten WebInspector.UIString from r190521
commit-queue@webkit.org [Thu, 22 Oct 2015 00:29:51 +0000 (00:29 +0000)]
Web Inspector: Add forgotten WebInspector.UIString from r190521
https://bugs.webkit.org/show_bug.cgi?id=150425

Patch by Devin Rousso <dcrousso+webkit@gmail.com> on 2015-10-21
Reviewed by Timothy Hatcher.

* Localizations/en.lproj/localizedStrings.js:
* UserInterface/Views/CSSStyleDeclarationTextEditor.js:
(UserInterface/Views/CSSStyleDeclarationTextEditor.prototype._createTextMarkerForPropertyIfNeeded)

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191418 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoWeb Inspector: Adjust usages of classList.toggle to ensure a true/false value instead...
commit-queue@webkit.org [Thu, 22 Oct 2015 00:26:29 +0000 (00:26 +0000)]
Web Inspector: Adjust usages of classList.toggle to ensure a true/false value instead of undefined
https://bugs.webkit.org/show_bug.cgi?id=150424

Patch by Devin Rousso <dcrousso+webkit@gmail.com> on 2015-10-21
Reviewed by Timothy Hatcher.

Adds "!!" in front of force parameters in classList.toggle calls that
could possibly be undefined (thereby breaking the UI).

* UserInterface/Views/ScopeBarItem.js:
(WebInspector.ScopeBarItem):
* UserInterface/Views/VisualStyleDetailsPanel.js:
(WebInspector.VisualStyleDetailsPanel.prototype._updateSections):
* UserInterface/Views/VisualStylePropertyEditor.js:
(WebInspector.VisualStylePropertyEditor):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191417 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoWeb Inspector: Option-Up doesn't increment certain attribute values
commit-queue@webkit.org [Thu, 22 Oct 2015 00:13:29 +0000 (00:13 +0000)]
Web Inspector: Option-Up doesn't increment certain attribute values
https://bugs.webkit.org/show_bug.cgi?id=149257

Patch by Devin Rousso <dcrousso+webkit@gmail.com> on 2015-10-21
Reviewed by Brian Burg.

If the user tries to modify a numerical attribute in HTML and the cursor
was at the beginning of the attribute value, the range of the selection
was within a sibling element instead of the text node containin the value.
This patch fixes this issue and ensures that the correct text is selected.

* UserInterface/Views/EditingSupport.js:
(WebInspector.startEditing.handleEditingResult):
Replaced var with let.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191416 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoAPI-ify the FindMatches client
timothy_horton@apple.com [Thu, 22 Oct 2015 00:07:27 +0000 (00:07 +0000)]
API-ify the FindMatches client
https://bugs.webkit.org/show_bug.cgi?id=150422

Reviewed by Anders Carlsson.

* UIProcess/API/APIFindMatchesClient.h: Renamed from Source/WebKit2/UIProcess/WebFindClient.h.
(API::FindMatchesClient::~FindMatchesClient):
(API::FindMatchesClient::didFindStringMatches):
(API::FindMatchesClient::didGetImageForMatchResult):
* UIProcess/API/C/WKPage.cpp:
(WKPageSetPageFindMatchesClient):
* UIProcess/WebFindClient.cpp: Removed.
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::setFindMatchesClient):
(WebKit::WebPageProxy::close):
(WebKit::WebPageProxy::didGetImageForFindMatch):
(WebKit::WebPageProxy::didFindStringMatches):
(WebKit::WebPageProxy::initializeFindMatchesClient): Deleted.
* UIProcess/WebPageProxy.h:
(WebKit::WebPageProxy::findMatchesClient):
* WebKit2.xcodeproj/project.pbxproj:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191415 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoWebProcess crashes when accessibility bundle is not found.
enrica@apple.com [Thu, 22 Oct 2015 00:02:01 +0000 (00:02 +0000)]
WebProcess crashes when accessibility bundle is not found.
https://bugs.webkit.org/show_bug.cgi?id=150414

Reviewed by Dan Bernstein.

The uninitialized pointer to NSError causes the print function to crash.

* WebProcess/cocoa/WebProcessCocoa.mm:
(WebKit::registerWithAccessibility):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191414 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoSimplify context menu handling on Windows
andersca@apple.com [Wed, 21 Oct 2015 23:54:32 +0000 (23:54 +0000)]
Simplify context menu handling on Windows
https://bugs.webkit.org/show_bug.cgi?id=150423

Reviewed by Tim Horton.

Instead of converting a ContextMenu to a HMENU, then back to a ContextMenu, and then back to a HMENU again
just convert it once right before showing it and let the UIDelegate return a new menu at at time where we don't
have to convert it back.

* WebCoreSupport/WebContextMenuClient.cpp:
(WebContextMenuClient::customizeMenu):
* WebView.cpp:
(WebView::createContextMenu):
(WebView::handleContextMenuEvent):
* WebView.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191413 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoMove services menu handling out into a separate function
andersca@apple.com [Wed, 21 Oct 2015 23:14:31 +0000 (23:14 +0000)]
Move services menu handling out into a separate function
https://bugs.webkit.org/show_bug.cgi?id=150420

Reviewed by Tim Horton.

* UIProcess/mac/WebContextMenuProxyMac.h:
* UIProcess/mac/WebContextMenuProxyMac.mm:
(WebKit::WebContextMenuProxyMac::showServicesMenu):
(WebKit::WebContextMenuProxyMac::show):
(WebKit::WebContextMenuProxyMac::showContextMenu):
(WebKit::WebContextMenuProxyMac::populate): Deleted.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191412 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agorun-webkit-tests does not copy all crash logs for layout test failures on Mac
commit-queue@webkit.org [Wed, 21 Oct 2015 23:05:53 +0000 (23:05 +0000)]
run-webkit-tests does not copy all crash logs for layout test failures on Mac
https://bugs.webkit.org/show_bug.cgi?id=150407
<rdar://problem/22239750>

Patch by Aakash Jain <aakash_jain@apple.com> on 2015-10-21
Reviewed by Alexey Proskuryakov.

* Scripts/webkitpy/port/mac.py:
(MacPort._merge_crash_logs): Merge unique crash logs from two dictionaries.
(MacPort._look_for_all_crash_logs_in_log_dir): Get the crash logs from
the log directory.
(MacPort.look_for_new_crash_logs): Uses above method to get crash logs
from log directory and merge them with the list of already crashed tests.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191410 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoSingle tapping clickable elements in unscalable pages should show a tap highlight
wenson_hsieh@apple.com [Wed, 21 Oct 2015 22:30:59 +0000 (22:30 +0000)]
Single tapping clickable elements in unscalable pages should show a tap highlight
https://bugs.webkit.org/show_bug.cgi?id=150382

Reviewed by Simon Fraser.

When the double tap gesture recognizer is disabled ahead of time (as in the case of unscalable pages) the tap is
committed before the geometries come in. To fix this, we introduce a flag that allows the single tap to be
committed before the tap highlight arrives. This allows the tap highlight to be immediately animated when receiving
the tap highlight geometries only in the case where double tapping is disabled when recognizing the single tap.

* UIProcess/ios/WKContentViewInteraction.h:
* UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView setupInteraction]):
(-[WKContentView cleanupInteraction]):
(-[WKContentView _didGetTapHighlightForRequest:color:quads:topLeftRadius:topRightRadius:bottomLeftRadius:bottomRightRadius:]):
(-[WKContentView _singleTapRecognized:]):
(-[WKContentView _singleTapCommited:]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191409 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoGet rid of useBinaryEncoding from WKPageGetContentsAsMHTMLData
andersca@apple.com [Wed, 21 Oct 2015 22:30:01 +0000 (22:30 +0000)]
Get rid of useBinaryEncoding from WKPageGetContentsAsMHTMLData
https://bugs.webkit.org/show_bug.cgi?id=150417

Reviewed by Tim Horton.

The useBinaryEncoding parameter is always false, so just get rid of it.

* UIProcess/API/C/WKPage.cpp:
(WKPageGetContentsAsMHTMLData):
* UIProcess/API/C/WKPage.h:
* UIProcess/API/efl/ewk_view.cpp:
(ewk_view_page_contents_get):
* UIProcess/API/gtk/WebKitWebView.cpp:
(webkit_web_view_save):
(webkit_web_view_save_to_file):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::getContentsAsMHTMLData):
* UIProcess/WebPageProxy.h:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::getContentsAsMHTMLData):
* WebProcess/WebPage/WebPage.h:
* WebProcess/WebPage/WebPage.messages.in:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191408 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoWebContextMenuProxyMac::setupServicesMenu doesn't need to take a context parameter
andersca@apple.com [Wed, 21 Oct 2015 22:17:03 +0000 (22:17 +0000)]
WebContextMenuProxyMac::setupServicesMenu doesn't need to take a context parameter
https://bugs.webkit.org/show_bug.cgi?id=150418

Reviewed by Tim Horton.

* UIProcess/mac/WebContextMenuProxyMac.h:
* UIProcess/mac/WebContextMenuProxyMac.mm:
(WebKit::WebContextMenuProxyMac::setupServicesMenu):
(WebKit::WebContextMenuProxyMac::populate):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191407 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[INTL] Implement Intl.Collator.prototype.resolvedOptions ()
sukolsak@gmail.com [Wed, 21 Oct 2015 22:14:38 +0000 (22:14 +0000)]
[INTL] Implement Intl.Collator.prototype.resolvedOptions ()
https://bugs.webkit.org/show_bug.cgi?id=147601

Reviewed by Benjamin Poulain.

Source/JavaScriptCore:

This patch implements Intl.Collator.prototype.resolvedOptions() according
to the ECMAScript 2015 Internationalization API spec (ECMA-402 2nd edition.)
It also implements the abstract operations InitializeCollator, ResolveLocale,
LookupMatcher, and BestFitMatcher.

* runtime/CommonIdentifiers.h:
* runtime/IntlCollator.h:
(JSC::IntlCollator::usage):
(JSC::IntlCollator::setUsage):
(JSC::IntlCollator::locale):
(JSC::IntlCollator::setLocale):
(JSC::IntlCollator::collation):
(JSC::IntlCollator::setCollation):
(JSC::IntlCollator::numeric):
(JSC::IntlCollator::setNumeric):
(JSC::IntlCollator::sensitivity):
(JSC::IntlCollator::setSensitivity):
(JSC::IntlCollator::ignorePunctuation):
(JSC::IntlCollator::setIgnorePunctuation):
* runtime/IntlCollatorConstructor.cpp:
(JSC::sortLocaleData):
(JSC::searchLocaleData):
(JSC::initializeCollator):
(JSC::constructIntlCollator):
(JSC::callIntlCollator):
* runtime/IntlCollatorPrototype.cpp:
(JSC::IntlCollatorPrototypeFuncResolvedOptions):
* runtime/IntlObject.cpp:
(JSC::defaultLocale):
(JSC::getIntlBooleanOption):
(JSC::getIntlStringOption):
(JSC::removeUnicodeLocaleExtension):
(JSC::lookupMatcher):
(JSC::bestFitMatcher):
(JSC::resolveLocale):
(JSC::lookupSupportedLocales):
* runtime/IntlObject.h:

LayoutTests:

* js/intl-collator-expected.txt:
* js/script-tests/intl-collator.js:
(testCollator):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191406 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoC calls in PolymorphicAccess shouldn't assume that the top of the stack looks like...
sbarati@apple.com [Wed, 21 Oct 2015 21:49:08 +0000 (21:49 +0000)]
C calls in PolymorphicAccess shouldn't assume that the top of the stack looks like a JSC JIT frame and enable *ByIdFlush in FTL
https://bugs.webkit.org/show_bug.cgi?id=125711

Reviewed by Filip Pizlo.

This patch ensures that anytime we need to make a C call inside
PolymorphicAccess, we ensure there is enough space on the stack to do so.

This patch also enables GetByIdFlush/PutByIdFlush inside the FTL.
Because PolymorphicAccess now spills the necessary registers
before making a JS/C call, any registers that LLVM report as
being in use for the patchpoint will be spilled before making
a call by PolymorphicAccess.

* bytecode/PolymorphicAccess.cpp:
(JSC::AccessGenerationState::restoreScratch):
(JSC::AccessGenerationState::succeed):
(JSC::AccessGenerationState::calculateLiveRegistersForCallAndExceptionHandling):
(JSC::AccessCase::generate):
(JSC::PolymorphicAccess::regenerate):
* ftl/FTLCapabilities.cpp:
(JSC::FTL::canCompile):
* ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::DFG::LowerDFGToLLVM::compileNode):
(JSC::FTL::DFG::LowerDFGToLLVM::compileGetById):
(JSC::FTL::DFG::LowerDFGToLLVM::emitStoreBarrier):
* jit/AssemblyHelpers.h:
(JSC::AssemblyHelpers::emitTypeOf):
(JSC::AssemblyHelpers::makeSpaceOnStackForCCall):
(JSC::AssemblyHelpers::reclaimSpaceOnStackForCCall):
* jit/RegisterSet.cpp:
(JSC::RegisterSet::webAssemblyCalleeSaveRegisters):
(JSC::RegisterSet::registersToNotSaveForJSCall):
(JSC::RegisterSet::registersToNotSaveForCCall):
(JSC::RegisterSet::allGPRs):
(JSC::RegisterSet::registersToNotSaveForCall): Deleted.
* jit/RegisterSet.h:
(JSC::RegisterSet::set):
* jit/ScratchRegisterAllocator.cpp:
(JSC::ScratchRegisterAllocator::allocateScratchGPR):
(JSC::ScratchRegisterAllocator::allocateScratchFPR):
(JSC::ScratchRegisterAllocator::preserveReusedRegistersByPushing):
(JSC::ScratchRegisterAllocator::restoreReusedRegistersByPopping):
These methods now take an extra parameter indicating if they
should create space for a C call at the top of the stack if
there are any reused registers to spill.

(JSC::ScratchRegisterAllocator::usedRegistersForCall):
* jit/ScratchRegisterAllocator.h:
(JSC::ScratchRegisterAllocator::usedRegisters):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191404 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoNull dereference loading Blink layout test svg/filters/display-none-filter-primitive...
dino@apple.com [Wed, 21 Oct 2015 21:45:26 +0000 (21:45 +0000)]
Null dereference loading Blink layout test svg/filters/display-none-filter-primitive.html
https://bugs.webkit.org/show_bug.cgi?id=150212
<rdar://problem/23137376>

Reviewed by Brent Fulgham.

Source/WebCore:

Handle the case where a filter element doesn't have a renderer. Inspired by the Blink
commit:
https://chromium.googlesource.com/chromium/src.git/+/fb79f7fc46552d45127acd2959a23662ad8f271e

Test: svg/filters/display-none-filter-primitive.html

* rendering/svg/RenderSVGResourceFilter.cpp:
(WebCore::RenderSVGResourceFilter::buildPrimitives):
* svg/graphics/filters/SVGFilterBuilder.cpp:
(WebCore::SVGFilterBuilder::appendEffectToEffectReferences):

LayoutTests:

* svg/filters/display-none-filter-primitive-expected.txt: Added.
* svg/filters/display-none-filter-primitive.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191403 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoWebContextMenuProxy doesn't have to be ref-counted
andersca@apple.com [Wed, 21 Oct 2015 21:26:41 +0000 (21:26 +0000)]
WebContextMenuProxy doesn't have to be ref-counted
https://bugs.webkit.org/show_bug.cgi?id=150415

Reviewed by Tim Horton.

Change WebContextMenuProxy to not inherit from RefCounted. Instead of using RefPtr, use std::unique_ptr.
Get rid of cancelTracking and hideContextMenu and dismiss the menu whenever the menu proxy is destroyed.
Also, rename showContextMenu to show.

* UIProcess/PageClient.h:
* UIProcess/WebContextMenuProxy.h:
(WebKit::WebContextMenuProxy::cancelTracking): Deleted.
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::close):
(WebKit::WebPageProxy::internalShowContextMenu):
* UIProcess/WebPageProxy.h:
* UIProcess/ios/PageClientImplIOS.h:
* UIProcess/ios/PageClientImplIOS.mm:
(WebKit::PageClientImpl::createContextMenuProxy):
* UIProcess/mac/PageClientImpl.h:
* UIProcess/mac/PageClientImpl.mm:
(WebKit::PageClientImpl::createContextMenuProxy):
* UIProcess/mac/WebContextMenuProxyMac.h:
(WebKit::WebContextMenuProxyMac::create): Deleted.
* UIProcess/mac/WebContextMenuProxyMac.mm:
(WebKit::WebContextMenuProxyMac::~WebContextMenuProxyMac):
(WebKit::WebContextMenuProxyMac::show):
(WebKit::WebContextMenuProxyMac::showContextMenu): Deleted.
(WebKit::WebContextMenuProxyMac::hideContextMenu): Deleted.
(WebKit::WebContextMenuProxyMac::cancelTracking): Deleted.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191402 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoStop using a popup menu button cell(!) for context menus
andersca@apple.com [Wed, 21 Oct 2015 21:04:43 +0000 (21:04 +0000)]
Stop using a popup menu button cell(!) for context menus
https://bugs.webkit.org/show_bug.cgi?id=150413

Reviewed by Tim Horton.

Just use a regular NSMenu. Also, have the service menu code path store the service menu
in the same member variable.

* UIProcess/mac/WebContextMenuProxyMac.h:
* UIProcess/mac/WebContextMenuProxyMac.mm:
(WebKit::WebContextMenuProxyMac::setupServicesMenu):
(WebKit::WebContextMenuProxyMac::clearServicesMenu):
(WebKit::WebContextMenuProxyMac::populate):
(WebKit::WebContextMenuProxyMac::showContextMenu):
(WebKit::WebContextMenuProxyMac::hideContextMenu):
(WebKit::WebContextMenuProxyMac::cancelTracking):
(WebKit::WebContextMenuProxyMac::~WebContextMenuProxyMac): Deleted.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191401 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoModern IDB: Add basic transaction aborting.
beidson@apple.com [Wed, 21 Oct 2015 20:22:31 +0000 (20:22 +0000)]
Modern IDB: Add basic transaction aborting.
https://bugs.webkit.org/show_bug.cgi?id=150148

Reviewed by Alex Christensen.

Source/WebCore:

Tests: storage/indexeddb/modern/double-abort.html
       storage/indexeddb/modern/versionchange-abort-then-reopen.html

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

* Modules/indexeddb/IndexedDB.h:

* Modules/indexeddb/client/IDBConnectionToServer.cpp:
(WebCore::IDBClient::IDBConnectionToServer::abortTransaction):
(WebCore::IDBClient::IDBConnectionToServer::didAbortTransaction):
* Modules/indexeddb/client/IDBConnectionToServer.h:
* Modules/indexeddb/client/IDBConnectionToServerDelegate.h:

* Modules/indexeddb/client/IDBDatabaseImpl.cpp:
(WebCore::IDBClient::IDBDatabase::abortTransaction):
(WebCore::IDBClient::IDBDatabase::didCommitOrAbortTransaction):
* Modules/indexeddb/client/IDBDatabaseImpl.h:

* Modules/indexeddb/client/IDBTransactionImpl.cpp:
(WebCore::IDBClient::IDBTransaction::IDBTransaction):
(WebCore::IDBClient::IDBTransaction::abort):
(WebCore::IDBClient::IDBTransaction::isFinishedOrFinishing):
(WebCore::IDBClient::IDBTransaction::activationTimerFired):
(WebCore::IDBClient::IDBTransaction::didAbort):
* Modules/indexeddb/client/IDBTransactionImpl.h:

* Modules/indexeddb/server/IDBBackingStore.h:

* Modules/indexeddb/server/IDBConnectionToClient.cpp:
(WebCore::IDBServer::IDBConnectionToClient::didAbortTransaction):
* Modules/indexeddb/server/IDBConnectionToClient.h:
* Modules/indexeddb/server/IDBConnectionToClientDelegate.h:

* Modules/indexeddb/server/IDBServer.cpp:
(WebCore::IDBServer::IDBServer::abortTransaction):
* Modules/indexeddb/server/IDBServer.h:

* Modules/indexeddb/server/MemoryBackingStoreTransaction.cpp:
(WebCore::IDBServer::MemoryBackingStoreTransaction::create):
(WebCore::IDBServer::MemoryBackingStoreTransaction::MemoryBackingStoreTransaction):
(WebCore::IDBServer::MemoryBackingStoreTransaction::~MemoryBackingStoreTransaction):
(WebCore::IDBServer::MemoryBackingStoreTransaction::abort):
(WebCore::IDBServer::MemoryBackingStoreTransaction::commit):
* Modules/indexeddb/server/MemoryBackingStoreTransaction.h:
(WebCore::IDBServer::MemoryBackingStoreTransaction::isVersionChange):

* Modules/indexeddb/server/MemoryIDBBackingStore.cpp:
(WebCore::IDBServer::MemoryIDBBackingStore::setDatabaseInfo):
(WebCore::IDBServer::MemoryIDBBackingStore::beginTransaction):
(WebCore::IDBServer::MemoryIDBBackingStore::abortTransaction):
(WebCore::IDBServer::MemoryIDBBackingStore::commitTransaction):
* Modules/indexeddb/server/MemoryIDBBackingStore.h:

* Modules/indexeddb/server/UniqueIDBDatabase.cpp:
(WebCore::IDBServer::UniqueIDBDatabase::startVersionChangeTransaction):
(WebCore::IDBServer::UniqueIDBDatabase::beginTransactionInBackingStore):
(WebCore::IDBServer::UniqueIDBDatabase::commitTransaction):
(WebCore::IDBServer::UniqueIDBDatabase::performCommitTransaction):
(WebCore::IDBServer::UniqueIDBDatabase::didPerformCommitTransaction):
(WebCore::IDBServer::UniqueIDBDatabase::abortTransaction):
(WebCore::IDBServer::UniqueIDBDatabase::performAbortTransaction):
(WebCore::IDBServer::UniqueIDBDatabase::didPerformAbortTransaction):
* Modules/indexeddb/server/UniqueIDBDatabase.h:

* Modules/indexeddb/server/UniqueIDBDatabaseConnection.cpp:
(WebCore::IDBServer::UniqueIDBDatabaseConnection::didAbortTransaction):
* Modules/indexeddb/server/UniqueIDBDatabaseConnection.h:

* Modules/indexeddb/server/UniqueIDBDatabaseTransaction.cpp:
(WebCore::IDBServer::UniqueIDBDatabaseTransaction::UniqueIDBDatabaseTransaction):
(WebCore::IDBServer::UniqueIDBDatabaseTransaction::originalDatabaseInfo):
(WebCore::IDBServer::UniqueIDBDatabaseTransaction::abort):
* Modules/indexeddb/server/UniqueIDBDatabaseTransaction.h:

* Modules/indexeddb/shared/IDBError.cpp:
(WebCore::idbErrorName):
(WebCore::idbErrorDescription):
* Modules/indexeddb/shared/IDBError.h:

* Modules/indexeddb/shared/InProcessIDBServer.cpp:
(WebCore::InProcessIDBServer::didAbortTransaction):
(WebCore::InProcessIDBServer::abortTransaction):
* Modules/indexeddb/shared/InProcessIDBServer.h:

LayoutTests:

* storage/indexeddb/modern/double-abort-expected.txt: Added.
* storage/indexeddb/modern/double-abort.html: Added.
* storage/indexeddb/modern/versionchange-abort-then-reopen-expected.txt: Added.
* storage/indexeddb/modern/versionchange-abort-then-reopen.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191400 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoWeb Inspector: Use some CSS Variables in Web Inspector
commit-queue@webkit.org [Wed, 21 Oct 2015 20:07:33 +0000 (20:07 +0000)]
Web Inspector: Use some CSS Variables in Web Inspector
https://bugs.webkit.org/show_bug.cgi?id=150405

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2015-10-21
Reviewed by Timothy Hatcher.

* UserInterface/Main.html:
Include the new variables stylesheet.

* UserInterface/Views/Variables.css: Added.
(:root):
Introduce new global variables.

* UserInterface/Views/CSSStyleDeclarationTextEditor.css:
(.css-style-text-editor > .CodeMirror .cm-link):
* UserInterface/Views/ConsoleMessageView.css:
(.console-message-preview-divider):
(.console-message-enclosed):
(.console-message .console-message-extra-parameters-container > li::before):
(.console-saved-variable):
* UserInterface/Views/DOMTreeOutline.css:
(.dom-tree-outline li.selected > span::after):
* UserInterface/Views/FormattedValue.css:
(:matches(.formatted-array, .formatted-map, .formatted-set, .formatted-weakmap, .formatted-weakset) > .size):
(.formatted-number):
(.formatted-boolean):
(.formatted-string):
(.formatted-regexp):
(.formatted-symbol):
* UserInterface/Views/ObjectPreviewView.css:
(.object-preview > .size):
* UserInterface/Views/ObjectTreeArrayIndexTreeElement.css:
(.object-tree-array-index .index-name):
* UserInterface/Views/SyntaxHighlightingDefaultTheme.css:
(.syntax-highlighted :matches(.css-keyword, .css-tag, .css-at-rule, .css-important, .javascript-keyword, .html-tag)):
(.syntax-highlighted :matches(.css-number, .javascript-number)):
(.syntax-highlighted :matches(.css-string, .javascript-string, .html-attribute-value)):
(.syntax-highlighted .javascript-regexp):
* UserInterface/Views/TypeTokenView.css:
(.type-token-symbol):
Make use of variables.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191399 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agobgsound should use HTMLUnknownElement interface
cdumez@apple.com [Wed, 21 Oct 2015 20:04:12 +0000 (20:04 +0000)]
bgsound should use HTMLUnknownElement interface
https://bugs.webkit.org/show_bug.cgi?id=148857
<rdar://problem/22589036>

Reviewed by Sam Weinig.

LayoutTests/imported/w3c:

Rebaseline a couple of W3C HTML tests now that more checks are passing.

* web-platform-tests/html/dom/interfaces-expected.txt:
* web-platform-tests/html/semantics/interfaces-expected.txt:

Source/WebCore:

The blink, bgsound, isindex, multicol, nextid, and spacer elements must
use the HTMLUnknownElement interface, as per the HTML specification:
https://html.spec.whatwg.org/multipage/obsolete.html#other-elements,-attributes-and-apis

WebKit was using HTMLUnknownElement for all of them except bgsound.
This patch fixes the issue and aligns our behavior with Chrome and
Firefox.

No new tests, already covered by existing tests.

* html/HTMLTagNames.in:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191398 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoWeb Inspector: Array previews with Symbol objects have too few preview values
commit-queue@webkit.org [Wed, 21 Oct 2015 19:56:50 +0000 (19:56 +0000)]
Web Inspector: Array previews with Symbol objects have too few preview values
https://bugs.webkit.org/show_bug.cgi?id=150404

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2015-10-21
Reviewed by Timothy Hatcher.

* inspector/InjectedScriptSource.js:
(InjectedScript.RemoteObject.prototype._appendPropertyPreviews):
We should be continuing inside this loop not returning.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191397 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoVersioning.
bshafiei@apple.com [Wed, 21 Oct 2015 18:53:17 +0000 (18:53 +0000)]
Versioning.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191396 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoFailures in PutStackSinkingPhase should be less severe
fpizlo@apple.com [Wed, 21 Oct 2015 18:45:48 +0000 (18:45 +0000)]
Failures in PutStackSinkingPhase should be less severe
https://bugs.webkit.org/show_bug.cgi?id=150400

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

Make the PutStackSinkingPhase abort instead of asserting. To test that it's OK to not have
PutStackSinkingPhase run, this adds a test mode where we run without PutStackSinkingPhase.

* dfg/DFGPlan.cpp: Make it possible to not run PutStackSinkingPhase for tests.
(JSC::DFG::Plan::compileInThreadImpl):
* dfg/DFGPutStackSinkingPhase.cpp: PutStackSinkingPhase should abort instead of asserting, except when validation is enabled.
* runtime/Options.h: Add an option for disabling PutStackSinkingPhase.

Tools:

Add a test mode for no PutStackSinkingPhase.

* Scripts/run-jsc-stress-tests:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191395 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoThe FTL should place the CallSiteIndex on the call frame for JS calls when it fills...
sbarati@apple.com [Wed, 21 Oct 2015 18:44:44 +0000 (18:44 +0000)]
The FTL should place the CallSiteIndex on the call frame for JS calls when it fills in the patchpoint
https://bugs.webkit.org/show_bug.cgi?id=150104

Reviewed by Filip Pizlo.

We lower JS Calls to patchpoints in LLVM. LLVM may decide to duplicate
these patchpoints (or remove them). We eagerly store the CallSiteIndex on the
call frame when lowering DFG to LLVM. But, because the patchpoint we lower to may
be duplicated, we really don't know the unique CallSiteIndex until we've
actually seen the resulting patchpoints after LLVM has completed its transformations.
To solve this, we now store the unique CallSiteIndex on the call frame header
when generating code to fill into the patchpoint.

* ftl/FTLCompile.cpp:
(JSC::FTL::mmAllocateDataSection):
* ftl/FTLJSCall.cpp:
(JSC::FTL::JSCall::JSCall):
(JSC::FTL::JSCall::emit):
* ftl/FTLJSCall.h:
(JSC::FTL::JSCall::stackmapID):
* ftl/FTLJSCallBase.cpp:
(JSC::FTL::JSCallBase::JSCallBase):
(JSC::FTL::JSCallBase::emit):
(JSC::FTL::JSCallBase::link):
* ftl/FTLJSCallBase.h:
* ftl/FTLJSCallVarargs.cpp:
(JSC::FTL::JSCallVarargs::JSCallVarargs):
(JSC::FTL::JSCallVarargs::numSpillSlotsNeeded):
(JSC::FTL::JSCallVarargs::emit):
* ftl/FTLJSCallVarargs.h:
(JSC::FTL::JSCallVarargs::node):
(JSC::FTL::JSCallVarargs::stackmapID):
* ftl/FTLJSTailCall.cpp:
(JSC::FTL::JSTailCall::JSTailCall):
(JSC::FTL::m_instructionOffset):
(JSC::FTL::JSTailCall::emit):
* ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::DFG::LowerDFGToLLVM::compileCallOrConstruct):
(JSC::FTL::DFG::LowerDFGToLLVM::compileCallOrConstructVarargs):
(JSC::FTL::DFG::LowerDFGToLLVM::callPreflight):
(JSC::FTL::DFG::LowerDFGToLLVM::codeOriginDescriptionOfCallSite):
(JSC::FTL::DFG::LowerDFGToLLVM::callCheck):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191394 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoDate creation should share a little code
ggaren@apple.com [Wed, 21 Oct 2015 18:42:06 +0000 (18:42 +0000)]
Date creation should share a little code
https://bugs.webkit.org/show_bug.cgi?id=150399

Reviewed by Filip Pizlo.

I want to fix a bug in this code, but I don't want to fix it in two
different places. (See https://bugs.webkit.org/show_bug.cgi?id=150386.)

* runtime/DateConstructor.cpp:
(JSC::DateConstructor::getOwnPropertySlot):
(JSC::milliseconds): Factored out a shared helper function. If you look
closely, you'll see that one copy of this code previously checked isfinite
while the other checked isnan. isnan returning nan was obviously a no-op,
so I removed it. isfinite, it turns out, is also a no-op -- but less
obviously so, so I kept it for now.

(JSC::constructDate):
(JSC::dateUTC): Use the helper function.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191393 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoSupport for the SVG `onend` attribute
commit-queue@webkit.org [Wed, 21 Oct 2015 18:29:39 +0000 (18:29 +0000)]
Support for the SVG `onend` attribute
https://bugs.webkit.org/show_bug.cgi?id=150393

Patch by Antoine Quint <graouts@apple.com> on 2015-10-21
Reviewed by Dean Jackson.

Source/WebCore:

Add support for the SVG `onend` attribute to SVG timing and animation elements, which allow the definition
of a JS event listener declaratively for the SVG `endEvent` event.

Tests: svg/animations/end-event-attribute-expected.svg
       svg/animations/end-event-attribute.svg
       svg/animations/end-event-syncbase-expected.svg
       svg/animations/end-event-syncbase.svg

* dom/EventNames.h:
* svg/animation/SVGSMILElement.cpp:
(WebCore::SVGSMILElement::parseAttribute):
* svg/svgattrs.in:

LayoutTests:

Create a new test for the `onend` attribute and rename the previously-named "end-event-declarative.svg" test to
"end-event-syncbase.svg" since the term "declarative" was a little loose.

* svg/animations/end-event-attribute-expected.svg: Copied from LayoutTests/svg/animations/end-event-declarative-expected.svg.
* svg/animations/end-event-attribute.svg: Copied from LayoutTests/svg/animations/end-event-declarative.svg.
* svg/animations/end-event-syncbase-expected.svg: Renamed from LayoutTests/svg/animations/end-event-declarative-expected.svg.
* svg/animations/end-event-syncbase.svg: Renamed from LayoutTests/svg/animations/end-event-declarative.svg.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191392 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoAX: Expose table size and cell indexes on iOS
n_wang@apple.com [Wed, 21 Oct 2015 17:46:40 +0000 (17:46 +0000)]
AX: Expose table size and cell indexes on iOS
https://bugs.webkit.org/show_bug.cgi?id=150366

Source/WebCore:

Add support to expose table row/column count and cell indexes on iOS.

Reviewed by Chris Fleizach.

Test: accessibility/aria-table-attributes.html

* accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
(-[WebAccessibilityObjectWrapper tableParent]):
(-[WebAccessibilityObjectWrapper accessibilityElementForRow:andColumn:]):
(-[WebAccessibilityObjectWrapper accessibilityRowCount]):
(-[WebAccessibilityObjectWrapper accessibilityColumnCount]):
(-[WebAccessibilityObjectWrapper accessibilityARIARowCount]):
(-[WebAccessibilityObjectWrapper accessibilityARIAColumnCount]):
(-[WebAccessibilityObjectWrapper accessibilityARIARowIndex]):
(-[WebAccessibilityObjectWrapper accessibilityARIAColumnIndex]):
(-[WebAccessibilityObjectWrapper accessibilityRowRange]):

Tools:

Reviewed by Chris Fleizach.

* DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
(AccessibilityUIElement::rowCount):
(AccessibilityUIElement::columnCount):
(AccessibilityUIElement::indexInTable):
(AccessibilityUIElement::numberAttributeValue):
* WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
(WTR::AccessibilityUIElement::numberAttributeValue):
(WTR::AccessibilityUIElement::rowCount):
(WTR::AccessibilityUIElement::columnCount):
(WTR::AccessibilityUIElement::indexInTable):

LayoutTests:

Reviewed by Chris Fleizach.

* accessibility/aria-table-attributes-expected.txt: Added.
* accessibility/aria-table-attributes.html: Added.
* accessibility/mac/aria-table-attributes-expected.txt: Removed.
* accessibility/mac/aria-table-attributes.html: Removed.
* platform/gtk/TestExpectations:
* platform/ios-simulator/TestExpectations:
* platform/win/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191391 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoAdd assertions to NetworkCache::Entry constructor to make sure a key's type is "resource"
cdumez@apple.com [Wed, 21 Oct 2015 17:12:35 +0000 (17:12 +0000)]
Add assertions to NetworkCache::Entry constructor to make sure a key's type is "resource"
https://bugs.webkit.org/show_bug.cgi?id=150369

Reviewed by Antti Koivisto.

Add assertions to NetworkCache::Entry constructor to make sure a key's
type is "resource" now that the NetworkCache storage supports other
types of entries.

* NetworkProcess/cache/NetworkCacheEntry.cpp:
(WebKit::NetworkCache::Entry::Entry):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191390 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agollint: align stack pointer on mips too
commit-queue@webkit.org [Wed, 21 Oct 2015 17:08:17 +0000 (17:08 +0000)]
llint: align stack pointer on mips too

[MIPS] LLInt: align stack pointer on MIPS too
https://bugs.webkit.org/show_bug.cgi?id=150380

Patch by Guillaume Emont <guijemont@igalia.com> on 2015-10-21
Reviewed by Michael Saboff.

* llint/LowLevelInterpreter32_64.asm:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191389 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoHTMLIFrameElement.sandbox should be a DOMSettableTokenList
cdumez@apple.com [Wed, 21 Oct 2015 17:00:18 +0000 (17:00 +0000)]
HTMLIFrameElement.sandbox should be a DOMSettableTokenList
https://bugs.webkit.org/show_bug.cgi?id=150377

Reviewed by Ryosuke Niwa.

Source/WebCore:

HTMLIFrameElement.sandbox should be a DOMSettableTokenList as per the
HTML specification:
- https://html.spec.whatwg.org/multipage/embedded-content.html#htmliframeelement

Chrome and Firefox match the specification but Safari/WebKit was uding
a DOMString.

Test: fast/frames/sandbox-attribute.html

* html/HTMLIFrameElement.cpp:
(WebCore::HTMLIFrameElement::sandbox):
(WebCore::HTMLIFrameElement::parseAttribute):
* html/HTMLIFrameElement.h:
* html/HTMLIFrameElement.idl:

LayoutTests:

* fast/frames/sandbox-attribute-expected.txt: Added.
* fast/frames/sandbox-attribute.html: Added.
Add layout test to check that HTMLIframeElement.sandbox is now a
DOMSettableTokenList.

* fast/frames/sandboxed-iframe-navigation-allowed-expected.txt:
* fast/frames/sandboxed-iframe-navigation-allowed.html:
Update test that was using shouldBe() with HTMLIframeElement.sandbox.
shouldBe() does an === check but which now fails before
HTMLIframeElement.sandbox is now a DOMSettableTokenList that can be
stringified, rather than a String.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191388 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoWeb Inspector: Typo in a property name: style.inerhited
nvasilyev@apple.com [Wed, 21 Oct 2015 13:36:55 +0000 (13:36 +0000)]
Web Inspector: Typo in a property name: style.inerhited
https://bugs.webkit.org/show_bug.cgi?id=150391

Reviewed by Csaba Osztrogon√°c.

* UserInterface/Views/RulesStyleDetailsPanel.js:
(WebInspector.RulesStyleDetailsPanel.prototype.refresh):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191387 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoASSERTION FAILED: markFontData in FontCascade::emphasisMarkHeight
commit-queue@webkit.org [Wed, 21 Oct 2015 12:52:17 +0000 (12:52 +0000)]
ASSERTION FAILED: markFontData in FontCascade::emphasisMarkHeight
https://bugs.webkit.org/show_bug.cgi?id=150171

Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2015-10-21
Reviewed by Myles C. Maxfield.

It happens with several tests like fast/ruby/text-emphasis.html in
the GTK Debug bot. The tests seem to pass in Release and the rendering
looks correct as well removing the assert. The thing is that
for some reason we can get an empty GlyphData from
FontCascade::getEmphasisMarkGlyphData() when it ends up falling
back to system (FontCascadeFonts::glyphDataForSystemFallback).

* platform/graphics/FontCascade.cpp:
(WebCore::FontCascade::getEmphasisMarkGlyphData): Return
Optional<GlyphData> instead of returning a boolean and an out
parameter. If we get an invalid GlyphData, Nullopt is
returned. Also use a SurrogatePairAwareTextIterator to handle
surrogate pairs.
(WebCore::FontCascade::emphasisMarkAscent):
(WebCore::FontCascade::emphasisMarkDescent):
(WebCore::FontCascade::emphasisMarkHeight):
(WebCore::FontCascade::drawEmphasisMarks):
* platform/graphics/FontCascade.h:
* platform/graphics/GlyphPage.h:
(WebCore::GlyphData::isValid): Return whether the GlyphData is valid.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191386 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoSource/WebCore:
svillar@igalia.com [Wed, 21 Oct 2015 11:47:16 +0000 (11:47 +0000)]
Source/WebCore:
[css-grid] Fix availableLogicalSpace computation with non-zero baseSize flex tracks
https://bugs.webkit.org/show_bug.cgi?id=150359

Reviewed by Zalan Bujtas.

The availableLogicalSpace computation was incorrect whenever
the flex tracks had a non-zero baseSize before the 1fr unit
size resolution. That happened because when assigning the new
baseSize to the flex track, we were unconditionally
subtracting the whole baseSize to the
availableLogicalSpace. That's correct if the track is a "pure"
flex track, i.e. 2fr, but if the track had a non-zero baseSize
(like minmax(10px, 1fr)) then both the new and the old base
sizes were incorrectly used to compute the
availableLogicalSpace.

We can test the amount of remaining freeSpace by using content
distribution to align and item place on a non-zero baseSize
flex track. The content distribution will be accurate if and
only if the availableLogicalSpace computation is correct.

Test: fast/css-grid-layout/flex-content-distribution.html

* rendering/RenderGrid.cpp:
(WebCore::RenderGrid::computeUsedBreadthOfGridTracks):

LayoutTests:
[css-grid] Fix freeSpace computation with non-zero baseSize flex tracks
https://bugs.webkit.org/show_bug.cgi?id=150359

Reviewed by Zalan Bujtas.

* fast/css-grid-layout/flex-content-distribution-expected.txt: Added.
* fast/css-grid-layout/flex-content-distribution.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191385 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoRemove commented lines in TestExpectations
youenn.fablet@crf.canon.fr [Wed, 21 Oct 2015 08:52:27 +0000 (08:52 +0000)]
Remove commented lines in TestExpectations
https://bugs.webkit.org/show_bug.cgi?id=150387

Unreviewed.

* TestExpectations: remove commented lines introduced in bug 150331 bug.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191384 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[Streams API] Construct a writable stream
calvaris@igalia.com [Wed, 21 Oct 2015 08:34:41 +0000 (08:34 +0000)]
[Streams API] Construct a writable stream
https://bugs.webkit.org/show_bug.cgi?id=150360

Reviewed by Darin Adler.

Source/WebCore:

This patch initializes a writable stream according to the spec. To do it we need two internal functions, which
are syncWritableStreamStateWithQueue and errorWritableStream, which are also implemented as a quite direct
translation from the spec.

Current test set suffices, expectations are updated accordingly.

* CMakeLists.txt:
* DerivedSources.make:
* WebCore.xcodeproj/project.pbxproj:
* bindings/js/JSDOMWindowBase.cpp:
* bindings/js/WebCoreBuiltinNames.h:
* bindings/js/WebCoreJSBuiltinInternals.h:
* bindings/js/WebCoreJSBuiltins.cpp:
* bindings/js/WebCoreJSBuiltins.h: Build infrastructure.
* Modules/streams/WritableStream.js:
(initializeWritableStream): Function that acts as constructor of WritableStream.
* Modules/streams/WritableStreamInternals.js:
(syncWritableStreamStateWithQueue):
(errorWritableStream): As per spec.

LayoutTests:

Expectations for the writable stream initialization.

* streams/reference-implementation/bad-strategies-expected.txt:
* streams/reference-implementation/bad-underlying-sinks-expected.txt:
* streams/reference-implementation/brand-checks-expected.txt:
* streams/reference-implementation/byte-length-queuing-strategy-expected.txt:
* streams/reference-implementation/count-queuing-strategy-expected.txt:
* streams/reference-implementation/pipe-through-expected.txt:
* streams/reference-implementation/pipe-to-expected.txt:
* streams/reference-implementation/pipe-to-options-expected.txt:
* streams/reference-implementation/readable-stream-templated-expected.txt:
* streams/reference-implementation/writable-stream-abort-expected.txt:
* streams/reference-implementation/writable-stream-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191383 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoUnreviewed gardening. Test expectation for use-typo-metrics-1 on Mac and Windows...
fred.wang@free.fr [Wed, 21 Oct 2015 08:18:29 +0000 (08:18 +0000)]
Unreviewed gardening. Test expectation for use-typo-metrics-1 on Mac and Windows should be "ImageOnlyFailure" not "Failure".

* platform/mac/TestExpectations:
* platform/win/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191382 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoNetworkProcess: DNS prefetch happens in the Web Process
carlosgc@webkit.org [Wed, 21 Oct 2015 08:08:48 +0000 (08:08 +0000)]
NetworkProcess: DNS prefetch happens in the Web Process
https://bugs.webkit.org/show_bug.cgi?id=147824

Reviewed by Chris Dumez.

Source/WebCore:

Use FrameLoaderClient to do the DNS prefetch.

* html/HTMLAnchorElement.cpp:
(WebCore::HTMLAnchorElement::parseAttribute):
* loader/EmptyClients.h:
* loader/FrameLoaderClient.h:
* loader/LinkLoader.cpp:
(WebCore::LinkLoader::loadLink):
* page/Chrome.cpp:
(WebCore::Chrome::mouseDidMoveOverElement):

Source/WebKit/mac:

Implement FrameLoaderClient::prefetchDNS().

* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:

Source/WebKit/win:

Implement FrameLoaderClient::prefetchDNS().

* WebCoreSupport/WebFrameLoaderClient.cpp:
(WebFrameLoaderClient::prefetchDNS):
* WebCoreSupport/WebFrameLoaderClient.h:

Source/WebKit2:

DNS prefetch requests started in the WebProcess should be sent to
the network process when it's enabled.

* NetworkProcess/NetworkConnectionToWebProcess.cpp:
(WebKit::NetworkConnectionToWebProcess::prefetchDNS): Use NetworkProcess::prefetchDNS().
* NetworkProcess/NetworkConnectionToWebProcess.h:
* NetworkProcess/NetworkConnectionToWebProcess.messages.in: Add
PrefetchDNS message.
* NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::prefetchDNS): Do the actual DNS prefetch.
* NetworkProcess/NetworkProcess.h:
* WebProcess/InjectedBundle/API/gtk/WebKitWebExtension.cpp:
(webkitWebExtensionDidReceiveMessage): Use WebProcess::prefetchDNS().
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::prefetchDNS): Use WebProcess::prefetchDNS().
* WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
* WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::sendTapHighlightForNodeIfNecessary): Use
FrameLoaderClient to do the DNS prefetch.
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::WebProcess): Initialize the DNS prefetched
hosts cleanup hysteresis activity. Clear the cache of DNS
prefetched when hysteresis activity stopped.
(WebKit::WebProcess::prefetchDNS): Send the request to the network
process if it's enabled, otherwise do the actual DNS prefetch.
* WebProcess/WebProcess.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191381 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoW3C test importer should not import reference files as regular tests
youenn.fablet@crf.canon.fr [Wed, 21 Oct 2015 07:53:37 +0000 (07:53 +0000)]
W3C test importer should not import reference files as regular tests
https://bugs.webkit.org/show_bug.cgi?id=150331

Reviewed by Darin Adler.

LayoutTests/imported/w3c:

* resources/ImportExpectations: Removed some Skip expectations as test importer no longer will handle these files as tests, but as reference files.

Tools:

Updated test_parser to return information that a file can be a referencefile or a manual test.
Updated test importer to skip those files.
Updated/Added test parser unit tests accordingly.

Updated test importer to import all not-test files, as they are usually used by tests and lead to test failing or timing out.
Updated test importer to log these 'resource' files that are not in a resources folder, and suggest to import script user
to mark these files as Skip, since they are not direct tests.

* Scripts/webkitpy/w3c/test_importer.py:
(TestImporter.__init__):
(TestImporter.find_importable_tests):
(TestImporter.import_tests):
* Scripts/webkitpy/w3c/test_parser.py:
(TestParser.analyze_test):
* Scripts/webkitpy/w3c/test_parser_unittest.py:
(test_analyze_non_html_file):
(test_reference_test):

LayoutTests:

* TestExpectations: Adding Skip expectations for web-platform-test resource files (currently commented out as not all are yet imported).

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191380 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoUpdate web-platform-tests tests to the same revision as tools
youenn.fablet@crf.canon.fr [Wed, 21 Oct 2015 07:44:33 +0000 (07:44 +0000)]
Update web-platform-tests tests to the same revision as tools
https://bugs.webkit.org/show_bug.cgi?id=149656

Reviewed by Darin Adler.

LayoutTests/imported/w3c:

Syncing tests with WPT repository.
Some files previously in resources folder are now in not-resources folder.
Updated TestExpectations to skip those files.
web-platform-tests/dom/nodes/resources should be removed for a later patch.

* web-platform-tests/common/failing-test.html: Removed.
* web-platform-tests/common/w3c-import.log:
* web-platform-tests/dom/collections/HTMLCollection-supported-property-names.html:
* web-platform-tests/dom/collections/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/image-maps/w3c-import.log.
* web-platform-tests/dom/events/w3c-import.log: Added.
* web-platform-tests/dom/historical-expected.txt:
* web-platform-tests/dom/historical.html:
* web-platform-tests/dom/interfaces-expected.txt:
* web-platform-tests/dom/interfaces.html:
* web-platform-tests/dom/lists/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/the-meter-element/w3c-import.log.
* web-platform-tests/dom/nodes/DOMImplementation-createDocument-expected.txt:
* web-platform-tests/dom/nodes/DOMImplementation-createDocument.html:
* web-platform-tests/dom/nodes/DOMImplementation-createHTMLDocument-expected.txt:
* web-platform-tests/dom/nodes/DOMImplementation-createHTMLDocument.html:
* web-platform-tests/dom/nodes/Document-adoptNode.html:
* web-platform-tests/dom/nodes/Document-characterSet-normalization-expected.txt:
* web-platform-tests/dom/nodes/Document-characterSet-normalization.html:
* web-platform-tests/dom/nodes/Document-constructor-expected.txt:
* web-platform-tests/dom/nodes/Document-constructor.html:
* web-platform-tests/dom/nodes/Document-contentType/contentType/w3c-import.log: Added.
* web-platform-tests/dom/nodes/Document-contentType/resources/w3c-import.log: Added.
* web-platform-tests/dom/nodes/Document-contentType/support/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/disabled-elements/w3c-import.log.
* web-platform-tests/dom/nodes/Document-createAttribute-expected.txt:
* web-platform-tests/dom/nodes/Document-createAttribute.html:
* web-platform-tests/dom/nodes/Document-createElement-namespace-expected.txt:
* web-platform-tests/dom/nodes/Document-createElement-namespace-tests/bare_mathml.html: Added.
* web-platform-tests/dom/nodes/Document-createElement-namespace-tests/bare_mathml.svg: Added.
* web-platform-tests/dom/nodes/Document-createElement-namespace-tests/bare_mathml.xhtml: Added.
* web-platform-tests/dom/nodes/Document-createElement-namespace-tests/bare_mathml.xml: Added.
* web-platform-tests/dom/nodes/Document-createElement-namespace-tests/bare_svg.html: Added.
* web-platform-tests/dom/nodes/Document-createElement-namespace-tests/bare_svg.svg: Added.
* web-platform-tests/dom/nodes/Document-createElement-namespace-tests/bare_svg.xhtml: Added.
* web-platform-tests/dom/nodes/Document-createElement-namespace-tests/bare_svg.xml: Added.
* web-platform-tests/dom/nodes/Document-createElement-namespace-tests/bare_xhtml.html: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/blank.htm.
* web-platform-tests/dom/nodes/Document-createElement-namespace-tests/bare_xhtml.svg: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/blank.htm.
* web-platform-tests/dom/nodes/Document-createElement-namespace-tests/bare_xhtml.xhtml: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/blank.htm.
* web-platform-tests/dom/nodes/Document-createElement-namespace-tests/bare_xhtml.xml: Renamed from LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/blank.htm.
* web-platform-tests/dom/nodes/Document-createElement-namespace-tests/empty.html: Added.
* web-platform-tests/dom/nodes/Document-createElement-namespace-tests/empty.svg: Added.
* web-platform-tests/dom/nodes/Document-createElement-namespace-tests/empty.xhtml: Added.
* web-platform-tests/dom/nodes/Document-createElement-namespace-tests/empty.xml: Added.
* web-platform-tests/dom/nodes/Document-createElement-namespace-tests/generate.py: Added.
(__main__):
* web-platform-tests/dom/nodes/Document-createElement-namespace-tests/mathml.html: Added.
* web-platform-tests/dom/nodes/Document-createElement-namespace-tests/mathml.svg: Added.
* web-platform-tests/dom/nodes/Document-createElement-namespace-tests/mathml.xhtml: Added.
* web-platform-tests/dom/nodes/Document-createElement-namespace-tests/mathml.xml: Added.
* web-platform-tests/dom/nodes/Document-createElement-namespace-tests/minimal_html.html: Added.
* web-platform-tests/dom/nodes/Document-createElement-namespace-tests/minimal_html.svg: Added.
* web-platform-tests/dom/nodes/Document-createElement-namespace-tests/minimal_html.xhtml: Added.
* web-platform-tests/dom/nodes/Document-createElement-namespace-tests/minimal_html.xml: Added.
* web-platform-tests/dom/nodes/Document-createElement-namespace-tests/svg.html: Added.
* web-platform-tests/dom/nodes/Document-createElement-namespace-tests/svg.svg: Added.
* web-platform-tests/dom/nodes/Document-createElement-namespace-tests/svg.xhtml: Added.
* web-platform-tests/dom/nodes/Document-createElement-namespace-tests/svg.xml: Added.
* web-platform-tests/dom/nodes/Document-createElement-namespace-tests/w3c-import.log: Added.
* web-platform-tests/dom/nodes/Document-createElement-namespace-tests/xhtml.html: Added.
* web-platform-tests/dom/nodes/Document-createElement-namespace-tests/xhtml.svg: Added.
* web-platform-tests/dom/nodes/Document-createElement-namespace-tests/xhtml.xhtml: Added.
* web-platform-tests/dom/nodes/Document-createElement-namespace-tests/xhtml.xml: Added.
* web-platform-tests/dom/nodes/Document-createElement-namespace-tests/xhtml_ns_changed.html: Added.
* web-platform-tests/dom/nodes/Document-createElement-namespace-tests/xhtml_ns_changed.svg: Added.
* web-platform-tests/dom/nodes/Document-createElement-namespace-tests/xhtml_ns_changed.xhtml: Added.
* web-platform-tests/dom/nodes/Document-createElement-namespace-tests/xhtml_ns_changed.xml: Added.
* web-platform-tests/dom/nodes/Document-createElement-namespace-tests/xhtml_ns_removed.html: Added.
* web-platform-tests/dom/nodes/Document-createElement-namespace-tests/xhtml_ns_removed.svg: Added.
* web-platform-tests/dom/nodes/Document-createElement-namespace-tests/xhtml_ns_removed.xhtml: Added.
* web-platform-tests/dom/nodes/Document-createElement-namespace-tests/xhtml_ns_removed.xml: Added.
* web-platform-tests/dom/nodes/Document-createElement-namespace.html:
* web-platform-tests/dom/nodes/Document-doctype.html:
* web-platform-tests/dom/nodes/Document-getElementById.html:
* web-platform-tests/dom/nodes/Element-matches.html:
* web-platform-tests/dom/nodes/MutationObserver-characterData-expected.txt:
* web-platform-tests/dom/nodes/MutationObserver-characterData.html:
* web-platform-tests/dom/nodes/Node-compareDocumentPosition.html:
* web-platform-tests/dom/nodes/Node-contains.html:
* web-platform-tests/dom/nodes/Node-lookupPrefix.xhtml:
* web-platform-tests/dom/nodes/Node-parentNode-iframe.html: Added.
* web-platform-tests/dom/nodes/Node-parentNode.html:
* web-platform-tests/dom/nodes/Node-properties-expected.txt:
* web-platform-tests/dom/nodes/Node-properties.html:
* web-platform-tests/dom/nodes/ParentNode-querySelector-All-content.html: Added.
* web-platform-tests/dom/nodes/ParentNode-querySelector-All-content.xht: Added.
* web-platform-tests/dom/nodes/ParentNode-querySelector-All.html:
* web-platform-tests/dom/nodes/getElementsByClassName-14.htm:
* web-platform-tests/dom/nodes/getElementsByClassName-28.htm:
* web-platform-tests/dom/nodes/w3c-import.log: Added.
* web-platform-tests/dom/ranges/w3c-import.log: Added.
* web-platform-tests/dom/traversal/TreeWalker-acceptNode-filter.html:
* web-platform-tests/dom/traversal/TreeWalker-basic.html:
* web-platform-tests/dom/traversal/TreeWalker-currentNode.html:
* web-platform-tests/dom/traversal/TreeWalker-previousNodeLastChildReject.html:
* web-platform-tests/dom/traversal/TreeWalker-previousSiblingLastChildSkip.html:
* web-platform-tests/dom/traversal/TreeWalker-traversal-reject.html:
* web-platform-tests/dom/traversal/TreeWalker-traversal-skip-most.html:
* web-platform-tests/dom/traversal/TreeWalker-traversal-skip.html:
* web-platform-tests/dom/traversal/TreeWalker-walking-outside-a-tree.html:
* web-platform-tests/dom/traversal/w3c-import.log: Added.
* web-platform-tests/dom/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/document-metadata/the-meta-element/w3c-import.log.
* web-platform-tests/domparsing/DOMParser-parseFromString-html-expected.txt:
* web-platform-tests/domparsing/DOMParser-parseFromString-html.html:
* web-platform-tests/domparsing/w3c-import.log:
* web-platform-tests/html/dom/documents/dom-tree-accessors/document.getElementsByName/w3c-import.log: Added.
* web-platform-tests/html/dom/documents/dom-tree-accessors/w3c-import.log: Added.
* web-platform-tests/html/dom/documents/resource-metadata-management/document-lastModified-01.html:
* web-platform-tests/html/dom/documents/resource-metadata-management/w3c-import.log: Added.
* web-platform-tests/html/dom/dynamic-markup-insertion/closing-the-input-stream/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/disabled-elements/w3c-import.log.
* web-platform-tests/html/dom/dynamic-markup-insertion/document-write/w3c-import.log: Added.
* web-platform-tests/html/dom/dynamic-markup-insertion/document-writeln/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/document-metadata/the-meta-element/w3c-import.log.
* web-platform-tests/html/dom/dynamic-markup-insertion/opening-the-input-stream/010-1.html: Added.
* web-platform-tests/html/dom/dynamic-markup-insertion/opening-the-input-stream/010-2.html: Added.
* web-platform-tests/html/dom/dynamic-markup-insertion/opening-the-input-stream/010-expected.txt:
* web-platform-tests/html/dom/dynamic-markup-insertion/opening-the-input-stream/010.html: Added.
* web-platform-tests/html/dom/dynamic-markup-insertion/opening-the-input-stream/w3c-import.log: Added.
* web-platform-tests/html/dom/elements/content-models/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/the-meter-element/w3c-import.log.
* web-platform-tests/html/dom/elements/element-definitions/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/form-submission-0/w3c-import.log.
* web-platform-tests/html/dom/elements/elements-in-the-dom/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/disabled-elements/w3c-import.log.
* web-platform-tests/html/dom/elements/global-attributes/the-lang-attribute-001.html:
* web-platform-tests/html/dom/elements/global-attributes/the-lang-attribute-002.html:
* web-platform-tests/html/dom/elements/global-attributes/the-lang-attribute-003.html:
* web-platform-tests/html/dom/elements/global-attributes/the-lang-attribute-004.html:
* web-platform-tests/html/dom/elements/global-attributes/the-lang-attribute-005.html:
* web-platform-tests/html/dom/elements/global-attributes/the-lang-attribute-006.html:
* web-platform-tests/html/dom/elements/global-attributes/the-lang-attribute-007.html:
* web-platform-tests/html/dom/elements/global-attributes/the-lang-attribute-008.html:
* web-platform-tests/html/dom/elements/global-attributes/the-lang-attribute-009.html:
* web-platform-tests/html/dom/elements/global-attributes/the-lang-attribute-010.html:
* web-platform-tests/html/dom/elements/global-attributes/w3c-import.log: Added.
* web-platform-tests/html/dom/elements/wai-aria/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/image-maps/w3c-import.log.
* web-platform-tests/html/dom/interfaces-expected.txt:
* web-platform-tests/html/dom/interfaces.html:
* web-platform-tests/html/dom/w3c-import.log: Added.
* web-platform-tests/html/resources/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/the-meter-element/w3c-import.log.
* web-platform-tests/html/semantics/disabled-elements/w3c-import.log:
* web-platform-tests/html/semantics/document-metadata/styling/support/w3c-import.log:
* web-platform-tests/html/semantics/document-metadata/the-base-element/base_multiple.html:
* web-platform-tests/html/semantics/document-metadata/the-base-element/example.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/html/semantics/document-metadata/the-base-element/resources/example.html.
* web-platform-tests/html/semantics/document-metadata/the-base-element/example2.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/html/semantics/document-metadata/the-base-element/resources/example2.html.
* web-platform-tests/html/semantics/document-metadata/the-base-element/w3c-import.log:
* web-platform-tests/html/semantics/document-metadata/the-link-element/link-style-error-01-expected.txt:
* web-platform-tests/html/semantics/document-metadata/the-link-element/link-style-error-01.html:
* web-platform-tests/html/semantics/document-metadata/the-link-element/w3c-import.log:
* web-platform-tests/html/semantics/document-metadata/the-meta-element/w3c-import.log:
* web-platform-tests/html/semantics/document-metadata/the-style-element/style-error-01-expected.txt:
* web-platform-tests/html/semantics/document-metadata/the-style-element/style-error-01.html:
* web-platform-tests/html/semantics/document-metadata/the-style-element/w3c-import.log:
* web-platform-tests/html/semantics/document-metadata/the-title-element/w3c-import.log:
* web-platform-tests/html/semantics/edits/the-del-element/w3c-import.log:
* web-platform-tests/html/semantics/edits/the-ins-element/w3c-import.log:
* web-platform-tests/html/semantics/embedded-content/image-maps/w3c-import.log:
* web-platform-tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLMediaElement/w3c-import.log:
* web-platform-tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/w3c-import.log:
* web-platform-tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/w3c-import.log:
* web-platform-tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/w3c-import.log:
* web-platform-tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/w3c-import.log:
* web-platform-tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/w3c-import.log:
* web-platform-tests/html/semantics/embedded-content/media-elements/interfaces/TrackEvent/w3c-import.log:
* web-platform-tests/html/semantics/embedded-content/media-elements/mime-types/w3c-import.log:
* web-platform-tests/html/semantics/embedded-content/media-elements/offsets-into-the-media-resource/w3c-import.log:
* web-platform-tests/html/semantics/embedded-content/media-elements/playing-the-media-resource/w3c-import.log:
* web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/w3c-import.log:
* web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/w3c-import.log:
* web-platform-tests/html/semantics/embedded-content/media-elements/user-interface/w3c-import.log:
* web-platform-tests/html/semantics/embedded-content/media-elements/w3c-import.log:
* web-platform-tests/html/semantics/embedded-content/the-area-element/w3c-import.log:
* web-platform-tests/html/semantics/embedded-content/the-audio-element/w3c-import.log:
* web-platform-tests/html/semantics/embedded-content/the-canvas-element/w3c-import.log:
* web-platform-tests/html/semantics/embedded-content/the-embed-element/w3c-import.log:
* web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_javascript_url_01.htm: Removed.
* web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_script-expected.txt:
* web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_script.html: Removed.
* web-platform-tests/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_01.html: Removed.
* web-platform-tests/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_02.html: Removed.
* web-platform-tests/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_03.html: Removed.
* web-platform-tests/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_04.html: Removed.
* web-platform-tests/html/semantics/embedded-content/the-iframe-element/resources/sandbox_allow_script.html: Removed.
* web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/sandbox_allow_script.html: Removed.
* web-platform-tests/html/semantics/embedded-content/the-iframe-element/w3c-import.log:
* web-platform-tests/html/semantics/embedded-content/the-img-element/current-pixel-density/w3c-import.log:
* web-platform-tests/html/semantics/embedded-content/the-img-element/environment-changes/iframed.sub.html: Added.
* web-platform-tests/html/semantics/embedded-content/the-img-element/environment-changes/viewport-change-expected.txt:
* web-platform-tests/html/semantics/embedded-content/the-img-element/environment-changes/w3c-import.log:
* web-platform-tests/html/semantics/embedded-content/the-img-element/sizes/parse-a-sizes-attribute-expected.txt:
* web-platform-tests/html/semantics/embedded-content/the-img-element/sizes/sizes-iframed.sub.html: Added.
* web-platform-tests/html/semantics/embedded-content/the-img-element/sizes/w3c-import.log:
* web-platform-tests/html/semantics/embedded-content/the-img-element/srcset/w3c-import.log:
* web-platform-tests/html/semantics/embedded-content/the-img-element/w3c-import.log:
* web-platform-tests/html/semantics/embedded-content/the-object-element/object-handler.html:
* web-platform-tests/html/semantics/embedded-content/the-object-element/test0.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-object-element/resources/test0.html.
* web-platform-tests/html/semantics/embedded-content/the-object-element/test1.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-object-element/resources/test1.html.
* web-platform-tests/html/semantics/embedded-content/the-object-element/test2.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-object-element/resources/test2.html.
* web-platform-tests/html/semantics/embedded-content/the-object-element/w3c-import.log:
* web-platform-tests/html/semantics/embedded-content/the-video-element/w3c-import.log:
* web-platform-tests/html/semantics/forms/attributes-common-to-form-controls/dirname-ltr-iframe.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/attributes-common-to-form-controls/resources/dirname-ltr-iframe.html.
* web-platform-tests/html/semantics/forms/attributes-common-to-form-controls/dirname-ltr.html:
* web-platform-tests/html/semantics/forms/attributes-common-to-form-controls/w3c-import.log:
* web-platform-tests/html/semantics/forms/constraints/form-validation-validity-tooLong-expected.txt:
* web-platform-tests/html/semantics/forms/constraints/form-validation-validity-tooLong.html:
* web-platform-tests/html/semantics/forms/constraints/form-validation-validity-valueMissing-expected.txt:
* web-platform-tests/html/semantics/forms/constraints/form-validation-validity-valueMissing.html:
* web-platform-tests/html/semantics/forms/constraints/form-validation-willValidate-expected.txt:
* web-platform-tests/html/semantics/forms/constraints/form-validation-willValidate.html:
* web-platform-tests/html/semantics/forms/constraints/support/validator.js:
(validator.test_reportValidity):
(validator.set_conditions):
(validator.set_dirty):
* web-platform-tests/html/semantics/forms/constraints/support/w3c-import.log:
* web-platform-tests/html/semantics/forms/constraints/w3c-import.log:
* web-platform-tests/html/semantics/forms/form-control-infrastructure/w3c-import.log:
* web-platform-tests/html/semantics/forms/form-submission-0/w3c-import.log:
* web-platform-tests/html/semantics/forms/introduction-1/w3c-import.log:
* web-platform-tests/html/semantics/forms/resetting-a-form/w3c-import.log:
* web-platform-tests/html/semantics/forms/textfieldselection/textfieldselection-setSelectionRange-expected.txt:
* web-platform-tests/html/semantics/forms/textfieldselection/textfieldselection-setSelectionRange.html:
* web-platform-tests/html/semantics/forms/textfieldselection/w3c-import.log:
* web-platform-tests/html/semantics/forms/the-button-element/w3c-import.log:
* web-platform-tests/html/semantics/forms/the-datalist-element/w3c-import.log:
* web-platform-tests/html/semantics/forms/the-fieldset-element/w3c-import.log:
* web-platform-tests/html/semantics/forms/the-form-element/w3c-import.log:
* web-platform-tests/html/semantics/forms/the-input-element/input-textselection-01-expected.txt:
* web-platform-tests/html/semantics/forms/the-input-element/input-textselection-01.html:
* web-platform-tests/html/semantics/forms/the-input-element/w3c-import.log:
* web-platform-tests/html/semantics/forms/the-label-element/label-attributes.html:
* web-platform-tests/html/semantics/forms/the-label-element/w3c-import.log:
* web-platform-tests/html/semantics/forms/the-legend-element/w3c-import.log:
* web-platform-tests/html/semantics/forms/the-meter-element/w3c-import.log:
* web-platform-tests/html/semantics/forms/the-option-element/w3c-import.log:
* web-platform-tests/html/semantics/forms/the-output-element/w3c-import.log:
* web-platform-tests/html/semantics/forms/the-progress-element/w3c-import.log:
* web-platform-tests/html/semantics/forms/the-select-element/w3c-import.log:
* web-platform-tests/html/semantics/forms/the-textarea-element/w3c-import.log:
* web-platform-tests/html/semantics/grouping-content/the-dd-element/w3c-import.log:
* web-platform-tests/html/semantics/grouping-content/the-div-element/w3c-import.log:
* web-platform-tests/html/semantics/grouping-content/the-dl-element/w3c-import.log:
* web-platform-tests/html/semantics/grouping-content/the-dt-element/w3c-import.log:
* web-platform-tests/html/semantics/grouping-content/the-figcaption-element/w3c-import.log:
* web-platform-tests/html/semantics/grouping-content/the-figure-element/w3c-import.log:
* web-platform-tests/html/semantics/grouping-content/the-hr-element/w3c-import.log:
* web-platform-tests/html/semantics/grouping-content/the-li-element/grouping-li-reftest-002-ref-expected.html: Removed.
* web-platform-tests/html/semantics/grouping-content/the-li-element/grouping-li-reftest-002-ref.html: Removed.
* web-platform-tests/html/semantics/grouping-content/the-li-element/w3c-import.log:
* web-platform-tests/html/semantics/grouping-content/the-ol-element/reversed-1a.html: Added.
* web-platform-tests/html/semantics/grouping-content/the-ol-element/reversed-1b.html: Added.
* web-platform-tests/html/semantics/grouping-content/the-ol-element/reversed-1c.html: Added.
* web-platform-tests/html/semantics/grouping-content/the-ol-element/w3c-import.log:
* web-platform-tests/html/semantics/grouping-content/the-p-element/w3c-import.log:
* web-platform-tests/html/semantics/grouping-content/the-pre-element/w3c-import.log:
* web-platform-tests/html/semantics/grouping-content/the-ul-element/w3c-import.log:
* web-platform-tests/html/semantics/interactive-elements/commands/w3c-import.log:
* web-platform-tests/html/semantics/interactive-elements/the-details-element/w3c-import.log:
* web-platform-tests/html/semantics/interactive-elements/the-dialog-element/w3c-import.log:
* web-platform-tests/html/semantics/interactive-elements/the-menu-element/w3c-import.log:
* web-platform-tests/html/semantics/interfaces-expected.txt:
* web-platform-tests/html/semantics/interfaces.js:
* web-platform-tests/html/semantics/links/downloading-resources/w3c-import.log:
* web-platform-tests/html/semantics/links/linktypes/w3c-import.log:
* web-platform-tests/html/semantics/scripting-1/the-script-element/w3c-import.log:
* web-platform-tests/html/semantics/scripting-1/the-template-element/additions-to-parsing-xhtml-documents/w3c-import.log:
* web-platform-tests/html/semantics/scripting-1/the-template-element/additions-to-serializing-xhtml-documents/w3c-import.log:
* web-platform-tests/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/w3c-import.log:
* web-platform-tests/html/semantics/scripting-1/the-template-element/additions-to-the-steps-to-clone-a-node/w3c-import.log:
* web-platform-tests/html/semantics/scripting-1/the-template-element/definitions/template-contents-owner-document-type-expected.txt:
* web-platform-tests/html/semantics/scripting-1/the-template-element/definitions/template-contents-owner-document-type.html:
* web-platform-tests/html/semantics/scripting-1/the-template-element/definitions/w3c-import.log:
* web-platform-tests/html/semantics/scripting-1/the-template-element/innerhtml-on-templates/w3c-import.log:
* web-platform-tests/html/semantics/scripting-1/the-template-element/resources/w3c-import.log:
* web-platform-tests/html/semantics/scripting-1/the-template-element/serializing-html-templates/w3c-import.log:
* web-platform-tests/html/semantics/scripting-1/the-template-element/template-element/template-descendant-frameset-expected.txt:
* web-platform-tests/html/semantics/scripting-1/the-template-element/template-element/template-descendant-frameset.html:
* web-platform-tests/html/semantics/scripting-1/the-template-element/template-element/w3c-import.log:
* web-platform-tests/html/semantics/sections/headings-and-sections/w3c-import.log:
* web-platform-tests/html/semantics/sections/the-h1-h2-h3-h4-h5-and-h6-elements/w3c-import.log:
* web-platform-tests/html/semantics/selectors/pseudo-classes/disabled-expected.txt:
* web-platform-tests/html/semantics/selectors/pseudo-classes/disabled.html:
* web-platform-tests/html/semantics/selectors/pseudo-classes/focus-iframe.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/html/semantics/selectors/pseudo-classes/resources/focus-iframe.html.
* web-platform-tests/html/semantics/selectors/pseudo-classes/focus.html:
* web-platform-tests/html/semantics/selectors/pseudo-classes/w3c-import.log:
* web-platform-tests/html/semantics/tabular-data/attributes-common-to-td-and-th-elements/w3c-import.log:
* web-platform-tests/html/semantics/tabular-data/processing-model-1/w3c-import.log:
* web-platform-tests/html/semantics/tabular-data/the-caption-element/w3c-import.log:
* web-platform-tests/html/semantics/tabular-data/the-table-element/w3c-import.log:
* web-platform-tests/html/semantics/tabular-data/the-tbody-element/w3c-import.log:
* web-platform-tests/html/semantics/tabular-data/the-tr-element/w3c-import.log:
* web-platform-tests/html/semantics/text-level-semantics/the-a-element/w3c-import.log:
* web-platform-tests/html/semantics/text-level-semantics/the-bdi-element/w3c-import.log:
* web-platform-tests/html/semantics/text-level-semantics/the-bdo-element/w3c-import.log:
* web-platform-tests/html/semantics/text-level-semantics/the-br-element/w3c-import.log:
* web-platform-tests/html/semantics/text-level-semantics/the-time-element/w3c-import.log:
* web-platform-tests/html/semantics/text-level-semantics/the-wbr-element/w3c-import.log:
* web-platform-tests/html/semantics/text-level-semantics/the-wbr-element/wbr-element-expected.html:
* web-platform-tests/html/semantics/text-level-semantics/the-wbr-element/wbr-element-ref.html: Removed.
* web-platform-tests/html/semantics/text-level-semantics/the-wbr-element/wbr-element.html:
* web-platform-tests/html/semantics/w3c-import.log:

LayoutTests:

* TestExpectations: Skipping imported resource files that are not in 'resources' folder.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191379 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[FreeType] Add support for the USE_TYPO_METRICS flag
fred.wang@free.fr [Wed, 21 Oct 2015 07:05:21 +0000 (07:05 +0000)]
[FreeType] Add support for the USE_TYPO_METRICS flag
https://bugs.webkit.org/show_bug.cgi?id=150340

Reviewed by Martin Robinson.

Source/WebCore:

Test: fonts/use-typo-metrics-1.html

Make the FreeType backend use the typo metrics when the OS/2 USE_TYPO_METRICS flag is set.
Similar work should be done for other backends, see bug 131839.

* platform/graphics/freetype/SimpleFontDataFreeType.cpp:
(WebCore::Font::platformInit): Verify whether the OS/2 USE_TYPO_METRICS flag is set and use the typo metrics if that's the case.

LayoutTests:

Add a test to verify that the line height of a font is calculated from the typo metrics when the OS/2 USE_TYPO_METRICS flag is set. Currently, the test only passes with the FreeType backend.

* fonts/lineheight5000-typolineheight2300.woff: Added.
* fonts/use-typo-metrics-1-expected.html: Added.
* fonts/use-typo-metrics-1.html: Added.
* platform/mac/TestExpectations: Mark as failing.
* platform/win/TestExpectations: Mark as failing.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191378 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[WK2] Generalize NetworkCacheStorage API so it can store different types of metadata
cdumez@apple.com [Wed, 21 Oct 2015 06:41:13 +0000 (06:41 +0000)]
[WK2] Generalize NetworkCacheStorage API so it can store different types of metadata
https://bugs.webkit.org/show_bug.cgi?id=150221
<rdar://problem/23149771>

Reviewed by Darin Adler and Antti Koivisto.

Generalize NetworkCacheStorage API so it can store different types of
metadata alongside the network resources. This is a pre-requirement to
making our NetworkCache smarter by storing information about the
resources.

To keep the code simple, the entry type is now part of the entry key and
we store records of a specific type in a 'type' subfolder. The cache
structure looks like so:
- WebKitCache/Version 5/[Partition]/[Type]/[Hash]
- WebKitCache/Version 5/[Partition]/[Type]/[Hash]-blob (Optional)

Existing cache entries now that the 'resource' type as these are network
resources.

* NetworkProcess/cache/NetworkCache.cpp:
* NetworkProcess/cache/NetworkCacheKey.cpp:
* NetworkProcess/cache/NetworkCacheKey.h:
* NetworkProcess/cache/NetworkCacheStatistics.cpp:
* NetworkProcess/cache/NetworkCacheStorage.cpp:
* NetworkProcess/cache/NetworkCacheStorage.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191377 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoMarking http/tests/xmlhttprequest/timeout/xmlhttprequest-timeout-simple.html as flaky...
commit-queue@webkit.org [Wed, 21 Oct 2015 06:20:58 +0000 (06:20 +0000)]
Marking http/tests/xmlhttprequest/timeout/xmlhttprequest-timeout-simple.html as flaky on Yosemite
https://bugs.webkit.org/show_bug.cgi?id=150378

Patch by Ryan Haddad <ryanhaddad@apple.com> on 2015-10-20
Reviewed by Alexey Proskuryakov.

* platform/mac-wk2/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191376 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoMarking http/tests/xmlhttprequest/timeout/xmlhttprequest-timeout-twice.html as flaky...
commit-queue@webkit.org [Wed, 21 Oct 2015 06:08:20 +0000 (06:08 +0000)]
Marking http/tests/xmlhttprequest/timeout/xmlhttprequest-timeout-twice.html as flaky on Yosemite
https://bugs.webkit.org/show_bug.cgi?id=150363

Patch by Ryan Haddad <ryanhaddad@apple.com> on 2015-10-20
Reviewed by Alexey Proskuryakov.

* platform/mac-wk2/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191375 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agorun-webkit-tests does not copy all crash logs for layout test failures on iOS
commit-queue@webkit.org [Wed, 21 Oct 2015 05:36:49 +0000 (05:36 +0000)]
run-webkit-tests does not copy all crash logs for layout test failures on iOS
https://bugs.webkit.org/show_bug.cgi?id=150056
Tools:

<rdar://problem/9280656>

Patch by Aakash Jain <aakash_jain@apple.com> on 2015-10-20
Reviewed by Alexey Proskuryakov.

* Scripts/webkitpy/common/system/crashlogs.py:
(CrashLogs.find_all_logs): Generic method to find all crash logs.
(CrashLogs._find_all_logs_darwin): Darwin based method to find all crash logs.
It iterates through log directory and returns all the logs based on timestamp.
* Scripts/webkitpy/common/system/crashlogs_unittest.py:
(CrashLogsTest.create_crash_logs_darwin): Creates sample crash logs and verify them.
(CrashLogsTest.test_find_all_log_darwin): Testcase for above find_all_logs method
(CrashLogsTest.test_find_log_darwin): Restructured to share code with other methods.
* Scripts/webkitpy/layout_tests/controllers/manager.py:
(Manager.run): Modified start_time to start counting before simulator launch
so that we can capture crashes during simualator launch.
(Manager._look_for_new_crash_logs): Browse through list of crashes and append
any test which is not already marked as CRASH to the run_results.
* Scripts/webkitpy/layout_tests/models/test_expectations.py:
(TestExpectationsModel.get_expectations_string): return PASS in case there
are no expectations defined for this test.
* Scripts/webkitpy/layout_tests/models/test_run_results.py:
(summarize_results): Add other_crashes in a separte category in full_results.json.
* Scripts/webkitpy/port/ios.py:
(IOSSimulatorPort._merge_crash_logs): Merge unique crash logs from two dictionaries.
(IOSSimulatorPort._look_for_all_crash_logs_in_log_dir): Get the crash logs
from the log directory.
(IOSSimulatorPort.look_for_new_crash_logs): Uses above method to get crash
logs from log directory and merge them with the list of already crashed tests.

LayoutTests:

<rdar://problem/22239750>

Patch by Aakash Jain <aakash_jain@apple.com> on 2015-10-20
Reviewed by Alexey Proskuryakov.

* fast/harness/results.html: Added the column for Other crashes, this contain
all the newly find crashes from the crash-log directory. Added method forOtherCrashes
which processes othre_crashes section from full_results.json. Also fixed the method
splitExtension to handle the case when there is no extension.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191374 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoUnreviewed, rolling out r191370.
commit-queue@webkit.org [Wed, 21 Oct 2015 05:09:17 +0000 (05:09 +0000)]
Unreviewed, rolling out r191370.
https://bugs.webkit.org/show_bug.cgi?id=150384

Broke iOS 9 build (Requested by ap on #webkit).

Reverted changeset:

"Fix build for clang-700.0.59.5 by replacing deprecated calls
to convertScreenToBase: with convertRectFromScreen:."
https://bugs.webkit.org/show_bug.cgi?id=150379
http://trac.webkit.org/changeset/191370

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191373 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoFix the build
dburkart@apple.com [Wed, 21 Oct 2015 04:51:27 +0000 (04:51 +0000)]
Fix the build

Unreviewed.

My previous patch was missing a necessary space character.

* Scripts/webkitperl/VCSUtils_unittest/decodeGitBinaryPatch.pl:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191372 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoWeb Inspector: Pressing Command-S while focused on the styles sidebar should save...
nvasilyev@apple.com [Wed, 21 Oct 2015 04:25:02 +0000 (04:25 +0000)]
Web Inspector: Pressing Command-S while focused on the styles sidebar should save CSS file
https://bugs.webkit.org/show_bug.cgi?id=150298

Reviewed by Timothy Hatcher.

* UserInterface/Views/CSSStyleDeclarationSection.js:
(WebInspector.CSSStyleDeclarationSection):
Beep when saving didn't work. Inline CSS and CSS in style attributes aren't curently supported.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191371 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoFix build for clang-700.0.59.5 by replacing deprecated calls to convertScreenToBase...
commit-queue@webkit.org [Wed, 21 Oct 2015 02:21:02 +0000 (02:21 +0000)]
Fix build for clang-700.0.59.5 by replacing deprecated calls to convertScreenToBase: with convertRectFromScreen:.
https://bugs.webkit.org/show_bug.cgi?id=150379

Patch by Gordon Sheridan <gordon_sheridan@apple.com> on 2015-10-20
Reviewed by Simon Fraser.

* WebView/WebHTMLView.mm:
(-[WebHTMLView characterIndexForPoint:]):
Convert point to rect, and call convertRectFromScreen:.

(-[WebHTMLView firstRectForCharacterRange:]):
Replace convertBaseToScreen: with convertRectToScreen:.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191370 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoReplace 0 and NULL with nullptr in WebCore/loader.
hs85.jeong@samsung.com [Wed, 21 Oct 2015 02:12:32 +0000 (02:12 +0000)]
Replace 0 and NULL with nullptr in WebCore/loader.
https://bugs.webkit.org/show_bug.cgi?id=149657

Reviewed by Darin Adler.

No new tests because there is no behavior change.

* loader/CookieJar.cpp:
(WebCore::networkingContext):
* loader/DocumentLoader.cpp:
(WebCore::DocumentLoader::DocumentLoader):
(WebCore::DocumentLoader::frameLoader):
(WebCore::DocumentLoader::popArchiveForSubframe):
(WebCore::DocumentLoader::clearArchiveResources):
(WebCore::DocumentLoader::clearMainResource):
(WebCore::DocumentLoader::subresourceLoaderFinishedLoadingOnePart):
* loader/DocumentThreadableLoader.cpp:
(WebCore::DocumentThreadableLoader::cancel):
(WebCore::DocumentThreadableLoader::setDefersLoading):
(WebCore::DocumentThreadableLoader::clearResource):
* loader/EmptyClients.cpp:
(WebCore::EmptyFrameLoaderClient::createJavaAppletWidget):
(WebCore::EmptyFrameLoaderClient::createNetworkingContext):
* loader/EmptyClients.h:
* loader/FTPDirectoryParser.cpp:
(WebCore::parseOneFTPLine):
* loader/FTPDirectoryParser.h:
(WebCore::ListResult::clear):
* loader/FormSubmission.cpp:
(WebCore::FormSubmission::create):
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::clear):
(WebCore::FrameLoader::stopAllLoaders):
(WebCore::FrameLoader::clearProvisionalLoad):
(WebCore::FrameLoader::transitionToCommitted):
(WebCore::FrameLoader::closeAndRemoveChild):
(WebCore::FrameLoader::detachFromParent):
(WebCore::FrameLoader::detachViewsAndDocumentLoader):
(WebCore::FrameLoader::continueFragmentScrollAfterNavigationPolicy):
(WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
* loader/FrameLoader.h:
(WebCore::FrameLoader::stateMachine):
* loader/FrameNetworkingContext.h:
(WebCore::FrameNetworkingContext::invalidate):
* loader/HistoryController.cpp:
(WebCore::HistoryController::replaceState):
* loader/ImageLoader.cpp:
(WebCore::ImageLoader::ImageLoader):
(WebCore::ImageLoader::updateFromElement):
* loader/NetscapePlugInStreamLoader.cpp:
(WebCore::NetscapePlugInStreamLoader::releaseResources):
* loader/ResourceLoadNotifier.h:
* loader/ResourceLoadScheduler.cpp:
(WebCore::resourceLoadScheduler):
* loader/SubresourceLoader.cpp:
(WebCore::SubresourceLoader::releaseResources):
* loader/TextResourceDecoder.cpp:
(WebCore::TextResourceDecoder::TextResourceDecoder):
* loader/ThreadableLoaderClientWrapper.h:
(WebCore::ThreadableLoaderClientWrapper::clearClient):
(WebCore::ThreadableLoaderClientWrapper::done):
* loader/appcache/ApplicationCache.cpp:
(WebCore::fallbackURLLongerThan):
(WebCore::ApplicationCache::ApplicationCache):
(WebCore::ApplicationCache::resourceForRequest):
* loader/appcache/ApplicationCache.h:
(WebCore::ApplicationCache::fallbackURLs):
* loader/appcache/ApplicationCacheGroup.cpp:
(WebCore::ApplicationCacheGroup::ApplicationCacheGroup):
(WebCore::ApplicationCacheGroup::fallbackCacheForMainRequest):
(WebCore::ApplicationCacheGroup::selectCache):
(WebCore::ApplicationCacheGroup::finishedLoadingMainResource):
(WebCore::ApplicationCacheGroup::failedLoadingMainResource):
(WebCore::ApplicationCacheGroup::manifestNotFound):
(WebCore::ApplicationCacheGroup::checkIfLoadIsComplete):
* loader/appcache/ApplicationCacheHost.cpp:
(WebCore::ApplicationCacheHost::ApplicationCacheHost):
(WebCore::ApplicationCacheHost::setApplicationCache):
* loader/appcache/ApplicationCacheHost.h:
(WebCore::ApplicationCacheHost::candidateApplicationCacheGroup):
* loader/appcache/ApplicationCacheStorage.cpp:
(WebCore::StorageIDJournal::Record::Record):
(WebCore::StorageIDJournal::Record::restore):
(WebCore::ApplicationCacheStorage::loadCacheGroup):
(WebCore::ApplicationCacheStorage::cacheGroupForURL):
(WebCore::ApplicationCacheStorage::fallbackCacheGroupForURL):
(WebCore::ApplicationCacheStorage::cacheGroupDestroyed):
(WebCore::ApplicationCacheStorage::loadCache):
* loader/appcache/DOMApplicationCache.cpp:
(WebCore::DOMApplicationCache::disconnectFrameForPageCache):
(WebCore::DOMApplicationCache::willDestroyGlobalObjectInFrame):
(WebCore::DOMApplicationCache::applicationCacheHost):
(WebCore::DOMApplicationCache::scriptExecutionContext):
(WebCore::DOMApplicationCache::toEventType):
* loader/archive/ArchiveFactory.cpp:
(WebCore::ArchiveFactory::create):
(WebCore::ArchiveFactory::registerKnownArchiveMIMETypes):
* loader/archive/ArchiveResourceCollection.cpp:
(WebCore::ArchiveResourceCollection::archiveResourceForURL):
* loader/archive/cf/LegacyWebArchive.cpp:
(WebCore::LegacyWebArchive::createPropertyListRepresentation):
(WebCore::LegacyWebArchive::createResource):
(WebCore::LegacyWebArchive::create):
(WebCore::LegacyWebArchive::rawDataRepresentation):
* loader/archive/cf/LegacyWebArchiveMac.mm:
(WebCore::LegacyWebArchive::createPropertyListRepresentation):
* loader/archive/mhtml/MHTMLArchive.cpp:
(WebCore::MHTMLArchive::create):
(WebCore::MHTMLArchive::generateMHTMLData):
* loader/archive/mhtml/MHTMLParser.cpp:
(WebCore::MHTMLParser::parseArchiveWithHeader):
(WebCore::MHTMLParser::parseNextPart):
* loader/cache/CachedImage.cpp:
(WebCore::CachedImage::CachedImage):
* loader/cache/CachedImageClient.h:
(WebCore::CachedImageClient::imageChanged):
(WebCore::CachedImageClient::newImageAnimationFrameAvailable):
* loader/cache/CachedRawResource.cpp:
(WebCore::CachedRawResource::calculateIncrementalDataChunk):
* loader/cache/CachedRawResourceClient.h:
(WebCore::CachedRawResourceClient::dataReceived):
(WebCore::CachedRawResourceClient::redirectReceived):
(WebCore::CachedRawResourceClient::getOrCreateReadBuffer):
* loader/cache/CachedResource.cpp:
(WebCore::CachedResource::CachedResource):
(WebCore::CachedResource::clearResourceToRevalidate):
* loader/cache/CachedResourceClientWalker.h:
(WebCore::CachedResourceClientWalker::next):
* loader/cache/CachedResourceHandle.cpp:
(WebCore::CachedResourceHandleBase::CachedResourceHandleBase):
* loader/cache/CachedResourceLoader.cpp:
(WebCore::createResource):
(WebCore::CachedResourceLoader::CachedResourceLoader):
(WebCore::CachedResourceLoader::~CachedResourceLoader):
(WebCore::CachedResourceLoader::canRequest): Return value is bool.
(WebCore::CachedResourceLoader::requestResource):
* loader/cache/CachedResourceLoader.h:
(WebCore::CachedResourceLoader::document):
(WebCore::CachedResourceLoader::setDocument):
(WebCore::CachedResourceLoader::clearDocumentLoader):
* loader/cache/CachedSVGDocumentReference.cpp:
(WebCore::CachedSVGDocumentReference::CachedSVGDocumentReference):
* loader/cf/ResourceLoaderCFNet.cpp:
(WebCore::ResourceLoader::shouldCacheResponse): Return value is bool.
* loader/icon/IconDatabase.cpp:
(WebCore::IconDatabase::synchronousIconForPageURL):
(WebCore::IconDatabase::synchronousNativeIconForPageURL):
(WebCore::IconDatabase::setIconDataForIconURL):
(WebCore::IconDatabase::getOrCreatePageURLRecord):
(WebCore::IconDatabase::cleanupSyncThread):
* loader/icon/IconDatabaseBase.cpp:
(WebCore::IconDatabaseBase::open):
(WebCore::iconDatabase):
* loader/icon/IconDatabaseBase.h:
(WebCore::EnumCallback::performCallback):
(WebCore::EnumCallback::invalidate):
(WebCore::ObjectCallback::performCallback):
(WebCore::ObjectCallback::invalidate):
* loader/icon/PageURLRecord.cpp:
(WebCore::PageURLRecord::~PageURLRecord):
(WebCore::PageURLRecord::setIconRecord):
* loader/mac/ResourceLoaderMac.mm:
(WebCore::ResourceLoader::willCacheResponse):
* loader/soup/CachedRawResourceSoup.cpp:
(WebCore::CachedRawResource::getOrCreateReadBuffer):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191369 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[EFL] ContextMenu doesn't work correctly on MiniBrowser after r191194.
hs85.jeong@samsung.com [Wed, 21 Oct 2015 01:53:09 +0000 (01:53 +0000)]
[EFL] ContextMenu doesn't work correctly on MiniBrowser after r191194.
https://bugs.webkit.org/show_bug.cgi?id=150311

Reviewed by Gyuyoung Kim.

Restore the test_ewk2_context_menu API test to check the context menu whether it works correctly.

* PlatformEfl.cmake:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191368 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agosvn-apply fails to apply binary diffs in some cases
dburkart@apple.com [Wed, 21 Oct 2015 01:41:52 +0000 (01:41 +0000)]
svn-apply fails to apply binary diffs in some cases
https://bugs.webkit.org/show_bug.cgi?id=64647

Reviewed by Daniel Bates.

* Scripts/VCSUtils.pm:
(decodeGitBinaryPatchDeltaSize): Modified.
We need to handle the case where the binary diff is the last in the patch; so we match on "-- \n" or "\Z".
* Tools/Scripts/webkitperl/VCSUtils_unittest/decodeGitBinaryPatch.pl: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191367 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago_WKThumbnailView should support a snapshot-only mode
conrad_shultz@apple.com [Wed, 21 Oct 2015 01:10:32 +0000 (01:10 +0000)]
_WKThumbnailView should support a snapshot-only mode
https://bugs.webkit.org/show_bug.cgi?id=150106

Reviewed by Tim Horton.

Add a new property to _WKThumbnailView, exclusivelyUsesSnapshot, which causes _WKThumbnailView
to bypass both layer tree reparenting and event suppression on the associated WKView.

Add a new method, -requestSnapshot, which clients can use to force _WKThumbnailView to refresh
on demand.

* UIProcess/API/Cocoa/_WKThumbnailView.h:
* UIProcess/API/Cocoa/_WKThumbnailView.mm:
(-[_WKThumbnailView requestSnapshot]):
Extracted from -_requestSnapshotIfNeeded:.
(-[_WKThumbnailView _viewWasUnparented]):
(-[_WKThumbnailView _viewWasParented]):
(-[_WKThumbnailView _requestSnapshotIfNeeded]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191366 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoBuild fix.
ap@apple.com [Tue, 20 Oct 2015 23:40:19 +0000 (23:40 +0000)]
Build fix.

* UIProcess/ios/forms/WKAirPlayRoutePicker.mm:
* UIProcess/ios/forms/WKFileUploadPanel.mm:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191365 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoYarrPatternConstructor::containsCapturingTerms() should not assume that its terms...
mark.lam@apple.com [Tue, 20 Oct 2015 23:38:41 +0000 (23:38 +0000)]
YarrPatternConstructor::containsCapturingTerms() should not assume that its terms.size() is greater than 0.
https://bugs.webkit.org/show_bug.cgi?id=150372

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

* yarr/YarrPattern.cpp:
(JSC::Yarr::CharacterClassConstructor::CharacterClassConstructor):
(JSC::Yarr::YarrPatternConstructor::optimizeBOL):
(JSC::Yarr::YarrPatternConstructor::containsCapturingTerms):
(JSC::Yarr::YarrPatternConstructor::optimizeDotStarWrappedExpressions):

LayoutTests:

* js/regress-150372-expected.txt: Added.
* js/regress-150372.html: Added.
* js/script-tests/regress-150372.js: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191364 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoASSERT when right clicking on SVG Image generating Share menu - can break Web Inspector
commit-queue@webkit.org [Tue, 20 Oct 2015 23:15:57 +0000 (23:15 +0000)]
ASSERT when right clicking on SVG Image generating Share menu - can break Web Inspector
https://bugs.webkit.org/show_bug.cgi?id=150374

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2015-10-20
Reviewed by Brian Burg.

When there is no absolute URL or downloadable media URL no system share
menu is created, but we were still appending the null context menu to
the list of context menu items.

* UIProcess/mac/WebContextMenuProxyMac.mm:
(WebKit::WebContextMenuProxyMac::shareMenuItem):
Bail early if the context menu is null.

(WebKit::WebContextMenuProxyMac::showContextMenu):
Only append the share context menu item if it is non-null.
This matches ContextMenuController.cpp in WebCore.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191363 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoUnreviewed, GTK API test fix after r191351.
cdumez@apple.com [Tue, 20 Oct 2015 22:38:55 +0000 (22:38 +0000)]
Unreviewed, GTK API test fix after r191351.

Reverted API change for GTK bindings.

* html/HTMLOptionsCollection.idl:
* html/HTMLSelectElement.idl:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191361 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoREGRESSION (r191175): OSR Exit from an inlined tail callee trashes callee save registers
msaboff@apple.com [Tue, 20 Oct 2015 22:02:37 +0000 (22:02 +0000)]
REGRESSION (r191175): OSR Exit from an inlined tail callee trashes callee save registers
https://bugs.webkit.org/show_bug.cgi?id=150336

Reviewed by Mark Lam.

Source/JavaScriptCore:

During OSR exit, we need to restore and transform the active stack into what the baseline
JIT expects.  Inlined call frames become true call frames.  When we reify an inlined call
frame and it is a tail call which we will be continuing from, we need to restore the tag
constant callee save registers with what was saved by the outermost caller.

Re-enabled tail calls and restored tests for tail calls.

* dfg/DFGOSRExitCompilerCommon.cpp:
(JSC::DFG::reifyInlinedCallFrames): Select whether or not we use the callee save tag register
contents or what was saved by the inlining caller when populating an inlined callee's
callee save registers.
* jit/AssemblyHelpers.h:
(JSC::AssemblyHelpers::emitSaveCalleeSavesFor): This function no longer needs a stack offset.
(JSC::AssemblyHelpers::emitSaveOrCopyCalleeSavesFor): New helper.
* runtime/Options.h: Turned tail calls back on.
* tests/es6.yaml:
* tests/stress/dfg-tail-calls.js:
(nonInlinedTailCall.callee):
* tests/stress/mutual-tail-call-no-stack-overflow.js:
(shouldThrow):
* tests/stress/tail-call-in-inline-cache.js:
(tail):
* tests/stress/tail-call-no-stack-overflow.js:
(shouldThrow):
* tests/stress/tail-call-recognize.js:
(callerMustBeRun):
* tests/stress/tail-call-varargs-no-stack-overflow.js:
(shouldThrow):

LayoutTests:

Added a new regression test and restored tail call test results for js/caller-property.

* js/caller-property-expected.txt:
* js/regress-150336-expected.txt: Added.
* js/regress-150336.html: Added.
* js/script-tests/regress-150336.js: Added.
(bar):
(foo):
(test):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191360 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoUnreviewed, Another GTK build fix after r191351.
cdumez@apple.com [Tue, 20 Oct 2015 22:00:24 +0000 (22:00 +0000)]
Unreviewed, Another GTK build fix after r191351.

* html/HTMLCollection.idl:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191359 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoUnreviewed, Another GTK build fix after r191351.
cdumez@apple.com [Tue, 20 Oct 2015 21:51:15 +0000 (21:51 +0000)]
Unreviewed, Another GTK build fix after r191351.

* html/HTMLFieldSetElement.cpp:
(WebCore::HTMLFieldSetElement::elementsForNativeBindings):
(WebCore::HTMLFieldSetElement::elementsForObjC): Deleted.
* html/HTMLFieldSetElement.h:
* html/HTMLFieldSetElement.idl:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191358 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoAX: CrashTracer: com.apple.WebKit.WebContent at com.apple.WebCore: WebCore::Accessibi...
cfleizach@apple.com [Tue, 20 Oct 2015 21:34:23 +0000 (21:34 +0000)]
AX: CrashTracer: com.apple.WebKit.WebContent at com.apple.WebCore: WebCore::AccessibilityTable::tableElement const + 116
https://bugs.webkit.org/show_bug.cgi?id=150349

Reviewed by Brent Fulgham.

The crash point for this bug says that the parentElement of the firstBody is garbage when it's accessed.
Unfortunately, I could not reproduce this in-situ or with a test.
So my speculative solution is to recalculate those body elements to ensure that they're valid before we access.

* accessibility/AccessibilityTable.cpp:
(WebCore::AccessibilityTable::tableElement):
(WebCore::AccessibilityTable::isDataTable):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191357 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoTake 2 on rebaselining fast/dynamic/insert-before-table-part-in-continuation.html
commit-queue@webkit.org [Tue, 20 Oct 2015 20:54:28 +0000 (20:54 +0000)]
Take 2 on rebaselining fast/dynamic/insert-before-table-part-in-continuation.html
https://bugs.webkit.org/show_bug.cgi?id=150126

Patch by Ryan Haddad <ryanhaddad@apple.com> on 2015-10-20
Reviewed by Zalan Bujtas.

* platform/win/fast/dynamic/insert-before-table-part-in-continuation-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191356 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoWeb Inspector: JavaScriptCore should parse sourceURL and sourceMappingURL directives
joepeck@webkit.org [Tue, 20 Oct 2015 20:48:49 +0000 (20:48 +0000)]
Web Inspector: JavaScriptCore should parse sourceURL and sourceMappingURL directives
https://bugs.webkit.org/show_bug.cgi?id=150096

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

* inspector/ContentSearchUtilities.cpp:
(Inspector::ContentSearchUtilities::scriptCommentPattern): Deleted.
(Inspector::ContentSearchUtilities::findScriptSourceURL): Deleted.
(Inspector::ContentSearchUtilities::findScriptSourceMapURL): Deleted.
* inspector/ContentSearchUtilities.h:
No longer need to search script content.

* inspector/ScriptDebugServer.cpp:
(Inspector::ScriptDebugServer::dispatchDidParseSource):
Carry over the sourceURL and sourceMappingURL from the SourceProvider.

* inspector/agents/InspectorDebuggerAgent.cpp:
(Inspector::InspectorDebuggerAgent::sourceMapURLForScript):
(Inspector::InspectorDebuggerAgent::didParseSource):
No longer do content searching.

* parser/Lexer.cpp:
(JSC::Lexer<T>::setCode):
(JSC::Lexer<T>::skipWhitespace):
(JSC::Lexer<T>::parseCommentDirective):
(JSC::Lexer<T>::parseCommentDirectiveValue):
(JSC::Lexer<T>::consume):
(JSC::Lexer<T>::lex):
* parser/Lexer.h:
(JSC::Lexer::sourceURL):
(JSC::Lexer::sourceMappingURL):
(JSC::Lexer::sourceProvider): Deleted.
Give lexer the ability to detect script comment directives.
This just consumes characters in single line comments and
ultimately sets the sourceURL or sourceMappingURL found.

* parser/Parser.h:
(JSC::Parser<LexerType>::parse):
* parser/SourceProvider.h:
(JSC::SourceProvider::url):
(JSC::SourceProvider::sourceURL):
(JSC::SourceProvider::sourceMappingURL):
(JSC::SourceProvider::setSourceURL):
(JSC::SourceProvider::setSourceMappingURL):
After parsing a script, update the Source Provider with the
value of directives that may have been found in the script.

Source/WebInspectorUI:

* UserInterface/Test/InspectorProtocol.js:
(InspectorProtocol._sendMessage):
(InspectorProtocol.dispatchMessageFromBackend):
This is only used for tests, so avoid console.log
and just dump directly to the system console.

LayoutTests:

* inspector/debugger/sourceURLs-expected.txt: Added.
* inspector/debugger/sourceURLs.html: Added.
sourceURL and sourceMappingURL detection.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191355 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoUnreviewed, rolling out r191306.
cdumez@apple.com [Tue, 20 Oct 2015 20:47:48 +0000 (20:47 +0000)]
Unreviewed, rolling out r191306.
https://bugs.webkit.org/show_bug.cgi?id=150371

"May have caused a significant warm PLT regression" (Requested
by cdumez_ on #webkit).

Reverted changeset:

"[WK2] Generalize NetworkCacheStorage API so it can store
different types of metadata"
https://bugs.webkit.org/show_bug.cgi?id=150221
http://trac.webkit.org/changeset/191306

Patch by Commit Queue <commit-queue@webkit.org> on 2015-10-20

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191354 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoUnreviewed, GTK build fix after r191351.
cdumez@apple.com [Tue, 20 Oct 2015 20:42:01 +0000 (20:42 +0000)]
Unreviewed, GTK build fix after r191351.

* html/HTMLFormElement.cpp:
(WebCore::HTMLFormElement::elementsForNativeBindings):
(WebCore::HTMLFormElement::elementsForObjC): Deleted.
* html/HTMLFormElement.h:
* html/HTMLFormElement.idl:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191353 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoAdd basic TextStream output for Images
simon.fraser@apple.com [Tue, 20 Oct 2015 20:38:03 +0000 (20:38 +0000)]
Add basic TextStream output for Images
https://bugs.webkit.org/show_bug.cgi?id=150350

Reviewed by Darin Adler.

Add a TextStream output operator for Image, and virtual dump() member functions
that the various image types override to dump their own data.

Add isFoo() functions for each image type (surprising that these didn't already
exist) so we can print the image type.

Make isAnimated() const, and isBitmapImage() private.

* platform/graphics/BitmapImage.cpp:
(WebCore::BitmapImage::dump):
* platform/graphics/BitmapImage.h:
* platform/graphics/CrossfadeGeneratedImage.cpp:
(WebCore::CrossfadeGeneratedImage::dump):
* platform/graphics/CrossfadeGeneratedImage.h:
* platform/graphics/GeneratedImage.cpp:
* platform/graphics/GeneratedImage.h:
* platform/graphics/GradientImage.cpp:
(WebCore::GradientImage::dump):
* platform/graphics/GradientImage.h:
* platform/graphics/Image.cpp:
(WebCore::Image::dump):
(WebCore::operator<<):
* platform/graphics/Image.h:
(WebCore::Image::isGeneratedImage):
(WebCore::Image::isCrossfadeGeneratedImage):
(WebCore::Image::isNamedImageGeneratedImage):
(WebCore::Image::isGradientImage):
(WebCore::Image::isSVGImage):
(WebCore::Image::isAnimated):
* platform/graphics/NamedImageGeneratedImage.cpp:
(WebCore::NamedImageGeneratedImage::dump):
* platform/graphics/NamedImageGeneratedImage.h:
* platform/graphics/cg/PDFDocumentImage.cpp:
(WebCore::PDFDocumentImage::dump):
* platform/graphics/cg/PDFDocumentImage.h:
* svg/graphics/SVGImage.cpp:
(WebCore::SVGImage::dump):
* svg/graphics/SVGImage.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191352 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoUse tighter typing for collections / node lists' item() / namedItem() methods
cdumez@apple.com [Tue, 20 Oct 2015 18:48:26 +0000 (18:48 +0000)]
Use tighter typing for collections / node lists' item() / namedItem() methods
https://bugs.webkit.org/show_bug.cgi?id=150347

Reviewed by Darin Adler.

Use tighter typing for collections / node lists' item() / namedItem() methods.

* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::getDocumentLinks):
* dom/LiveNodeList.h:
* dom/StaticNodeList.cpp:
(WebCore::StaticElementList::item):
* dom/StaticNodeList.h:
* html/CachedHTMLCollection.h:
* html/HTMLAllCollection.idl:
* html/HTMLCollection.idl:
* html/HTMLFieldSetElement.cpp:
(WebCore::HTMLFieldSetElement::elements):
(WebCore::HTMLFieldSetElement::elementsForObjC):
* html/HTMLFieldSetElement.h:
* html/HTMLFieldSetElement.idl:
* html/HTMLFormControlsCollection.cpp:
(WebCore::HTMLFormControlsCollection::customElementAfter):
* html/HTMLFormControlsCollection.h:
* html/HTMLFormControlsCollection.idl:
* html/HTMLFormElement.cpp:
(WebCore::HTMLFormElement::item):
(WebCore::HTMLFormElement::elements):
(WebCore::HTMLFormElement::elementsForObjC):
* html/HTMLFormElement.h:
* html/HTMLFormElement.idl:
* html/HTMLOptionsCollection.cpp:
(WebCore::HTMLOptionsCollection::add):
* html/HTMLOptionsCollection.h:
* html/HTMLOptionsCollection.idl:
* html/HTMLSelectElement.cpp:
(WebCore::HTMLSelectElement::namedItem):
(WebCore::HTMLSelectElement::item):
(WebCore::HTMLSelectElement::setOption):
* html/HTMLSelectElement.idl:
* html/HTMLTableRowElement.cpp:
(WebCore::HTMLTableRowElement::deleteCell):
* html/HTMLTableSectionElement.cpp:
(WebCore::HTMLTableSectionElement::deleteRow):
* html/RadioNodeList.cpp:
(WebCore::toRadioButtonInputElement):
(WebCore::RadioNodeList::value):
(WebCore::RadioNodeList::setValue):
* html/RadioNodeList.h:
* html/RadioNodeList.idl:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191351 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoGCAwareJITStubRoutineWithExceptionHandler has a stale CodeBlock pointer in its destructor
sbarati@apple.com [Tue, 20 Oct 2015 18:37:38 +0000 (18:37 +0000)]
GCAwareJITStubRoutineWithExceptionHandler has a stale CodeBlock pointer in its destructor
https://bugs.webkit.org/show_bug.cgi?id=150351

Reviewed by Mark Lam.

We may regenerate many GCAwareJITStubRoutineWithExceptionHandler stubs per one PolymorphicAccess.
Only the last GCAwareJITStubRoutineWithExceptionHandler stub that was generated will get the CodeBlock's aboutToDie()
notification. All other GCAwareJITStubRoutineWithExceptionHandler stubs will still be holding a stale CodeBlock pointer
that they will use in their destructor. The solution is to have GCAwareJITStubRoutineWithExceptionHandler remove its
exception handler in observeZeroRefCount() instead of its destructor. observeZeroRefCount() will run when a PolymorphicAccess
replaces its m_stubRoutine.

* jit/GCAwareJITStubRoutine.cpp:
(JSC::GCAwareJITStubRoutineWithExceptionHandler::aboutToDie):
(JSC::GCAwareJITStubRoutineWithExceptionHandler::observeZeroRefCount):
(JSC::createJITStubRoutine):
(JSC::GCAwareJITStubRoutineWithExceptionHandler::~GCAwareJITStubRoutineWithExceptionHandler): Deleted.
* jit/GCAwareJITStubRoutine.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191350 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoOnly HTML spaces should be stripped from a <script>'s 'for' / 'event' attributes
cdumez@apple.com [Tue, 20 Oct 2015 18:33:38 +0000 (18:33 +0000)]
Only HTML spaces should be stripped from a <script>'s 'for' / 'event' attributes
https://bugs.webkit.org/show_bug.cgi?id=150335

Reviewed by Darin Adler.

Source/WebCore:

Only HTML spaces should be stripped from a <script>'s 'for' / 'event' attributes:
https://html.spec.whatwg.org/multipage/scripting.html#prepare-a-script (step 12.3)
https://html.spec.whatwg.org/multipage/infrastructure.html#space-character

Previously, we were uding the wrong stripping function and we were stripping
some non-HTML spaces.

Test: fast/dom/script-for-event-spaces.html

* dom/ScriptElement.cpp:
(WebCore::ScriptElement::isScriptForEventSupported):

LayoutTests:

Add a layout test to check that U+000B does not get stripped from the
script's 'for' / 'event' attributes.

* fast/dom/script-for-event-spaces-expected.txt: Added.
* fast/dom/script-for-event-spaces.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191349 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agofast/canvas/webgl/tex-image-and-sub-image-2d-with-video-rgba4444.html flakily times...
commit-queue@webkit.org [Tue, 20 Oct 2015 18:15:58 +0000 (18:15 +0000)]
fast/canvas/webgl/tex-image-and-sub-image-2d-with-video-rgba4444.html flakily times out on Mavericks WK1
https://bugs.webkit.org/show_bug.cgi?id=150367

Patch by Ryan Haddad <ryanhaddad@apple.com> on 2015-10-20
Reviewed by Darin Adler.

* platform/mac-wk1/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191348 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoTry to fix the build by disabling MAC_GESTURE_EVENTS on 10.9 and 10.10
timothy_horton@apple.com [Tue, 20 Oct 2015 18:00:34 +0000 (18:00 +0000)]
Try to fix the build by disabling MAC_GESTURE_EVENTS on 10.9 and 10.10

* wtf/FeatureDefines.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191347 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoMac Debug EWS never finishes when there are failures
ap@apple.com [Tue, 20 Oct 2015 17:19:22 +0000 (17:19 +0000)]
Mac Debug EWS never finishes when there are failures
https://bugs.webkit.org/show_bug.cgi?id=150334

Reviewed by Daniel Bates.

* Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:
* Scripts/webkitpy/tool/commands/queues.py:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191345 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoFix the !ENABLE(CSS_GRID_LAYOUT) build after r191128
ossy@webkit.org [Tue, 20 Oct 2015 17:16:15 +0000 (17:16 +0000)]
Fix the !ENABLE(CSS_GRID_LAYOUT) build after r191128
https://bugs.webkit.org/show_bug.cgi?id=150321

Reviewed by Darin Adler.

* css/CSSGrammar.y.in: Typo fix.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191344 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoTry to fix the build by disabling MAC_GESTURE_EVENTS on 10.9 and 10.10
timothy_horton@apple.com [Tue, 20 Oct 2015 16:41:15 +0000 (16:41 +0000)]
Try to fix the build by disabling MAC_GESTURE_EVENTS on 10.9 and 10.10

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191343 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoUnreviewed, rolling out r191333.
commit-queue@webkit.org [Tue, 20 Oct 2015 16:02:48 +0000 (16:02 +0000)]
Unreviewed, rolling out r191333.
https://bugs.webkit.org/show_bug.cgi?id=150362

Caused assertions on regression tests (Requested by ap on
#webkit).

Reverted changeset:

"ERROR: Unhandled web process message
'StorageAreaMap:DispatchStorageEvent'"
https://bugs.webkit.org/show_bug.cgi?id=150315
http://trac.webkit.org/changeset/191333

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191342 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[UNIX] ASSERTION FAILED: m_shouldWaitForSyncReplies in Connection::connectionDidClose()
carlosgc@webkit.org [Tue, 20 Oct 2015 15:04:44 +0000 (15:04 +0000)]
[UNIX] ASSERTION FAILED: m_shouldWaitForSyncReplies in Connection::connectionDidClose()
https://bugs.webkit.org/show_bug.cgi?id=150361

Reviewed by Martin Robinson.

It doesn't always happen because it depends on how sockets are
closed, and the state of the threads. The problem is that we are
not handling the case when the read fails because we closed the
connection. In that case we log the error and call
Connection::connectionDidClose(). But it was connectionDidClose()
the one closing the socket. So, in this particular case it's not an
error but a normal termination, and we shouldn't try to close the
connection again. Something similar can happen while sending a
message, and we get a broken pipe error, but in that case we are
only printing the error, so it's harmless.

* Platform/IPC/unix/ConnectionUnix.cpp:
(IPC::Connection::readyReadHandler): Only print error and call
connectionDidClose() if we are still connected when read fails.
(IPC::Connection::sendOutgoingMessage): Only print error if we are
still connected when send fails.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191341 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[GTK] Graphics corruption when entering/leaving AC mode quickly
carlosgc@webkit.org [Tue, 20 Oct 2015 12:03:56 +0000 (12:03 +0000)]
[GTK] Graphics corruption when entering/leaving AC mode quickly
https://bugs.webkit.org/show_bug.cgi?id=150323

Reviewed by Mario Sanchez Prada.

The UI process is notified when entering accelerated compositing
mode after the layers have been flushed and rendered to avoid
flickering. However, this is producing flickering in the GTK+
port, because we use an offscreen redirected window that is
resized to a minimium size to save memory when not in AC mode. The
web process always uses the current size of the redirected window,
so when entering AC mode, contents are rendered into the 1x1
window, then the UI process is notified, the redirected window is
resized to its actual size, and we force a resize to ask the web
process to render again, now at the correct size. Rendering at 1x1
and then resizing the window is what produces the flickering when
entering AC mode, but it's also inefficient, since we need to
render again after the redirected window is resized. So, this
patch adds a WillEnterAcceleratedCompositing message that is sent
to the UI process when the layer tree host is created but before
the contents have been composited and rendered. This is
implemented by the GTK+ port to prepare for entering AC mode, by
resizing the redirected window. When we actually enter AC mode,
the contents have already been rendered in the web process at the
correct size, so we can just use the redirected window surface
instead of the drawing area one, and paint in the web view without
any flickering. We no longer need the forceResize either.
When leaving accelerated compositing mode, we now clear the redirected
window resources after a short delay. This ensures that we have
already rendered the update sent in the ExitAcceleratedCompositingMode
message, but also that entering/leaving AC mode quickly doesn't
produce any redirected window resize.

* UIProcess/API/gtk/PageClientImpl.cpp:
(WebKit::PageClientImpl::willEnterAcceleratedCompositingMode):
* UIProcess/API/gtk/PageClientImpl.h:
* UIProcess/API/gtk/WebKitWebViewBase.cpp:
(webkitWebViewBaseClearRedirectedWindowSoon):
(webkitWebViewBaseWillEnterAcceleratedCompositingMode):
(webkitWebViewBaseEnterAcceleratedCompositingMode):
(webkitWebViewBaseExitAcceleratedCompositingMode):
* UIProcess/API/gtk/WebKitWebViewBasePrivate.h:
* UIProcess/CoordinatedGraphics/WebView.h:
* UIProcess/DrawingAreaProxy.h:
(WebKit::DrawingAreaProxy::willEnterAcceleratedCompositingMode):
* UIProcess/DrawingAreaProxy.messages.in:
* UIProcess/DrawingAreaProxyImpl.cpp:
(WebKit::DrawingAreaProxyImpl::willEnterAcceleratedCompositingMode):
* UIProcess/DrawingAreaProxyImpl.h:
(WebKit::DrawingAreaProxyImpl::forceResize): Deleted.
* UIProcess/PageClient.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::willEnterAcceleratedCompositingMode):
* UIProcess/WebPageProxy.h:
* UIProcess/ios/PageClientImplIOS.h:
* UIProcess/ios/PageClientImplIOS.mm:
(WebKit::PageClientImpl::willEnterAcceleratedCompositingMode):
* UIProcess/mac/PageClientImpl.h:
* UIProcess/mac/PageClientImpl.mm:
(WebKit::PageClientImpl::willEnterAcceleratedCompositingMode):
* WebProcess/WebPage/DrawingAreaImpl.cpp:
(WebKit::DrawingAreaImpl::enterAcceleratedCompositingMode):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191340 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[GTK] Enable OpenWebRTC test video/audio sources in tests
philn@webkit.org [Tue, 20 Oct 2015 11:37:52 +0000 (11:37 +0000)]
[GTK] Enable OpenWebRTC test video/audio sources in tests

This is needed because we can't expect the buildbots to have
webcam/mic devices plugged in.

Rubber-stamped by Carlos Garcia Campos.

* Scripts/run-gtk-tests:
(TestRunner._setup_testing_environment):
* Scripts/webkitpy/port/gtk.py:
(GtkPort.setup_environ_for_server):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191339 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[GTK] Fix build for ENABLE_PLUGIN_PROCESS_GTK2=OFF
svillar@igalia.com [Tue, 20 Oct 2015 10:40:55 +0000 (10:40 +0000)]
[GTK] Fix build for ENABLE_PLUGIN_PROCESS_GTK2=OFF
https://bugs.webkit.org/show_bug.cgi?id=150086

Reviewed by Darin Adler.

* UIProcess/cairo/BackingStoreCairo.cpp:
(WebKit::BackingStore::createBackend):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191338 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[Streams API] Update readable-stream-templated tests to latest spec
calvaris@igalia.com [Tue, 20 Oct 2015 10:07:36 +0000 (10:07 +0000)]
[Streams API] Update readable-stream-templated tests to latest spec
https://bugs.webkit.org/show_bug.cgi?id=149668

Reviewed by Darin Adler.

* streams/reference-implementation/readable-stream-expected.txt: Updated expectations.
* streams/reference-implementation/readable-stream.html: Updated tests.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191337 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoASSERTION FAILED: computeMainAxisExtentForChild(child, MainOrPreferredSize, mainSize...
svillar@igalia.com [Tue, 20 Oct 2015 09:57:23 +0000 (09:57 +0000)]
ASSERTION FAILED: computeMainAxisExtentForChild(child, MainOrPreferredSize, mainSize) in WebCore::RenderFlexibleBox::adjustChildSizeForMinAndMax
https://bugs.webkit.org/show_bug.cgi?id=149459

Reviewed by Darin Adler.

Source/WebCore:

This was regressed after 189567 where min-height|width:auto
support was added to flex items. The merge from Blink changes
was not correctly done for assertions. In particular we were
asserting if the resolved main size was not strictly greater
than 0, but 0 is actually a valid value.

Test: fast/flexbox/crash-resolved-main-size-zero.html

* rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::adjustChildSizeForMinAndMax):

LayoutTests:

* fast/flexbox/crash-resolved-main-size-zero-expected.txt: Added.
* fast/flexbox/crash-resolved-main-size-zero.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191336 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[Streams API] Rework some readable stream internals that can be common to writable...
calvaris@igalia.com [Tue, 20 Oct 2015 09:51:09 +0000 (09:51 +0000)]
[Streams API] Rework some readable stream internals that can be common to writable streams
https://bugs.webkit.org/show_bug.cgi?id=150133

Reviewed by Darin Adler.

Source/JavaScriptCore:

* runtime/CommonIdentifiers.h:
* runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::init): Added RangeError also as native functions.

Source/WebCore:

There are some things in ReadableStream internals that be be used also for Writable Streams so it was necessary
to move some functions and refactor some code that can be shared by both implementations.

Queue was written with the functions declared at the implementation and keeping the improvement of having the
total size calculated instead of having to transverse the whole array.

The strategy is kept as an object and a common method is used to validate it as per spec.

Promises are reworked to keep in an internal slot inside the promise object the resolve and reject
functions. For convinience three functions were written, one to create the promise (and keep internally the
resolve and reject functions), one to resolve and another to reject. Promises can still be created with
Promise.resolve or reject as the resolve and rejectStreamsPromise functions operate under the assumption that
the internal slots might not exist.

invokeOrNoop and promiseInvokeOrNoop were moved to the common code as they will be also used by WritableStream.

Current test set suffices.

* CMakeLists.txt:
* DerivedSources.make:
* WebCore.xcodeproj/project.pbxproj:
* bindings/js/JSDOMWindowBase.cpp:
* bindings/js/WebCoreJSBuiltinInternals.h:
* bindings/js/WebCoreJSBuiltins.cpp:
* bindings/js/WebCoreJSBuiltins.h: Build infrastructure.
* Modules/streams/ReadableStream.js:
(initializeReadableStream): Reworked queue and strategy.
* Modules/streams/ReadableStreamInternals.js:
(privateInitializeReadableStreamReader):
(errorReadableStream):
(getReadableStreamDesiredSize):
(cancelReadableStream):
(closeReadableStream):
(closeReadableStreamReader):
(enqueueInReadableStream):
(readFromReadableStreamReader): Reworked queue, strategy and promises.
(invokeOrNoop): Deleted.
(promiseInvokeOrNoop): Deleted.
* Modules/streams/StreamInternals.js: Added.
(invokeOrNoop):
(promiseInvokeOrNoop): Moved from ReadableStreamInternals.js.
(validateAndNormalizeQueuingStrategy):
(createNewStreamsPromise):
(resolveStreamsPromise):
(rejectStreamsPromise):
(newQueue):
(dequeueValue):
(enqueueValueWithSize): Added according to the spec.
* bindings/js/WebCoreBuiltinNames.h: Updated private names according to the new slots.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191335 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoRename the PICTURE_SIZES flag to CURRENTSRC
yoav@yoav.ws [Tue, 20 Oct 2015 09:49:46 +0000 (09:49 +0000)]
Rename the PICTURE_SIZES flag to CURRENTSRC
https://bugs.webkit.org/show_bug.cgi?id=150275

Reviewed by Dean Jackson.

.:

* Source/cmake/OptionsEfl.cmake:
* Source/cmake/OptionsGTK.cmake:
* Source/cmake/OptionsMac.cmake:
* Source/cmake/OptionsWin.cmake:
* Source/cmake/WebKitFeatures.cmake:

Source/JavaScriptCore:

* Configurations/FeatureDefines.xcconfig:

Source/WebCore:

No new tests, since there is no functional change.

* Configurations/FeatureDefines.xcconfig:
* html/HTMLImageElement.cpp:
* html/HTMLImageElement.h:
* html/HTMLImageElement.idl:

Source/WebKit/mac:

* Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

* Configurations/FeatureDefines.xcconfig:

Source/WTF:

* wtf/FeatureDefines.h:

Tools:

* Scripts/webkitperl/FeatureList.pm:

WebKitLibraries:

* win/tools/vsprops/FeatureDefines.props:
* win/tools/vsprops/FeatureDefinesCairo.props:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191334 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoERROR: Unhandled web process message 'StorageAreaMap:DispatchStorageEvent'
carlosgc@webkit.org [Tue, 20 Oct 2015 06:21:00 +0000 (06:21 +0000)]
ERROR: Unhandled web process message 'StorageAreaMap:DispatchStorageEvent'
https://bugs.webkit.org/show_bug.cgi?id=150315

Reviewed by Andreas Kling.

It was introduced in r184930, that keeps the session storage area
maps alive in the UI process when they are destroyed by the web
process. The problem is that we also keep the listeners, so that
events are also dispatched to the listeners of destroyed areas,
and the message handlers were removed in the web process.

* UIProcess/Storage/StorageManager.cpp:
(WebKit::StorageManager::createTransientLocalStorageMap): Add a
listener for the new storage map ID when the map is reused.
(WebKit::StorageManager::destroyStorageMap): Always remove
listeners of destroyed maps.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191333 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoASSERTION FAILED: m_state == Initialized in SubresourceLoader::didReceiveResponse()
carlosgc@webkit.org [Tue, 20 Oct 2015 06:18:15 +0000 (06:18 +0000)]
ASSERTION FAILED: m_state == Initialized in SubresourceLoader::didReceiveResponse()
https://bugs.webkit.org/show_bug.cgi?id=150327

Reviewed by Antti Koivisto.

This is how it happens:

1. print() is called while the document is still loading, so
   m_shouldPrintWhenFinishedLoading is set to true
2. DataURLDecoder::decode() finishes in the work queue thread,
   the completion handler is scheduled in the main thread
3. The load is cancelled
  3.1. SubresourceLoader::willCancel sets m_state = Finishing
  3.2. DOMWindow::finishedLoading() is called, and since
       m_shouldPrintWhenFinishedLoading is true, it does the print.
  3.3. Cancellation finishes and ResourceLoader::releaseResources()
       is called that sets m_reachedTerminalState = true

So, between 3.1 and 3.3, the state is Finishing, but
m_reachedTerminalState is false. What happens, in the GTK+ port at
least, is that the nested main loop used to make print()
synchronous, processes the DataURLDecoder::decode() completion
handler that was pending. The completion handler returns early if
m_reachedTerminalState is true, but it's not yet in this
particular case. So, it ends up calling didReceiveResponse,
because the decode didn't fail, when the subresource loader state
is Finishing.

I think there are two things here. One is that we shouldn't start
a print that was waiting for the load to finish when it
failed. That would fix the problem. But it's probably a good idea
to also check for cancellation in the DataURLDecoder::decode()
completion handler.

Fixes printing/print-close-crash.html in GTK+ Debug.

* loader/ResourceLoader.cpp:
(WebCore::ResourceLoader::loadDataURL): Return early from
DataURLDecoder::decode() completion handler if the load was cancelled.
* page/DOMWindow.cpp:
(WebCore::DOMWindow::finishedLoading): Do not start a print that
was witing for the load to finish when it failed.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191332 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoFontCascade::typesettingFeatures() is not privy to font-variant-* nor font-feature...
mmaxfield@apple.com [Tue, 20 Oct 2015 04:55:27 +0000 (04:55 +0000)]
FontCascade::typesettingFeatures() is not privy to font-variant-* nor font-feature-settings
https://bugs.webkit.org/show_bug.cgi?id=149775

Reviewed by Darin Adler.

Source/WebCore:

This patch has two pieces:

We used to have a boolean, enableLigatures, which affected how we perform shaping in both our
simple and complex text codepaths. However, in this brave new world of font-feature-settings
and font-variant-*, there are many properties which may affect shaping (and multiple kinds
of ligatures). This patch renames this boolean to requiresShaping, and teaches it about all
the various properties which affect text shaping.

Similarly, one of the places which used this enableLigatures boolean was to tell CoreText
if it should disable ligatures. However, we now have much finer-grained control over
ligatures during font creation. This patch moves the responsibility of dictating which
font features should be enabled entirely to the Font. Therefore, getCFStringAttributes()
doesn't know anything about ligatures anymore; the logic inside font creation is used
instead.

An added benefit of moving all the font feature logic to one place is that we can implement
the feature resolution algorithm described in the CSS3 fonts spec. This patch adds a test to
makes sure that text-rendering, font-feature-settings, and font-variant-* play together
nicely.

Test: fast/text/multiple-feature-properties.html

* platform/graphics/Font.cpp:
(WebCore::Font::applyTransforms):
* platform/graphics/Font.h:
* platform/graphics/FontCascade.cpp:
(WebCore::FontCascade::FontCascade):
(WebCore::FontCascade::operator=):
(WebCore::FontCascade::update):
(WebCore::FontCascade::drawText):
(WebCore::FontCascade::drawEmphasisMarks):
(WebCore::FontCascade::width):
(WebCore::FontCascade::adjustSelectionRectForText):
(WebCore::FontCascade::offsetForPosition):
(WebCore::FontCascade::codePath):
(WebCore::FontCascade::floatWidthForSimpleText):
* platform/graphics/FontCascade.h:
(WebCore::FontCascade::requiresShaping):
(WebCore::FontCascade::computeRequiresShaping):
(WebCore::FontCascade::enableLigatures): Deleted.
(WebCore::FontCascade::computeEnableLigatures): Deleted.
* platform/graphics/WidthIterator.cpp:
(WebCore::WidthIterator::WidthIterator):
(WebCore::WidthIterator::applyFontTransforms):
* platform/graphics/WidthIterator.h:
* platform/graphics/cocoa/FontCacheCoreText.cpp:
(WebCore::preparePlatformFont):
* platform/graphics/cocoa/FontCocoa.mm:
(WebCore::Font::canRenderCombiningCharacterSequence):
* platform/graphics/mac/ComplexTextControllerCoreText.mm:
(WebCore::ComplexTextController::collectComplexTextRunsForCharacters):
* platform/graphics/mac/SimpleFontDataCoreText.cpp:
(WebCore::Font::getCFStringAttributes):
* svg/SVGFontData.h:

LayoutTests:

* fast/text/multiple-feature-properties-expected.html: Added.
* fast/text/multiple-feature-properties.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191331 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoShadow GraphicsContext's ImageInterpolationQuality inside GraphicsContextState
mmaxfield@apple.com [Tue, 20 Oct 2015 04:22:59 +0000 (04:22 +0000)]
Shadow GraphicsContext's ImageInterpolationQuality inside GraphicsContextState
https://bugs.webkit.org/show_bug.cgi?id=150306

Reviewed by Simon Fraser.

When getting the ImageInterpolationQuality, there is no need to round-trip through
the platform's graphics context. This patch migrates this piece of state to the
existing idiom of having a setter in GraphicsContext.cpp which sets the relevent
state in GraphicsContextState and then calls into a platform-specific setter.

No new tests because there is no behavior change.

* platform/graphics/GraphicsContext.cpp:
(WebCore::GraphicsContext::setImageInterpolationQuality):
* platform/graphics/GraphicsContext.h:
(WebCore::GraphicsContext::imageInterpolationQuality):
* platform/graphics/cairo/GraphicsContextCairo.cpp:
(WebCore::GraphicsContext::setPlatformImageInterpolationQuality):
(WebCore::GraphicsContext::setImageInterpolationQuality): Deleted.
(WebCore::GraphicsContext::imageInterpolationQuality): Deleted.
* platform/graphics/cg/GraphicsContextCG.cpp:
(WebCore::convertInterpolationQuality):
(WebCore::GraphicsContext::platformInit):
(WebCore::GraphicsContext::setPlatformImageInterpolationQuality):
(WebCore::GraphicsContext::setImageInterpolationQuality): Deleted.
(WebCore::GraphicsContext::imageInterpolationQuality): Deleted.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191330 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoDrop unnecessary Node::toInputElement() virtual function
cdumez@apple.com [Tue, 20 Oct 2015 03:29:34 +0000 (03:29 +0000)]
Drop unnecessary Node::toInputElement() virtual function
https://bugs.webkit.org/show_bug.cgi?id=150341

Reviewed by Darin Adler.

Drop unnecessary Node::toInputElement() virtual function and use the
usual is<HTMLInputElement>() / downcast< HTMLInputElement >() instead.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191327 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoUnreviewed, rolling out r191324.
commit-queue@webkit.org [Tue, 20 Oct 2015 02:43:59 +0000 (02:43 +0000)]
Unreviewed, rolling out r191324.
https://bugs.webkit.org/show_bug.cgi?id=150352

Shadowing CTM's state is not necessary (Requested by litherum
on #webkit).

Reverted changeset:

"Host GraphicsContext's CTM inside GraphicsContextState"
https://bugs.webkit.org/show_bug.cgi?id=150146
http://trac.webkit.org/changeset/191324

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191326 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoUnreviewed, add myself to the committers list.
hs85.jeong@samsung.com [Tue, 20 Oct 2015 02:23:44 +0000 (02:23 +0000)]
Unreviewed, add myself to the committers list.

* Scripts/webkitpy/common/config/contributors.json:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191325 268f45cc-cd09-0410-ab3c-d52691b4dbfc