commit-queue@webkit.org [Thu, 21 Jan 2016 15:27:39 +0000 (15:27 +0000)]
Ensure to use compatible liborc version with wanted gstreamer version
https://bugs.webkit.org/show_bug.cgi?id=153276
For example gst-plugins-base-1.4.4 fails to build with liborc-0.4.24.
The user may have a very recent liborc installed on his system.
Patch by Julien Isorce <j.isorce@samsung.com> on 2016-01-21
Reviewed by Philippe Normand.
* efl/jhbuild.modules: add liborc-0.4.17 and make it a gst dependency.
* gtk/jhbuild.modules: add liborc-0.4.17 and make it a gst depencendy.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195408
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
peavo@outlook.com [Thu, 21 Jan 2016 12:51:44 +0000 (12:51 +0000)]
[B3][CMake] Add missing source file.
https://bugs.webkit.org/show_bug.cgi?id=153303
Reviewed by Csaba Osztrogonác.
* CMakeLists.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195407
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
carlosgc@webkit.org [Thu, 21 Jan 2016 09:17:02 +0000 (09:17 +0000)]
[SOUP] GResource resources should be cached indefinitely in memory cache
https://bugs.webkit.org/show_bug.cgi?id=153275
Reviewed by Žan Doberšek.
GResources can't change so they will always return the same data,
we never need to revalidate them.
* loader/cache/CachedResource.cpp:
(WebCore::shouldCacheSchemeIndefinitely):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195406
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
n_wang@apple.com [Thu, 21 Jan 2016 08:35:10 +0000 (08:35 +0000)]
AX: [IOS] Implement next/previous text marker functions using TextIterator
https://bugs.webkit.org/show_bug.cgi?id=153292
<rdar://problem/
24268243>
Reviewed by Chris Fleizach.
Source/WebCore:
Added support for the refactored next/previous text marker functions on iOS. And
made text marker tests working on iOS.
Also, fixed an issue in AXObjectCache where creating a range with a replaced node
at the start or end might exclude that node.
Tests: accessibility/text-marker/text-marker-previous-next.html
accessibility/text-marker/text-marker-with-user-select-none.html
* accessibility/AXObjectCache.cpp:
(WebCore::characterOffsetsInOrder):
(WebCore::resetNodeAndOffsetForReplacedNode):
(WebCore::AXObjectCache::rangeForUnorderedCharacterOffsets):
* accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
(+[WebAccessibilityTextMarker textMarkerWithVisiblePosition:cache:]):
(+[WebAccessibilityTextMarker textMarkerWithCharacterOffset:cache:]):
(+[WebAccessibilityTextMarker startOrEndTextMarkerForRange:isStart:cache:]):
(-[WebAccessibilityTextMarker dataRepresentation]):
(-[WebAccessibilityTextMarker visiblePosition]):
(-[WebAccessibilityTextMarker characterOffset]):
(-[WebAccessibilityTextMarker isIgnored]):
(-[WebAccessibilityTextMarker accessibilityObject]):
(-[WebAccessibilityTextMarker description]):
(-[WebAccessibilityObjectWrapper stringForTextMarkers:]):
(blockquoteLevel):
(-[WebAccessibilityObjectWrapper textMarkerRange]):
(-[WebAccessibilityObjectWrapper accessibilityObjectForTextMarker:]):
(-[WebAccessibilityObjectWrapper nextMarkerForMarker:]):
(-[WebAccessibilityObjectWrapper previousMarkerForMarker:]):
(-[WebAccessibilityObjectWrapper textMarkerForPoint:]):
(-[WebAccessibilityObjectWrapper nextMarkerForCharacterOffset:]):
(-[WebAccessibilityObjectWrapper previousMarkerForCharacterOffset:]):
(-[WebAccessibilityObjectWrapper rangeForTextMarkers:]):
(-[WebAccessibilityObjectWrapper lengthForTextMarkers:]):
(-[WebAccessibilityObjectWrapper startOrEndTextMarkerForTextMarkers:isStart:]):
(-[WebAccessibilityObjectWrapper textMarkerRangeForMarkers:]):
(-[WebAccessibilityObjectWrapper accessibilityIdentifier]):
Tools:
Made text marker tests available on iOS.
* DumpRenderTree/AccessibilityTextMarker.h:
* DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
* DumpRenderTree/ios/AccessibilityTextMarkerIOS.mm: Added.
(AccessibilityTextMarker::AccessibilityTextMarker):
(AccessibilityTextMarker::~AccessibilityTextMarker):
(AccessibilityTextMarker::isEqual):
(AccessibilityTextMarker::platformTextMarker):
(AccessibilityTextMarkerRange::AccessibilityTextMarkerRange):
(AccessibilityTextMarkerRange::~AccessibilityTextMarkerRange):
(AccessibilityTextMarkerRange::isEqual):
(AccessibilityTextMarkerRange::platformTextMarkerRange):
* DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
(AccessibilityUIElement::pathDescription):
(AccessibilityUIElement::lineTextMarkerRangeForTextMarker):
(AccessibilityUIElement::textMarkerRangeForElement):
(AccessibilityUIElement::selectedTextMarkerRange):
(AccessibilityUIElement::resetSelectedTextMarkerRange):
(AccessibilityUIElement::textMarkerRangeLength):
(AccessibilityUIElement::textMarkerRangeForMarkers):
(AccessibilityUIElement::startTextMarkerForTextMarkerRange):
(AccessibilityUIElement::endTextMarkerForTextMarkerRange):
(AccessibilityUIElement::accessibilityElementForTextMarker):
(AccessibilityUIElement::endTextMarkerForBounds):
(AccessibilityUIElement::startTextMarkerForBounds):
(AccessibilityUIElement::textMarkerForPoint):
(AccessibilityUIElement::previousTextMarker):
(AccessibilityUIElement::nextTextMarker):
(AccessibilityUIElement::stringForTextMarkerRange):
(AccessibilityUIElement::attributedStringForTextMarkerRangeContainsAttribute):
(AccessibilityUIElement::indexForTextMarker):
(AccessibilityUIElement::isTextMarkerValid):
(AccessibilityUIElement::textMarkerForIndex):
(AccessibilityUIElement::startTextMarker):
(AccessibilityUIElement::endTextMarker):
(AccessibilityUIElement::setSelectedVisibleTextRange):
(AccessibilityUIElement::getLinkedUIElements):
* DumpRenderTree/mac/AccessibilityTextMarkerMac.mm:
(AccessibilityTextMarkerRange::platformTextMarkerRange):
* DumpRenderTree/mac/AccessibilityUIElementMac.mm:
(AccessibilityUIElement::removeSelection):
(AccessibilityUIElement::lineTextMarkerRangeForTextMarker):
(AccessibilityUIElement::setSelectedVisibleTextRange):
(AccessibilityUIElement::supportedActions):
* WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
(WTR::AccessibilityUIElement::textMarkerRangeForElement):
(WTR::AccessibilityUIElement::textMarkerRangeLength):
(WTR::AccessibilityUIElement::previousTextMarker):
(WTR::AccessibilityUIElement::nextTextMarker):
(WTR::AccessibilityUIElement::stringForTextMarkerRange):
(WTR::AccessibilityUIElement::textMarkerRangeForMarkers):
(WTR::AccessibilityUIElement::startTextMarkerForTextMarkerRange):
(WTR::AccessibilityUIElement::endTextMarkerForTextMarkerRange):
(WTR::AccessibilityUIElement::endTextMarkerForBounds):
(WTR::AccessibilityUIElement::accessibilityElementForTextMarker):
(WTR::AccessibilityUIElement::attributedStringForTextMarkerRangeContainsAttribute):
LayoutTests:
* accessibility/mac/previous-next-text-marker-expected.txt: Removed.
* accessibility/mac/previous-next-text-marker.html: Removed.
* accessibility/mac/text-marker-with-user-select-none-expected.txt: Removed.
* accessibility/mac/text-marker-with-user-select-none.html: Removed.
* accessibility/text-marker: Added.
* accessibility/text-marker/text-marker-previous-next-expected.txt: Added.
* accessibility/text-marker/text-marker-previous-next.html: Added.
* accessibility/text-marker/text-marker-with-user-select-none-expected.txt: Added.
* accessibility/text-marker/text-marker-with-user-select-none.html: Added.
* platform/efl/TestExpectations:
* platform/gtk/TestExpectations:
* platform/ios-simulator/TestExpectations:
* platform/win/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195405
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Thu, 21 Jan 2016 04:47:23 +0000 (04:47 +0000)]
Unreviewed, rolling out r195375.
https://bugs.webkit.org/show_bug.cgi?id=153300
Caused crashes on GuardMalloc (Requested by ap on #webkit).
Reverted changeset:
"TypedArray's .buffer does not return the JSArrayBuffer that
was passed to it on creation."
https://bugs.webkit.org/show_bug.cgi?id=153281
http://trac.webkit.org/changeset/195375
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195398
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zalan@apple.com [Thu, 21 Jan 2016 03:50:45 +0000 (03:50 +0000)]
victordarras.fr/cssgame/ doesn't work in Safari.
https://bugs.webkit.org/show_bug.cgi?id=153285
<rdar://problem/
24212369>
Reviewed by Tim Horton.
This patch adds support for hittesting ClipPathOperation::Reference.
Source/WebCore:
Tests: svg/clip-path/hittest-clip-path-reference-miss.html
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::nodeAtPoint):
* rendering/RenderObject.h:
(WebCore::RenderObject::isSVGResourceClipper):
* rendering/svg/RenderSVGResourceClipper.h:
(isType):
LayoutTests:
* svg/clip-path/hittest-clip-path-reference-miss-expected.html: Added.
* svg/clip-path/hittest-clip-path-reference-miss.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195397
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fpizlo@apple.com [Thu, 21 Jan 2016 03:20:32 +0000 (03:20 +0000)]
Unreviewed, revert accidental unreviewed commit.
* Scripts/display-profiler-output:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195396
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fpizlo@apple.com [Thu, 21 Jan 2016 03:12:55 +0000 (03:12 +0000)]
B3 should have basic path specialization
https://bugs.webkit.org/show_bug.cgi?id=153200
Reviewed by Benjamin Poulain.
Source/JavaScriptCore:
This adds two different kind of path specializations:
- Check(Select) where the Select results are constants is specialized into a Branch
instead of a Select and duplicated paths where the results of the Select are folded.
- Tail duplication. A jump to a small block causes the block's contents to be copied over
the Jump.
Both optimizations required being able to clone Values. We can now do that using
proc.clone(value).
Check(Select) specialization needed some utilities for walking graphs of Values.
Tail duplication needed SSA fixup, so I added a way to demote values to anonymous stack
slots (B3's equivalent of non-SSA variables) and a way to "fix SSA", i.e. to allocate
anonymous stack slots to SSA values along with an optimal Phi graph.
This is a big speed-up on Octane/deltablue. It's a 2.2% speed-up on Octane overall.
* CMakeLists.txt:
* JavaScriptCore.xcodeproj/project.pbxproj:
* b3/B3ArgumentRegValue.cpp:
(JSC::B3::ArgumentRegValue::dumpMeta):
(JSC::B3::ArgumentRegValue::cloneImpl):
* b3/B3ArgumentRegValue.h:
* b3/B3BasicBlock.cpp:
(JSC::B3::BasicBlock::append):
(JSC::B3::BasicBlock::appendNonTerminal):
(JSC::B3::BasicBlock::removeLast):
* b3/B3BasicBlock.h:
(JSC::B3::BasicBlock::values):
* b3/B3BasicBlockInlines.h:
(JSC::B3::BasicBlock::appendNew):
(JSC::B3::BasicBlock::appendNewNonTerminal):
(JSC::B3::BasicBlock::replaceLastWithNew):
* b3/B3BlockInsertionSet.h:
* b3/B3BreakCriticalEdges.cpp: Added.
(JSC::B3::breakCriticalEdges):
* b3/B3BreakCriticalEdges.h: Added.
* b3/B3CCallValue.cpp:
(JSC::B3::CCallValue::~CCallValue):
(JSC::B3::CCallValue::cloneImpl):
* b3/B3CCallValue.h:
* b3/B3CheckValue.cpp:
(JSC::B3::CheckValue::convertToAdd):
(JSC::B3::CheckValue::cloneImpl):
(JSC::B3::CheckValue::CheckValue):
* b3/B3CheckValue.h:
* b3/B3Const32Value.cpp:
(JSC::B3::Const32Value::dumpMeta):
(JSC::B3::Const32Value::cloneImpl):
* b3/B3Const32Value.h:
* b3/B3Const64Value.cpp:
(JSC::B3::Const64Value::dumpMeta):
(JSC::B3::Const64Value::cloneImpl):
* b3/B3Const64Value.h:
* b3/B3ConstDoubleValue.cpp:
(JSC::B3::ConstDoubleValue::dumpMeta):
(JSC::B3::ConstDoubleValue::cloneImpl):
* b3/B3ConstDoubleValue.h:
* b3/B3ConstFloatValue.cpp:
(JSC::B3::ConstFloatValue::dumpMeta):
(JSC::B3::ConstFloatValue::cloneImpl):
* b3/B3ConstFloatValue.h:
* b3/B3ControlValue.cpp:
(JSC::B3::ControlValue::dumpMeta):
(JSC::B3::ControlValue::cloneImpl):
* b3/B3ControlValue.h:
* b3/B3DuplicateTails.cpp: Added.
(JSC::B3::duplicateTails):
* b3/B3DuplicateTails.h: Added.
* b3/B3FixSSA.cpp: Added.
(JSC::B3::demoteValues):
(JSC::B3::fixSSA):
* b3/B3FixSSA.h: Added.
* b3/B3Generate.cpp:
(JSC::B3::generateToAir):
* b3/B3IndexSet.h:
(JSC::B3::IndexSet::Iterable::Iterable):
(JSC::B3::IndexSet::values):
(JSC::B3::IndexSet::indices):
* b3/B3InsertionSet.cpp:
(JSC::B3::InsertionSet::insertIntConstant):
(JSC::B3::InsertionSet::insertBottom):
(JSC::B3::InsertionSet::execute):
* b3/B3InsertionSet.h:
* b3/B3LowerToAir.cpp:
(JSC::B3::Air::LowerToAir::run):
(JSC::B3::Air::LowerToAir::tmp):
* b3/B3MemoryValue.cpp:
(JSC::B3::MemoryValue::dumpMeta):
(JSC::B3::MemoryValue::cloneImpl):
* b3/B3MemoryValue.h:
* b3/B3OriginDump.cpp: Added.
(JSC::B3::OriginDump::dump):
* b3/B3OriginDump.h:
(JSC::B3::OriginDump::OriginDump):
(JSC::B3::OriginDump::dump): Deleted.
* b3/B3PatchpointValue.cpp:
(JSC::B3::PatchpointValue::dumpMeta):
(JSC::B3::PatchpointValue::cloneImpl):
(JSC::B3::PatchpointValue::PatchpointValue):
* b3/B3PatchpointValue.h:
* b3/B3Procedure.cpp:
(JSC::B3::Procedure::addBlock):
(JSC::B3::Procedure::clone):
(JSC::B3::Procedure::addIntConstant):
(JSC::B3::Procedure::addBottom):
(JSC::B3::Procedure::addBoolConstant):
(JSC::B3::Procedure::deleteValue):
* b3/B3Procedure.h:
* b3/B3ReduceStrength.cpp:
* b3/B3SSACalculator.cpp: Added.
(JSC::B3::SSACalculator::Variable::dump):
(JSC::B3::SSACalculator::Variable::dumpVerbose):
(JSC::B3::SSACalculator::Def::dump):
(JSC::B3::SSACalculator::SSACalculator):
(JSC::B3::SSACalculator::~SSACalculator):
(JSC::B3::SSACalculator::reset):
(JSC::B3::SSACalculator::newVariable):
(JSC::B3::SSACalculator::newDef):
(JSC::B3::SSACalculator::nonLocalReachingDef):
(JSC::B3::SSACalculator::reachingDefAtTail):
(JSC::B3::SSACalculator::dump):
* b3/B3SSACalculator.h: Added.
(JSC::B3::SSACalculator::Variable::index):
(JSC::B3::SSACalculator::Variable::Variable):
(JSC::B3::SSACalculator::Def::variable):
(JSC::B3::SSACalculator::Def::block):
(JSC::B3::SSACalculator::Def::value):
(JSC::B3::SSACalculator::Def::Def):
(JSC::B3::SSACalculator::variable):
(JSC::B3::SSACalculator::computePhis):
(JSC::B3::SSACalculator::phisForBlock):
(JSC::B3::SSACalculator::reachingDefAtHead):
* b3/B3StackSlotKind.h:
* b3/B3StackSlotValue.cpp:
(JSC::B3::StackSlotValue::dumpMeta):
(JSC::B3::StackSlotValue::cloneImpl):
* b3/B3StackSlotValue.h:
* b3/B3SwitchValue.cpp:
(JSC::B3::SwitchValue::dumpMeta):
(JSC::B3::SwitchValue::cloneImpl):
(JSC::B3::SwitchValue::SwitchValue):
* b3/B3SwitchValue.h:
* b3/B3UpsilonValue.cpp:
(JSC::B3::UpsilonValue::dumpMeta):
(JSC::B3::UpsilonValue::cloneImpl):
* b3/B3UpsilonValue.h:
* b3/B3Validate.cpp:
* b3/B3Value.cpp:
(JSC::B3::Value::replaceWithNop):
(JSC::B3::Value::replaceWithPhi):
(JSC::B3::Value::dump):
(JSC::B3::Value::cloneImpl):
(JSC::B3::Value::dumpChildren):
(JSC::B3::Value::deepDump):
* b3/B3Value.h:
(JSC::B3::DeepValueDump::DeepValueDump):
(JSC::B3::DeepValueDump::dump):
(JSC::B3::deepDump):
* b3/B3ValueInlines.h:
(JSC::B3::Value::asNumber):
(JSC::B3::Value::walk):
* b3/B3ValueKey.cpp:
(JSC::B3::ValueKey::intConstant):
(JSC::B3::ValueKey::dump):
* b3/B3ValueKey.h:
(JSC::B3::ValueKey::ValueKey):
(JSC::B3::ValueKey::opcode):
(JSC::B3::ValueKey::type):
(JSC::B3::ValueKey::childIndex):
* b3/air/AirCode.h:
(JSC::B3::Air::Code::forAllTmps):
(JSC::B3::Air::Code::isFastTmp):
* b3/air/AirIteratedRegisterCoalescing.cpp:
* b3/air/AirUseCounts.h:
(JSC::B3::Air::UseCounts::UseCounts):
(JSC::B3::Air::UseCounts::operator[]):
(JSC::B3::Air::UseCounts::dump):
* b3/testb3.cpp:
(JSC::B3::testSelectInvert):
(JSC::B3::testCheckSelect):
(JSC::B3::testCheckSelectCheckSelect):
(JSC::B3::testPowDoubleByIntegerLoop):
(JSC::B3::run):
* runtime/Options.h:
Source/WTF:
* wtf/GraphNodeWorklist.h:
(WTF::GraphNodeWorklist::push):
(WTF::GraphNodeWorklist::pushAll):
(WTF::GraphNodeWorklist::isEmpty):
(WTF::GraphNodeWorklist::notEmpty):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195395
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
beidson@apple.com [Thu, 21 Jan 2016 02:13:21 +0000 (02:13 +0000)]
Modern IDB: Add -private.html variants of every storage/indexeddb test that doesn't already have them.
https://bugs.webkit.org/show_bug.cgi?id=153272
Reviewed by Alex Christensen.
This includes some cleanups to the shared js files to make each test more resilient to being run twice.
* TestExpectations:
* platform/mac-wk1/TestExpectations:
* platform/wk2/TestExpectations:
* storage/indexeddb/clone-exception-private-expected.txt: Added.
* storage/indexeddb/clone-exception-private.html: Added.
* storage/indexeddb/closed-cursor-private-expected.txt: Added.
* storage/indexeddb/closed-cursor-private.html: Added.
* storage/indexeddb/connection-leak-private-expected.txt: Added.
* storage/indexeddb/connection-leak-private.html: Added.
* storage/indexeddb/cursor-cast-private-expected.txt: Added.
* storage/indexeddb/cursor-cast-private.html: Added.
* storage/indexeddb/cursor-leak-private-expected.txt: Added.
* storage/indexeddb/cursor-leak-private.html: Added.
* storage/indexeddb/cursor-overloads-private-expected.txt: Added.
* storage/indexeddb/cursor-overloads-private.html: Added.
* storage/indexeddb/cursor-request-cycle-private-expected.txt: Added.
* storage/indexeddb/cursor-request-cycle-private.html: Added.
* storage/indexeddb/deleteIndex-bug110792-private-expected.txt: Added.
* storage/indexeddb/deleteIndex-bug110792-private.html: Added.
* storage/indexeddb/deletedatabase-delayed-by-versionchange-private-expected.txt: Removed.
* storage/indexeddb/deletedatabase-transaction-private-expected.txt: Added.
* storage/indexeddb/deletedatabase-transaction-private.html: Added.
* storage/indexeddb/dont-commit-on-blocked-private-expected.txt: Added.
* storage/indexeddb/dont-commit-on-blocked-private.html: Added.
* storage/indexeddb/lazy-index-population-private-expected.txt: Added.
* storage/indexeddb/lazy-index-population-private.html: Added.
* storage/indexeddb/metadata-race-private-expected.txt: Added.
* storage/indexeddb/metadata-race-private.html: Added.
* storage/indexeddb/modern/abort-objectstore-info-private-expected.txt: Added.
* storage/indexeddb/modern/abort-objectstore-info-private.html: Added.
* storage/indexeddb/modern/abort-requests-cancelled-private-expected.txt: Added.
* storage/indexeddb/modern/abort-requests-cancelled-private.html: Added.
* storage/indexeddb/modern/aborted-put-private-expected.txt: Added.
* storage/indexeddb/modern/aborted-put-private.html: Added.
* storage/indexeddb/modern/autoincrement-abort-private-expected.txt: Added.
* storage/indexeddb/modern/autoincrement-abort-private.html: Added.
* storage/indexeddb/modern/basic-add-private-expected.txt: Added.
* storage/indexeddb/modern/basic-add-private.html: Added.
* storage/indexeddb/modern/basic-put-private-expected.txt: Added.
* storage/indexeddb/modern/basic-put-private.html: Added.
* storage/indexeddb/modern/blocked-open-db-requests-private-expected.txt: Added.
* storage/indexeddb/modern/blocked-open-db-requests-private.html: Added.
* storage/indexeddb/modern/create-index-failures-private-expected.txt: Added.
* storage/indexeddb/modern/create-index-failures-private.html: Added.
* storage/indexeddb/modern/createobjectstore-basic-private-expected.txt: Added.
* storage/indexeddb/modern/createobjectstore-basic-private.html: Added.
* storage/indexeddb/modern/createobjectstore-failures-private-expected.txt: Added.
* storage/indexeddb/modern/createobjectstore-failures-private.html: Added.
* storage/indexeddb/modern/cursor-1-private-expected.txt: Added.
* storage/indexeddb/modern/cursor-1-private.html: Added.
* storage/indexeddb/modern/cursor-2-private-expected.txt: Added.
* storage/indexeddb/modern/cursor-2-private.html: Added.
* storage/indexeddb/modern/cursor-3-private-expected.txt: Added.
* storage/indexeddb/modern/cursor-3-private.html: Added.
* storage/indexeddb/modern/cursor-4-private-expected.txt: Added.
* storage/indexeddb/modern/cursor-4-private.html: Added.
* storage/indexeddb/modern/cursor-5-private-expected.txt: Added.
* storage/indexeddb/modern/cursor-5-private.html: Added.
* storage/indexeddb/modern/cursor-6-private-expected.txt: Added.
* storage/indexeddb/modern/cursor-6-private.html: Added.
* storage/indexeddb/modern/cursor-7-private-expected.txt: Added.
* storage/indexeddb/modern/cursor-7-private.html: Added.
* storage/indexeddb/modern/cursor-8-private-expected.txt: Added.
* storage/indexeddb/modern/cursor-8-private.html: Added.
* storage/indexeddb/modern/date-basic-private-expected.txt: Added.
* storage/indexeddb/modern/date-basic-private.html: Added.
* storage/indexeddb/modern/deletedatabase-1-private-expected.txt: Added.
* storage/indexeddb/modern/deletedatabase-1-private.html: Added.
* storage/indexeddb/modern/deletedatabase-2-private-expected.txt: Added.
* storage/indexeddb/modern/deletedatabase-2-private.html: Added.
* storage/indexeddb/modern/deletedatabase-null-name-exception-private-expected.txt: Added.
* storage/indexeddb/modern/deletedatabase-null-name-exception-private.html: Added.
* storage/indexeddb/modern/deletedatabase-request-event-private-expected.txt: Added.
* storage/indexeddb/modern/deletedatabase-request-event-private.html: Added.
* storage/indexeddb/modern/deletedatabase-request-private-expected.txt: Added.
* storage/indexeddb/modern/deletedatabase-request-private.html: Added.
* storage/indexeddb/modern/deleteindex-1-private-expected.txt: Added.
* storage/indexeddb/modern/deleteindex-1-private.html: Added.
* storage/indexeddb/modern/deleteindex-2-private-expected.txt: Added.
* storage/indexeddb/modern/deleteindex-2-private.html: Added.
* storage/indexeddb/modern/deleteobjectstore-1-private-expected.txt: Added.
* storage/indexeddb/modern/deleteobjectstore-1-private.html: Added.
* storage/indexeddb/modern/double-abort-private-expected.txt: Added.
* storage/indexeddb/modern/double-abort-private.html: Added.
* storage/indexeddb/modern/double-open-private-expected.txt: Added.
* storage/indexeddb/modern/double-open-private.html: Added.
* storage/indexeddb/modern/get-index-failures-private-expected.txt: Added.
* storage/indexeddb/modern/get-index-failures-private.html: Added.
* storage/indexeddb/modern/get-keyrange-private-expected.txt: Added.
* storage/indexeddb/modern/get-keyrange-private.html: Added.
* storage/indexeddb/modern/idbdatabase-deleteobjectstore-failures-private-expected.txt: Added.
* storage/indexeddb/modern/idbdatabase-deleteobjectstore-failures-private.html: Added.
* storage/indexeddb/modern/idbdatabase-transaction-failures-private-expected.txt: Added.
* storage/indexeddb/modern/idbdatabase-transaction-failures-private.html: Added.
* storage/indexeddb/modern/idbindex-properties-basic-private-expected.txt: Added.
* storage/indexeddb/modern/idbindex-properties-basic-private.html: Added.
* storage/indexeddb/modern/idbobjectstore-clear-1-private-expected.txt: Added.
* storage/indexeddb/modern/idbobjectstore-clear-1-private.html: Added.
* storage/indexeddb/modern/idbobjectstore-clear-2-private-expected.txt: Added.
* storage/indexeddb/modern/idbobjectstore-clear-2-private.html: Added.
* storage/indexeddb/modern/idbobjectstore-count-1-private-expected.txt: Added.
* storage/indexeddb/modern/idbobjectstore-count-1-private.html: Added.
* storage/indexeddb/modern/idbobjectstore-count-failures-private-expected.txt: Added.
* storage/indexeddb/modern/idbobjectstore-count-failures-private.html: Added.
* storage/indexeddb/modern/idbobjectstore-delete-1-private-expected.txt: Added.
* storage/indexeddb/modern/idbobjectstore-delete-1-private.html: Added.
* storage/indexeddb/modern/idbobjectstore-delete-2-private-expected.txt: Added.
* storage/indexeddb/modern/idbobjectstore-delete-2-private.html: Added.
* storage/indexeddb/modern/idbobjectstore-delete-failures-private-expected.txt: Added.
* storage/indexeddb/modern/idbobjectstore-delete-failures-private.html: Added.
* storage/indexeddb/modern/idbobjectstore-get-failures-private-expected.txt: Added.
* storage/indexeddb/modern/idbobjectstore-get-failures-private.html: Added.
* storage/indexeddb/modern/idbobjectstore-put-and-clear-failures-private-expected.txt: Added.
* storage/indexeddb/modern/idbobjectstore-put-and-clear-failures-private.html: Added.
* storage/indexeddb/modern/idbtransaction-objectstore-failures-private-expected.txt: Added.
* storage/indexeddb/modern/idbtransaction-objectstore-failures-private.html: Added.
* storage/indexeddb/modern/index-1-private-expected.txt: Added.
* storage/indexeddb/modern/index-1-private.html: Added.
* storage/indexeddb/modern/index-2-private-expected.txt: Added.
* storage/indexeddb/modern/index-2-private.html: Added.
* storage/indexeddb/modern/index-3-private-expected.txt: Added.
* storage/indexeddb/modern/index-3-private.html: Added.
* storage/indexeddb/modern/index-4-private-expected.txt: Added.
* storage/indexeddb/modern/index-4-private.html: Added.
* storage/indexeddb/modern/index-5-private-expected.txt: Added.
* storage/indexeddb/modern/index-5-private.html: Added.
* storage/indexeddb/modern/index-cursor-1-private-expected.txt: Added.
* storage/indexeddb/modern/index-cursor-1-private.html: Added.
* storage/indexeddb/modern/index-cursor-2-private-expected.txt: Added.
* storage/indexeddb/modern/index-cursor-2-private.html: Added.
* storage/indexeddb/modern/index-cursor-3-private-expected.txt: Added.
* storage/indexeddb/modern/index-cursor-3-private.html: Added.
* storage/indexeddb/modern/index-get-count-basic-private-expected.txt: Added.
* storage/indexeddb/modern/index-get-count-basic-private.html: Added.
* storage/indexeddb/modern/index-get-count-failures-private-expected.txt: Added.
* storage/indexeddb/modern/index-get-count-failures-private.html: Added.
* storage/indexeddb/modern/keypath-basic-private-expected.txt: Added.
* storage/indexeddb/modern/keypath-basic-private.html: Added.
* storage/indexeddb/modern/memory-index-not-deleted-with-objectstore-private-expected.txt: Added.
* storage/indexeddb/modern/memory-index-not-deleted-with-objectstore-private.html: Added.
* storage/indexeddb/modern/objectstore-attributes-private-expected.txt: Added.
* storage/indexeddb/modern/objectstore-attributes-private.html: Added.
* storage/indexeddb/modern/objectstore-cursor-advance-failures-private-expected.txt: Added.
* storage/indexeddb/modern/objectstore-cursor-advance-failures-private.html: Added.
* storage/indexeddb/modern/objectstore-cursor-continue-failures-private-expected.txt: Added.
* storage/indexeddb/modern/objectstore-cursor-continue-failures-private.html: Added.
* storage/indexeddb/modern/opencursor-failures-private-expected.txt: Added.
* storage/indexeddb/modern/opencursor-failures-private.html: Added.
* storage/indexeddb/modern/opendatabase-request-event-private-expected.txt: Added.
* storage/indexeddb/modern/opendatabase-request-event-private.html: Added.
* storage/indexeddb/modern/opendatabase-request-private-expected.txt: Added.
* storage/indexeddb/modern/opendatabase-request-private.html: Added.
* storage/indexeddb/modern/opendatabase-success-after-versionchange-private-expected.txt: Added.
* storage/indexeddb/modern/opendatabase-success-after-versionchange-private.html: Added.
* storage/indexeddb/modern/opendatabase-versions-private-expected.txt: Added.
* storage/indexeddb/modern/opendatabase-versions-private.html: Added.
* storage/indexeddb/modern/request-readystate-private-expected.txt: Added.
* storage/indexeddb/modern/request-readystate-private.html: Added.
* storage/indexeddb/modern/resources/opendatabase-request-event.js:
* storage/indexeddb/modern/resources/opendatabase-versions.js:
* storage/indexeddb/modern/resources/request-readystate.js:
* storage/indexeddb/modern/resources/versionchange-abort-then-reopen.js:
* storage/indexeddb/modern/transaction-scheduler-1-private-expected.txt: Added.
* storage/indexeddb/modern/transaction-scheduler-1-private.html: Added.
* storage/indexeddb/modern/transaction-scheduler-2-private-expected.txt: Added.
* storage/indexeddb/modern/transaction-scheduler-2-private.html: Added.
* storage/indexeddb/modern/transaction-scheduler-3-private-expected.txt: Added.
* storage/indexeddb/modern/transaction-scheduler-3-private.html: Added.
* storage/indexeddb/modern/transaction-scheduler-4-private-expected.txt: Added.
* storage/indexeddb/modern/transaction-scheduler-4-private.html: Added.
* storage/indexeddb/modern/transaction-scheduler-5-private-expected.txt: Added.
* storage/indexeddb/modern/transaction-scheduler-5-private.html: Added.
* storage/indexeddb/modern/transaction-scheduler-6-private-expected.txt: Added.
* storage/indexeddb/modern/transaction-scheduler-6-private.html: Added.
* storage/indexeddb/modern/transactions-stop-on-navigation-private-expected.txt: Added.
* storage/indexeddb/modern/transactions-stop-on-navigation-private.html: Added.
* storage/indexeddb/modern/versionchange-abort-then-reopen-private-expected.txt: Added.
* storage/indexeddb/modern/versionchange-abort-then-reopen-private.html: Added.
* storage/indexeddb/modern/versionchange-event-private-expected.txt: Added.
* storage/indexeddb/modern/versionchange-event-private.html: Added.
* storage/indexeddb/mozilla/add-twice-failure-private-expected.txt: Added.
* storage/indexeddb/mozilla/add-twice-failure-private.html: Added.
* storage/indexeddb/mozilla/autoincrement-indexes-private-expected.txt: Added.
* storage/indexeddb/mozilla/autoincrement-indexes-private.html: Added.
* storage/indexeddb/mozilla/bad-keypath-private-expected.txt: Added.
* storage/indexeddb/mozilla/bad-keypath-private.html: Added.
* storage/indexeddb/mozilla/clear-private-expected.txt: Added.
* storage/indexeddb/mozilla/clear-private.html: Added.
* storage/indexeddb/mozilla/create-index-unique-private-expected.txt: Added.
* storage/indexeddb/mozilla/create-index-unique-private.html: Added.
* storage/indexeddb/mozilla/create-index-with-integer-keys-private-expected.txt: Added.
* storage/indexeddb/mozilla/create-index-with-integer-keys-private.html: Added.
* storage/indexeddb/mozilla/create-objectstore-basics-private-expected.txt: Added.
* storage/indexeddb/mozilla/create-objectstore-basics-private.html: Added.
* storage/indexeddb/mozilla/create-objectstore-null-name-private-expected.txt: Added.
* storage/indexeddb/mozilla/create-objectstore-null-name-private.html: Added.
* storage/indexeddb/mozilla/cursor-mutation-objectstore-only-private-expected.txt: Added.
* storage/indexeddb/mozilla/cursor-mutation-objectstore-only-private.html: Added.
* storage/indexeddb/mozilla/cursor-mutation-private-expected.txt: Added.
* storage/indexeddb/mozilla/cursor-mutation-private.html: Added.
* storage/indexeddb/mozilla/cursor-update-updates-indexes-private-expected.txt: Added.
* storage/indexeddb/mozilla/cursor-update-updates-indexes-private.html: Added.
* storage/indexeddb/mozilla/cursors-private-expected.txt: Added.
* storage/indexeddb/mozilla/cursors-private.html: Added.
* storage/indexeddb/mozilla/delete-result-private-expected.txt: Added.
* storage/indexeddb/mozilla/delete-result-private.html: Added.
* storage/indexeddb/mozilla/event-source-private-expected.txt: Added.
* storage/indexeddb/mozilla/event-source-private.html: Added.
* storage/indexeddb/mozilla/global-data-private-expected.txt: Added.
* storage/indexeddb/mozilla/global-data-private.html: Added.
* storage/indexeddb/mozilla/index-prev-no-duplicate-private-expected.txt: Added.
* storage/indexeddb/mozilla/index-prev-no-duplicate-private.html: Added.
* storage/indexeddb/mozilla/indexes-private-expected.txt: Added.
* storage/indexeddb/mozilla/indexes-private.html: Added.
* storage/indexeddb/mozilla/key-requirements-delete-null-key-private-expected.txt: Added.
* storage/indexeddb/mozilla/key-requirements-delete-null-key-private.html: Added.
* storage/indexeddb/mozilla/key-requirements-inline-and-passed-private-expected.txt: Added.
* storage/indexeddb/mozilla/key-requirements-inline-and-passed-private.html: Added.
* storage/indexeddb/mozilla/key-requirements-private-expected.txt: Added.
* storage/indexeddb/mozilla/key-requirements-private.html: Added.
* storage/indexeddb/mozilla/key-requirements-put-no-key-private-expected.txt: Added.
* storage/indexeddb/mozilla/key-requirements-put-no-key-private.html: Added.
* storage/indexeddb/mozilla/key-requirements-put-null-key-private-expected.txt: Added.
* storage/indexeddb/mozilla/key-requirements-put-null-key-private.html: Added.
* storage/indexeddb/mozilla/object-cursors-private-expected.txt: Added.
* storage/indexeddb/mozilla/object-cursors-private.html: Added.
* storage/indexeddb/mozilla/object-identity-private-expected.txt: Added.
* storage/indexeddb/mozilla/object-identity-private.html: Added.
* storage/indexeddb/mozilla/object-store-inline-autoincrement-key-added-on-put-private-expected.txt: Added.
* storage/indexeddb/mozilla/object-store-inline-autoincrement-key-added-on-put-private.html: Added.
* storage/indexeddb/mozilla/object-store-remove-values-private-expected.txt: Added.
* storage/indexeddb/mozilla/object-store-remove-values-private.html: Added.
* storage/indexeddb/mozilla/objectstorenames-private-expected.txt: Added.
* storage/indexeddb/mozilla/objectstorenames-private.html: Added.
* storage/indexeddb/mozilla/odd-result-order-private-expected.txt: Added.
* storage/indexeddb/mozilla/odd-result-order-private.html: Added.
* storage/indexeddb/mozilla/open-database-null-name-private-expected.txt: Added.
* storage/indexeddb/mozilla/open-database-null-name-private.html: Added.
* storage/indexeddb/mozilla/put-get-values-private-expected.txt: Added.
* storage/indexeddb/mozilla/put-get-values-private.html: Added.
* storage/indexeddb/mozilla/readonly-transactions-private-expected.txt: Added.
* storage/indexeddb/mozilla/readonly-transactions-private.html: Added.
* storage/indexeddb/mozilla/readwrite-transactions-private-expected.txt: Added.
* storage/indexeddb/mozilla/readwrite-transactions-private.html: Added.
* storage/indexeddb/mozilla/readyState-private-expected.txt: Added.
* storage/indexeddb/mozilla/readyState-private.html: Added.
* storage/indexeddb/mozilla/remove-index-private-expected.txt: Added.
* storage/indexeddb/mozilla/remove-index-private.html: Added.
* storage/indexeddb/mozilla/remove-objectstore-private-expected.txt: Added.
* storage/indexeddb/mozilla/remove-objectstore-private.html: Added.
* storage/indexeddb/mozilla/versionchange-abort-private-expected.txt: Added.
* storage/indexeddb/mozilla/versionchange-abort-private.html: Added.
* storage/indexeddb/noblobs-private-expected.txt: Added.
* storage/indexeddb/noblobs-private.html: Added.
* storage/indexeddb/object-lookups-in-versionchange-private-expected.txt: Added.
* storage/indexeddb/object-lookups-in-versionchange-private.html: Added.
* storage/indexeddb/open-bad-versions-private-expected.txt: Added.
* storage/indexeddb/open-bad-versions-private.html: Added.
* storage/indexeddb/optional-arguments-private-expected.txt: Added.
* storage/indexeddb/optional-arguments-private.html: Added.
* storage/indexeddb/pending-version-change-stuck-works-with-terminate-private-expected.txt: Added.
* storage/indexeddb/pending-version-change-stuck-works-with-terminate-private.html: Added.
* storage/indexeddb/prefetch-invalidation-private-expected.txt: Added.
* storage/indexeddb/prefetch-invalidation-private.html: Added.
* storage/indexeddb/prefetch-race-private-expected.txt: Added.
* storage/indexeddb/prefetch-race-private.html: Added.
* storage/indexeddb/primary-key-unique-to-objectstore-private-expected.txt: Added.
* storage/indexeddb/primary-key-unique-to-objectstore-private.html: Added.
* storage/indexeddb/request-leak-private-expected.txt: Added.
* storage/indexeddb/request-leak-private.html: Added.
* storage/indexeddb/request-result-cache-private-expected.txt: Added.
* storage/indexeddb/request-result-cache-private.html: Added.
* storage/indexeddb/resources/primary-key-unique-to-objectstore.js:
* storage/indexeddb/resources/shared.js:
* storage/indexeddb/resources/version-change-event-basic.js:
* storage/indexeddb/structured-clone-private-expected.txt: Added.
* storage/indexeddb/structured-clone-private.html: Added.
* storage/indexeddb/transaction-complete-with-js-recursion-cross-frame-private-expected.txt: Added.
* storage/indexeddb/transaction-complete-with-js-recursion-cross-frame-private.html: Added.
* storage/indexeddb/transaction-complete-with-js-recursion-private-expected.txt: Added.
* storage/indexeddb/transaction-complete-with-js-recursion-private.html: Added.
* storage/indexeddb/transaction-crash-in-tasks-private-expected.txt: Added.
* storage/indexeddb/transaction-crash-in-tasks-private.html: Added.
* storage/indexeddb/transaction-ordering-private-expected.txt: Added.
* storage/indexeddb/transaction-ordering-private.html: Added.
* storage/indexeddb/transaction-overlapping-private-expected.txt: Added.
* storage/indexeddb/transaction-overlapping-private.html: Added.
* storage/indexeddb/transaction-starvation-private-expected.txt: Removed.
* storage/indexeddb/version-change-event-basic-private-expected.txt: Added.
* storage/indexeddb/version-change-event-basic-private.html: Added.
* storage/indexeddb/version-change-event-private-expected.txt: Added.
* storage/indexeddb/version-change-event-private.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195394
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ddkilzer@apple.com [Thu, 21 Jan 2016 01:49:12 +0000 (01:49 +0000)]
ResourceHandleCFURLConnectionDelegateWithOperationQueue delegate methods don't NULL-check m_handle->client()
<https://webkit.org/b/152675>
<rdar://problem/
24034044>
Reviewed by Brent Fulgham.
* platform/network/cf/ResourceHandleCFURLConnectionDelegateWithOperationQueue.cpp:
(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didReceiveResponse):
(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didReceiveData):
(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didFinishLoading):
(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didFail):
(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::willCacheResponse):
(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didSendBodyData):
(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didReceiveDataArray):
- Add NULL check for m_handle->client() as is done in the
WebCoreResourceHandleAsOperationQueueDelegate class in
WebCoreResourceHandleAsOperationQueueDelegate.mm. (The NULL
check for -connection:didReceiveResponse: is currently
missing, but there are crashes there, too, that are covered by
Bug 152673.)
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195393
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Thu, 21 Jan 2016 00:41:46 +0000 (00:41 +0000)]
Use TinyLRUCache in caching the CGColorRef in WebCore::cachedCGColor()
https://bugs.webkit.org/show_bug.cgi?id=153279
Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2016-01-20
Reviewed by Dean Jackson.
Reuse the new template TinyLRUCache in caching the CGColor instead of
having the same code repeated twice.
* platform/graphics/cg/ColorCG.cpp:
(WebCore::leakCGColor):
(WebCore::RetainPtr<CGColorRef>>::createValueForKey):
(WebCore::cachedCGColor):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195392
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jmarcell@apple.com [Thu, 21 Jan 2016 00:20:33 +0000 (00:20 +0000)]
Refactor compareIterations to remove duplicate code.
https://bugs.webkit.org/show_bug.cgi?id=152913
Reviewed by Daniel Bates.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueue.js:
(BuildbotQueue.prototype.compareIterations): Refactored to remove duplicate code.
(BuildbotQueue.prototype.sortIterations): Add binding to call to compareIterations.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/tests/tests.js: Added tests in order to ensure
the same behavior before and after refactor.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195391
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ryanhaddad@apple.com [Wed, 20 Jan 2016 23:40:44 +0000 (23:40 +0000)]
Update ios-simulator specific -expected.txt files after most recent WPT revision in r194580
https://bugs.webkit.org/show_bug.cgi?id=152139
Unreviewed test gardening.
* platform/ios-simulator/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-checkValidity-expected.txt:
* platform/ios-simulator/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-valid-expected.txt:
* platform/ios-simulator/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-valueMissing-expected.txt:
* platform/ios-simulator/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/input-textselection-01-expected.txt:
* platform/ios-simulator/imported/w3c/web-platform-tests/html/semantics/forms/the-label-element/labelable-elements-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195390
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 20 Jan 2016 23:25:23 +0000 (23:25 +0000)]
[JSC] Fix a typo in the Air definition of CeilDouble/CeilFloat
https://bugs.webkit.org/show_bug.cgi?id=153286
Patch by Benjamin Poulain <bpoulain@apple.com> on 2016-01-20
Reviewed by Mark Lam.
* b3/air/AirOpcode.opcodes:
The second argument should a Def. The previous definition was
adding useless constraints on the allocation of the second argument.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195388
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
benjamin@webkit.org [Wed, 20 Jan 2016 23:11:32 +0000 (23:11 +0000)]
[JSC] The register allocator can use a dangling pointer when selecting a spill candidate
https://bugs.webkit.org/show_bug.cgi?id=153287
Reviewed by Mark Lam.
A tricky bug I discovered while experimenting with live range breaking.
We have the following initial conditions:
-UseCounts is slow, so we only compute it once for all the iterations
of the allocator.
-The only new Tmps we create are for spills and refills. They are unspillable
by definition so it is fine to not update UseCounts accordingly.
But, in selectSpill(), we go over all the spill candidates and select the best
one based on its score. The score() lambda uses useCounts, it cannot be used
with a new Tmps created for something we already spilled.
The first time we use score is correct, we started by skipping all the unspillable
Tmps from the candidate. The next use was incorrect: we were checking unspillableTmps
*after* calling score().
The existing tests did not catch this due to back luck. I added an assertion
to find similar problems in the future.
* b3/air/AirIteratedRegisterCoalescing.cpp:
* b3/air/AirUseCounts.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195387
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Wed, 20 Jan 2016 23:00:19 +0000 (23:00 +0000)]
Web Inspector: InspectorCSSAgent does not call disable in willDestroyFrontendAndBackend
https://bugs.webkit.org/show_bug.cgi?id=153289
<rdar://problem/
24242600>
Reviewed by Joseph Pecoraro.
* inspector/InspectorCSSAgent.cpp:
(WebCore::InspectorCSSAgent::willDestroyFrontendAndBackend): Call disable().
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195386
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sbarati@apple.com [Wed, 20 Jan 2016 22:55:02 +0000 (22:55 +0000)]
Fix CLoop build after bug https://bugs.webkit.org/show_bug.cgi?id=152766
Unreviewed build fix.
* inspector/agents/InspectorScriptProfilerAgent.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195383
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ryanhaddad@apple.com [Wed, 20 Jan 2016 22:54:13 +0000 (22:54 +0000)]
Follow up to r195361. Removing ios-simulator-wk2 fast/viewport/ios directory pass expectation, explicitly re-enabling passing tests
https://bugs.webkit.org/show_bug.cgi?id=153110
Unreviewed test gardening.
* platform/ios-simulator-wk2/TestExpectations:
* platform/ios-simulator/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195382
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 20 Jan 2016 22:49:32 +0000 (22:49 +0000)]
[INTL] Implement Date.prototype.toLocaleTimeString in ECMA-402
https://bugs.webkit.org/show_bug.cgi?id=147613
Patch by Andy VanWagoner <thetalecrafter@gmail.com> on 2016-01-20
Reviewed by Darin Adler.
Source/JavaScriptCore:
Implement toLocaleTimeString in builtin JavaScript.
* builtins/DatePrototype.js:
(toLocaleTimeString.toDateTimeOptionsTimeTime):
(toLocaleTimeString):
* runtime/DatePrototype.cpp:
(JSC::DatePrototype::finishCreation):
LayoutTests:
Added tests for toLocaleTimeString.
* js/date-toLocaleString-expected.txt:
* js/script-tests/date-toLocaleString.js:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195381
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
beidson@apple.com [Wed, 20 Jan 2016 22:27:08 +0000 (22:27 +0000)]
Modern IDB: Make storage/indexeddb/modern tests more modern.
https://bugs.webkit.org/show_bug.cgi?id=153284
Reviewed by Alex Christensen.
* storage/indexeddb/modern/abort-requests-cancelled-expected.txt:
* storage/indexeddb/modern/aborted-put-expected.txt:
* storage/indexeddb/modern/autoincrement-abort-expected.txt:
* storage/indexeddb/modern/basic-add-expected.txt:
* storage/indexeddb/modern/basic-put-expected.txt:
* storage/indexeddb/modern/create-index-failures-expected.txt:
* storage/indexeddb/modern/createobjectstore-basic-expected.txt:
* storage/indexeddb/modern/createobjectstore-failures-expected.txt:
* storage/indexeddb/modern/cursor-1-expected.txt:
* storage/indexeddb/modern/cursor-2-expected.txt:
* storage/indexeddb/modern/cursor-3-expected.txt:
* storage/indexeddb/modern/cursor-4-expected.txt:
* storage/indexeddb/modern/cursor-5-expected.txt:
* storage/indexeddb/modern/cursor-6-expected.txt:
* storage/indexeddb/modern/cursor-7-expected.txt:
* storage/indexeddb/modern/cursor-8-expected.txt:
* storage/indexeddb/modern/date-basic-expected.txt:
* storage/indexeddb/modern/deletedatabase-1-expected.txt:
* storage/indexeddb/modern/deletedatabase-2-expected.txt:
* storage/indexeddb/modern/deleteindex-1-expected.txt:
* storage/indexeddb/modern/deleteindex-2-expected.txt:
* storage/indexeddb/modern/deleteobjectstore-1-expected.txt:
* storage/indexeddb/modern/double-abort-expected.txt:
* storage/indexeddb/modern/get-index-failures-expected.txt:
* storage/indexeddb/modern/get-keyrange-expected.txt:
* storage/indexeddb/modern/idbdatabase-deleteobjectstore-failures-expected.txt:
* storage/indexeddb/modern/idbdatabase-transaction-failures-expected.txt:
* storage/indexeddb/modern/idbindex-properties-basic-expected.txt:
* storage/indexeddb/modern/idbobjectstore-clear-1-expected.txt:
* storage/indexeddb/modern/idbobjectstore-clear-2-expected.txt:
* storage/indexeddb/modern/idbobjectstore-count-1-expected.txt:
* storage/indexeddb/modern/idbobjectstore-count-failures-expected.txt:
* storage/indexeddb/modern/idbobjectstore-delete-1-expected.txt:
* storage/indexeddb/modern/idbobjectstore-delete-2-expected.txt:
* storage/indexeddb/modern/idbobjectstore-delete-failures-expected.txt:
* storage/indexeddb/modern/idbobjectstore-get-failures-expected.txt:
* storage/indexeddb/modern/idbobjectstore-put-and-clear-failures-expected.txt:
* storage/indexeddb/modern/idbtransaction-objectstore-failures-expected.txt:
* storage/indexeddb/modern/index-1-expected.txt:
* storage/indexeddb/modern/index-2-expected.txt:
* storage/indexeddb/modern/index-3-expected.txt:
* storage/indexeddb/modern/index-4-expected.txt:
* storage/indexeddb/modern/index-5-expected.txt:
* storage/indexeddb/modern/index-cursor-1-expected.txt:
* storage/indexeddb/modern/index-cursor-2-expected.txt:
* storage/indexeddb/modern/index-cursor-3-expected.txt:
* storage/indexeddb/modern/index-get-count-basic-expected.txt:
* storage/indexeddb/modern/index-get-count-failures-expected.txt:
* storage/indexeddb/modern/keypath-basic-expected.txt:
* storage/indexeddb/modern/objectstore-attributes-expected.txt:
* storage/indexeddb/modern/objectstore-cursor-advance-failures-expected.txt:
* storage/indexeddb/modern/objectstore-cursor-continue-failures-expected.txt:
* storage/indexeddb/modern/opencursor-failures-expected.txt:
* storage/indexeddb/modern/opendatabase-success-after-versionchange-expected.txt:
* storage/indexeddb/modern/opendatabase-versions-expected.txt:
* storage/indexeddb/modern/resources/abort-requests-cancelled.js:
* storage/indexeddb/modern/resources/aborted-put.js:
* storage/indexeddb/modern/resources/autoincrement-abort.js:
* storage/indexeddb/modern/resources/basic-add.js:
* storage/indexeddb/modern/resources/basic-put.js:
* storage/indexeddb/modern/resources/create-index-failures.js:
* storage/indexeddb/modern/resources/createobjectstore-basic.js:
* storage/indexeddb/modern/resources/createobjectstore-failures.js:
* storage/indexeddb/modern/resources/cursor-1.js:
* storage/indexeddb/modern/resources/cursor-2.js:
* storage/indexeddb/modern/resources/cursor-3.js:
* storage/indexeddb/modern/resources/cursor-4.js:
* storage/indexeddb/modern/resources/cursor-5.js:
* storage/indexeddb/modern/resources/cursor-6.js:
* storage/indexeddb/modern/resources/cursor-7.js:
* storage/indexeddb/modern/resources/cursor-8.js:
* storage/indexeddb/modern/resources/date-basic.js:
* storage/indexeddb/modern/resources/deletedatabase-1.js:
* storage/indexeddb/modern/resources/deletedatabase-2.js:
* storage/indexeddb/modern/resources/deletedatabase-null-name-exception.js:
* storage/indexeddb/modern/resources/deletedatabase-request-event.js:
* storage/indexeddb/modern/resources/deletedatabase-request.js:
* storage/indexeddb/modern/resources/deleteindex-1.js:
* storage/indexeddb/modern/resources/deleteindex-2.js:
* storage/indexeddb/modern/resources/deleteobjectstore-1.js:
* storage/indexeddb/modern/resources/double-abort.js:
* storage/indexeddb/modern/resources/double-open.js:
* storage/indexeddb/modern/resources/get-index-failures.js:
* storage/indexeddb/modern/resources/get-keyrange.js:
* storage/indexeddb/modern/resources/idbdatabase-deleteobjectstore-failures.js:
* storage/indexeddb/modern/resources/idbdatabase-transaction-failures.js:
* storage/indexeddb/modern/resources/idbindex-properties-basic.js:
* storage/indexeddb/modern/resources/idbobjectstore-clear-1.js:
* storage/indexeddb/modern/resources/idbobjectstore-clear-2.js:
* storage/indexeddb/modern/resources/idbobjectstore-count-1.js:
* storage/indexeddb/modern/resources/idbobjectstore-count-failures.js:
* storage/indexeddb/modern/resources/idbobjectstore-delete-1.js:
* storage/indexeddb/modern/resources/idbobjectstore-delete-2.js:
* storage/indexeddb/modern/resources/idbobjectstore-delete-failures.js:
* storage/indexeddb/modern/resources/idbobjectstore-get-failures.js:
* storage/indexeddb/modern/resources/idbobjectstore-put-and-clear-failures.js:
* storage/indexeddb/modern/resources/idbtransaction-objectstore-failures.js:
* storage/indexeddb/modern/resources/index-1.js:
* storage/indexeddb/modern/resources/index-2.js:
* storage/indexeddb/modern/resources/index-3.js:
* storage/indexeddb/modern/resources/index-4.js:
* storage/indexeddb/modern/resources/index-5.js:
* storage/indexeddb/modern/resources/index-cursor-1.js:
* storage/indexeddb/modern/resources/index-cursor-2.js:
* storage/indexeddb/modern/resources/index-cursor-3.js:
* storage/indexeddb/modern/resources/index-get-count-basic.js:
* storage/indexeddb/modern/resources/index-get-count-failures.js:
* storage/indexeddb/modern/resources/keypath-basic.js:
* storage/indexeddb/modern/resources/objectstore-attributes.js:
* storage/indexeddb/modern/resources/objectstore-cursor-advance-failures.js:
* storage/indexeddb/modern/resources/objectstore-cursor-continue-failures.js:
* storage/indexeddb/modern/resources/opencursor-failures.js:
* storage/indexeddb/modern/resources/opendatabase-request-event.js:
* storage/indexeddb/modern/resources/opendatabase-request.js:
* storage/indexeddb/modern/resources/opendatabase-success-after-versionchange.js:
* storage/indexeddb/modern/resources/opendatabase-versions.js:
* storage/indexeddb/modern/resources/request-readystate.js:
* storage/indexeddb/modern/resources/transaction-scheduler-1.js:
* storage/indexeddb/modern/resources/transaction-scheduler-2.js:
* storage/indexeddb/modern/resources/transaction-scheduler-3.js:
* storage/indexeddb/modern/resources/transaction-scheduler-5.js:
* storage/indexeddb/modern/resources/transaction-scheduler-6.js:
* storage/indexeddb/modern/resources/versionchange-abort-then-reopen.js:
* storage/indexeddb/modern/resources/versionchange-event.js:
* storage/indexeddb/modern/transaction-scheduler-1-expected.txt:
* storage/indexeddb/modern/transaction-scheduler-2-expected.txt:
* storage/indexeddb/modern/transaction-scheduler-3-expected.txt:
* storage/indexeddb/modern/transaction-scheduler-5-expected.txt:
* storage/indexeddb/modern/transaction-scheduler-6-expected.txt:
* storage/indexeddb/modern/versionchange-abort-then-reopen-expected.txt:
* storage/indexeddb/modern/versionchange-event-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195380
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sbarati@apple.com [Wed, 20 Jan 2016 21:51:00 +0000 (21:51 +0000)]
Web Inspector: Hook the sampling profiler into the Timelines UI
https://bugs.webkit.org/show_bug.cgi?id=152766
<rdar://problem/
24066360>
Reviewed by Joseph Pecoraro.
Source/JavaScriptCore:
This patch adds some necessary functions to SamplingProfiler::StackFrame
to allow it to give data to the Inspector for the timelines UI. i.e, the
sourceID of the executable of a stack frame.
This patch also swaps in the SamplingProfiler in place of the
LegacyProfiler inside InspectorScriptProfilerAgent. It adds
the necessary protocol data to allow the SamplingProfiler's
data to hook into the timelines UI.
* debugger/Debugger.cpp:
(JSC::Debugger::setProfilingClient):
(JSC::Debugger::willEvaluateScript):
(JSC::Debugger::didEvaluateScript):
(JSC::Debugger::toggleBreakpoint):
* debugger/Debugger.h:
* debugger/ScriptProfilingScope.h:
(JSC::ScriptProfilingScope::ScriptProfilingScope):
(JSC::ScriptProfilingScope::~ScriptProfilingScope):
* inspector/agents/InspectorScriptProfilerAgent.cpp:
(Inspector::InspectorScriptProfilerAgent::willDestroyFrontendAndBackend):
(Inspector::InspectorScriptProfilerAgent::startTracking):
(Inspector::InspectorScriptProfilerAgent::stopTracking):
(Inspector::InspectorScriptProfilerAgent::isAlreadyProfiling):
(Inspector::InspectorScriptProfilerAgent::willEvaluateScript):
(Inspector::InspectorScriptProfilerAgent::didEvaluateScript):
(Inspector::InspectorScriptProfilerAgent::addEvent):
(Inspector::buildSamples):
(Inspector::InspectorScriptProfilerAgent::trackingComplete):
(Inspector::buildAggregateCallInfoInspectorObject): Deleted.
(Inspector::buildInspectorObject): Deleted.
(Inspector::buildProfileInspectorObject): Deleted.
* inspector/agents/InspectorScriptProfilerAgent.h:
* inspector/protocol/ScriptProfiler.json:
* jsc.cpp:
(functionSamplingProfilerStackTraces):
* runtime/SamplingProfiler.cpp:
(JSC::SamplingProfiler::start):
(JSC::SamplingProfiler::stop):
(JSC::SamplingProfiler::clearData):
(JSC::SamplingProfiler::StackFrame::displayName):
(JSC::SamplingProfiler::StackFrame::displayNameForJSONTests):
(JSC::SamplingProfiler::StackFrame::startLine):
(JSC::SamplingProfiler::StackFrame::startColumn):
(JSC::SamplingProfiler::StackFrame::sourceID):
(JSC::SamplingProfiler::StackFrame::url):
(JSC::SamplingProfiler::stackTraces):
(JSC::SamplingProfiler::stackTracesAsJSON):
(JSC::displayName): Deleted.
(JSC::SamplingProfiler::stacktracesAsJSON): Deleted.
* runtime/SamplingProfiler.h:
(JSC::SamplingProfiler::StackFrame::StackFrame):
(JSC::SamplingProfiler::getLock):
(JSC::SamplingProfiler::setTimingInterval):
(JSC::SamplingProfiler::totalTime):
(JSC::SamplingProfiler::setStopWatch):
(JSC::SamplingProfiler::stackTraces): Deleted.
* tests/stress/sampling-profiler-anonymous-function.js:
(platformSupportsSamplingProfiler.baz):
(platformSupportsSamplingProfiler):
* tests/stress/sampling-profiler-basic.js:
(platformSupportsSamplingProfiler.nothing):
(platformSupportsSamplingProfiler.top):
* tests/stress/sampling-profiler/samplingProfiler.js:
(doesTreeHaveStackTrace):
Source/WebInspectorUI:
The main change in this patch is to swap in the SamplingProfiler
in place of the LegacyProfiler. To do this, we've created a data
structure called CallingContextTree which aggregates the SamplingProfiler's
data into an easy to manage tree. To see how the data structure works,
consider the following program:
```
function bar() { // run code here for a long time. }
function baz() { // run code here for a long time. }
function foo() { bar(); baz(); }
foo();
```
From this program, we will create a tree like this:
(program)
|
|
foo
| |
/ \
/ \
bar baz
From this type of tree, we can easily create a CPUProfile payload
object. Because the Timelines UI knows how to interact with the
CPUProfile object and display it, we currently map the tree to this object
to make it trivially easy to display the SamplingProfiler's data. In the future,
we may want to find ways to work directly with the CallingContextTree instead
of mapping it into another object.
* Localizations/en.lproj/localizedStrings.js:
* UserInterface/Controllers/TimelineManager.js:
* UserInterface/Main.html:
* UserInterface/Models/CallingContextTree.js: Added.
* UserInterface/Models/ScriptInstrument.js:
* UserInterface/Protocol/ScriptProfilerObserver.js:
* UserInterface/TestStub.html:
* UserInterface/Views/ScriptTimelineView.js:
LayoutTests:
* inspector/sampling-profiler: Added.
* inspector/sampling-profiler/basic-expected.txt: Added.
* inspector/sampling-profiler/basic.html: Added.
* inspector/sampling-profiler/call-frame-with-dom-functions-expected.txt: Added.
* inspector/sampling-profiler/call-frame-with-dom-functions.html: Added.
* inspector/sampling-profiler/eval-source-url-expected.txt: Added.
* inspector/sampling-profiler/eval-source-url.html: Added.
* inspector/sampling-profiler/many-call-frames-expected.txt: Added.
* inspector/sampling-profiler/many-call-frames.html: Added.
* inspector/sampling-profiler/named-function-expression-expected.txt: Added.
* inspector/sampling-profiler/named-function-expression.html: Added.
* inspector/script-profiler/event-type-API-expected.txt:
* inspector/script-profiler/event-type-API.html:
* inspector/script-profiler/event-type-Microtask-expected.txt:
* inspector/script-profiler/event-type-Microtask.html:
* inspector/script-profiler/event-type-Other-expected.txt:
* inspector/script-profiler/event-type-Other.html:
* inspector/script-profiler/tracking-expected.txt:
* inspector/script-profiler/tracking.html:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195376
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
keith_miller@apple.com [Wed, 20 Jan 2016 21:49:09 +0000 (21:49 +0000)]
TypedArray's .buffer does not return the JSArrayBuffer that was passed to it on creation.
https://bugs.webkit.org/show_bug.cgi?id=153281
Reviewed by Geoffrey Garen.
When creating an JSArrayBuffer we should make sure that the backing ArrayBuffer uses the
new JSArrayBuffer as its wrapper. This causes issues when we get the buffer of a Typed Array
created by passing a JSArrayBuffer as the backing ArrayBuffer does not have a reference to
the original JSArrayBuffer and a new object is created.
* runtime/JSArrayBuffer.cpp:
(JSC::JSArrayBuffer::finishCreation):
* tests/stress/typedarray-buffer-neutered.js: Added.
(arrays.typedArrays.map):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195375
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dbates@webkit.org [Wed, 20 Jan 2016 21:32:05 +0000 (21:32 +0000)]
CSP: Add tests to ensure that alternative text of an image is rendered when CSP blocks its load
https://bugs.webkit.org/show_bug.cgi?id=153280
Reviewed by Alexey Proskuryakov.
These tests were inspired by the Blink test
<https://src.chromium.org/viewvc/blink/trunk/LayoutTests/http/tests/security/contentSecurityPolicy/image-blocked-alt-content.html?revision=186800>.
* http/tests/security/contentSecurityPolicy/image-blocked-alt-text-expected.html: Added.
* http/tests/security/contentSecurityPolicy/image-blocked-alt-text.html: Added.
* http/tests/security/contentSecurityPolicy/image-data-URL-blocked-alt-text-expected.html: Added.
* http/tests/security/contentSecurityPolicy/image-data-URL-blocked-alt-text.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195374
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dbates@webkit.org [Wed, 20 Jan 2016 20:59:37 +0000 (20:59 +0000)]
CSP: Merge from Blink many new tests and changes to existing tests
https://bugs.webkit.org/show_bug.cgi?id=153277
<rdar://problem/
24260782>
Reviewed by Brent Fulgham.
Merge new Content Security Policy tests from Blink as well as changes made to existing tests
as of Blink r202656: <https://src.chromium.org/viewvc/blink/trunk/LayoutTests/http/tests/security/contentSecurityPolicy/?pathrev=202656>.
Many of these new tests fail and have been marked accordingly with associated WebKit bugs in
TestExpectations. We also do not run CSP 1.1 tests as we do not compile with ENABLE(CSP_NEXT)
enabled (see <https://bugs.webkit.org/show_bug.cgi?id=85558>). We will look to enable CSP 1.1
and make all these merged tests pass in subsequent commits.
One non-mechanical change I made is that I removed the sub-test for shared workers when
merging http/tests/security/contentSecurityPolicy/worker-without-own-csp.html as WebKit does
not support shared workers. I also swapped the argument order in the call to assert_equals()
in the remaining sub-test so that the expected result, "xhr allowed", is the second argument (as
expected by assert_equals()) and hence the failure message would read well.
The tests http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-overrides-xfo.html,
http/tests/security/contentSecurityPolicy/1.1/{script, style}hash-default-src.html do not have
expected results and are skipped for now. These tests do not have expected results because no
expected results were committed to Blink and it is not straightforward to generate the expected
result without reasoning about the test or compiling Blink. When it comes time to enable CSP 1.1
support we can generate the expected results and verify correctness.
* TestExpectations:
* http/tests/security/contentSecurityPolicy/1.1/child-src/frame-about-blank-allowed-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/child-src/frame-about-blank-allowed.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/child-src/frame-allowed-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/child-src/frame-allowed.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/child-src/frame-blocked-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/child-src/frame-blocked.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/child-src/frame-redirect-blocked-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/child-src/frame-redirect-blocked.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/child-src/worker-allowed-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/child-src/worker-allowed.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/child-src/worker-blocked-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/child-src/worker-blocked.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/child-src/worker-shared-allowed-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/child-src/worker-shared-allowed.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/child-src/worker-shared-blocked-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/child-src/worker-shared-blocked.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-cross-none-block-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-cross-none-block.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-cross-self-block-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-cross-self-block.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-cross-star-allow-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-cross-star-allow.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-cross-url-allow-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-cross-url-allow.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-cross-url-block-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-cross-url-block.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-same-none-block-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-same-none-block.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-same-self-block-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-same-self-block.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-same-star-allow-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-same-star-allow.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-same-url-allow-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-same-url-allow.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-same-url-block-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-same-url-block.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-cross-none-block-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-cross-none-block.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-cross-self-block-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-cross-self-block.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-cross-star-allow-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-cross-star-allow.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-cross-url-allow-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-cross-url-allow.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-cross-url-block-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-cross-url-block.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-same-none-block-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-same-none-block.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-same-self-allow-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-same-self-allow.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-same-star-allow-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-same-star-allow.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-same-url-allow-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-same-url-allow.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-same-url-block-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-same-url-block.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-none-block-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-none-block.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-overrides-xfo.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-protocolless-allow-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-protocolless-allow.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-self-allow-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-self-allow.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-self-block-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-self-block.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-star-allow-crossorigin-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-star-allow-crossorigin.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-star-allow-sameorigin-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-star-allow-sameorigin.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-url-allow-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-url-allow.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-url-block-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-url-block.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/meta-outside-head-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/meta-outside-head.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/plugintypes-affects-child-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/plugintypes-affects-child.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/plugintypes-invalid.html:
* http/tests/security/contentSecurityPolicy/1.1/referrer-always-http-http-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/referrer-always-http-http.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/referrer-always-http-https-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/referrer-always-http-https.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/referrer-always-https-http-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/referrer-always-https-http.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/referrer-always-https-https-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/referrer-always-https-https.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/referrer-default-http-http-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/referrer-default-http-http.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/referrer-default-http-https-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/referrer-default-http-https.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/referrer-default-https-http-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/referrer-default-https-http.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/referrer-default-https-https-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/referrer-default-https-https.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/referrer-empty-http-http-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/referrer-empty-http-http.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/referrer-empty-http-https-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/referrer-empty-http-https.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/referrer-empty-https-http-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/referrer-empty-https-http.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/referrer-empty-https-https-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/referrer-empty-https-https.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/referrer-invalid-http-http-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/referrer-invalid-http-http.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/referrer-invalid-http-https-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/referrer-invalid-http-https.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/referrer-invalid-https-http-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/referrer-invalid-https-http.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/referrer-invalid-https-https-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/referrer-invalid-https-https.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/referrer-never-http-http-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/referrer-never-http-http.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/referrer-never-http-https-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/referrer-never-http-https.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/referrer-never-https-http-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/referrer-never-https-http.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/referrer-never-https-https-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/referrer-never-https-https.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/referrer-origin-http-http-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/referrer-origin-http-http.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/referrer-origin-http-https-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/referrer-origin-http-https.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/referrer-origin-https-http-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/referrer-origin-https-http.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/referrer-origin-https-https-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/referrer-origin-https-https.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/report-uri-effective-directive-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/reportonly-in-meta-ignored-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/reportonly-in-meta-ignored.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/scripthash-allowed-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/scripthash-allowed.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/scripthash-basic-blocked-error-event-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/scripthash-basic-blocked-error-event.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/scripthash-basic-blocked-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/scripthash-basic-blocked.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/scripthash-default-src.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/scripthash-ignore-unsafeinline-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/scripthash-ignore-unsafeinline.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/scripthash-malformed-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/scripthash-malformed.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/scripthash-unicode-normalization-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/scripthash-unicode-normalization.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/scriptnonce-allowed-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/scriptnonce-allowed.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/scriptnonce-and-scripthash-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/scriptnonce-and-scripthash.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/scriptnonce-basic-blocked-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/scriptnonce-basic-blocked.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-expected.txt: Copied from LayoutTests/http/tests/security/contentSecurityPolicy/source-list-parsing-03-expected.txt.
* http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/scriptnonce-ignore-unsafeinline-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/scriptnonce-ignore-unsafeinline.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/scriptnonce-invalidnonce-expected.txt: Copied from LayoutTests/http/tests/security/contentSecurityPolicy/source-list-parsing-07-expected.txt.
* http/tests/security/contentSecurityPolicy/1.1/scriptnonce-invalidnonce.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/scriptnonce-redirect-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/scriptnonce-redirect.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-basics-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-basics.html:
* http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-block-cross-origin-image-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-block-cross-origin-image-from-script-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-block-cross-origin-image-from-script.html:
* http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-block-cross-origin-image.html:
* http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-block-image-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-block-image-from-script-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-block-image-from-script.html:
* http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-block-image.html:
* http/tests/security/contentSecurityPolicy/1.1/stylehash-allowed-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/stylehash-allowed.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/stylehash-basic-blocked-error-event-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/stylehash-basic-blocked-error-event.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/stylehash-basic-blocked-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/stylehash-basic-blocked.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/stylehash-default-src.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/stylehash-svg-style-basic-blocked-error-event-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/stylehash-svg-style-basic-blocked-error-event.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/stylenonce-allowed-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/stylenonce-allowed.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/stylenonce-basic-blocked-error-event-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/stylenonce-basic-blocked-error-event.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/stylenonce-blocked-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/stylenonce-blocked.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/stylenonce-svg-style-basic-blocked-error-event-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/stylenonce-svg-style-basic-blocked-error-event.html: Added.
* http/tests/security/contentSecurityPolicy/blob-urls-match-self.html:
* http/tests/security/contentSecurityPolicy/connect-src-eventsource-redirect-to-blocked-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/connect-src-eventsource-redirect-to-blocked.html: Added.
* http/tests/security/contentSecurityPolicy/connect-src-xmlhttprequest-redirect-to-blocked-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/connect-src-xmlhttprequest-redirect-to-blocked.html: Added.
* http/tests/security/contentSecurityPolicy/csp-header-is-sent-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/csp-header-is-sent.html: Added.
* http/tests/security/contentSecurityPolicy/eval-allowed-in-report-only-mode-and-sends-report-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/eval-allowed-in-report-only-mode-and-sends-report.html: Added.
* http/tests/security/contentSecurityPolicy/eval-blocked-and-sends-report-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/eval-blocked-and-sends-report.html: Added.
* http/tests/security/contentSecurityPolicy/frame-src-cross-origin-load-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/frame-src-cross-origin-load.html: Added.
* http/tests/security/contentSecurityPolicy/icon-allowed-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/icon-allowed.html: Added.
* http/tests/security/contentSecurityPolicy/icon-blocked-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/icon-blocked.html: Added.
* http/tests/security/contentSecurityPolicy/image-document-default-src-none-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/image-document-default-src-none.html: Added.
* http/tests/security/contentSecurityPolicy/inline-event-handler-blocked-after-injecting-meta-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/inline-event-handler-blocked-after-injecting-meta.html: Added.
* http/tests/security/contentSecurityPolicy/manifest-src-allowed-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/manifest-src-allowed.html: Added.
* http/tests/security/contentSecurityPolicy/manifest-src-blocked-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/manifest-src-blocked.html: Added.
* http/tests/security/contentSecurityPolicy/manifest.test/manifest.json: Added.
* http/tests/security/contentSecurityPolicy/object-in-svg-foreignobject-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/object-in-svg-foreignobject.html: Added.
* http/tests/security/contentSecurityPolicy/object-src-applet-archive-codebase-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/object-src-applet-archive-codebase.html: Added.
* http/tests/security/contentSecurityPolicy/object-src-applet-archive-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/object-src-applet-archive.html: Added.
* http/tests/security/contentSecurityPolicy/object-src-applet-code-codebase-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/object-src-applet-code-codebase.html: Added.
* http/tests/security/contentSecurityPolicy/object-src-applet-code-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/object-src-applet-code.html: Added.
* http/tests/security/contentSecurityPolicy/object-src-does-not-affect-child-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/object-src-does-not-affect-child.html: Added.
* http/tests/security/contentSecurityPolicy/object-src-param-code-blocked-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/object-src-param-code-blocked.html: Added.
* http/tests/security/contentSecurityPolicy/object-src-param-movie-blocked-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/object-src-param-movie-blocked.html: Added.
* http/tests/security/contentSecurityPolicy/object-src-param-src-blocked-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/object-src-param-src-blocked.html: Added.
* http/tests/security/contentSecurityPolicy/object-src-param-url-blocked-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/object-src-param-url-blocked.html: Added.
* http/tests/security/contentSecurityPolicy/plugin-in-iframe-with-csp-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/plugin-in-iframe-with-csp.html: Added.
* http/tests/security/contentSecurityPolicy/redirect-does-not-match-paths-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/redirect-does-not-match-paths.html: Added.
* http/tests/security/contentSecurityPolicy/register-bypassing-scheme-partial-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/register-bypassing-scheme-partial.html: Added.
* http/tests/security/contentSecurityPolicy/report-and-enforce-expected.txt:
* http/tests/security/contentSecurityPolicy/report-and-enforce.html:
* http/tests/security/contentSecurityPolicy/report-blocked-data-uri-expected.txt:
* http/tests/security/contentSecurityPolicy/report-blocked-file-uri-expected.txt:
* http/tests/security/contentSecurityPolicy/report-blocked-uri-cross-origin-expected.txt:
* http/tests/security/contentSecurityPolicy/report-blocked-uri-expected.txt:
* http/tests/security/contentSecurityPolicy/report-cross-origin-no-cookies-expected.txt:
* http/tests/security/contentSecurityPolicy/report-multiple-violations-01-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/report-multiple-violations-01.html: Added.
* http/tests/security/contentSecurityPolicy/report-multiple-violations-02-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/report-multiple-violations-02.html: Added.
* http/tests/security/contentSecurityPolicy/report-only-expected.txt:
* http/tests/security/contentSecurityPolicy/report-only-from-header-expected.txt:
* http/tests/security/contentSecurityPolicy/report-same-origin-with-cookies-expected.txt:
* http/tests/security/contentSecurityPolicy/report-uri-expected.txt:
* http/tests/security/contentSecurityPolicy/report-uri-from-child-frame-expected.txt:
* http/tests/security/contentSecurityPolicy/report-uri-from-inline-javascript-expected.txt:
* http/tests/security/contentSecurityPolicy/report-uri-from-javascript-expected.txt:
* http/tests/security/contentSecurityPolicy/report-uri-scheme-relative-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/report-uri-scheme-relative.html: Added.
* http/tests/security/contentSecurityPolicy/resources/alert-pass.js: Added.
* http/tests/security/contentSecurityPolicy/resources/child-src-test.js: Added.
(window.onload):
(injectFrame):
(iframeLoaded):
(injectFrameRedirectingTo):
(injectWorker):
(injectSharedWorker):
* http/tests/security/contentSecurityPolicy/resources/csp-header-is-sent.js: Added.
(async_test.xhr.onload):
(async_test):
(test):
* http/tests/security/contentSecurityPolicy/resources/fail-to-inject-script.js: Added.
(s.onerror):
(s.onload):
* http/tests/security/contentSecurityPolicy/resources/frame-ancestors-and-x-frame-options.pl: Added.
* http/tests/security/contentSecurityPolicy/resources/frame-ancestors-test.js: Added.
(injectNestedIframe):
(injectIFrame):
(iframeLoaded):
(crossOriginFrameShouldBeBlocked.window.onload):
(crossOriginFrameShouldBeBlocked):
(crossOriginFrameShouldBeAllowed.window.onload):
(crossOriginFrameShouldBeAllowed):
(sameOriginFrameShouldBeBlocked.window.onload):
(sameOriginFrameShouldBeBlocked):
(sameOriginFrameShouldBeAllowed.window.onload):
(sameOriginFrameShouldBeAllowed):
(window.onload):
(testNestedIFrame):
* http/tests/security/contentSecurityPolicy/resources/frame-ancestors.pl: Added.
* http/tests/security/contentSecurityPolicy/resources/frame-in-frame.pl: Added.
* http/tests/security/contentSecurityPolicy/resources/generate-csp-report.html: Added.
* http/tests/security/contentSecurityPolicy/resources/iframe-redirect-not-allowed.html: Added.
* http/tests/security/contentSecurityPolicy/resources/image-document-default-src-none-iframe.php: Added.
* http/tests/security/contentSecurityPolicy/resources/multiple-iframe-test.js:
* http/tests/security/contentSecurityPolicy/resources/nph-cached-csp.pl:
* http/tests/security/contentSecurityPolicy/resources/object-src-param.js: Added.
(appendObjectElement.window.onload):
(appendObjectElement):
* http/tests/security/contentSecurityPolicy/resources/post-message.js: Added.
* http/tests/security/contentSecurityPolicy/resources/redir.php: Added.
* http/tests/security/contentSecurityPolicy/resources/redirect-does-not-match-paths.js: Added.
(test):
(async_test.img.onload):
(async_test):
(async_test.xhr.onload):
* http/tests/security/contentSecurityPolicy/resources/redirect.pl: Added.
* http/tests/security/contentSecurityPolicy/resources/referrer-test-endpoint.php: Added.
* http/tests/security/contentSecurityPolicy/resources/referrer-test.js: Added.
(ReferrerTest.bindHandler):
(ReferrerTest.base):
(ReferrerTest.generateFrameURL):
(ReferrerTest.injectFrame):
(expectFullReferrer):
(expectNoReferrer):
(expectOriginReferrer):
* http/tests/security/contentSecurityPolicy/resources/referrer-test.php: Added.
* http/tests/security/contentSecurityPolicy/resources/sandbox.php:
* http/tests/security/contentSecurityPolicy/resources/script-redirect-not-allowed.js: Added.
* http/tests/security/contentSecurityPolicy/resources/script-set-value.js: Added.
* http/tests/security/contentSecurityPolicy/resources/style-set-red.css: Added.
(p):
* http/tests/security/contentSecurityPolicy/resources/stylesheet-redirect-not-allowed.css: Added.
(body):
* http/tests/security/contentSecurityPolicy/resources/test-csp-header.pl: Added.
* http/tests/security/contentSecurityPolicy/resources/worker.php: Added.
* http/tests/security/contentSecurityPolicy/resources/xhr-redirect-not-allowed.pl: Added.
* http/tests/security/contentSecurityPolicy/sandbox-report-only-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/sandbox-report-only.html: Added.
* http/tests/security/contentSecurityPolicy/script-src-appended-script-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/script-src-appended-script.html: Added.
* http/tests/security/contentSecurityPolicy/script-src-blocked-error-event-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/script-src-blocked-error-event.html: Added.
* http/tests/security/contentSecurityPolicy/script-src-redirect-expected.txt:
* http/tests/security/contentSecurityPolicy/script-src-redirect.html:
* http/tests/security/contentSecurityPolicy/source-list-parsing-03-expected.txt:
* http/tests/security/contentSecurityPolicy/source-list-parsing-03.html:
* http/tests/security/contentSecurityPolicy/source-list-parsing-07-expected.txt:
* http/tests/security/contentSecurityPolicy/source-list-parsing-07.html:
* http/tests/security/contentSecurityPolicy/source-list-parsing-paths-03-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/source-list-parsing-paths-03.html: Added.
* http/tests/security/contentSecurityPolicy/style-src-blocked-error-event-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/style-src-blocked-error-event.html: Added.
* http/tests/security/contentSecurityPolicy/worker-blob-inherits-csp-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/worker-blob-inherits-csp.html: Added.
* http/tests/security/contentSecurityPolicy/worker-connect-src-allowed.html:
* http/tests/security/contentSecurityPolicy/worker-connect-src-blocked.html:
* http/tests/security/contentSecurityPolicy/worker-eval-blocked.html:
* http/tests/security/contentSecurityPolicy/worker-function-function-blocked.html:
* http/tests/security/contentSecurityPolicy/worker-importscripts-blocked-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/worker-importscripts-blocked.html: Added.
* http/tests/security/contentSecurityPolicy/worker-multiple-csp-headers-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/worker-multiple-csp-headers.html: Added.
* http/tests/security/contentSecurityPolicy/worker-script-src-expected.txt:
* http/tests/security/contentSecurityPolicy/worker-script-src.html:
* http/tests/security/contentSecurityPolicy/worker-set-timeout-blocked.html:
* http/tests/security/contentSecurityPolicy/worker-without-own-csp-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/worker-without-own-csp.html: Added.
* platform/wk2/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195367
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
akling@apple.com [Wed, 20 Jan 2016 20:27:01 +0000 (20:27 +0000)]
Pack RegisterAtOffset harder.
<https://webkit.org/b/152501>
Reviewed by Michael Saboff.
Pack the register index and the offset into a single pointer-sized word instead of two.
This reduces memory consumption by 620 kB on mobile theverge.com.
The packing doesn't succeed on MSVC for some reason, so I've left out the static
assertion about class size in those builds.
* jit/RegisterAtOffset.cpp:
* jit/RegisterAtOffset.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195365
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
peavo@outlook.com [Wed, 20 Jan 2016 19:58:31 +0000 (19:58 +0000)]
[B3][Win64] Compile fix.
https://bugs.webkit.org/show_bug.cgi?id=153278
Reviewed by Filip Pizlo.
MSVC does not accept that a class declared as exported also have members declared as exported.
* b3/B3Const32Value.h:
* b3/B3ControlValue.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195362
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ryanhaddad@apple.com [Wed, 20 Jan 2016 19:56:32 +0000 (19:56 +0000)]
Marking three fast/viewport/ios/width-is-device-width-overflowing* tests as flaky on ios-simulator.
https://bugs.webkit.org/show_bug.cgi?id=153110
Unreviewed test gardening.
* platform/ios-simulator/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195361
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
keith_miller@apple.com [Wed, 20 Jan 2016 19:32:30 +0000 (19:32 +0000)]
[ES6] Fix various issues with TypedArrays.
https://bugs.webkit.org/show_bug.cgi?id=153245
Reviewed by Geoffrey Garen.
This patch fixes a couple of issues with TypedArrays:
1) We were not checking if a view had been neutered and throwing an error
if it had in the our TypedArray.prototype functions.
2) The TypedArray.prototype.set function had a couple of minor issues with
checking for the offset being negative.
3) The JSArrayBufferView class did not check if the backing store had
been neutered when computing the offset even though the view's vector
pointer had been set to NULL. This meant that under some conditions we
could, occasionally, return a garbage number as the offset. Now, we only
neuter views if the backing ArrayBuffer's view is actually transfered.
* jsc.cpp:
(GlobalObject::finishCreation):
(functionNeuterTypedArray):
* runtime/JSArrayBufferView.h:
(JSC::JSArrayBufferView::isNeutered):
* runtime/JSArrayBufferViewInlines.h:
(JSC::JSArrayBufferView::byteOffset):
* runtime/JSGenericTypedArrayViewPrototypeFunctions.h:
(JSC::genericTypedArrayViewProtoFuncSet):
(JSC::genericTypedArrayViewProtoFuncEntries):
(JSC::genericTypedArrayViewProtoFuncCopyWithin):
(JSC::genericTypedArrayViewProtoFuncFill):
(JSC::genericTypedArrayViewProtoFuncIndexOf):
(JSC::genericTypedArrayViewProtoFuncJoin):
(JSC::genericTypedArrayViewProtoFuncKeys):
(JSC::genericTypedArrayViewProtoFuncLastIndexOf):
(JSC::genericTypedArrayViewProtoFuncReverse):
(JSC::genericTypedArrayViewPrivateFuncSort):
(JSC::genericTypedArrayViewProtoFuncSlice):
(JSC::genericTypedArrayViewProtoFuncSubarray):
(JSC::typedArrayViewProtoFuncValues):
* runtime/JSTypedArrayViewPrototype.cpp:
(JSC::typedArrayViewPrivateFuncLength):
(JSC::typedArrayViewPrivateFuncSort): Deleted.
* tests/stress/typedarray-functions-with-neutered.js: Added.
(getGetter):
(unit):
(args.new.Int32Array):
(arrays.typedArrays.map):
(checkProtoFunc.throwsCorrectError):
(checkProtoFunc):
(test):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195360
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dburkart@apple.com [Wed, 20 Jan 2016 19:30:42 +0000 (19:30 +0000)]
Botwatcher's dashboard should show an 'X' when the build is broken
https://bugs.webkit.org/show_bug.cgi?id=152507
Reviewed by David Kilzer.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotStaticAnalyzerQueueView.js:
(BuildbotStaticAnalyzerQueueView.prototype.appendStaticAnalyzerQueueStatus):
(BuildbotStaticAnalyzerQueueView.prototype.update):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195359
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
achristensen@apple.com [Wed, 20 Jan 2016 19:27:46 +0000 (19:27 +0000)]
Fix CMake build after r195300.
* PlatformMac.cmake:
Include editing/mac to find DataDetection.h.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195358
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
achristensen@apple.com [Wed, 20 Jan 2016 18:23:29 +0000 (18:23 +0000)]
Ask UI Process before sending redirect requests when downloading
https://bugs.webkit.org/show_bug.cgi?id=153041
Reviewed by Darin Adler.
* NetworkProcess/Downloads/DownloadManager.cpp:
(WebKit::DownloadManager::continueCanAuthenticateAgainstProtectionSpace):
(WebKit::DownloadManager::continueWillSendRequest):
(WebKit::DownloadManager::convertHandleToDownload):
* NetworkProcess/Downloads/DownloadManager.h:
* NetworkProcess/Downloads/PendingDownload.cpp:
(WebKit::PendingDownload::willSendRedirectedRequest):
(WebKit::PendingDownload::continueWillSendRequest):
* NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::continueCanAuthenticateAgainstProtectionSpace):
(WebKit::NetworkProcess::continueWillSendRequest):
(WebKit::NetworkProcess::setCacheModel):
* NetworkProcess/NetworkProcess.h:
* NetworkProcess/NetworkProcess.messages.in:
* UIProcess/API/APIDownloadClient.h:
(API::DownloadClient::didCancel):
(API::DownloadClient::processDidCrash):
(API::DownloadClient::canAuthenticateAgainstProtectionSpace):
(API::DownloadClient::willSendRequest):
* UIProcess/Downloads/DownloadProxy.cpp:
(WebKit::DownloadProxy::didReceiveAuthenticationChallenge):
(WebKit::DownloadProxy::canAuthenticateAgainstProtectionSpace):
(WebKit::DownloadProxy::willSendRequest):
(WebKit::DownloadProxy::didReceiveResponse):
* UIProcess/Downloads/DownloadProxy.h:
* UIProcess/Downloads/DownloadProxy.messages.in:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195357
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 20 Jan 2016 17:59:02 +0000 (17:59 +0000)]
Refactor AtomicStringKeyedMRUCache to be a generic LRU cache
https://bugs.webkit.org/show_bug.cgi?id=153109
Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2016-01-20
Reviewed by Darin Adler.
Source/WebCore:
Replace the template specialization of AtomicStringKeyedMRUCache with
template derived from TinyLRUCachePolicy. Override the functions which
are needed for creating the values and the null value. Also replace the
static function which was returning a NeverDestroyed AtomicStringKeyedMRUCache
with a singleton function 'cache' inside the derived template.
* WebCore.xcodeproj/project.pbxproj:
* platform/text/AtomicStringKeyedMRUCache.h: Removed.
* platform/text/cf/HyphenationCF.cpp:
(WebCore::canHyphenate):
(WebCore::lastHyphenLocation):
(WebCore::AtomicStringKeyedMRUCache<RetainPtr<CFLocaleRef>>::createValueForNullKey): Deleted.
(WebCore::AtomicStringKeyedMRUCache<RetainPtr<CFLocaleRef>>::createValueForKey): Deleted.
(WebCore::cfLocaleCache): Deleted.
* platform/text/hyphen/HyphenationLibHyphen.cpp:
(WebCore::countLeadingSpaces):
(WebCore::lastHyphenLocation):
(WebCore::AtomicStringKeyedMRUCache<RefPtr<HyphenationDictionary>>::createValueForNullKey): Deleted.
(WebCore::AtomicStringKeyedMRUCache<RefPtr<HyphenationDictionary>>::createValueForKey): Deleted.
(WebCore::hyphenDictionaryCache): Deleted.
Source/WTF:
Refactor AtomicStringKeyedMRUCache, move it to WTF project and rename it
to be TinyLRUCache. Define another template and call it TinyLRUCachePolicy.
This one can be overridden for different keys and values. Its function is
creating the cached values.
* WTF.xcodeproj/project.pbxproj:
* wtf/TinyLRUCache.h: Added.
(WebCore::TinyLRUCachePolicy::isKeyNull):
(WebCore::TinyLRUCachePolicy::createValueForNullKey):
(WebCore::TinyLRUCachePolicy::createValueForKey):
(WebCore::TinyLRUCache::get):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195356
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cdumez@apple.com [Wed, 20 Jan 2016 17:16:34 +0000 (17:16 +0000)]
Drop support for obsolete Node.isSupported()
https://bugs.webkit.org/show_bug.cgi?id=153164
Reviewed by Darin Adler.
LayoutTests/imported/w3c:
Rebaseline W3C test now that one more check is passing.
* web-platform-tests/dom/historical-expected.txt:
Source/WebCore:
Drop support for obsolete Node.isSupported(). Chrome and Firefox already
dropped it.
No new tests, already covered by existing test.
* dom/Node.cpp:
(WebCore::Node::isSupportedForBindings):
* dom/Node.h:
* dom/Node.idl:
LayoutTests:
Drop obsolete DOM tests.
* dom/html/level2/html/HTMLBodyElement07-expected.txt: Removed.
* dom/html/level2/html/HTMLBodyElement07.html: Removed.
* dom/html/level2/html/HTMLBodyElement07.js: Removed.
* dom/html/level2/html/HTMLBodyElement08-expected.txt: Removed.
* dom/html/level2/html/HTMLBodyElement08.html: Removed.
* dom/html/level2/html/HTMLBodyElement08.js: Removed.
* dom/html/level2/html/HTMLBodyElement09-expected.txt: Removed.
* dom/html/level2/html/HTMLBodyElement09.html: Removed.
* dom/html/level2/html/HTMLBodyElement09.js: Removed.
* dom/html/level2/html/HTMLBodyElement10-expected.txt: Removed.
* dom/html/level2/html/HTMLBodyElement10.html: Removed.
* dom/html/level2/html/HTMLBodyElement10.js: Removed.
* dom/html/level2/html/HTMLBodyElement11-expected.txt: Removed.
* dom/html/level2/html/HTMLBodyElement11.html: Removed.
* dom/html/level2/html/HTMLBodyElement11.js: Removed.
* dom/html/level2/html/HTMLBodyElement12-expected.txt: Removed.
* dom/html/level2/html/HTMLBodyElement12.html: Removed.
* dom/html/level2/html/HTMLBodyElement12.js: Removed.
* dom/html/level2/html/HTMLDocument22-expected.txt: Removed.
* dom/html/level2/html/HTMLDocument22.html: Removed.
* dom/html/level2/html/HTMLDocument22.js: Removed.
* dom/html/level2/html/HTMLDocument23-expected.txt: Removed.
* dom/html/level2/html/HTMLDocument23.html: Removed.
* dom/html/level2/html/HTMLDocument23.js: Removed.
* dom/html/level2/html/HTMLDocument24-expected.txt: Removed.
* dom/html/level2/html/HTMLDocument24.html: Removed.
* dom/html/level2/html/HTMLDocument24.js: Removed.
* dom/html/level2/html/HTMLDocument25-expected.txt: Removed.
* dom/html/level2/html/HTMLDocument25.html: Removed.
* dom/html/level2/html/HTMLDocument25.js: Removed.
* dom/html/level2/html/HTMLDocument26-expected.txt: Removed.
* dom/html/level2/html/HTMLDocument26.html: Removed.
* dom/html/level2/html/HTMLDocument26.js: Removed.
* dom/html/level2/html/HTMLDocument27-expected.txt: Removed.
* dom/html/level2/html/HTMLDocument27.html: Removed.
* dom/html/level2/html/HTMLDocument27.js: Removed.
* dom/svg/level3/xpath/Conformance_isSupported_3-expected.txt: Removed.
* dom/svg/level3/xpath/Conformance_isSupported_3.js: Removed.
* dom/svg/level3/xpath/Conformance_isSupported_3.svg: Removed.
* dom/svg/level3/xpath/Conformance_isSupported_empty-expected.txt: Removed.
* dom/svg/level3/xpath/Conformance_isSupported_empty.js: Removed.
* dom/svg/level3/xpath/Conformance_isSupported_empty.svg: Removed.
* dom/svg/level3/xpath/Conformance_isSupported_null-expected.txt: Removed.
* dom/svg/level3/xpath/Conformance_isSupported_null.js: Removed.
* dom/svg/level3/xpath/Conformance_isSupported_null.svg: Removed.
* dom/xhtml/level2/html/HTMLBodyElement07-expected.txt: Removed.
* dom/xhtml/level2/html/HTMLBodyElement07.js: Removed.
* dom/xhtml/level2/html/HTMLBodyElement07.xhtml: Removed.
* dom/xhtml/level2/html/HTMLBodyElement08-expected.txt: Removed.
* dom/xhtml/level2/html/HTMLBodyElement08.js: Removed.
* dom/xhtml/level2/html/HTMLBodyElement08.xhtml: Removed.
* dom/xhtml/level2/html/HTMLBodyElement09-expected.txt: Removed.
* dom/xhtml/level2/html/HTMLBodyElement09.js: Removed.
* dom/xhtml/level2/html/HTMLBodyElement09.xhtml: Removed.
* dom/xhtml/level2/html/HTMLBodyElement10-expected.txt: Removed.
* dom/xhtml/level2/html/HTMLBodyElement10.js: Removed.
* dom/xhtml/level2/html/HTMLBodyElement10.xhtml: Removed.
* dom/xhtml/level2/html/HTMLBodyElement11-expected.txt: Removed.
* dom/xhtml/level2/html/HTMLBodyElement11.js: Removed.
* dom/xhtml/level2/html/HTMLBodyElement11.xhtml: Removed.
* dom/xhtml/level2/html/HTMLBodyElement12-expected.txt: Removed.
* dom/xhtml/level2/html/HTMLBodyElement12.js: Removed.
* dom/xhtml/level2/html/HTMLBodyElement12.xhtml: Removed.
* dom/xhtml/level2/html/HTMLDocument22-expected.txt: Removed.
* dom/xhtml/level2/html/HTMLDocument22.js: Removed.
* dom/xhtml/level2/html/HTMLDocument22.xhtml: Removed.
* dom/xhtml/level2/html/HTMLDocument23-expected.txt: Removed.
* dom/xhtml/level2/html/HTMLDocument23.js: Removed.
* dom/xhtml/level2/html/HTMLDocument23.xhtml: Removed.
* dom/xhtml/level2/html/HTMLDocument24-expected.txt: Removed.
* dom/xhtml/level2/html/HTMLDocument24.js: Removed.
* dom/xhtml/level2/html/HTMLDocument24.xhtml: Removed.
* dom/xhtml/level2/html/HTMLDocument25-expected.txt: Removed.
* dom/xhtml/level2/html/HTMLDocument25.js: Removed.
* dom/xhtml/level2/html/HTMLDocument25.xhtml: Removed.
* dom/xhtml/level2/html/HTMLDocument26-expected.txt: Removed.
* dom/xhtml/level2/html/HTMLDocument26.js: Removed.
* dom/xhtml/level2/html/HTMLDocument26.xhtml: Removed.
* dom/xhtml/level2/html/HTMLDocument27-expected.txt: Removed.
* dom/xhtml/level2/html/HTMLDocument27.js: Removed.
* dom/xhtml/level2/html/HTMLDocument27.xhtml: Removed.
* fast/dom/features-expected.txt:
* fast/dom/features.html:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195355
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
carlosgc@webkit.org [Wed, 20 Jan 2016 12:12:32 +0000 (12:12 +0000)]
Unreviewed. Fix compile warning when building with GTK+ < 3.14.
* rendering/RenderThemeGtk.cpp:
(WebCore::loadThemedIcon):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195349
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ossy@webkit.org [Wed, 20 Jan 2016 10:49:21 +0000 (10:49 +0000)]
[Mac] Speculative cmake buildfix after r195317.
* PlatformMac.cmake:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195348
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
carlosgc@webkit.org [Wed, 20 Jan 2016 09:04:16 +0000 (09:04 +0000)]
Unreviewed. Update OptionsGTK.cmake and NEWS for 2.11.4 release.
.:
* Source/cmake/OptionsGTK.cmake: Bump version numbers.
Source/WebKit2:
* gtk/NEWS: Add release notes for 2.11.4.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195346
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
nvasilyev@apple.com [Wed, 20 Jan 2016 06:23:01 +0000 (06:23 +0000)]
Web Inspector: Fix inspector/model/remote-object.html test
https://bugs.webkit.org/show_bug.cgi?id=153261
<rdar://problem/
24249553>
Reviewed by Timothy Hatcher.
Rebaseline the test for Mac platform that broke in r195305.
* platform/mac/inspector/model/remote-object-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195345
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 20 Jan 2016 06:22:19 +0000 (06:22 +0000)]
Web Inspector: Uncaught exception when logging an Error object
https://bugs.webkit.org/show_bug.cgi?id=153258
<rdar://problem/
24249068>
Patch by Joseph Pecoraro <pecoraro@apple.com> on 2016-01-19
Reviewed by Timothy Hatcher.
* UserInterface/Views/ErrorObjectView.js:
(WebInspector.ErrorObjectView):
Initialize members that are used later for clarity.
(WebInspector.ErrorObjectView.prototype.collapse):
(WebInspector.ErrorObjectView.prototype.expand):
This never has a previewView, remove it.
(WebInspector.ErrorObjectView.prototype.appendTitleSuffix):
Add the suffix ("= $1") after the description and before the
content tree outline.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195344
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
nvasilyev@apple.com [Wed, 20 Jan 2016 06:20:58 +0000 (06:20 +0000)]
Web Inspector: Subclasses of WebInspector.Object shouldn't overwrite this._listeners
https://bugs.webkit.org/show_bug.cgi?id=153268
<rdar://problem/
24252766>
Reviewed by Timothy Hatcher.
* UserInterface/Base/Object.js:
(WebInspector.Object.prototype.dispatchEventToListeners):
Add a console.assert.
* UserInterface/Views/BreakpointTreeElement.js:
(WebInspector.BreakpointTreeElement):
(WebInspector.BreakpointTreeElement.prototype.onattach):
(WebInspector.BreakpointTreeElement.prototype.ondetach):
* UserInterface/Views/ProbeSetDataGrid.js:
(WebInspector.ProbeSetDataGrid):
(WebInspector.ProbeSetDataGrid.prototype.closed):
* UserInterface/Views/ProbeSetDetailsSection.js:
(WebInspector.ProbeSetDetailsSection):
(WebInspector.ProbeSetDetailsSection.prototype.closed):
Replace all instances of "this._listeners" with "this._listenerSet".
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195343
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jmarcell@apple.com [Wed, 20 Jan 2016 06:20:03 +0000 (06:20 +0000)]
Remove assertion from revisionContentForIteration that is causing errors on the dashboard.
https://bugs.webkit.org/show_bug.cgi?id=153262
Reviewed by Alexey Proskuryakov.
Occasionaly some buildbot iterations will not have their "got_revisions" property populated. In
such cases this revisionContentForIteration method does not have any content to return, thus the
assertion fails.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueueView.js:
(BuildbotQueueView.prototype.revisionContentForIteration): Removed assertion that was causing errors.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195342
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bshafiei@apple.com [Wed, 20 Jan 2016 06:07:06 +0000 (06:07 +0000)]
Versioning.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195341
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sbarati@apple.com [Wed, 20 Jan 2016 04:39:54 +0000 (04:39 +0000)]
WTF::Bag should be non-copyable
https://bugs.webkit.org/show_bug.cgi?id=153253
Reviewed by Filip Pizlo.
* wtf/Bag.h:
* wtf/SegmentedVector.h:
(WTF::SegmentedVector::append):
(WTF::SegmentedVector::alloc):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195339
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cdumez@apple.com [Wed, 20 Jan 2016 04:06:27 +0000 (04:06 +0000)]
DocumentType.publicId / systemId should never return null
https://bugs.webkit.org/show_bug.cgi?id=153264
Reviewed by Ryosuke Niwa.
LayoutTests/imported/w3c:
Rebaseline several W3C DOM tests now that more checks are passing.
* web-platform-tests/dom/interfaces-expected.txt:
* web-platform-tests/dom/nodes/DOMImplementation-createHTMLDocument-expected.txt:
* web-platform-tests/dom/nodes/Node-properties-expected.txt:
Source/WebCore:
DocumentType.publicId / systemId should never return null as these
attributes are not nullable in the IDL:
https://dom.spec.whatwg.org/#interface-documenttype
Instead we should return the empty string. Firefox and Chrome match the
specification.
No new tests, already covered by existing tests.
* dom/DocumentType.idl:
LayoutTests:
Drop outdated DOM test.
* dom/xhtml/level3/core/documentgetdoctype01-expected.txt: Removed.
* dom/xhtml/level3/core/documentgetdoctype01.js: Removed.
* dom/xhtml/level3/core/documentgetdoctype01.xhtml: Removed.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195336
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 20 Jan 2016 03:50:50 +0000 (03:50 +0000)]
Unreviewed, rolling out r195302.
https://bugs.webkit.org/show_bug.cgi?id=153267
This change broke the Windows build, rolling out so it isn't
broken all night before investigation. (Requested by
ryanhaddad on #webkit).
Reverted changeset:
"[EME] Correctly report errors when generating key requests
from AVContentKeySession."
https://bugs.webkit.org/show_bug.cgi?id=151963
http://trac.webkit.org/changeset/195302
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195335
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
beidson@apple.com [Wed, 20 Jan 2016 01:18:53 +0000 (01:18 +0000)]
Modern IDB: Remove unneeded "Alert: " string from storage/indexeddb/modern tests.
https://bugs.webkit.org/show_bug.cgi?id=153257
Reviewed by Sam Weinig.
These were put in to minimize the diff for https://trac.webkit.org/changeset/195321 and
make it easier to review.
Now they can be removed.
* storage/indexeddb/modern/aborted-put-expected.txt:
* storage/indexeddb/modern/autoincrement-abort-expected.txt:
* storage/indexeddb/modern/basic-add-expected.txt:
* storage/indexeddb/modern/basic-put-expected.txt:
* storage/indexeddb/modern/createobjectstore-basic-expected.txt:
* storage/indexeddb/modern/createobjectstore-failures-expected.txt:
* storage/indexeddb/modern/date-basic-expected.txt:
* storage/indexeddb/modern/deletedatabase-null-name-exception-expected.txt:
* storage/indexeddb/modern/deletedatabase-request-event-expected.txt:
* storage/indexeddb/modern/deletedatabase-request-expected.txt:
* storage/indexeddb/modern/deleteobjectstore-1-expected.txt:
* storage/indexeddb/modern/double-abort-expected.txt:
* storage/indexeddb/modern/get-keyrange-expected.txt:
* storage/indexeddb/modern/idbdatabase-deleteobjectstore-failures-expected.txt:
* storage/indexeddb/modern/idbdatabase-transaction-failures-expected.txt:
* storage/indexeddb/modern/idbindex-properties-basic-expected.txt:
* storage/indexeddb/modern/idbobjectstore-clear-1-expected.txt:
* storage/indexeddb/modern/idbobjectstore-clear-2-expected.txt:
* storage/indexeddb/modern/idbobjectstore-count-1-expected.txt:
* storage/indexeddb/modern/idbobjectstore-count-failures-expected.txt:
* storage/indexeddb/modern/idbobjectstore-get-failures-expected.txt:
* storage/indexeddb/modern/idbobjectstore-put-and-clear-failures-expected.txt:
* storage/indexeddb/modern/idbtransaction-objectstore-failures-expected.txt:
* storage/indexeddb/modern/keypath-basic-expected.txt:
* storage/indexeddb/modern/opendatabase-request-event-expected.txt:
* storage/indexeddb/modern/opendatabase-request-expected.txt:
* storage/indexeddb/modern/resources/aborted-put.js:
* storage/indexeddb/modern/resources/autoincrement-abort.js:
* storage/indexeddb/modern/resources/basic-add.js:
* storage/indexeddb/modern/resources/basic-put.js:
* storage/indexeddb/modern/resources/createobjectstore-basic.js:
* storage/indexeddb/modern/resources/createobjectstore-failures.js:
* storage/indexeddb/modern/resources/date-basic.js:
* storage/indexeddb/modern/resources/deletedatabase-null-name-exception.js:
* storage/indexeddb/modern/resources/deletedatabase-request-event.js:
* storage/indexeddb/modern/resources/deletedatabase-request.js:
* storage/indexeddb/modern/resources/deleteobjectstore-1.js:
* storage/indexeddb/modern/resources/double-abort.js:
* storage/indexeddb/modern/resources/get-keyrange.js:
* storage/indexeddb/modern/resources/idbdatabase-deleteobjectstore-failures.js:
* storage/indexeddb/modern/resources/idbdatabase-transaction-failures.js:
* storage/indexeddb/modern/resources/idbindex-properties-basic.js:
* storage/indexeddb/modern/resources/idbobjectstore-clear-1.js:
* storage/indexeddb/modern/resources/idbobjectstore-clear-2.js:
* storage/indexeddb/modern/resources/idbobjectstore-count-1.js:
* storage/indexeddb/modern/resources/idbobjectstore-count-failures.js:
* storage/indexeddb/modern/resources/idbobjectstore-get-failures.js:
* storage/indexeddb/modern/resources/idbobjectstore-put-and-clear-failures.js:
* storage/indexeddb/modern/resources/idbtransaction-objectstore-failures.js:
* storage/indexeddb/modern/resources/keypath-basic.js:
* storage/indexeddb/modern/resources/opendatabase-request-event.js:
* storage/indexeddb/modern/resources/opendatabase-request.js:
* storage/indexeddb/modern/resources/transaction-scheduler-1.js:
* storage/indexeddb/modern/resources/transaction-scheduler-2.js:
* storage/indexeddb/modern/resources/transaction-scheduler-3.js:
* storage/indexeddb/modern/resources/transaction-scheduler-5.js:
* storage/indexeddb/modern/resources/transaction-scheduler-6.js:
* storage/indexeddb/modern/resources/versionchange-abort-then-reopen.js:
* storage/indexeddb/modern/resources/versionchange-event.js:
* storage/indexeddb/modern/transaction-scheduler-1-expected.txt:
* storage/indexeddb/modern/transaction-scheduler-2-expected.txt:
* storage/indexeddb/modern/transaction-scheduler-3-expected.txt:
* storage/indexeddb/modern/transaction-scheduler-5-expected.txt:
* storage/indexeddb/modern/transaction-scheduler-6-expected.txt:
* storage/indexeddb/modern/versionchange-abort-then-reopen-expected.txt:
* storage/indexeddb/modern/versionchange-event-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195334
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 20 Jan 2016 01:07:34 +0000 (01:07 +0000)]
[INTL] Implement Date.prototype.toLocaleDateString in ECMA-402
https://bugs.webkit.org/show_bug.cgi?id=147612
Patch by Andy VanWagoner <thetalecrafter@gmail.com> on 2016-01-19
Reviewed by Benjamin Poulain.
Source/JavaScriptCore:
Implement toLocaleDateString in builtin JavaScript. Remove comments with
spec steps, and instead link to the new HTML version of the spec.
Avoids creating an extra empty object in the prototype chain of the options
object in ToDateTimeOptions. The version used in toLocaleString was updated
to match as well.
* builtins/DatePrototype.js:
(toLocaleString.toDateTimeOptionsAnyAll):
(toLocaleString):
(toLocaleDateString.toDateTimeOptionsDateDate):
(toLocaleDateString):
* runtime/DatePrototype.cpp:
(JSC::DatePrototype::finishCreation):
LayoutTests:
Added tests for toLocaleDateString.
* js/date-toLocaleString-expected.txt:
* js/script-tests/date-toLocaleString.js:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195330
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bdakin@apple.com [Wed, 20 Jan 2016 00:56:50 +0000 (00:56 +0000)]
32-bit build fix.
* WebView/WebView.mm:
(-[WebView updateWebViewAdditions]):
(-[WebView showCandidates:forString:inRect:view:completionHandler:]):
* WebView/WebViewInternal.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195327
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bdakin@apple.com [Wed, 20 Jan 2016 00:46:38 +0000 (00:46 +0000)]
Move away from NSSpellChecker's showCandidates method
https://bugs.webkit.org/show_bug.cgi?id=153254
-and corresponding-
rdar://problem/
24216292
Reviewed by Tim Horton.
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::handleRequestedCandidates):
* WebView/WebView.mm:
(-[WebView updateWebViewAdditions]):
(-[WebView showCandidates:forString:inRect:view:completionHandler:]):
* WebView/WebViewInternal.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195324
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Wed, 20 Jan 2016 00:45:39 +0000 (00:45 +0000)]
Web Inspector: Add protocol version for iOS 9.3
https://bugs.webkit.org/show_bug.cgi?id=153256
rdar://problem/
24247951
Reviewed by Joseph Pecoraro.
* UserInterface/Protocol/Legacy/9.3/InspectorBackendCommands.js: Added.
* Versions/Inspector-iOS-9.3.json: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195323
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cdumez@apple.com [Wed, 20 Jan 2016 00:17:47 +0000 (00:17 +0000)]
LayoutTests/imported/w3c:
Document.createDocument() should treat undefined namespace as null
https://bugs.webkit.org/show_bug.cgi?id=153252
Reviewed by Ryosuke Niwa.
Rebaseline W3C DOM test now that more checks are passing.
* web-platform-tests/dom/nodes/DOMImplementation-createDocument-expected.txt:
Source/WebCore:
DOMImplementation.createDocument() should treat undefined namespace as null
https://bugs.webkit.org/show_bug.cgi?id=153252
Reviewed by Ryosuke Niwa.
DOMImplementation.createDocument() should treat undefined namespace as null as
the DOMString parameter is nullable:
https://dom.spec.whatwg.org/#domimplementation
Firefox behaves according to the specification, Chrome does not.
No new tests, already covered by existing test.
* dom/DOMImplementation.idl:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195322
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
beidson@apple.com [Tue, 19 Jan 2016 23:41:11 +0000 (23:41 +0000)]
Modern IDB: Split all storage/indexeddb/modern tests into separate HTML + JS format.
https://bugs.webkit.org/show_bug.cgi?id=153251
Reviewed by Sam Weinig.
* storage/indexeddb/modern/abort-requests-cancelled-expected.txt:
* storage/indexeddb/modern/abort-requests-cancelled.html:
* storage/indexeddb/modern/aborted-put-expected.txt:
* storage/indexeddb/modern/aborted-put.html:
* storage/indexeddb/modern/autoincrement-abort-expected.txt:
* storage/indexeddb/modern/autoincrement-abort.html:
* storage/indexeddb/modern/basic-add-expected.txt:
* storage/indexeddb/modern/basic-add.html:
* storage/indexeddb/modern/basic-put-expected.txt:
* storage/indexeddb/modern/basic-put.html:
* storage/indexeddb/modern/create-index-failures-expected.txt:
* storage/indexeddb/modern/create-index-failures.html:
* storage/indexeddb/modern/createobjectstore-basic-expected.txt:
* storage/indexeddb/modern/createobjectstore-basic.html:
* storage/indexeddb/modern/createobjectstore-failures-expected.txt:
* storage/indexeddb/modern/createobjectstore-failures.html:
* storage/indexeddb/modern/cursor-1-expected.txt:
* storage/indexeddb/modern/cursor-1.html:
* storage/indexeddb/modern/cursor-2-expected.txt:
* storage/indexeddb/modern/cursor-2.html:
* storage/indexeddb/modern/cursor-3-expected.txt:
* storage/indexeddb/modern/cursor-3.html:
* storage/indexeddb/modern/cursor-4-expected.txt:
* storage/indexeddb/modern/cursor-4.html:
* storage/indexeddb/modern/cursor-5-expected.txt:
* storage/indexeddb/modern/cursor-5.html:
* storage/indexeddb/modern/cursor-6-expected.txt:
* storage/indexeddb/modern/cursor-6.html:
* storage/indexeddb/modern/cursor-7-expected.txt:
* storage/indexeddb/modern/cursor-7.html:
* storage/indexeddb/modern/cursor-8-expected.txt:
* storage/indexeddb/modern/cursor-8.html:
* storage/indexeddb/modern/date-basic-expected.txt:
* storage/indexeddb/modern/date-basic.html:
* storage/indexeddb/modern/deletedatabase-1-expected.txt:
* storage/indexeddb/modern/deletedatabase-1.html:
* storage/indexeddb/modern/deletedatabase-2-expected.txt:
* storage/indexeddb/modern/deletedatabase-2.html:
* storage/indexeddb/modern/deletedatabase-null-name-exception-expected.txt:
* storage/indexeddb/modern/deletedatabase-null-name-exception.html:
* storage/indexeddb/modern/deletedatabase-request-event-expected.txt:
* storage/indexeddb/modern/deletedatabase-request-event.html:
* storage/indexeddb/modern/deletedatabase-request-expected.txt:
* storage/indexeddb/modern/deletedatabase-request.html:
* storage/indexeddb/modern/deleteindex-1-expected.txt:
* storage/indexeddb/modern/deleteindex-1.html:
* storage/indexeddb/modern/deleteindex-2-expected.txt:
* storage/indexeddb/modern/deleteindex-2.html:
* storage/indexeddb/modern/deleteobjectstore-1-expected.txt:
* storage/indexeddb/modern/deleteobjectstore-1.html:
* storage/indexeddb/modern/double-abort-expected.txt:
* storage/indexeddb/modern/double-abort.html:
* storage/indexeddb/modern/double-open-expected.txt:
* storage/indexeddb/modern/double-open.html:
* storage/indexeddb/modern/get-index-failures-expected.txt:
* storage/indexeddb/modern/get-index-failures.html:
* storage/indexeddb/modern/get-keyrange-expected.txt:
* storage/indexeddb/modern/get-keyrange.html:
* storage/indexeddb/modern/idbdatabase-deleteobjectstore-failures-expected.txt:
* storage/indexeddb/modern/idbdatabase-deleteobjectstore-failures.html:
* storage/indexeddb/modern/idbdatabase-transaction-failures-expected.txt:
* storage/indexeddb/modern/idbdatabase-transaction-failures.html:
* storage/indexeddb/modern/idbindex-properties-basic-expected.txt:
* storage/indexeddb/modern/idbindex-properties-basic.html:
* storage/indexeddb/modern/idbobjectstore-clear-1-expected.txt:
* storage/indexeddb/modern/idbobjectstore-clear-1.html:
* storage/indexeddb/modern/idbobjectstore-clear-2-expected.txt:
* storage/indexeddb/modern/idbobjectstore-clear-2.html:
* storage/indexeddb/modern/idbobjectstore-count-1-expected.txt:
* storage/indexeddb/modern/idbobjectstore-count-1.html:
* storage/indexeddb/modern/idbobjectstore-count-failures-expected.txt:
* storage/indexeddb/modern/idbobjectstore-count-failures.html:
* storage/indexeddb/modern/idbobjectstore-delete-1-expected.txt:
* storage/indexeddb/modern/idbobjectstore-delete-1.html:
* storage/indexeddb/modern/idbobjectstore-delete-2-expected.txt:
* storage/indexeddb/modern/idbobjectstore-delete-2.html:
* storage/indexeddb/modern/idbobjectstore-delete-failures-expected.txt:
* storage/indexeddb/modern/idbobjectstore-delete-failures.html:
* storage/indexeddb/modern/idbobjectstore-get-failures-expected.txt:
* storage/indexeddb/modern/idbobjectstore-get-failures.html:
* storage/indexeddb/modern/idbobjectstore-put-and-clear-failures-expected.txt:
* storage/indexeddb/modern/idbobjectstore-put-and-clear-failures.html:
* storage/indexeddb/modern/idbtransaction-objectstore-failures-expected.txt:
* storage/indexeddb/modern/idbtransaction-objectstore-failures.html:
* storage/indexeddb/modern/index-1-expected.txt:
* storage/indexeddb/modern/index-1.html:
* storage/indexeddb/modern/index-2-expected.txt:
* storage/indexeddb/modern/index-2.html:
* storage/indexeddb/modern/index-3-expected.txt:
* storage/indexeddb/modern/index-3.html:
* storage/indexeddb/modern/index-4-expected.txt:
* storage/indexeddb/modern/index-4.html:
* storage/indexeddb/modern/index-5-expected.txt:
* storage/indexeddb/modern/index-5.html:
* storage/indexeddb/modern/index-cursor-1-expected.txt:
* storage/indexeddb/modern/index-cursor-1.html:
* storage/indexeddb/modern/index-cursor-2-expected.txt:
* storage/indexeddb/modern/index-cursor-2.html:
* storage/indexeddb/modern/index-cursor-3-expected.txt:
* storage/indexeddb/modern/index-cursor-3.html:
* storage/indexeddb/modern/index-get-count-basic-expected.txt:
* storage/indexeddb/modern/index-get-count-basic.html:
* storage/indexeddb/modern/index-get-count-failures-expected.txt:
* storage/indexeddb/modern/index-get-count-failures.html:
* storage/indexeddb/modern/keypath-basic-expected.txt:
* storage/indexeddb/modern/keypath-basic.html:
* storage/indexeddb/modern/objectstore-attributes-expected.txt:
* storage/indexeddb/modern/objectstore-attributes.html:
* storage/indexeddb/modern/objectstore-cursor-advance-failures-expected.txt:
* storage/indexeddb/modern/objectstore-cursor-advance-failures.html:
* storage/indexeddb/modern/objectstore-cursor-continue-failures-expected.txt:
* storage/indexeddb/modern/objectstore-cursor-continue-failures.html:
* storage/indexeddb/modern/opencursor-failures-expected.txt:
* storage/indexeddb/modern/opencursor-failures.html:
* storage/indexeddb/modern/opendatabase-request-event-expected.txt:
* storage/indexeddb/modern/opendatabase-request-event.html:
* storage/indexeddb/modern/opendatabase-request-expected.txt:
* storage/indexeddb/modern/opendatabase-request.html:
* storage/indexeddb/modern/opendatabase-success-after-versionchange-expected.txt:
* storage/indexeddb/modern/opendatabase-success-after-versionchange.html:
* storage/indexeddb/modern/opendatabase-versions-expected.txt:
* storage/indexeddb/modern/opendatabase-versions.html:
* storage/indexeddb/modern/request-readystate-expected.txt:
* storage/indexeddb/modern/request-readystate.html:
* storage/indexeddb/modern/resources/abort-requests-cancelled.js: Copied from LayoutTests/storage/indexeddb/modern/abort-requests-cancelled.html.
* storage/indexeddb/modern/resources/aborted-put.js: Copied from LayoutTests/storage/indexeddb/modern/aborted-put.html.
* storage/indexeddb/modern/resources/autoincrement-abort.js: Copied from LayoutTests/storage/indexeddb/modern/autoincrement-abort.html.
* storage/indexeddb/modern/resources/basic-add.js: Copied from LayoutTests/storage/indexeddb/modern/basic-add.html.
* storage/indexeddb/modern/resources/basic-put.js: Copied from LayoutTests/storage/indexeddb/modern/basic-put.html.
* storage/indexeddb/modern/resources/create-index-failures.js: Copied from LayoutTests/storage/indexeddb/modern/create-index-failures.html.
* storage/indexeddb/modern/resources/createobjectstore-basic.js: Copied from LayoutTests/storage/indexeddb/modern/createobjectstore-basic.html.
* storage/indexeddb/modern/resources/createobjectstore-failures.js: Copied from LayoutTests/storage/indexeddb/modern/createobjectstore-failures.html.
* storage/indexeddb/modern/resources/cursor-1.js: Copied from LayoutTests/storage/indexeddb/modern/cursor-1.html.
* storage/indexeddb/modern/resources/cursor-2.js: Copied from LayoutTests/storage/indexeddb/modern/cursor-2.html.
* storage/indexeddb/modern/resources/cursor-3.js: Copied from LayoutTests/storage/indexeddb/modern/cursor-3.html.
* storage/indexeddb/modern/resources/cursor-4.js: Copied from LayoutTests/storage/indexeddb/modern/cursor-4.html.
* storage/indexeddb/modern/resources/cursor-5.js: Copied from LayoutTests/storage/indexeddb/modern/cursor-5.html.
* storage/indexeddb/modern/resources/cursor-6.js: Copied from LayoutTests/storage/indexeddb/modern/cursor-6.html.
* storage/indexeddb/modern/resources/cursor-7.js: Copied from LayoutTests/storage/indexeddb/modern/cursor-7.html.
* storage/indexeddb/modern/resources/cursor-8.js: Copied from LayoutTests/storage/indexeddb/modern/cursor-8.html.
* storage/indexeddb/modern/resources/date-basic.js: Copied from LayoutTests/storage/indexeddb/modern/date-basic.html.
* storage/indexeddb/modern/resources/deletedatabase-1.js: Copied from LayoutTests/storage/indexeddb/modern/deletedatabase-1.html.
* storage/indexeddb/modern/resources/deletedatabase-2.js: Copied from LayoutTests/storage/indexeddb/modern/deletedatabase-2.html.
* storage/indexeddb/modern/resources/deletedatabase-null-name-exception.js: Added.
* storage/indexeddb/modern/resources/deletedatabase-request-event.js: Copied from LayoutTests/storage/indexeddb/modern/deletedatabase-request-event.html.
* storage/indexeddb/modern/resources/deletedatabase-request.js: Added.
* storage/indexeddb/modern/resources/deleteindex-1.js: Copied from LayoutTests/storage/indexeddb/modern/deleteindex-1.html.
* storage/indexeddb/modern/resources/deleteindex-2.js: Copied from LayoutTests/storage/indexeddb/modern/deleteindex-2.html.
* storage/indexeddb/modern/resources/deleteobjectstore-1.js: Copied from LayoutTests/storage/indexeddb/modern/deleteobjectstore-1.html.
* storage/indexeddb/modern/resources/double-abort.js: Copied from LayoutTests/storage/indexeddb/modern/double-abort.html.
* storage/indexeddb/modern/resources/double-open.js: Added.
* storage/indexeddb/modern/resources/get-index-failures.js: Copied from LayoutTests/storage/indexeddb/modern/get-index-failures.html.
* storage/indexeddb/modern/resources/get-keyrange.js: Copied from LayoutTests/storage/indexeddb/modern/get-keyrange.html.
* storage/indexeddb/modern/resources/idbdatabase-deleteobjectstore-failures.js: Copied from LayoutTests/storage/indexeddb/modern/idbdatabase-deleteobjectstore-failures.html.
* storage/indexeddb/modern/resources/idbdatabase-transaction-failures.js: Copied from LayoutTests/storage/indexeddb/modern/idbdatabase-transaction-failures.html.
* storage/indexeddb/modern/resources/idbindex-properties-basic.js: Copied from LayoutTests/storage/indexeddb/modern/idbindex-properties-basic.html.
* storage/indexeddb/modern/resources/idbobjectstore-clear-1.js: Copied from LayoutTests/storage/indexeddb/modern/idbobjectstore-clear-1.html.
* storage/indexeddb/modern/resources/idbobjectstore-clear-2.js: Copied from LayoutTests/storage/indexeddb/modern/idbobjectstore-clear-2.html.
* storage/indexeddb/modern/resources/idbobjectstore-count-1.js: Copied from LayoutTests/storage/indexeddb/modern/idbobjectstore-count-1.html.
* storage/indexeddb/modern/resources/idbobjectstore-count-failures.js: Copied from LayoutTests/storage/indexeddb/modern/idbobjectstore-count-failures.html.
* storage/indexeddb/modern/resources/idbobjectstore-delete-1.js: Copied from LayoutTests/storage/indexeddb/modern/idbobjectstore-delete-1.html.
* storage/indexeddb/modern/resources/idbobjectstore-delete-2.js: Copied from LayoutTests/storage/indexeddb/modern/idbobjectstore-delete-2.html.
* storage/indexeddb/modern/resources/idbobjectstore-delete-failures.js: Copied from LayoutTests/storage/indexeddb/modern/idbobjectstore-delete-failures.html.
* storage/indexeddb/modern/resources/idbobjectstore-get-failures.js: Copied from LayoutTests/storage/indexeddb/modern/idbobjectstore-get-failures.html.
* storage/indexeddb/modern/resources/idbobjectstore-put-and-clear-failures.js: Copied from LayoutTests/storage/indexeddb/modern/idbobjectstore-put-and-clear-failures.html.
* storage/indexeddb/modern/resources/idbtransaction-objectstore-failures.js: Added.
* storage/indexeddb/modern/resources/index-1.js: Copied from LayoutTests/storage/indexeddb/modern/index-1.html.
* storage/indexeddb/modern/resources/index-2.js: Copied from LayoutTests/storage/indexeddb/modern/index-2.html.
* storage/indexeddb/modern/resources/index-3.js: Copied from LayoutTests/storage/indexeddb/modern/index-3.html.
* storage/indexeddb/modern/resources/index-4.js: Copied from LayoutTests/storage/indexeddb/modern/index-4.html.
* storage/indexeddb/modern/resources/index-5.js: Copied from LayoutTests/storage/indexeddb/modern/index-5.html.
* storage/indexeddb/modern/resources/index-cursor-1.js: Copied from LayoutTests/storage/indexeddb/modern/index-cursor-1.html.
* storage/indexeddb/modern/resources/index-cursor-2.js: Copied from LayoutTests/storage/indexeddb/modern/index-cursor-2.html.
* storage/indexeddb/modern/resources/index-cursor-3.js: Copied from LayoutTests/storage/indexeddb/modern/index-cursor-3.html.
* storage/indexeddb/modern/resources/index-get-count-basic.js: Copied from LayoutTests/storage/indexeddb/modern/index-get-count-basic.html.
* storage/indexeddb/modern/resources/index-get-count-failures.js: Copied from LayoutTests/storage/indexeddb/modern/index-get-count-failures.html.
* storage/indexeddb/modern/resources/keypath-basic.js: Copied from LayoutTests/storage/indexeddb/modern/keypath-basic.html.
* storage/indexeddb/modern/resources/objectstore-attributes.js: Copied from LayoutTests/storage/indexeddb/modern/objectstore-attributes.html.
* storage/indexeddb/modern/resources/objectstore-cursor-advance-failures.js: Copied from LayoutTests/storage/indexeddb/modern/objectstore-cursor-advance-failures.html.
* storage/indexeddb/modern/resources/objectstore-cursor-continue-failures.js: Copied from LayoutTests/storage/indexeddb/modern/objectstore-cursor-continue-failures.html.
* storage/indexeddb/modern/resources/opencursor-failures.js: Copied from LayoutTests/storage/indexeddb/modern/opencursor-failures.html.
* storage/indexeddb/modern/resources/opendatabase-request-event.js: Added.
* storage/indexeddb/modern/resources/opendatabase-request.js: Copied from LayoutTests/storage/indexeddb/modern/opendatabase-request.html.
* storage/indexeddb/modern/resources/opendatabase-success-after-versionchange.js: Copied from LayoutTests/storage/indexeddb/modern/opendatabase-success-after-versionchange.html.
* storage/indexeddb/modern/resources/opendatabase-versions.js: Copied from LayoutTests/storage/indexeddb/modern/opendatabase-versions.html.
* storage/indexeddb/modern/resources/request-readystate.js: Added.
* storage/indexeddb/modern/resources/transaction-scheduler-1.js: Copied from LayoutTests/storage/indexeddb/modern/transaction-scheduler-1.html.
* storage/indexeddb/modern/resources/transaction-scheduler-2.js: Copied from LayoutTests/storage/indexeddb/modern/transaction-scheduler-2.html.
* storage/indexeddb/modern/resources/transaction-scheduler-3.js: Copied from LayoutTests/storage/indexeddb/modern/transaction-scheduler-3.html.
* storage/indexeddb/modern/resources/transaction-scheduler-5.js: Copied from LayoutTests/storage/indexeddb/modern/transaction-scheduler-5.html.
* storage/indexeddb/modern/resources/transaction-scheduler-6.js: Copied from LayoutTests/storage/indexeddb/modern/transaction-scheduler-6.html.
* storage/indexeddb/modern/resources/transactions-stop-on-navigation-2.html:
* storage/indexeddb/modern/resources/versionchange-abort-then-reopen.js: Copied from LayoutTests/storage/indexeddb/modern/versionchange-abort-then-reopen.html.
* storage/indexeddb/modern/resources/versionchange-event.js: Copied from LayoutTests/storage/indexeddb/modern/versionchange-event.html.
* storage/indexeddb/modern/transaction-scheduler-1-expected.txt:
* storage/indexeddb/modern/transaction-scheduler-1.html:
* storage/indexeddb/modern/transaction-scheduler-2-expected.txt:
* storage/indexeddb/modern/transaction-scheduler-2.html:
* storage/indexeddb/modern/transaction-scheduler-3-expected.txt:
* storage/indexeddb/modern/transaction-scheduler-3.html:
* storage/indexeddb/modern/transaction-scheduler-5-expected.txt:
* storage/indexeddb/modern/transaction-scheduler-5.html:
* storage/indexeddb/modern/transaction-scheduler-6-expected.txt:
* storage/indexeddb/modern/transaction-scheduler-6.html:
* storage/indexeddb/modern/transactions-stop-on-navigation-expected.txt:
* storage/indexeddb/modern/versionchange-abort-then-reopen-expected.txt:
* storage/indexeddb/modern/versionchange-abort-then-reopen.html:
* storage/indexeddb/modern/versionchange-event-expected.txt:
* storage/indexeddb/modern/versionchange-event.html:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195321
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 19 Jan 2016 23:15:53 +0000 (23:15 +0000)]
[JSC] fixSpillSlotZDef() crashes on ARM64
https://bugs.webkit.org/show_bug.cgi?id=153246
Patch by Benjamin Poulain <bpoulain@apple.com> on 2016-01-19
Reviewed by Geoffrey Garen.
Moving an immediate to memory is not a valid instruction on ARM64.
This patch adds a small workaround for this specific case: an instruction
to zero a chunk of memory.
* assembler/MacroAssemblerARM64.h:
(JSC::MacroAssemblerARM64::storeZero32):
* assembler/MacroAssemblerX86Common.h:
(JSC::MacroAssemblerX86Common::storeZero32):
* b3/air/AirFixSpillSlotZDef.h:
(JSC::B3::Air::fixSpillSlotZDef):
* b3/air/AirOpcode.opcodes:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195319
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 19 Jan 2016 23:03:50 +0000 (23:03 +0000)]
REGRESSION: Web Inspector: Hovering linkified node references should show node highlight
https://bugs.webkit.org/show_bug.cgi?id=153248
<rdar://problem/
24245518>
Patch by Joseph Pecoraro <pecoraro@apple.com> on 2016-01-19
Reviewed by Timothy Hatcher.
* UserInterface/Base/DOMUtilities.js:
Show the complete node highlight details (colors and node info).
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195318
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
enrica@apple.com [Tue, 19 Jan 2016 22:58:59 +0000 (22:58 +0000)]
Add support for DataDetectors in WK (iOS).
https://bugs.webkit.org/show_bug.cgi?id=152989
rdar://problem/
22855960
Reviewed by Tim Horton.
Source/JavaScriptCore:
Adding feature definition for data detection.
* Configurations/FeatureDefines.xcconfig:
Source/WebCore:
This is the first step toward implementing Data Detectors support
in WK2. The patch adds a new memeber to the Settings object
to retrieve the type of detection desired. The DataDetection files
have been moved under cocoa, since they are no longer OS X specific.
* Configurations/FeatureDefines.xcconfig:
* Configurations/WebCore.xcconfig:
* WebCore.xcodeproj/project.pbxproj:
* editing/cocoa/DataDetection.h: Copied from Source/WebCore/editing/mac/DataDetection.h.
* editing/cocoa/DataDetection.mm: Copied from Source/WebCore/editing/mac/DataDetection.mm.
(WebCore::detectItemAtPositionWithRange):
(WebCore::DataDetection::detectItemAroundHitTestResult):
(WebCore::DataDetection::detectContentInRange):
* editing/mac/DataDetection.h: Removed.
* editing/mac/DataDetection.mm: Removed.
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::checkLoadCompleteForThisFrame):
* page/Settings.h:
* page/Settings.in:
* platform/spi/mac/DataDetectorsSPI.h:
Source/WebKit/mac:
Adding feature definition for data detection.
* Configurations/FeatureDefines.xcconfig:
Source/WebKit2:
This is the first step toward implementing Data Detectors support
in WK2. The patch adds a new property to the configuration
object to indicate the type of detection desired and propagates
to the WebProcess.
* Configurations/FeatureDefines.xcconfig:
* Shared/WebPreferencesDefinitions.h:
* UIProcess/API/Cocoa/WKWebView.mm:
(fromWKDataDetectorTypes):
(-[WKWebView initWithFrame:configuration:]):
* UIProcess/API/Cocoa/WKWebViewConfiguration.h:
* UIProcess/API/Cocoa/WKWebViewConfiguration.mm:
(-[WKWebViewConfiguration copyWithZone:]):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::updatePreferences):
Source/WTF:
Adding feature definition for data detection.
* wtf/FeatureDefines.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195317
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 19 Jan 2016 22:01:55 +0000 (22:01 +0000)]
SVG 2 requires a mechanism for restricting enum values exposed through the DOM
https://bugs.webkit.org/show_bug.cgi?id=152814
Patch by Nikos Andronikos <nikos.andronikos-webkit@cisra.canon.com.au> on 2016-01-19
Reviewed by Darin Adler.
No new tests (No change in functionality, blocked bugs add new tests).
This patch adds a mechanism to restrict the values returned through the
SVGAnimatedEnumeration interface.
This is required for SVG 2, which does not expose new enumeration
values through the IDL.
See http://www.w3.org/TR/SVG2/types.html#InterfaceSVGAnimatedEnumeration
Getters:
SVG 2 does not add numeric type values for new options, new options
should return UNKNOWN.
E.g. See the table defining numeric type values for orient at
http://www.w3.org/TR/SVG2/painting.html#InterfaceSVGMarkerElement
Setters:
On setting baseVal, the following steps are run:
1. ...
2. If value is 0 or is not the numeric type value for any value of the reflected attribute, then set the reflected attribute to the empty string.
* svg/properties/SVGAnimatedEnumerationPropertyTearOff.h:
Override baseVal() and animVal() to perform range checks against
the highest exposed enum value.
* svg/properties/SVGAnimatedStaticPropertyTearOff.h:
(WebCore::SVGAnimatedStaticPropertyTearOff::baseVal): Mark function as virtual as it's over-ridden for enumerations.
(WebCore::SVGAnimatedStaticPropertyTearOff::animVal): Mark function as virtual as it's over-ridden for enumerations.
* svg/properties/SVGPropertyTraits.h:
Add SVGIDLEnumLimits struct that contains function for querying the
highest exposed enum value.
(WebCore::SVGIDLEnumLimits::highestExposedEnumValue): New function that returns the highest enum value that should
be exposed through the DOM. This function should be specialized for enum types that need to restrict the exposed
values.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195315
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
peavo@outlook.com [Tue, 19 Jan 2016 21:49:12 +0000 (21:49 +0000)]
[B3][Win64] Compile and warning fixes.
https://bugs.webkit.org/show_bug.cgi?id=153234
Reviewed by Alex Christensen.
The size of 'long' is 4 bytes on Win64. We can use 'long long' instead,
when we want the size to be 8 bytes.
* b3/B3LowerMacrosAfterOptimizations.cpp:
* b3/B3ReduceStrength.cpp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195314
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ossy@webkit.org [Tue, 19 Jan 2016 21:48:25 +0000 (21:48 +0000)]
[cmake] Fix the B3 build after r195159
https://bugs.webkit.org/show_bug.cgi?id=153232
Reviewed by Yusuke Suzuki.
* CMakeLists.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195313
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 19 Jan 2016 21:48:17 +0000 (21:48 +0000)]
Fixed compilation of AXObjectCache in case of !HAVE(ACCESSIBILITY).
https://bugs.webkit.org/show_bug.cgi?id=153243
Patch by Konstantin Tokarev <annulen@yandex.ru> on 2016-01-19
Reviewed by Chris Fleizach.
No new tests needed.
* accessibility/AXObjectCache.h:
(WebCore::AXObjectCache::AXObjectCache):
(WebCore::nodeHasRole): Deleted.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195312
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
antti@apple.com [Tue, 19 Jan 2016 21:26:35 +0000 (21:26 +0000)]
Use references in SelectorChecker
https://bugs.webkit.org/show_bug.cgi?id=153240
Reviewed by Andreas Kling.
Element and selector can't be null in most places.
* css/ElementRuleCollector.cpp:
(WebCore::ElementRuleCollector::collectMatchingRules):
* css/SelectorChecker.cpp:
(WebCore::attributeValueMatches):
(WebCore::anyAttributeMatches):
(WebCore::SelectorChecker::checkOne):
(WebCore::SelectorChecker::matchSelectorList):
(WebCore::SelectorChecker::checkScrollbarPseudoClass):
(WebCore::SelectorChecker::determineLinkMatchType):
(WebCore::isFrameFocused):
(WebCore::SelectorChecker::matchesFocusPseudoClass):
* css/SelectorChecker.h:
(WebCore::SelectorChecker::isCommonPseudoClassSelector):
(WebCore::SelectorChecker::checkExactAttribute): Deleted.
* css/SelectorCheckerTestFunctions.h:
(WebCore::isAutofilled):
(WebCore::isDefaultButtonForForm):
(WebCore::isDisabled):
(WebCore::isEnabled):
(WebCore::isMediaDocument):
(WebCore::isChecked):
(WebCore::isInRange):
(WebCore::isOutOfRange):
(WebCore::isInvalid):
(WebCore::isOptionalFormControl):
(WebCore::isRequiredFormControl):
(WebCore::isValid):
(WebCore::isWindowInactive):
(WebCore::containslanguageSubtagMatchingRange):
(WebCore::matchesLangPseudoClass):
(WebCore::matchesReadOnlyPseudoClass):
(WebCore::matchesReadWritePseudoClass):
(WebCore::shouldAppearIndeterminate):
(WebCore::scrollbarMatchesEnabledPseudoClass):
(WebCore::scrollbarMatchesCornerPresentPseudoClass):
(WebCore::matchesFullScreenPseudoClass):
(WebCore::matchesFullScreenAnimatingFullScreenTransitionPseudoClass):
(WebCore::matchesFullScreenAncestorPseudoClass):
(WebCore::matchesFullScreenDocumentPseudoClass):
(WebCore::matchesFutureCuePseudoClass):
(WebCore::matchesPastCuePseudoClass):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195311
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cdumez@apple.com [Tue, 19 Jan 2016 21:00:35 +0000 (21:00 +0000)]
Unreviewed, rolling out r195179.
It relies on r195141 which was rolled out
Reverted changeset:
"Allocate style sheet media queries in BumpArena."
https://bugs.webkit.org/show_bug.cgi?id=153188
http://trac.webkit.org/changeset/195179
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195310
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cdumez@apple.com [Tue, 19 Jan 2016 20:59:56 +0000 (20:59 +0000)]
Unreviewed, rolling out r195173.
It relies on r195141 which was rolled out
Reverted changeset:
"Give RuleSet a BumpArena and start using it for
RuleDataVectors."
https://bugs.webkit.org/show_bug.cgi?id=153169
http://trac.webkit.org/changeset/195173
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195309
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 19 Jan 2016 20:56:21 +0000 (20:56 +0000)]
Unreviewed, rolling out r195300.
https://bugs.webkit.org/show_bug.cgi?id=153244
enrica wants more time to fix Windows (Requested by thorton on
#webkit).
Reverted changeset:
"Add support for DataDetectors in WK (iOS)."
https://bugs.webkit.org/show_bug.cgi?id=152989
http://trac.webkit.org/changeset/195300
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195308
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fpizlo@apple.com [Tue, 19 Jan 2016 20:55:34 +0000 (20:55 +0000)]
Reconsider B3's constant motion policy
https://bugs.webkit.org/show_bug.cgi?id=152202
Reviewed by Geoffrey Garen.
This changes moveConstants() to hoist constants. This is a speed-up on things like mandreel.
It has a generally positive impact on the Octane score, but it's within margin of error.
This also changes IRC to make it a bit more likely to spill constants. We don't want it to
spill them too much, because we can't rely on fixObviousSpills() to always replace a load of
a constant from the stack with the constant itself, especially in case of instructions that
need an extra register to materialize the immediate.
Also fixed DFG graph dumping to print a bit less things. It was trying to print the results of
constant property inference, and this sometimes caused crashes when you dumped the graph at an
inopportune time.
* JavaScriptCore.xcodeproj/project.pbxproj:
* b3/B3MoveConstants.cpp:
* b3/air/AirArg.h:
* b3/air/AirArgInlines.h: Added.
(JSC::B3::Air::ArgThingHelper<Tmp>::is):
(JSC::B3::Air::ArgThingHelper<Tmp>::as):
(JSC::B3::Air::ArgThingHelper<Tmp>::forEachFast):
(JSC::B3::Air::ArgThingHelper<Tmp>::forEach):
(JSC::B3::Air::ArgThingHelper<Arg>::is):
(JSC::B3::Air::ArgThingHelper<Arg>::as):
(JSC::B3::Air::ArgThingHelper<Arg>::forEachFast):
(JSC::B3::Air::ArgThingHelper<Arg>::forEach):
(JSC::B3::Air::Arg::is):
(JSC::B3::Air::Arg::as):
(JSC::B3::Air::Arg::forEachFast):
(JSC::B3::Air::Arg::forEach):
* b3/air/AirIteratedRegisterCoalescing.cpp:
* b3/air/AirUseCounts.h:
(JSC::B3::Air::UseCounts::UseCounts):
* dfg/DFGGraph.cpp:
(JSC::DFG::Graph::dump):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195307
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zalan@apple.com [Tue, 19 Jan 2016 20:32:01 +0000 (20:32 +0000)]
outline-offset does not work for inlines.
https://bugs.webkit.org/show_bug.cgi?id=153238
Reviewed by Simon Fraser.
Adjust outline box width/height with outline-offset.
Test: fast/inline/inlines-with-outline-offset.html
Source/WebCore:
* rendering/RenderInline.cpp:
(WebCore::RenderInline::paintOutline):
(WebCore::RenderInline::paintOutlineForLine):
LayoutTests:
* fast/inline/inlines-with-outline-offset-expected.html: Added.
* fast/inline/inlines-with-outline-offset.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195306
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
nvasilyev@apple.com [Tue, 19 Jan 2016 20:20:53 +0000 (20:20 +0000)]
Web Inspector: WebInspector.Object.addEventListener is O(n), make it O(1)
https://bugs.webkit.org/show_bug.cgi?id=152422
<rdar://problem/
24038047>
Reviewed by Timothy Hatcher.
Source/WebInspectorUI:
Slow addEventListener was the main cause of Console sluggishness[1].
This patch changes:
addEventListener from O(n) to O(1)
removeEventListener from O(n) to O(1)
Now, addEventListener and removeEventListener take <1ms regardless of the
number of listeners attached.
removeEventListener(null, null, thisObject), a special case when all events
for thisObject are removed, was improved from O(n^2) to O(n).
* UserInterface/Base/LinkedList.js: Added.
(LinkedList):
(LinkedList.prototype.clear):
(LinkedList.prototype.get last):
(LinkedList.prototype.push):
(LinkedList.prototype.remove):
(LinkedList.prototype.forEach):
(LinkedList.prototype.toArray):
(LinkedList.prototype.toJSON):
(LinkedListNode):
LinkedList ensures O(1) time complexity for push and remove operations.
* UserInterface/Base/ListMultimap.js: Added.
(ListMultimap):
(ListMultimap.prototype.get size):
(ListMultimap.prototype.add):
(ListMultimap.prototype.delete):
(ListMultimap.prototype.deleteAll):
(ListMultimap.prototype.has):
(ListMultimap.prototype.clear):
(ListMultimap.prototype.forEach):
(ListMultimap.prototype.toArray):
(ListMultimap.prototype.toJSON):
ListMultimap unsures O(1) time complexity for add, has and delete operations.
ListMultimap preserves insertion order by using a LinkedList.
* UserInterface/Base/Object.js:
(WebInspector.Object):
(WebInspector.Object.addEventListener):
(WebInspector.Object.removeEventListener):
(WebInspector.Object.hasEventListeners):
(WebInspector.Object.retainedObjectsWithPrototype):
(WebInspector.Object.prototype.dispatchEventToListeners):
Replace this._listeners[eventType] from array of objects to ListMultimap.
* UserInterface/Main.html:
* UserInterface/Test.html:
* UserInterface/TestStub.html:
LayoutTests:
* inspector/console/console-api-expected.txt:
* inspector/console/console-table-expected.txt:
* inspector/model/remote-object-expected.txt:
Rebaseline tests, add "_listeners: null" to all WebInspector.Object instances.
* inspector/unit-tests/linked-list-expected.txt: Added.
* inspector/unit-tests/linked-list.html: Added.
* inspector/unit-tests/list-multimap-expected.txt: Added.
* inspector/unit-tests/list-multimap.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195305
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cdumez@apple.com [Tue, 19 Jan 2016 20:16:01 +0000 (20:16 +0000)]
Unreviewed, rolling out r195141.
Seems to cause crashes on iOS9 64bit
Reverted changeset:
"Fragmentation-free allocator for timeless and/or coupled
allocations."
https://bugs.webkit.org/show_bug.cgi?id=152696
http://trac.webkit.org/changeset/195141
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195304
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mattbaker@apple.com [Tue, 19 Jan 2016 19:53:16 +0000 (19:53 +0000)]
Web Inspector: cleanup TreeOutline class and separate styles from NavigationSidebarPanel
https://bugs.webkit.org/show_bug.cgi?id=153146
<rdar://problem/
24213071>
Reviewed by Timothy Hatcher.
This patch consolidates and simplifies the tree outline styles that were previously
defined across various classes. A new stylesheet, TreeOutline.css, includes all
the styles needed to create a basic TreeOutline.
In addition, certain tree features which were previously controlled by manually
toggling class names have been promoted to properties of TreeOutline:
- compact: tree elements have reduced vertical spacing. Used by object trees.
The compact and large settings are mutually exclusive.
- large: tree elements (and their icons) are large. Used by TimelinesSidebarPanel.
Previously there existed a `small` class name which was enabled in every
case except TimelineSidebarPanel's Timelines tree. Since it was the rule rather
than the exception the class has been removed and is now the default style.
- disclosureButtons: control the appearance of disclosure buttons.
- customIndent: control use of generated style rules.
* UserInterface/Main.html:
New CSS file.
* UserInterface/Views/ApplicationCacheFrameTreeElement.js:
(WebInspector.ApplicationCacheFrameTreeElement): Deleted.
* UserInterface/Views/BreakpointTreeElement.js:
(WebInspector.BreakpointTreeElement): Deleted.
* UserInterface/Views/CallFrameTreeElement.js:
(WebInspector.CallFrameTreeElement): Deleted.
* UserInterface/Views/ContentFlowTreeElement.js:
(WebInspector.ContentFlowTreeElement): Deleted.
Removed call to obsolete TreeOutline.prototype.small setter.
* UserInterface/Views/DOMTreeOutline.css:
(.tree-outline.dom):
(.tree-outline.dom li.hovered:not(.selected) .selection):
(.tree-outline.dom li .selection):
(.tree-outline.dom li.selected .selection):
(.tree-outline.dom li.elements-drag-over .selection):
(.tree-outline.dom:focus li.selected .selection):
(.tree-outline.dom li.selected > span::after):
(.tree-outline.dom:focus li.selected > span::after):
(.tree-outline.dom ol):
(.tree-outline.dom ol.children):
(.tree-outline.dom ol.children.expanded):
(.tree-outline.dom li):
(.tree-outline.dom li.pseudo-class-enabled > .selection::before):
(.tree-outline.dom.single-node li):
(.tree-outline.dom:focus li.selected):
(.tree-outline.dom:focus li.selected.pseudo-class-enabled > .selection::before):
(.tree-outline.dom:focus li.selected *):
(.tree-outline.dom li.parent):
(.tree-outline.dom li .html-tag.close):
(.tree-outline.dom li.parent::before):
(.tree-outline.dom:focus li.parent.selected::before):
(.tree-outline.dom li.parent.expanded::before):
(.tree-outline.dom:focus li.parent.expanded.selected::before):
(.tree-outline.dom .html-text-node.large):
(.tree-outline.dom .html-pseudo-element):
(.tree-outline.dom .html-fragment.shadow):
(.showing-find-banner .tree-outline.dom .search-highlight):
(.dom-tree-outline): Deleted.
(.dom-tree-outline li.hovered:not(.selected) .selection): Deleted.
(.dom-tree-outline li .selection): Deleted.
(.dom-tree-outline li.selected .selection): Deleted.
(.dom-tree-outline li.elements-drag-over .selection): Deleted.
(.dom-tree-outline:focus li.selected .selection): Deleted.
(.dom-tree-outline li.selected > span::after): Deleted.
(.dom-tree-outline:focus li.selected > span::after): Deleted.
(.dom-tree-outline ol): Deleted.
(.dom-tree-outline ol.children): Deleted.
(.dom-tree-outline ol.children.expanded): Deleted.
(.dom-tree-outline li): Deleted.
(.dom-tree-outline li.pseudo-class-enabled > .selection::before): Deleted.
(.dom-tree-outline.single-node li): Deleted.
(.dom-tree-outline:focus li.selected): Deleted.
(.dom-tree-outline:focus li.selected.pseudo-class-enabled > .selection::before): Deleted.
(.dom-tree-outline:focus li.selected *): Deleted.
(.dom-tree-outline li.parent): Deleted.
(.dom-tree-outline li .html-tag.close): Deleted.
(.dom-tree-outline li.parent::before): Deleted.
(.dom-tree-outline:focus li.parent.selected::before): Deleted.
(.dom-tree-outline li.parent.expanded::before): Deleted.
(.dom-tree-outline:focus li.parent.expanded.selected::before): Deleted.
(.dom-tree-outline .html-text-node.large): Deleted.
(.dom-tree-outline .html-pseudo-element): Deleted.
(.dom-tree-outline .html-fragment.shadow): Deleted.
(.showing-find-banner .dom-tree-outline .search-highlight): Deleted.
Updated selectors with new tree outline class names.
* UserInterface/Views/DOMTreeOutline.js:
(WebInspector.DOMTreeOutline):
Use default TreeOutline DOM element, and simplify element class name.
* UserInterface/Views/DatabaseTableTreeElement.js:
(WebInspector.DatabaseTableTreeElement): Deleted.
* UserInterface/Views/DatabaseTreeElement.js:
(WebInspector.DatabaseTreeElement): Deleted.
Removed call to obsolete TreeOutline.prototype.small setter.
* UserInterface/Views/ErrorObjectView.css:
(.error-object:not(.expanded) .tree-outline):
(.error-object .tree-outline):
(.error-object:not(.expanded) .error-object-outline): Deleted.
(.error-object-outline): Deleted.
Updated selectors with new tree outline class names.
* UserInterface/Views/ErrorObjectView.js:
(WebInspector.ErrorObjectView): Deleted.
Removed unused tree outline class name.
* UserInterface/Views/FolderTreeElement.js:
(WebInspector.FolderTreeElement): Deleted.
Removed call to obsolete TreeOutline.prototype.small setter.
* UserInterface/Views/FormattedValue.css:
(.formatted-node > .tree-outline.dom):
(.formatted-node > .tree-outline.dom ol):
(.formatted-node > .tree-outline.dom li):
(.formatted-node > .tree-outline.dom li.hovered:not(.selected) .selection):
(.formatted-node > .dom-tree-outline): Deleted.
(.formatted-node > .dom-tree-outline ol): Deleted.
(.formatted-node > .dom-tree-outline li): Deleted.
(.formatted-node > .dom-tree-outline li.hovered:not(.selected) .selection): Deleted.
Updated selectors with new tree outline class names.
* UserInterface/Views/GeneralTreeElement.js:
(WebInspector.GeneralTreeElement.prototype._updateTitleTooltip):
(WebInspector.GeneralTreeElement.prototype.get small): Deleted.
(WebInspector.GeneralTreeElement.prototype.set small): Deleted.
(WebInspector.GeneralTreeElement.prototype.get twoLine): Deleted.
(WebInspector.GeneralTreeElement.prototype.set twoLine): Deleted.
Removed properties `small` and `twoLine`. The first is no longer needed as
it is now the default tree element style. The second was not being used.
* UserInterface/Views/IndexedDatabaseObjectStoreIndexTreeElement.js:
(WebInspector.IndexedDatabaseObjectStoreIndexTreeElement): Deleted.
* UserInterface/Views/IndexedDatabaseObjectStoreTreeElement.js:
(WebInspector.IndexedDatabaseObjectStoreTreeElement): Deleted.
* UserInterface/Views/IndexedDatabaseTreeElement.js:
(WebInspector.IndexedDatabaseTreeElement): Deleted.
Removed call to obsolete TreeOutline.prototype.small setter.
* UserInterface/Views/IssueTreeElement.css:
(.navigation-sidebar-panel-content-tree-outline .item.small.issue .icon): Deleted.
No longer needed.
* UserInterface/Views/IssueTreeElement.js:
(WebInspector.IssueTreeElement): Deleted.
Removed call to obsolete TreeOutline.prototype.small setter.
* UserInterface/Views/LayoutTimelineView.css:
(.sidebar > .panel.navigation.timeline.timeline-recording-content-view-showing .tree-outline.layout .item .subtitle):
(.sidebar > .panel.navigation.timeline.timeline-recording-content-view-showing .navigation-sidebar-panel-content-tree-outline.layout .item .subtitle): Deleted.
Updated selectors with new tree outline class names.
* UserInterface/Views/LogTreeElement.js:
(WebInspector.LogTreeElement): Deleted.
Removed call to obsolete TreeOutline.prototype.small setter.
* UserInterface/Views/NavigationSidebarPanel.css:
(.navigation-sidebar-panel-content-tree-outline .children): Deleted.
(.navigation-sidebar-panel-content-tree-outline .children.expanded): Deleted.
(.navigation-sidebar-panel-content-tree-outline .item): Deleted.
(.navigation-sidebar-panel-content-tree-outline.hide-disclosure-buttons > .children): Deleted.
(.navigation-sidebar-panel-content-tree-outline > .children.hide-disclosure-buttons > .children): Deleted.
(.navigation-sidebar-panel-content-tree-outline:not(.hide-disclosure-buttons) .item:not(.parent) .icon): Deleted.
(.navigation-sidebar-panel-content-tree-outline.hide-disclosure-buttons .item.small): Deleted.
(.navigation-sidebar-panel-content-tree-outline .item .disclosure-button): Deleted.
(.navigation-sidebar-panel-content-tree-outline.hide-disclosure-buttons .item .disclosure-button): Deleted.
(.navigation-sidebar-panel-content-tree-outline .item.parent .disclosure-button): Deleted.
(.navigation-sidebar-panel-content-tree-outline:matches(:focus, .force-focus) .item.selected .disclosure-button): Deleted.
(.navigation-sidebar-panel-content-tree-outline .item.expanded .disclosure-button): Deleted.
(.navigation-sidebar-panel-content-tree-outline:matches(:focus, .force-focus) .item.selected.expanded .disclosure-button): Deleted.
(.navigation-sidebar-panel-content-tree-outline .item .icon): Deleted.
(.navigation-sidebar-panel-content-tree-outline .item .status): Deleted.
(.navigation-sidebar-panel-content-tree-outline .item .status:empty): Deleted.
(.navigation-sidebar-panel-content-tree-outline .item.selected): Deleted.
(.navigation-sidebar-panel-content-tree-outline:matches(:focus, .force-focus) .item.selected): Deleted.
(body.window-inactive .navigation-sidebar-panel-content-tree-outline .item.selected): Deleted.
(.navigation-sidebar-panel-content-tree-outline .item .titles): Deleted.
(.navigation-sidebar-panel-content-tree-outline .item .highlighted): Deleted.
(.navigation-sidebar-panel-content-tree-outline .item .titles.no-subtitle): Deleted.
(.navigation-sidebar-panel-content-tree-outline .item .title::after): Deleted.
(.navigation-sidebar-panel-content-tree-outline .item .subtitle): Deleted.
(.navigation-sidebar-panel-content-tree-outline:matches(:focus, .force-focus) .item.selected .subtitle): Deleted.
(.navigation-sidebar-panel-content-tree-outline .item .subtitle:empty): Deleted.
(.navigation-sidebar-panel-content-tree-outline .item.small): Deleted.
(.navigation-sidebar-panel-content-tree-outline .item.small.two-line): Deleted.
(.navigation-sidebar-panel-content-tree-outline .item.small .icon): Deleted.
(.navigation-sidebar-panel-content-tree-outline .item.small .status): Deleted.
(.navigation-sidebar-panel-content-tree-outline .item.small .status .indeterminate-progress-spinner): Deleted.
(.navigation-sidebar-panel-content-tree-outline .item.small .titles): Deleted.
(.navigation-sidebar-panel-content-tree-outline .item.small.two-line .status): Deleted.
(.navigation-sidebar-panel-content-tree-outline .item.small.two-line .titles): Deleted.
(.navigation-sidebar-panel-content-tree-outline .item.small.two-line .titles.no-subtitle): Deleted.
(.navigation-sidebar-panel-content-tree-outline .item.small .subtitle): Deleted.
(.navigation-sidebar-panel-content-tree-outline .item.small.two-line .icon): Deleted.
(.navigation-sidebar-panel-content-tree-outline .item.small:not(.two-line) .title::after): Deleted.
(.navigation-sidebar-panel-content-tree-outline .item.small:not(.two-line) .subtitle::before): Deleted.
Generic tree outline styles removed, cleaned up, and relocated to TreeOutline.css.
* UserInterface/Views/NavigationSidebarPanel.js:
Removed static property HideDisclosureButtonsStyleClassName, which is now
encapsulated by TreeOutline.
(WebInspector.NavigationSidebarPanel.prototype.createContentTreeOutline):
Use default TreeOutline DOM element instead of creating it.
(WebInspector.NavigationSidebarPanel): Deleted.
Remove call to generate style rules.
(WebInspector.NavigationSidebarPanel.prototype._generateStyleRulesIfNeeded): Deleted.
Moved to TreeOutline.js.
* UserInterface/Views/NetworkSidebarPanel.css:
(.sidebar > .panel.navigation.network.network-grid-content-view-showing .tree-outline.network-grid .item .subtitle):
(.sidebar > .panel.navigation.network > .content > .tree-outline):
(.sidebar > .panel.navigation.network.network-grid-content-view-showing > .content > .tree-outline):
(.sidebar > .panel.navigation.network.network-grid-content-view-showing .navigation-sidebar-panel-content-tree-outline.network-grid .item .subtitle): Deleted.
(.sidebar > .panel.navigation.network > .content > .navigation-sidebar-panel-content-tree-outline): Deleted.
(.sidebar > .panel.navigation.network.network-grid-content-view-showing > .content > .navigation-sidebar-panel-content-tree-outline): Deleted.
Updated selectors with new tree outline class names.
* UserInterface/Views/NetworkSidebarPanel.js:
(WebInspector.NetworkSidebarPanel):
Disable tree outline disclosure buttons.
* UserInterface/Views/NetworkTimelineView.css:
(.sidebar > .panel.navigation.timeline.timeline-recording-content-view-showing .tree-outline.network .item .subtitle):
(.sidebar > .panel.navigation.timeline.timeline-recording-content-view-showing .navigation-sidebar-panel-content-tree-outline.network .item .subtitle): Deleted.
Updated selectors with new tree outline class names.
* UserInterface/Views/NetworkTimelineView.js:
(WebInspector.NetworkTimelineView):
Disable tree outline disclosure buttons.
* UserInterface/Views/ObjectTreeArrayIndexTreeElement.css:
(.object-tree-array-index .index-value .object-tree .tree-outline.object):
(.object-tree-array-index .index-value .formatted-node .tree-outline.dom):
(.object-tree-array-index .index-value .object-tree .object-tree-outline): Deleted.
(.object-tree-array-index .index-value .formatted-node .dom-tree-outline): Deleted.
Updated selectors with new tree outline class names.
* UserInterface/Views/ObjectTreeBaseTreeElement.js:
(WebInspector.ObjectTreeBaseTreeElement): Deleted.
Removed call to obsolete TreeOutline.prototype.small setter.
* UserInterface/Views/ObjectTreePropertyTreeElement.css:
(.tree-outline .item.object-tree-property):
(.item.object-tree-property.prototype-property):
(.item.object-tree-property.prototype-property + ol):
(.object-tree-property): Deleted.
(.object-tree-property > .titles): Deleted.
(.object-tree-property > .disclosure-button): Deleted.
(.object-tree-property.parent > .disclosure-button): Deleted.
(.object-tree-property.parent.expanded > .disclosure-button): Deleted.
(.object-tree-property > .icon): Deleted.
(.object-tree-property.prototype-property): Deleted.
(.object-tree-property.prototype-property + ol): Deleted.
Updated selectors with new tree outline class names, removed styles which
are now provided by TreeOutline.css.
* UserInterface/Views/ObjectTreeView.css:
(.object-tree .tree-outline.object):
(.object-tree.expanded > .tree-outline.object):
(.tree-outline.object):
(.object-tree.properties-only .tree-outline.object):
(.tree-outline.object li):
(.tree-outline.object ol):
(.tree-outline.object ol.expanded):
(.tree-outline.object li .empty-message):
(.object-tree .object-tree-outline): Deleted.
(.object-tree.expanded > .object-tree-outline): Deleted.
(.object-tree-outline): Deleted.
(.object-tree.properties-only .object-tree-outline): Deleted.
(.object-tree-outline li): Deleted.
(.object-tree-outline ol): Deleted.
(.object-tree-outline ol.expanded): Deleted.
(.object-tree-outline li .empty-message): Deleted.
Updated selectors with new tree outline class names.
* UserInterface/Views/ObjectTreeView.js:
(WebInspector.ObjectTreeView):
Use default TreeOutline DOM element, and simplify element class name.
Enable custom indent (disables generated style rules).
* UserInterface/Views/ProfileNodeTreeElement.js:
(WebInspector.ProfileNodeTreeElement): Deleted.
Removed call to obsolete TreeOutline.prototype.small setter.
* UserInterface/Views/RenderingFrameTimelineView.css:
(.sidebar > .panel.navigation.timeline.timeline-recording-content-view-showing .tree-outline.rendering-frame .item:not(.paint-record):not(.layout-record) .subtitle):
(.sidebar > .panel.navigation.timeline.timeline-recording-content-view-showing .navigation-sidebar-panel-content-tree-outline.rendering-frame .item:not(.paint-record):not(.layout-record) .subtitle): Deleted.
Updated selectors with new tree outline class names.
* UserInterface/Views/ResourceSidebarPanel.js:
(WebInspector.ResourceSidebarPanel):
Disable tree outline disclosure buttons.
(WebInspector.ResourceSidebarPanel.prototype._extraDomainsActivated):
Enable tree outline disclosure buttons.
* UserInterface/Views/ScriptTimelineView.css:
(.sidebar > .panel.navigation.timeline.timeline-recording-content-view-showing .tree-outline.script .item .subtitle):
(.sidebar > .panel.navigation.timeline:not(.timeline-recording-content-view-showing) .tree-outline.script .item .alternate-subtitle):
(.tree-outline .item .alternate-subtitle):
(.tree-outline:matches(:focus, .force-focus) .item.selected .alternate-subtitle):
(.tree-outline .item.small:not(.two-line) .alternate-subtitle::before):
(.sidebar > .panel.navigation.timeline.timeline-recording-content-view-showing .navigation-sidebar-panel-content-tree-outline.script .item .subtitle): Deleted.
(.sidebar > .panel.navigation.timeline:not(.timeline-recording-content-view-showing) .navigation-sidebar-panel-content-tree-outline.script .item .alternate-subtitle): Deleted.
(.navigation-sidebar-panel-content-tree-outline .item .alternate-subtitle): Deleted.
(.navigation-sidebar-panel-content-tree-outline:matches(:focus, .force-focus) .item.selected .alternate-subtitle): Deleted.
(.navigation-sidebar-panel-content-tree-outline .item.small:not(.two-line) .alternate-subtitle::before): Deleted.
Updated selectors with new tree outline class names.
* UserInterface/Views/SearchResultTreeElement.js:
(WebInspector.SearchResultTreeElement): Deleted.
* UserInterface/Views/SourceCodeTreeElement.js:
(WebInspector.SourceCodeTreeElement): Deleted.
* UserInterface/Views/StorageTreeElement.js:
(WebInspector.StorageTreeElement): Deleted.
Removed call to obsolete TreeOutline.prototype.small setter.
* UserInterface/Views/TimelineDataGrid.css:
(.tree-outline.timeline-data-grid .item:hover):
(.tree-outline.timeline-data-grid .item:hover .subtitle):
(.timeline-data-grid-tree-outline): Deleted.
(.timeline-data-grid-tree-outline .item): Deleted.
(.timeline-data-grid-tree-outline .item .status): Deleted.
(.timeline-data-grid-tree-outline .item .icon): Deleted.
(.timeline-data-grid-tree-outline .item:hover): Deleted.
(.timeline-data-grid-tree-outline .item .titles): Deleted.
(.timeline-data-grid-tree-outline .item .title::after): Deleted.
(.timeline-data-grid-tree-outline .item .subtitle): Deleted.
(.timeline-data-grid-tree-outline .item:hover .subtitle): Deleted.
(.timeline-data-grid-tree-outline .item .subtitle:empty): Deleted.
(.timeline-data-grid-tree-outline .item.small): Deleted.
(.timeline-data-grid-tree-outline .item.small .icon): Deleted.
(.timeline-data-grid-tree-outline .item.small .status): Deleted.
(.timeline-data-grid-tree-outline .item.small .titles): Deleted.
(.timeline-data-grid-tree-outline .item.small .subtitle): Deleted.
(.timeline-data-grid-tree-outline .item.small:not(.two-line) .title::after): Deleted.
(.timeline-data-grid-tree-outline .item.small:not(.two-line) .subtitle::before): Deleted.
Updated selectors with new tree outline class names, removed styles which
are now provided by TreeOutline.css.
* UserInterface/Views/TimelineDataGrid.js:
(WebInspector.TimelineDataGrid.prototype._createPopoverContent):
Use default TreeOutline DOM element, and simplify element class name.
* UserInterface/Views/TimelineRecordTreeElement.js:
(WebInspector.TimelineRecordTreeElement): Deleted.
Removed call to obsolete TreeOutline.prototype.small setter.
* UserInterface/Views/TimelineSidebarPanel.css:
(.sidebar > .panel.navigation.timeline > .timelines-content .close-button): Deleted.
Removed styles which are now provided by TreeOutline.css.
* UserInterface/Views/TimelineSidebarPanel.js:
(WebInspector.TimelineSidebarPanel):
Disable tree outline disclosure buttons, enable large tree style.
* UserInterface/Views/TimelineView.css:
(.panel.navigation.timeline > .content > .tree-outline):
(.panel.navigation.timeline.timeline-recording-content-view-showing > .content > .tree-outline):
(.panel.navigation.timeline > .content > .navigation-sidebar-panel-content-tree-outline): Deleted.
(.panel.navigation.timeline.timeline-recording-content-view-showing > .content > .navigation-sidebar-panel-content-tree-outline): Deleted.
Updated selectors with new tree outline class names.
* UserInterface/Views/TreeOutline.css: Added.
(.tree-outline .children):
(.tree-outline .children.expanded):
(.tree-outline .item):
(.tree-outline.compact .item):
(.tree-outline.large .item):
(.tree-outline.hide-disclosure-buttons > .children):
(.tree-outline > .children.hide-disclosure-buttons > .children):
(.tree-outline:not(.hide-disclosure-buttons) .item:not(.parent) .icon):
(.tree-outline .item .disclosure-button):
(.tree-outline.hide-disclosure-buttons .item .disclosure-button):
(.tree-outline .item.parent .disclosure-button):
(.tree-outline:matches(:focus, .force-focus) .item.selected .disclosure-button):
(.tree-outline .item.expanded .disclosure-button):
(.tree-outline:matches(:focus, .force-focus) .item.selected.expanded .disclosure-button):
(.tree-outline .item .icon):
(.tree-outline.compact .item .icon):
(.tree-outline.large .item .icon):
(.tree-outline .item .status):
(.tree-outline.large .item .status):
(.tree-outline .item .status:empty):
(.tree-outline .item.selected):
(.tree-outline:matches(:focus, .force-focus) .item.selected):
(body.window-inactive .tree-outline .item.selected):
(.tree-outline .item .titles):
(.tree-outline.compact .item .titles):
(.tree-outline.large .item .titles):
(.tree-outline .item .highlighted):
(.tree-outline.large .item .titles.no-subtitle):
(.tree-outline .item .title::after):
(.tree-outline .item .subtitle):
(.tree-outline.large .item .subtitle):
(.tree-outline:matches(:focus, .force-focus) .item.selected .subtitle):
(.tree-outline .item .subtitle:empty):
(.tree-outline:not(.large) .item .status .indeterminate-progress-spinner):
(.tree-outline .item .subtitle::before):
Relocated tree outlines styles from NavigationSidebarPanel.css.
* UserInterface/Views/TreeOutline.js:
(WebInspector.TreeOutline):
(WebInspector.TreeOutline.prototype.get compact):
(WebInspector.TreeOutline.prototype.set compact):
(WebInspector.TreeOutline.prototype.get large):
(WebInspector.TreeOutline.prototype.set large):
(WebInspector.TreeOutline.prototype.get disclosureButtons):
(WebInspector.TreeOutline.prototype.set disclosureButtons):
(WebInspector.TreeOutline.prototype.get customIndent):
(WebInspector.TreeOutline.prototype.set customIndent):
Added properties for tree element appearance and indentation
behavior, so clients don't need to manually toggle style classes.
(WebInspector.TreeOutline._generateStyleRulesIfNeeded):
Relocated from NavigationSidebarPanel.js.
* UserInterface/Views/TypeTreeElement.js:
(WebInspector.TypeTreeElement): Deleted.
Removed call to obsolete TreeOutline.prototype.small setter.
* UserInterface/Views/TypeTreeView.css:
(.tree-outline.type):
(.tree-outline.type li):
(.tree-outline.type ol):
(.tree-outline.type ol.expanded):
(.tree-outline.type li .empty-message):
(.type-tree-outline): Deleted.
(.type-tree-outline li): Deleted.
(.type-tree-outline ol): Deleted.
(.type-tree-outline ol.expanded): Deleted.
(.type-tree-outline li .empty-message): Deleted.
Updated selectors with new tree outline class names.
* UserInterface/Views/TypeTreeView.js:
(WebInspector.TypeTreeView):
Use default TreeOutline DOM element, and simplify element class name.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195303
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jer.noble@apple.com [Tue, 19 Jan 2016 19:37:06 +0000 (19:37 +0000)]
[EME] Correctly report errors when generating key requests from AVContentKeySession.
https://bugs.webkit.org/show_bug.cgi?id=151963
Reviewed by Eric Carlson.
WebIDL's "unsigned long" is a 32-bit unsigned integer, and C++'s "unsigned long" is (or, can
be) a 64-bit integer on 64-bit platforms. Casting a negative integer to a 64-bit integer
results in a number which cannot be accurately stored in a double-length floating point
number. Previously, the mac CDM code would work around this issue by returning the absolute
value of NSError code returned by media frameworks. Instead, fix the underlying problem by
storing the MediaKeyError's systemCode as a uint32_t (which more accurately represents the
size of a WebIDL "unsigned long" on all platforms.)
Check the error code issued by -contentKeyRequestDataForApp:contentIdentifier:options:error:.
* Modules/encryptedmedia/CDM.h:
* Modules/encryptedmedia/CDMSessionClearKey.cpp:
(WebCore::CDMSessionClearKey::generateKeyRequest):
(WebCore::CDMSessionClearKey::update):
* Modules/encryptedmedia/CDMSessionClearKey.h:
* Modules/encryptedmedia/MediaKeySession.cpp:
(WebCore::MediaKeySession::keyRequestTimerFired):
(WebCore::MediaKeySession::addKeyTimerFired):
(WebCore::MediaKeySession::sendError):
* Modules/encryptedmedia/MediaKeySession.h:
* Modules/mediacontrols/mediaControlsApple.js:
(Controller.prototype.handleReadyStateChange):
* WebCore.xcodeproj/project.pbxproj:
* html/MediaKeyError.h:
(WebCore::MediaKeyError::create):
(WebCore::MediaKeyError::systemCode):
* html/MediaKeyEvent.h:
* platform/graphics/CDMSession.h:
* platform/graphics/avfoundation/objc/CDMSessionAVContentKeySession.h:
* platform/graphics/avfoundation/objc/CDMSessionAVContentKeySession.mm:
(WebCore::CDMSessionAVContentKeySession::generateKeyRequest):
(WebCore::CDMSessionAVContentKeySession::update):
(WebCore::CDMSessionAVContentKeySession::generateKeyReleaseMessage):
* platform/graphics/avfoundation/objc/CDMSessionAVFoundationObjC.h:
* platform/graphics/avfoundation/objc/CDMSessionAVFoundationObjC.mm:
(WebCore::CDMSessionAVFoundationObjC::generateKeyRequest):
(WebCore::CDMSessionAVFoundationObjC::update):
* platform/graphics/avfoundation/objc/CDMSessionAVStreamSession.h:
* platform/graphics/avfoundation/objc/CDMSessionAVStreamSession.mm:
(WebCore::CDMSessionAVStreamSession::generateKeyRequest):
(WebCore::CDMSessionAVStreamSession::update):
(WebCore::CDMSessionAVStreamSession::generateKeyReleaseMessage):
* platform/graphics/avfoundation/objc/CDMSessionMediaSourceAVFObjC.h:
* platform/graphics/avfoundation/objc/CDMSessionMediaSourceAVFObjC.mm:
(WebCore::CDMSessionMediaSourceAVFObjC::layerDidReceiveError):
(WebCore::CDMSessionMediaSourceAVFObjC::rendererDidReceiveError):
(WebCore::CDMSessionMediaSourceAVFObjC::systemCodeForError): Deleted.
* testing/MockCDM.cpp:
(WebCore::MockCDMSession::generateKeyRequest):
(WebCore::MockCDMSession::update):2016-01-15 Simon Fraser <simon.fraser@apple.com>
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195302
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
beidson@apple.com [Tue, 19 Jan 2016 19:35:31 +0000 (19:35 +0000)]
Modern IDB: Split all storage/indexeddb/mozilla tests into separate HTML + JS format.
https://bugs.webkit.org/show_bug.cgi?id=153237
Reviewed by Sam Weinig.
* storage/indexeddb/mozilla/index-prev-no-duplicate.html:
* storage/indexeddb/mozilla/resources/index-prev-no-duplicate.js: Copied from LayoutTests/storage/indexeddb/mozilla/index-prev-no-duplicate.html.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195301
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
enrica@apple.com [Tue, 19 Jan 2016 19:34:20 +0000 (19:34 +0000)]
Add support for DataDetectors in WK (iOS).
https://bugs.webkit.org/show_bug.cgi?id=152989
rdar://problem/
22855960
Reviewed by Tim Horton.
Source/JavaScriptCore:
Adding feature definition.
* Configurations/FeatureDefines.xcconfig:
Source/WebCore:
This is the first step toward implementing Data Detectors support
in WK2. The patch adds a new memeber to the Settings object
to retrieve the type of detection desired. The DataDetection files
have been moved under cocoa, since they are no longer OS X specific.
* Configurations/FeatureDefines.xcconfig:
* Configurations/WebCore.xcconfig:
* WebCore.xcodeproj/project.pbxproj:
* editing/cocoa/DataDetection.h: Copied from Source/WebCore/editing/mac/DataDetection.h.
* editing/cocoa/DataDetection.mm: Copied from Source/WebCore/editing/mac/DataDetection.mm.
(WebCore::detectItemAtPositionWithRange):
(WebCore::DataDetection::detectItemAroundHitTestResult):
(WebCore::DataDetection::detectContentInRange):
* editing/mac/DataDetection.h: Removed.
* editing/mac/DataDetection.mm: Removed.
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::checkLoadCompleteForThisFrame):
* page/Settings.h:
* page/Settings.in:
* platform/spi/mac/DataDetectorsSPI.h:
Source/WebKit/mac:
Adding feature definition for data detection.
* Configurations/FeatureDefines.xcconfig:
Source/WebKit2:
This is the first step toward implementing Data Detectors support
in WK2. The patch adds a new property to the configuration
object to indicate the type of detection desired and propagates
to the WebProcess.
* Configurations/FeatureDefines.xcconfig:
* Shared/WebPreferencesDefinitions.h:
* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView initWithFrame:configuration:]):
* UIProcess/API/Cocoa/WKWebViewConfiguration.h:
* UIProcess/API/Cocoa/WKWebViewConfiguration.mm:
(-[WKWebViewConfiguration copyWithZone:]):
* WebKit2.xcodeproj/project.pbxproj:
* WebProcess/WebPage/Cocoa/WebPageCocoa.mm: Added.
(WebKit::WebPage::fromWKDataDetectorTypes):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::updatePreferences):
* WebProcess/WebPage/WebPage.h:
Source/WTF:
Adding feature definition for data detection.
* wtf/FeatureDefines.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195300
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
beidson@apple.com [Tue, 19 Jan 2016 19:32:06 +0000 (19:32 +0000)]
Modern IDB: Split all storage/indexeddb tests into separate HTML + JS format.
https://bugs.webkit.org/show_bug.cgi?id=153178
Reviewed by Sam Weinig.
* storage/indexeddb/clone-exception.html:
* storage/indexeddb/closed-cursor.html:
* storage/indexeddb/connection-leak.html:
* storage/indexeddb/cursor-cast.html:
* storage/indexeddb/cursor-leak.html:
* storage/indexeddb/cursor-overloads.html:
* storage/indexeddb/cursor-request-cycle.html:
* storage/indexeddb/deleteIndex-bug110792.html:
* storage/indexeddb/deletedatabase-transaction.html:
* storage/indexeddb/metadata-race.html:
* storage/indexeddb/noblobs.html:
* storage/indexeddb/object-lookups-in-versionchange.html:
* storage/indexeddb/open-bad-versions.html:
* storage/indexeddb/optional-arguments.html:
* storage/indexeddb/prefetch-invalidation.html:
* storage/indexeddb/prefetch-race.html:
* storage/indexeddb/primary-key-unique-to-objectstore.html:
* storage/indexeddb/request-leak.html:
* storage/indexeddb/request-result-cache.html:
* storage/indexeddb/resources/clone-exception.js: Copied from LayoutTests/storage/indexeddb/clone-exception.html.
* storage/indexeddb/resources/closed-cursor.js: Copied from LayoutTests/storage/indexeddb/closed-cursor.html.
* storage/indexeddb/resources/connection-leak.js: Copied from LayoutTests/storage/indexeddb/connection-leak.html.
* storage/indexeddb/resources/cursor-cast.js: Copied from LayoutTests/storage/indexeddb/cursor-cast.html.
* storage/indexeddb/resources/cursor-leak.js: Copied from LayoutTests/storage/indexeddb/cursor-leak.html.
* storage/indexeddb/resources/cursor-overloads.js: Copied from LayoutTests/storage/indexeddb/cursor-overloads.html.
* storage/indexeddb/resources/cursor-request-cycle.js: Copied from LayoutTests/storage/indexeddb/cursor-request-cycle.html.
* storage/indexeddb/resources/deleteIndex-bug110792.js: Copied from LayoutTests/storage/indexeddb/deleteIndex-bug110792.html.
* storage/indexeddb/resources/deletedatabase-transaction.js: Copied from LayoutTests/storage/indexeddb/deletedatabase-transaction.html.
* storage/indexeddb/resources/metadata-race.js: Copied from LayoutTests/storage/indexeddb/metadata-race.html.
* storage/indexeddb/resources/noblobs.js: Copied from LayoutTests/storage/indexeddb/noblobs.html.
* storage/indexeddb/resources/object-lookups-in-versionchange.js: Copied from LayoutTests/storage/indexeddb/object-lookups-in-versionchange.html.
* storage/indexeddb/resources/open-bad-versions.js: Copied from LayoutTests/storage/indexeddb/open-bad-versions.html.
* storage/indexeddb/resources/optional-arguments.js: Copied from LayoutTests/storage/indexeddb/optional-arguments.html.
* storage/indexeddb/resources/prefetch-invalidation.js: Copied from LayoutTests/storage/indexeddb/prefetch-invalidation.html.
* storage/indexeddb/resources/prefetch-race.js: Copied from LayoutTests/storage/indexeddb/prefetch-race.html.
* storage/indexeddb/resources/primary-key-unique-to-objectstore.js: Copied from LayoutTests/storage/indexeddb/primary-key-unique-to-objectstore.html.
* storage/indexeddb/resources/request-leak.js: Copied from LayoutTests/storage/indexeddb/request-leak.html.
* storage/indexeddb/resources/request-result-cache.js: Copied from LayoutTests/storage/indexeddb/request-result-cache.html.
* storage/indexeddb/resources/structured-clone.js: Copied from LayoutTests/storage/indexeddb/structured-clone.html.
* storage/indexeddb/resources/transaction-complete-with-js-recursion-cross-frame.js: Copied from LayoutTests/storage/indexeddb/transaction-complete-with-js-recursion-cross-frame.html.
* storage/indexeddb/resources/transaction-complete-with-js-recursion.js: Copied from LayoutTests/storage/indexeddb/transaction-complete-with-js-recursion.html.
* storage/indexeddb/resources/transaction-crash-in-tasks.js: Copied from LayoutTests/storage/indexeddb/transaction-crash-in-tasks.html.
* storage/indexeddb/resources/transaction-ordering.js: Copied from LayoutTests/storage/indexeddb/transaction-ordering.html.
* storage/indexeddb/resources/transaction-overlapping.js: Copied from LayoutTests/storage/indexeddb/transaction-overlapping.html.
* storage/indexeddb/resources/version-change-event-basic.js: Copied from LayoutTests/storage/indexeddb/version-change-event-basic.html.
* storage/indexeddb/resources/version-change-event.js: Copied from LayoutTests/storage/indexeddb/version-change-event.html.
* storage/indexeddb/structured-clone.html:
* storage/indexeddb/transaction-complete-with-js-recursion-cross-frame.html:
* storage/indexeddb/transaction-complete-with-js-recursion.html:
* storage/indexeddb/transaction-crash-in-tasks.html:
* storage/indexeddb/transaction-ordering.html:
* storage/indexeddb/transaction-overlapping.html:
* storage/indexeddb/transaction-starvation.html:
* storage/indexeddb/version-change-event-basic.html:
* storage/indexeddb/version-change-event.html:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195299
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fpizlo@apple.com [Tue, 19 Jan 2016 19:20:35 +0000 (19:20 +0000)]
FTL B3 should be just as fast as FTL LLVM on Octane/crypto
https://bugs.webkit.org/show_bug.cgi?id=153113
Reviewed by Saam Barati.
Source/JavaScriptCore:
This is the result of a hacking rampage to close the gap between FTL B3 and FTL LLVM on
Octane/crypto. It was a very successful rampage.
The biggest change in this patch is the introduction of a phase called fixObviousSpills()
that fixes patterns like:
Store register to stack slot and then use stack slot:
Move %rcx, (stack42)
Foo use:(stack42) // replace (stack42) with %rcx here.
Load stack slot into register and then use stack slot:
Move (stack42), %rcx
Foo use:(stack42) // replace (stack42) with %rcx here.
Store constant into stack slot and then use stack slot:
Move $42, %rcx
Move %rcx, (stack42)
Bar def:%rcx // %rcx isn't available anymore, but we still know that (stack42) is $42
Foo use:(stack42) // replace (stack42) with $42 here.
This phases does these fixups by doing a global forward flow that propagates sets of
must-aliases.
Also added a phase to report register pressure. It pretty-prints code alongside the set of
in-use registers above each instruction. Using this phase, I found that our register
allocator is actually doing a pretty awesome job. I had previously feared that we'd have to
make substantial changes to register allocation. I don't have such a fear anymore, at least
for Octane/crypto. In the future, we can check how the regalloc is performing just by
enabling logAirRegisterPressure.
Also fixed some FTL codegen pathologies. We were using bitOr where we meant to use a
conditional or. LLVM likes to canonicalize boolean expressions this way. B3, on the other
hand, doesn't do this canonicalization and doesn't have logic to decompose it into sequences
of branches.
Also added strength reductions for checked arithmetic. It turns out that LLVM learned how to
reduce checked multiply to unchecked multiply in some obvious cases that our existing DFG
optimizations lacked. Ideally, our DFG integer range optimization phase would cover this. But
the cases of interest were dead simple - the incoming values to the CheckMul were obviously
too small to cause overflow. I added such reasoning to B3's strength reduction.
Finally, this fixes some bugs with how we were handling subwidth spill slots. The register
allocator was making two mistakes. First, it might cause a Width64 def or use of a 4-byte
spill slot. In that case, it would extend the size of the spill slot to ensure that the use
or def is safe. Second, it emulates ZDef on Tmp behavior by emitting a Move32 to initialize
the high bits of a spill slot. But this is unsound because of the liveness semantics of spill
slots. They cannot have more than one def to initialize their value. I fixed that by making
allocateStack() be the thing that fixes ZDefs. That's a change to ZDef semantics: now, ZDef
on an anonymous stack slot means that the high bits are zero-filled. I wasn't able to
construct a test for this. It might be a hypothetical bug, but still, I like how this
simplifies the register allocator.
This is a ~0.7% speed-up on Octane.
* CMakeLists.txt:
* JavaScriptCore.xcodeproj/project.pbxproj:
* b3/B3CheckSpecial.cpp:
(JSC::B3::CheckSpecial::hiddenBranch):
(JSC::B3::CheckSpecial::forEachArg):
(JSC::B3::CheckSpecial::commitHiddenBranch): Deleted.
* b3/B3CheckSpecial.h:
* b3/B3LowerToAir.cpp:
(JSC::B3::Air::LowerToAir::fillStackmap):
(JSC::B3::Air::LowerToAir::lower):
* b3/B3StackmapValue.h:
* b3/air/AirAllocateStack.cpp:
(JSC::B3::Air::allocateStack):
* b3/air/AirAllocateStack.h:
* b3/air/AirArg.h:
(JSC::B3::Air::Arg::callArg):
(JSC::B3::Air::Arg::stackAddr):
(JSC::B3::Air::Arg::isValidScale):
* b3/air/AirBasicBlock.cpp:
(JSC::B3::Air::BasicBlock::deepDump):
(JSC::B3::Air::BasicBlock::dumpHeader):
(JSC::B3::Air::BasicBlock::dumpFooter):
* b3/air/AirBasicBlock.h:
* b3/air/AirCCallSpecial.cpp:
(JSC::B3::Air::CCallSpecial::CCallSpecial):
(JSC::B3::Air::CCallSpecial::~CCallSpecial):
* b3/air/AirCode.h:
(JSC::B3::Air::Code::lastPhaseName):
(JSC::B3::Air::Code::setEnableRCRS):
(JSC::B3::Air::Code::enableRCRS):
* b3/air/AirCustom.cpp:
(JSC::B3::Air::PatchCustom::isValidForm):
(JSC::B3::Air::CCallCustom::isValidForm):
* b3/air/AirCustom.h:
(JSC::B3::Air::PatchCustom::isValidFormStatic):
(JSC::B3::Air::PatchCustom::admitsStack):
(JSC::B3::Air::PatchCustom::isValidForm): Deleted.
* b3/air/AirEmitShuffle.cpp:
(JSC::B3::Air::ShufflePair::dump):
(JSC::B3::Air::createShuffle):
(JSC::B3::Air::emitShuffle):
* b3/air/AirEmitShuffle.h:
* b3/air/AirFixObviousSpills.cpp: Added.
(JSC::B3::Air::fixObviousSpills):
* b3/air/AirFixObviousSpills.h: Added.
* b3/air/AirFixSpillSlotZDef.h: Removed.
* b3/air/AirGenerate.cpp:
(JSC::B3::Air::prepareForGeneration):
(JSC::B3::Air::generate):
* b3/air/AirHandleCalleeSaves.cpp:
(JSC::B3::Air::handleCalleeSaves):
* b3/air/AirInst.h:
* b3/air/AirInstInlines.h:
(JSC::B3::Air::Inst::reportUsedRegisters):
(JSC::B3::Air::Inst::admitsStack):
(JSC::B3::Air::isShiftValid):
* b3/air/AirIteratedRegisterCoalescing.cpp:
* b3/air/AirLiveness.h:
(JSC::B3::Air::AbstractLiveness::AbstractLiveness):
(JSC::B3::Air::AbstractLiveness::LocalCalc::Iterable::begin):
(JSC::B3::Air::AbstractLiveness::LocalCalc::Iterable::end):
(JSC::B3::Air::AbstractLiveness::LocalCalc::Iterable::contains):
(JSC::B3::Air::AbstractLiveness::LocalCalc::live):
(JSC::B3::Air::AbstractLiveness::LocalCalc::isLive):
(JSC::B3::Air::AbstractLiveness::LocalCalc::execute):
(JSC::B3::Air::AbstractLiveness::rawLiveAtHead):
(JSC::B3::Air::AbstractLiveness::Iterable::begin):
(JSC::B3::Air::AbstractLiveness::Iterable::end):
(JSC::B3::Air::AbstractLiveness::Iterable::contains):
(JSC::B3::Air::AbstractLiveness::liveAtTail):
(JSC::B3::Air::AbstractLiveness::workset):
* b3/air/AirLogRegisterPressure.cpp: Added.
(JSC::B3::Air::logRegisterPressure):
* b3/air/AirLogRegisterPressure.h: Added.
* b3/air/AirOptimizeBlockOrder.cpp:
(JSC::B3::Air::blocksInOptimizedOrder):
(JSC::B3::Air::optimizeBlockOrder):
* b3/air/AirOptimizeBlockOrder.h:
* b3/air/AirReportUsedRegisters.cpp:
(JSC::B3::Air::reportUsedRegisters):
* b3/air/AirReportUsedRegisters.h:
* b3/air/AirSpillEverything.cpp:
(JSC::B3::Air::spillEverything):
* b3/air/AirStackSlot.h:
(JSC::B3::Air::StackSlot::isLocked):
(JSC::B3::Air::StackSlot::index):
(JSC::B3::Air::StackSlot::ensureSize):
(JSC::B3::Air::StackSlot::alignment):
* b3/air/AirValidate.cpp:
* ftl/FTLB3Compile.cpp:
(JSC::FTL::compile):
* ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::DFG::LowerDFGToLLVM::compileArithMul):
(JSC::FTL::DFG::LowerDFGToLLVM::compileArithDiv):
(JSC::FTL::DFG::LowerDFGToLLVM::compileArithMod):
* jit/RegisterSet.h:
(JSC::RegisterSet::get):
(JSC::RegisterSet::setAll):
(JSC::RegisterSet::merge):
(JSC::RegisterSet::filter):
* runtime/Options.h:
Source/WTF:
* wtf/IndexSparseSet.h:
(WTF::IndexSparseSet<OverflowHandler>::IndexSparseSet):
(WTF::IndexSparseSet<OverflowHandler>::add):
(WTF::IndexSparseSet<OverflowHandler>::remove):
* wtf/StringPrintStream.h:
(WTF::StringPrintStream::length):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195298
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fpizlo@apple.com [Tue, 19 Jan 2016 18:35:33 +0000 (18:35 +0000)]
Unreviewed, undo unintended commit.
* dfg/DFGCommon.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195297
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fpizlo@apple.com [Tue, 19 Jan 2016 18:34:19 +0000 (18:34 +0000)]
Fix Air shuffling assertions
https://bugs.webkit.org/show_bug.cgi?id=153213
Reviewed by Saam Barati.
Fixes some assertions that I was seeing running JSC tests. Adds a new Air test.
* assembler/MacroAssemblerX86Common.h:
(JSC::MacroAssemblerX86Common::store8):
(JSC::MacroAssemblerX86Common::getUnusedRegister):
* b3/air/AirEmitShuffle.cpp:
(JSC::B3::Air::emitShuffle):
* b3/air/AirLowerAfterRegAlloc.cpp:
(JSC::B3::Air::lowerAfterRegAlloc):
* b3/air/testair.cpp:
(JSC::B3::Air::testShuffleRotateWithFringe):
(JSC::B3::Air::testShuffleRotateWithFringeInWeirdOrder):
(JSC::B3::Air::testShuffleRotateWithLongFringe):
(JSC::B3::Air::run):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195296
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 19 Jan 2016 18:21:26 +0000 (18:21 +0000)]
Unreviewed, rolling out r187471.
https://bugs.webkit.org/show_bug.cgi?id=153236
purportedly caused a significant memory regression and want to
see if that is true (Requested by thorton on #webkit).
Reverted changeset:
"First in-window viewStateChange synchronously blocks despite
not previously being in-window"
https://bugs.webkit.org/show_bug.cgi?id=147344
http://trac.webkit.org/changeset/187471
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195295
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cdumez@apple.com [Tue, 19 Jan 2016 17:50:17 +0000 (17:50 +0000)]
Unreviewed, fix typo in comment added in r195157.
* dom/DocumentType.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195294
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
antti@apple.com [Tue, 19 Jan 2016 17:39:20 +0000 (17:39 +0000)]
Selector checker should not mutate document and style
https://bugs.webkit.org/show_bug.cgi?id=153205
Reviewed by Darin Adler.
Selector checker currently writes affected-by bits and similar directly to the document and style during selector
matching. This is confusing, complicated and wrong.
This patch changes SelectorChecker and SelectorCompiler to collect style relatationship metadata to a separate
data structure (currently part of SelectorChecker::CheckingContext) instead of changing the document and style
directly. The mutations are performed later outside selector checker.
* css/ElementRuleCollector.cpp:
(WebCore::ElementRuleCollector::ruleMatches):
(WebCore::ElementRuleCollector::commitStyleRelations):
Apply the relationship bit to elements and style.
(WebCore::ElementRuleCollector::collectMatchingRulesForList):
* css/ElementRuleCollector.h:
* css/SelectorChecker.cpp:
(WebCore::SelectorChecker::LocalContext::LocalContext):
LocalContext is now a separate data structure.
(WebCore::addStyleRelation):
Helper for recording new style relations. This is used where code mutated elements or style directly before.
(WebCore::isFirstChildElement):
(WebCore::isLastChildElement):
(WebCore::isFirstOfType):
(WebCore::isLastOfType):
(WebCore::countElementsBefore):
(WebCore::countElementsOfTypeBefore):
(WebCore::SelectorChecker::SelectorChecker):
(WebCore::SelectorChecker::match):
(WebCore::hasScrollbarPseudoElement):
(WebCore::localContextForParent):
(WebCore::SelectorChecker::matchRecursively):
(WebCore::attributeValueMatches):
(WebCore::anyAttributeMatches):
(WebCore::canMatchHoverOrActiveInQuirksMode):
(WebCore::tagMatches):
(WebCore::SelectorChecker::checkOne):
(WebCore::SelectorChecker::matchSelectorList):
(WebCore::SelectorChecker::checkScrollbarPseudoClass):
(WebCore::SelectorChecker::CheckingContextWithStatus::CheckingContextWithStatus): Deleted.
(WebCore::checkingContextForParent): Deleted.
* css/SelectorChecker.h:
(WebCore::SelectorChecker::CheckingContext::CheckingContext):
* css/SelectorCheckerTestFunctions.h:
(WebCore::isEnabled):
(WebCore::isMediaDocument):
(WebCore::isChecked):
(WebCore::isInRange):
(WebCore::isOutOfRange):
* css/StyleResolver.h:
(WebCore::checkRegionSelector):
* cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateAddStyleRelationIfResolvingStyle):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateAddStyleRelation):
Helpers for generating code for recording new style relations. This is used where code mutated elements or style directly before.
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateSelectorCheckerExcludingPseudoElements):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateDirectAdjacentTreeWalker):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateIndirectAdjacentTreeWalker):
(WebCore::SelectorCompiler::addStyleRelationElementFunction):
(WebCore::SelectorCompiler::SelectorCodeGenerator::jumpIfNoPreviousAdjacentElement):
(WebCore::SelectorCompiler::SelectorCodeGenerator::moduloIsZero):
(WebCore::SelectorCompiler::SelectorCodeGenerator::linkFailures):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementMatching):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateContextFunctionCallTest):
(WebCore::SelectorCompiler::elementIsActive):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsActive):
(WebCore::SelectorCompiler::jumpIfElementIsNotEmpty):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsEmpty):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsFirstChild):
(WebCore::SelectorCompiler::elementIsHovered):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsHovered):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsInLanguage):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsLastChild):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsOnlyChild):
(WebCore::SelectorCompiler::makeContextStyleUniqueIfNecessaryAndTestIsPlaceholderShown):
(WebCore::SelectorCompiler::isPlaceholderShown):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementHasPlaceholderShown):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsLink):
(WebCore::SelectorCompiler::nthFilterIsAlwaysSatisified):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsNthChild):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsNthChildOf):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsNthLastChild):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsNthLastChildOf):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateMarkPseudoStyleForPseudoElement):
(WebCore::SelectorCompiler::SelectorCodeGenerator::addFlagsToElementStyleFromContext): Deleted.
(WebCore::SelectorCompiler::setNodeFlag): Deleted.
(WebCore::SelectorCompiler::SelectorCodeGenerator::markElementIfResolvingStyle): Deleted.
(WebCore::SelectorCompiler::setFirstChildState): Deleted.
(WebCore::SelectorCompiler::elementIsActiveForStyleResolution): Deleted.
(WebCore::SelectorCompiler::setElementStyleIsAffectedByEmpty): Deleted.
(WebCore::SelectorCompiler::setElementStyleFromContextIsAffectedByEmptyAndUpdateRenderStyleIfNecessary): Deleted.
(WebCore::SelectorCompiler::elementIsHoveredForStyleResolution): Deleted.
(WebCore::SelectorCompiler::setLastChildState): Deleted.
(WebCore::SelectorCompiler::setOnlyChildState): Deleted.
(WebCore::SelectorCompiler::makeElementStyleUniqueIfNecessaryAndTestIsPlaceholderShown): Deleted.
(WebCore::SelectorCompiler::setElementChildIndex): Deleted.
(WebCore::SelectorCompiler::setChildrenAffectedByBackwardPositionalRules): Deleted.
(WebCore::SelectorCompiler::setParentAffectedByLastChildOf): Deleted.
* dom/SelectorQuery.cpp:
(WebCore::SelectorDataList::selectorMatches):
(WebCore::SelectorDataList::selectorClosest):
(WebCore::SelectorDataList::matches):
* inspector/InspectorCSSAgent.cpp:
(WebCore::InspectorCSSAgent::buildArrayForMatchedRuleList):
* inspector/InspectorStyleSheet.cpp:
(WebCore::buildObjectForSelectorHelper):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195293
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
carlosgc@webkit.org [Tue, 19 Jan 2016 17:06:35 +0000 (17:06 +0000)]
Unreviewed. Fix GTK+ build with GTK+ < 3.14.
Flags GTK_ICON_LOOKUP_DIR_LTR and GTK_ICON_LOOKUP_DIR_RTL were
added in GTK+ 3.14.
* rendering/RenderThemeGtk.cpp:
(WebCore::loadThemedIcon):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195291
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 19 Jan 2016 17:03:13 +0000 (17:03 +0000)]
[mips] Logical instructions allow immediates in range 0..0xffff, not 0x7fff
https://bugs.webkit.org/show_bug.cgi?id=152693
Patch by Konstantin Tokarev <annulen@yandex.ru> on 2016-01-19
Reviewed by Michael Saboff.
* offlineasm/mips.rb:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195290
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
carlosgc@webkit.org [Tue, 19 Jan 2016 17:00:47 +0000 (17:00 +0000)]
Unreviewed. Fix GObject DOM bindings API break after r195264.
Add webkit_dom_character_data_set_data to the list of functions
that used to raise exceptions.
* bindings/scripts/CodeGeneratorGObject.pm:
(FunctionUsedToRaiseException):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195289
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
carlosgc@webkit.org [Tue, 19 Jan 2016 16:49:58 +0000 (16:49 +0000)]
[GTK] Runtime critical warnings when loading a URL after a session restore
https://bugs.webkit.org/show_bug.cgi?id=153233
Reviewed by Michael Catanzaro.
Source/WebKit2:
This happens when doing a normal load after restoring the back
forward list from session state and the list contained forward
items. In that case the forward items are removed from the list
and we try to reference a WebBackForwardListItem wrapper that
hasn't been created. We create the wrappers on demand, and when
the back forward list is populated from session state, items are
added to the list without creating their wrappers. That was not
possible before, and that's why we assumed that any item that is
removed from the list should have a wrapper already created.
* UIProcess/API/gtk/WebKitBackForwardList.cpp:
(webkitBackForwardListChanged): If we don't have a wrapper for the
removed item, create a new one to be passed to the signal, but
without adding it to the map.
Tools:
Add new test case.
* TestWebKitAPI/Tests/WebKit2Gtk/TestBackForwardList.cpp:
(viewLoadChanged):
(testWebKitWebViewNavigationAfterSessionRestore):
(beforeAll):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195288
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mcatanzaro@igalia.com [Tue, 19 Jan 2016 15:40:41 +0000 (15:40 +0000)]
[GTK] Remove jhbuild-optional.modules
https://bugs.webkit.org/show_bug.cgi?id=152964
Reviewed by Alex Christensen.
* gtk/jhbuild-optional.modules: Removed.
* gtk/jhbuild.modules:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195287
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
carlosgc@webkit.org [Tue, 19 Jan 2016 13:15:59 +0000 (13:15 +0000)]
[GTK] Add support to load/save session in MiniBrowser
https://bugs.webkit.org/show_bug.cgi?id=153201
Reviewed by Michael Catanzaro.
It makes it easier to test the new WebView session API.
* MiniBrowser/gtk/BrowserWindow.c:
(browserWindowFinalize): Free the session file path.
(browserWindowSaveSession): Save the current WebView session if
there's a session file path.
(browserWindowDeleteEvent): Call browserWindowSaveSession().
(browser_window_load_session): Try to load the session from the
given file path, otherwise fall back to homepage and keep the
session file to save the session on window close.
* MiniBrowser/gtk/BrowserWindow.h:
* MiniBrowser/gtk/main.c:
(createBrowserWindow): Pass the given session file path when
shouldLoadSession is TRUE.
(main): Only allow to restore/save session when MiniBrowser is
launched without URL arguments.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195286
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
carlosgc@webkit.org [Tue, 19 Jan 2016 13:14:17 +0000 (13:14 +0000)]
Unreviewed. Fix GTK+ test /webkit2/WebKitWebView/geolocation-permission-requests after r195075.
Geolocation is no longer allowed for unique origins after r195075.
* TestWebKitAPI/Tests/WebKit2Gtk/TestUIClient.cpp:
(testWebViewGeolocationPermissionRequests):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195285
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jfernandez@igalia.com [Tue, 19 Jan 2016 11:36:11 +0000 (11:36 +0000)]
[css-grid][css-align] justify-self stretch is not applied for img elements
https://bugs.webkit.org/show_bug.cgi?id=153206
Reviewed by Darin Adler.
Source/WebCore:
When computing the logical height, we check first if there is an override
height value set as a consequence of the stretching logic, so we use it
directly for any kind of element. However, in the case of the width
computation, we don't use such override value because it's the default
behavior of block-level boxes.
However, we consider some special cases which have to be treated as
replaced elements. Theses cases are evaluated first, so we don't let the
regular width computation logic to be executed, which is what we want
to implement the stretch behavior.
In order to let replaced elements, such images, to be stretched as a
consequence of the CSS alignment properties, we need to exclude grid
items from the cases to be treated as replaced elements during the width
computation.
Test: fast/css-grid-layout/grid-align-stretching-replaced-items.html
* rendering/RenderBox.cpp:
(WebCore::RenderBox::computeLogicalWidthInRegion):
(WebCore::RenderBox::hasStretchedLogicalWidth):
(WebCore::RenderBox::sizesLogicalWidthToFitContent):
* rendering/RenderBox.h:
LayoutTests:
Test to verify Replaced Elements, like images, are stretched in the inline
axis, when fulfilling the Box Alignment restrictions on this regard.
* fast/css-grid-layout/grid-align-stretching-replaced-items-expected.txt: Added.
* fast/css-grid-layout/grid-align-stretching-replaced-items.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195284
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Tue, 19 Jan 2016 10:47:11 +0000 (10:47 +0000)]
Text::splitText doesn't update Range end points anchored on parent nodes
https://bugs.webkit.org/show_bug.cgi?id=153227
Reviewed by Antti Koivisto.
LayoutTests/imported/w3c:
Rebaseline the test now that we're passing more test cases.
* web-platform-tests/dom/ranges/Range-mutations-expected.txt:
Source/WebCore:
When a Text node is split into two and there is a Range whose boundary points' container node
is its parent and offset appears after the Text node, we must update the boundary points as specified
in step 7 of the concept "split" a Text node at https://dom.spec.whatwg.org/#concept-text-split
1. Insert new node into parent before node’s next sibling.
2. For each range whose start node is node and start offset is greater than offset, set its start node
to new node and decrease its start offset by offset.
3. For each range whose end node is node and end offset is greater than offset, set its end node to
new node and decrease its end offset by offset.
4. For each range whose start node is parent and start offset is equal to the index of node + 1,
increase its start offset by one.
5. For each range whose end node is parent and end offset is equal to the index of node + 1, increase
its end offset by one.
Fixed the bug by implementing steps 4 and 5 in boundaryTextNodesSplit. New behavior matches the DOM spec
as well as the behavior of Firefox.
Test: fast/dom/Range/update-range-in-split-text.html
* dom/Range.cpp:
(WebCore::boundaryTextNodesSplit): See above.
* dom/RangeBoundaryPoint.h:
(WebCore::RangeBoundaryPoint::setToAfterChild): Added.
LayoutTests:
Added a regression test since the rebaselined W3C test is incomprehensible.
* fast/dom/Range/update-range-in-split-text-expected.txt: Added.
* fast/dom/Range/update-range-in-split-text.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195281
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Tue, 19 Jan 2016 08:58:49 +0000 (08:58 +0000)]
CharacterData::setData doesn't need ExceptionCode as an out argument
https://bugs.webkit.org/show_bug.cgi?id=153225
Reviewed by Antti Koivisto.
Source/WebCore:
Removed the ExceptionCode out argument from CharacterData::setData since it's never used.
* dom/CharacterData.cpp:
(WebCore::CharacterData::setData):
(WebCore::CharacterData::containsOnlyWhitespace):
(WebCore::CharacterData::setNodeValue):
(WebCore::CharacterData::setDataAndUpdate):
* dom/CharacterData.h:
(WebCore::CharacterData::data):
(WebCore::CharacterData::dataMemoryOffset):
(WebCore::CharacterData::length):
* dom/CharacterData.idl:
* dom/Range.cpp:
(WebCore::Range::processContentsBetweenOffsets):
* dom/Text.cpp:
(WebCore::Text::replaceWholeText):
* editing/markup.cpp:
(WebCore::replaceChildrenWithFragment):
(WebCore::replaceChildrenWithText):
* html/HTMLOptionElement.cpp:
(WebCore::HTMLOptionElement::setText):
* html/HTMLScriptElement.cpp:
(WebCore::HTMLScriptElement::setText):
* html/HTMLTitleElement.cpp:
(WebCore::HTMLTitleElement::setText):
Source/WebKit2:
* WebProcess/InjectedBundle/API/mac/WKDOMText.mm:
(-[WKDOMText setData:]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195264
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Tue, 19 Jan 2016 08:39:44 +0000 (08:39 +0000)]
innerHTML should always add a mutation record for removing all children
https://bugs.webkit.org/show_bug.cgi?id=148782
<rdar://problem/
22571962>
Reviewed by Antti Koivisto.
LayoutTests/imported/w3c:
Rebaseline a test now that all test test cases are passing.
* web-platform-tests/dom/nodes/MutationObserver-inner-outer-expected.txt:
Source/WebCore:
Fixed the bug by disabling WebKit's optimization to avoid the node replacement when the behavior
is observable to scripts by either:
- Author scripts has a reference to the node
- MutationObserver can be observing this subtree
- Mutation events can be observing this subtree
Note that no caller of this function exposes fragment to author scripts so it couldn't be referenced.
It also means that we don't need to check DOMNodeInsertedIntoDocument since it doesn't bubble up
(it's only relevant if the text node in fragment has its event listener but that's impossible).
Test: fast/dom/innerHTML-single-text-node.html
* dom/ChildListMutationScope.h:
(WebCore::ChildListMutationScope::canObserve): Added.
* editing/markup.cpp:
(WebCore::hasMutationEventListeners): Added.
(WebCore::replaceChildrenWithFragment):
LayoutTests:
Add a more comprehensive test for replacing a single text node with innerHTML's setter to ensure
WebKit's optimization to avoid replacing the node should not be observable by scripts in any way.
* fast/dom/innerHTML-single-text-node-expected.txt: Added.
* fast/dom/innerHTML-single-text-node.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195263
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Tue, 19 Jan 2016 07:37:32 +0000 (07:37 +0000)]
createAttribute should lowercase the attribute name in a HTML document
https://bugs.webkit.org/show_bug.cgi?id=153112
Reviewed by Darin Adler.
LayoutTests/imported/w3c:
Rebaseline a test now that it's passing all test cases.
* web-platform-tests/dom/nodes/Document-createAttribute-expected.txt:
Source/WebCore:
In a HTML document, we should always lowercase localName in document.createAttribute as specified in
https://dom.spec.whatwg.org/#dom-document-createattribute:
1. If localName does not match the Name production in XML, throw an InvalidCharacterError exception.
2. If the context object is an HTML document, let localName be converted to ASCII lowercase.
3. Return a new attribute whose local name is localName.
Change WebKit's behavior to match the spec as well as Firefox. document.createAttributeNS will
continue to preserve the case as spec'ed.
No new tests are added since the behavior change is covered by existing tests.
* dom/Document.cpp:
(WebCore::Document::createAttribute):
LayoutTests:
Update tests, rebaseline tests, and add more test cases as needed.
createAttribute lowercases localName and getAttributeNode finds attribute ignoring cases
whereas createAttributeNS preserves localName's case and getAttributeNodeNS finds attribute preserving cases
* fast/dom/Element/mozilla-dom-base-tests/test_bug1075702-expected.txt: Since the test is adding "aa" as well
as "AA" as Attr nodes, we should be able to get both.
* fast/dom/Element/mozilla-dom-base-tests/test_bug1075702.xhtml: Renamed from .html file since test cases here
are more relevant for XHTML documents.
* fast/dom/Element/getAttribute-check-case-sensitivity-expected.txt:
* fast/dom/Element/script-tests/getAttribute-check-case-sensitivity.js:
(testGetAttributeNodeMixedCase): Change the test case to retrieve the attribute name with lowercase name
since createAttribute always lowercases the name in a HTML document.
(testAttribNodeNamePreservesCase): Use getAttributeNode instead of getAttributeNodeNS since the former does
case insensitive lookup as needed here.
(testAttribNodeNamePreservesCaseGetNode): Ditto.
(testAttribNodeNamePreservesCaseGetNode2): Ditto. Use createAttributeNS to create a case-preserving Attr node.
* fast/dom/Element/setAttributeNode-case-insensitivity-expected.txt:
* fast/dom/Element/setAttributeNode-case-insensitivity.html: Since getAttributeNode does a case-insensitive
lookup, we should be getting the same Attr node for both 'style' and 'STYLE'.
* fast/dom/Element/setAttributeNode-for-existing-attribute-expected.txt: Rebaselined. This is a progression
since we're now getting "green" when querying style.backgroundColor as expected.
* fast/dom/Element/setAttributeNode-overriding-lowercase-values-1-expected.txt:
* fast/dom/Element/setAttributeNode-overriding-lowercase-values-1.html: Updated test cases for new behavior.
* fast/dom/Element/setAttributeNode-overriding-lowercase-values-1-xml-expected.txt: Added.
* fast/dom/Element/setAttributeNode-overriding-lowercase-values-1-xml.xhtml: Added. Test behaviors in a XML
document.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195248
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
beidson@apple.com [Tue, 19 Jan 2016 06:02:30 +0000 (06:02 +0000)]
Modern IDB: Add private-browsing variant for many IDB tests, and enable private browsing in Modern IDB.
https://bugs.webkit.org/show_bug.cgi?id=153179
Reviewed by Darin Adler.
Source/WebCore:
Tests: Many private-browsing copies of existing IDB tests.
* Modules/indexeddb/client/IDBFactoryImpl.cpp:
(WebCore::IDBClient::shouldThrowSecurityException): Allow IDB access in private browsing.
LayoutTests:
Update many expectations files to skip some of the new tests on some platforms:
* TestExpectations:
* platform/mac-wk1/TestExpectations:
* platform/wk2/TestExpectations:
Add a special case for URLs that end with "-private.html" to enable private browsing:
* resources/js-test.js:
Add a whole bunch of -private.html wrappers along with new test expectations, along
with some minor test changes to remove unnecessary ambiguity due to .html filename:
* storage/indexeddb/aborted-versionchange-closes-private-expected.txt: Added.
* storage/indexeddb/aborted-versionchange-closes-private.html: Added.
* storage/indexeddb/basics-private-expected.txt: Added.
* storage/indexeddb/basics-private.html: Added.
* storage/indexeddb/create-and-remove-object-store-private-expected.txt: Added.
* storage/indexeddb/create-and-remove-object-store-private.html: Added.
* storage/indexeddb/create-object-store-options-private-expected.txt: Added.
* storage/indexeddb/create-object-store-options-private.html: Added.
* storage/indexeddb/createIndex-after-failure-private-expected.txt: Added.
* storage/indexeddb/createIndex-after-failure-private.html: Added.
* storage/indexeddb/createObjectStore-name-argument-required-private-expected.txt: Added.
* storage/indexeddb/createObjectStore-name-argument-required-private.html: Added.
* storage/indexeddb/createObjectStore-null-name-private-expected.txt: Added.
* storage/indexeddb/createObjectStore-null-name-private.html: Added.
* storage/indexeddb/cursor-added-bug-private-expected.txt: Added.
* storage/indexeddb/cursor-added-bug-private.html: Added.
* storage/indexeddb/cursor-advance-private-expected.txt: Added.
* storage/indexeddb/cursor-advance-private.html: Added.
* storage/indexeddb/cursor-basics-private-expected.txt: Added.
* storage/indexeddb/cursor-basics-private.html: Added.
* storage/indexeddb/cursor-continue-dir-private-expected.txt: Added.
* storage/indexeddb/cursor-continue-dir-private.html: Added.
* storage/indexeddb/cursor-continue-private-expected.txt: Added.
* storage/indexeddb/cursor-continue-private.html: Added.
* storage/indexeddb/cursor-continue-validity-private-expected.txt: Added.
* storage/indexeddb/cursor-continue-validity-private.html: Added.
* storage/indexeddb/cursor-delete-private-expected.txt: Added.
* storage/indexeddb/cursor-delete-private.html: Added.
* storage/indexeddb/cursor-finished-private-expected.txt: Added.
* storage/indexeddb/cursor-finished-private.html: Added.
* storage/indexeddb/cursor-inconsistency-private-expected.txt: Added.
* storage/indexeddb/cursor-inconsistency-private.html: Added.
* storage/indexeddb/cursor-index-delete-private-expected.txt: Added.
* storage/indexeddb/cursor-index-delete-private.html: Added.
* storage/indexeddb/cursor-key-order-private-expected.txt: Added.
* storage/indexeddb/cursor-key-order-private.html: Added.
* storage/indexeddb/cursor-prev-no-duplicate-private-expected.txt: Added.
* storage/indexeddb/cursor-prev-no-duplicate-private.html: Added.
* storage/indexeddb/cursor-primary-key-order-private-expected.txt: Added.
* storage/indexeddb/cursor-primary-key-order-private.html: Added.
* storage/indexeddb/cursor-properties-private-expected.txt: Added.
* storage/indexeddb/cursor-properties-private.html: Added.
* storage/indexeddb/cursor-reverse-bug-private-expected.txt: Added.
* storage/indexeddb/cursor-reverse-bug-private.html: Added.
* storage/indexeddb/cursor-skip-deleted-private-expected.txt: Added.
* storage/indexeddb/cursor-skip-deleted-private.html: Added.
* storage/indexeddb/cursor-update-private-expected.txt: Added.
* storage/indexeddb/cursor-update-private.html: Added.
* storage/indexeddb/cursor-update-value-argument-required-private-expected.txt: Added.
* storage/indexeddb/cursor-update-value-argument-required-private.html: Added.
* storage/indexeddb/cursor-value-private-expected.txt: Added.
* storage/indexeddb/cursor-value-private.html: Added.
* storage/indexeddb/database-basics-private-expected.txt: Added.
* storage/indexeddb/database-basics-private.html: Added.
* storage/indexeddb/database-close-private-expected.txt: Added.
* storage/indexeddb/database-close-private.html: Added.
* storage/indexeddb/database-closepending-flag-private-expected.txt: Added.
* storage/indexeddb/database-closepending-flag-private.html: Added.
* storage/indexeddb/database-deletepending-flag-private-expected.txt: Added.
* storage/indexeddb/database-deletepending-flag-private.html: Added.
* storage/indexeddb/database-name-undefined-private-expected.txt: Added.
* storage/indexeddb/database-name-undefined-private.html: Added.
* storage/indexeddb/database-odd-names-private-expected.txt: Added.
* storage/indexeddb/database-odd-names-private.html: Added.
* storage/indexeddb/database-quota-private-expected.txt: Added.
* storage/indexeddb/database-quota-private.html: Added.
* storage/indexeddb/database-wrapper-private-expected.txt: Added.
* storage/indexeddb/database-wrapper-private.html: Added.
* storage/indexeddb/delete-closed-database-object-private-expected.txt: Added.
* storage/indexeddb/delete-closed-database-object-private.html: Added.
* storage/indexeddb/delete-in-upgradeneeded-close-in-open-success-private-expected.txt: Added.
* storage/indexeddb/delete-in-upgradeneeded-close-in-open-success-private.html: Added.
* storage/indexeddb/delete-in-upgradeneeded-close-in-versionchange-private-expected.txt: Added.
* storage/indexeddb/delete-in-upgradeneeded-close-in-versionchange-private.html: Added.
* storage/indexeddb/delete-range-private-expected.txt: Added.
* storage/indexeddb/delete-range-private.html: Added.
* storage/indexeddb/deleteIndex-private-expected.txt: Added.
* storage/indexeddb/deleteIndex-private.html: Added.
* storage/indexeddb/deleteObjectStore-name-argument-required-private-expected.txt: Added.
* storage/indexeddb/deleteObjectStore-name-argument-required-private.html: Added.
* storage/indexeddb/deleteObjectStore-null-name-private-expected.txt: Added.
* storage/indexeddb/deleteObjectStore-null-name-private.html: Added.
* storage/indexeddb/deleted-objects-private-expected.txt: Added.
* storage/indexeddb/deleted-objects-private.html: Added.
* storage/indexeddb/deletedatabase-blocked-private-expected.txt: Added.
* storage/indexeddb/deletedatabase-blocked-private.html: Added.
* storage/indexeddb/deletedatabase-delayed-by-open-and-versionchange-private-expected.txt: Added.
* storage/indexeddb/deletedatabase-delayed-by-open-and-versionchange-private.html: Added.
* storage/indexeddb/deletedatabase-delayed-by-versionchange-private-expected.txt: Added.
* storage/indexeddb/deletedatabase-not-blocked-private-expected.txt: Added.
* storage/indexeddb/deletedatabase-not-blocked-private.html: Added.
* storage/indexeddb/dont-wedge-private-expected.txt: Added.
* storage/indexeddb/dont-wedge-private.html: Added.
* storage/indexeddb/duplicates-private-expected.txt: Added.
* storage/indexeddb/duplicates-private.html: Added.
* storage/indexeddb/error-causes-abort-by-default-private-expected.txt: Added.
* storage/indexeddb/error-causes-abort-by-default-private.html: Added.
* storage/indexeddb/events-private-expected.txt: Added.
* storage/indexeddb/events-private.html: Added.
* storage/indexeddb/exception-in-event-aborts-private-expected.txt: Added.
* storage/indexeddb/exception-in-event-aborts-private.html: Added.
* storage/indexeddb/exceptions-private-expected.txt: Added.
* storage/indexeddb/exceptions-private.html: Added.
* storage/indexeddb/factory-cmp-private-expected.txt: Added.
* storage/indexeddb/factory-cmp-private.html: Added.
* storage/indexeddb/factory-deletedatabase-private-expected.txt: Added.
* storage/indexeddb/factory-deletedatabase-private.html: Added.
* storage/indexeddb/get-keyrange-private-expected.txt: Added.
* storage/indexeddb/get-keyrange-private.html: Added.
* storage/indexeddb/index-basics-private-expected.txt: Added.
* storage/indexeddb/index-basics-private.html: Added.
* storage/indexeddb/index-count-private-expected.txt: Added.
* storage/indexeddb/index-count-private.html: Added.
* storage/indexeddb/index-cursor-private-expected.txt: Added.
* storage/indexeddb/index-cursor-private.html: Added.
* storage/indexeddb/index-duplicate-keypaths-private-expected.txt: Added.
* storage/indexeddb/index-duplicate-keypaths-private.html: Added.
* storage/indexeddb/index-get-key-argument-required-private-expected.txt: Added.
* storage/indexeddb/index-get-key-argument-required-private.html: Added.
* storage/indexeddb/index-multientry-private-expected.txt: Added.
* storage/indexeddb/index-multientry-private.html: Added.
* storage/indexeddb/index-population-private-expected.txt: Added.
* storage/indexeddb/index-population-private.html: Added.
* storage/indexeddb/index-unique-private-expected.txt: Added.
* storage/indexeddb/index-unique-private.html: Added.
* storage/indexeddb/interfaces-private-expected.txt: Added.
* storage/indexeddb/interfaces-private.html: Added.
* storage/indexeddb/intversion-abort-in-initial-upgradeneeded-private-expected.txt: Added.
* storage/indexeddb/intversion-abort-in-initial-upgradeneeded-private.html: Added.
* storage/indexeddb/intversion-bad-parameters-private-expected.txt: Added.
* storage/indexeddb/intversion-bad-parameters-private.html: Added.
* storage/indexeddb/intversion-blocked-private-expected.txt: Added.
* storage/indexeddb/intversion-blocked-private.html: Added.
* storage/indexeddb/intversion-close-between-events-private-expected.txt: Added.
* storage/indexeddb/intversion-close-between-events-private.html: Added.
* storage/indexeddb/intversion-close-in-oncomplete-private-expected.txt: Added.
* storage/indexeddb/intversion-close-in-oncomplete-private.html: Added.
* storage/indexeddb/intversion-close-in-upgradeneeded-private-expected.txt: Added.
* storage/indexeddb/intversion-close-in-upgradeneeded-private.html: Added.
* storage/indexeddb/intversion-encoding-private-expected.txt: Added.
* storage/indexeddb/intversion-encoding-private.html: Added.
* storage/indexeddb/intversion-gated-on-delete-private-expected.txt: Added.
* storage/indexeddb/intversion-gated-on-delete-private.html: Added.
* storage/indexeddb/intversion-long-queue-private-expected.txt: Added.
* storage/indexeddb/intversion-long-queue-private.html: Added.
* storage/indexeddb/intversion-omit-parameter-private-expected.txt: Added.
* storage/indexeddb/intversion-omit-parameter-private.html: Added.
* storage/indexeddb/intversion-open-in-upgradeneeded-private-expected.txt: Added.
* storage/indexeddb/intversion-open-in-upgradeneeded-private.html: Added.
* storage/indexeddb/intversion-open-with-version-private-expected.txt: Added.
* storage/indexeddb/intversion-open-with-version-private.html: Added.
* storage/indexeddb/intversion-pending-version-changes-ascending-private-expected.txt: Added.
* storage/indexeddb/intversion-pending-version-changes-ascending-private.html: Added.
* storage/indexeddb/intversion-pending-version-changes-descending-private-expected.txt: Added.
* storage/indexeddb/intversion-pending-version-changes-descending-private.html: Added.
* storage/indexeddb/intversion-pending-version-changes-same-private-expected.txt: Added.
* storage/indexeddb/intversion-pending-version-changes-same-private.html: Added.
* storage/indexeddb/intversion-persistence-private-expected.txt: Added.
* storage/indexeddb/intversion-persistence-private.html: Added.
* storage/indexeddb/intversion-revert-on-abort-private-expected.txt: Added.
* storage/indexeddb/intversion-revert-on-abort-private.html: Added.
* storage/indexeddb/intversion-two-opens-no-versions-private-expected.txt: Added.
* storage/indexeddb/intversion-two-opens-no-versions-private.html: Added.
* storage/indexeddb/intversion-upgrades-private-expected.txt: Added.
* storage/indexeddb/intversion-upgrades-private.html: Added.
* storage/indexeddb/invalid-keys-private-expected.txt: Added.
* storage/indexeddb/invalid-keys-private.html: Added.
* storage/indexeddb/key-generator-private-expected.txt: Added.
* storage/indexeddb/key-generator-private.html: Added.
* storage/indexeddb/key-sort-order-across-types-private-expected.txt: Added.
* storage/indexeddb/key-sort-order-across-types-private.html: Added.
* storage/indexeddb/key-sort-order-date-private-expected.txt: Added.
* storage/indexeddb/key-sort-order-date-private.html: Added.
* storage/indexeddb/key-type-array-private-expected.txt: Added.
* storage/indexeddb/key-type-array-private.html: Added.
* storage/indexeddb/key-type-binary-private-expected.txt: Added.
* storage/indexeddb/key-type-binary-private.html: Added.
* storage/indexeddb/key-type-infinity-private-expected.txt: Added.
* storage/indexeddb/key-type-infinity-private.html: Added.
* storage/indexeddb/keypath-arrays-private-expected.txt: Added.
* storage/indexeddb/keypath-arrays-private.html: Added.
* storage/indexeddb/keypath-basics-private-expected.txt: Added.
* storage/indexeddb/keypath-basics-private.html: Added.
* storage/indexeddb/keypath-edges-private-expected.txt: Added.
* storage/indexeddb/keypath-edges-private.html: Added.
* storage/indexeddb/keypath-fetch-key-private-expected.txt: Added.
* storage/indexeddb/keypath-fetch-key-private.html: Added.
* storage/indexeddb/keypath-intrinsic-properties-private-expected.txt: Added.
* storage/indexeddb/keypath-intrinsic-properties-private.html: Added.
* storage/indexeddb/keyrange-private-expected.txt: Added.
* storage/indexeddb/keyrange-private.html: Added.
* storage/indexeddb/keyrange-required-arguments-private-expected.txt: Added.
* storage/indexeddb/keyrange-required-arguments-private.html: Added.
* storage/indexeddb/lazy-index-types-private-expected.txt: Added.
* storage/indexeddb/lazy-index-types-private.html: Added.
* storage/indexeddb/legacy-constants-private-expected.txt: Added.
* storage/indexeddb/legacy-constants-private.html: Added.
* storage/indexeddb/list-ordering-private-expected.txt: Added.
* storage/indexeddb/list-ordering-private.html: Added.
* storage/indexeddb/metadata-private-expected.txt: Added.
* storage/indexeddb/metadata-private.html: Added.
* storage/indexeddb/mutating-cursor-private-expected.txt: Added.
* storage/indexeddb/mutating-cursor-private.html: Added.
* storage/indexeddb/objectStore-required-arguments-private-expected.txt: Added.
* storage/indexeddb/objectStore-required-arguments-private.html: Added.
* storage/indexeddb/objectstore-autoincrement-private-expected.txt: Added.
* storage/indexeddb/objectstore-autoincrement-private.html: Added.
* storage/indexeddb/objectstore-basics-private-expected.txt: Added.
* storage/indexeddb/objectstore-basics-private.html: Added.
* storage/indexeddb/objectstore-clear-private-expected.txt: Added.
* storage/indexeddb/objectstore-clear-private.html: Added.
* storage/indexeddb/objectstore-count-private-expected.txt: Added.
* storage/indexeddb/objectstore-count-private.html: Added.
* storage/indexeddb/objectstore-cursor-private-expected.txt: Added.
* storage/indexeddb/objectstore-cursor-private.html: Added.
* storage/indexeddb/objectstore-removeobjectstore-private-expected.txt: Added.
* storage/indexeddb/objectstore-removeobjectstore-private.html: Added.
* storage/indexeddb/odd-strings-private-expected.txt: Added.
* storage/indexeddb/odd-strings-private.html: Added.
* storage/indexeddb/open-cursor-private-expected.txt: Added.
* storage/indexeddb/open-cursor-private.html: Added.
* storage/indexeddb/open-during-transaction-private-expected.txt: Added.
* storage/indexeddb/open-during-transaction-private.html: Added.
* storage/indexeddb/open-ordering-private-expected.txt: Added.
* storage/indexeddb/open-ordering-private.html: Added.
* storage/indexeddb/opencursor-key-private-expected.txt: Added.
* storage/indexeddb/opencursor-key-private.html: Added.
* storage/indexeddb/pending-activity-private-expected.txt: Added.
* storage/indexeddb/pending-activity-private.html: Added.
* storage/indexeddb/pending-version-change-on-exit-private-expected.txt: Added.
* storage/indexeddb/pending-version-change-on-exit-private.html: Added.
* storage/indexeddb/pending-version-change-stuck-private-expected.txt: Added.
* storage/indexeddb/pending-version-change-stuck-private.html: Added.
* storage/indexeddb/persistence-expected.txt:
* storage/indexeddb/persistence-private-expected.txt: Copied from LayoutTests/storage/indexeddb/persistence-expected.txt.
* storage/indexeddb/persistence-private.html: Added.
* storage/indexeddb/prefetch-bugfix-108071-private-expected.txt: Added.
* storage/indexeddb/prefetch-bugfix-108071-private.html: Added.
* storage/indexeddb/queued-commands-private-expected.txt: Added.
* storage/indexeddb/queued-commands-private.html: Added.
* storage/indexeddb/readonly-private-expected.txt: Added.
* storage/indexeddb/readonly-private.html: Added.
* storage/indexeddb/readonly-properties-private-expected.txt: Added.
* storage/indexeddb/readonly-properties-private.html: Added.
* storage/indexeddb/removed-private-expected.txt: Added.
* storage/indexeddb/removed-private.html: Added.
* storage/indexeddb/request-continue-abort-private-expected.txt: Added.
* storage/indexeddb/request-continue-abort-private.html: Added.
* storage/indexeddb/request-event-propagation-private-expected.txt: Added.
* storage/indexeddb/request-event-propagation-private.html: Added.
* storage/indexeddb/resources/persistence.js:
* storage/indexeddb/set_version_blocked-private-expected.txt: Added.
* storage/indexeddb/set_version_blocked-private.html: Added.
* storage/indexeddb/setversion-blocked-by-versionchange-close-private-expected.txt: Added.
* storage/indexeddb/setversion-blocked-by-versionchange-close-private.html: Added.
* storage/indexeddb/setversion-not-blocked-private-expected.txt: Added.
* storage/indexeddb/setversion-not-blocked-private.html: Added.
* storage/indexeddb/transaction-abort-private-expected.txt: Added.
* storage/indexeddb/transaction-abort-private.html: Added.
* storage/indexeddb/transaction-active-flag-private-expected.txt: Added.
* storage/indexeddb/transaction-active-flag-private.html: Added.
* storage/indexeddb/transaction-after-close-private-expected.txt: Added.
* storage/indexeddb/transaction-after-close-private.html: Added.
* storage/indexeddb/transaction-and-objectstore-calls-private-expected.txt: Added.
* storage/indexeddb/transaction-and-objectstore-calls-private.html: Added.
* storage/indexeddb/transaction-basics-private-expected.txt: Added.
* storage/indexeddb/transaction-basics-private.html: Added.
* storage/indexeddb/transaction-complete-workers-private-expected.txt: Added.
* storage/indexeddb/transaction-complete-workers-private.html: Added.
* storage/indexeddb/transaction-coordination-across-databases-private-expected.txt: Added.
* storage/indexeddb/transaction-coordination-across-databases-private.html: Added.
* storage/indexeddb/transaction-coordination-within-database-private-expected.txt: Added.
* storage/indexeddb/transaction-coordination-within-database-private.html: Added.
* storage/indexeddb/transaction-crash-on-abort-private-expected.txt: Added.
* storage/indexeddb/transaction-crash-on-abort-private.html: Added.
* storage/indexeddb/transaction-error-private-expected.txt: Added.
* storage/indexeddb/transaction-error-private.html: Added.
* storage/indexeddb/transaction-event-propagation-private-expected.txt: Added.
* storage/indexeddb/transaction-event-propagation-private.html: Added.
* storage/indexeddb/transaction-read-only-private-expected.txt: Added.
* storage/indexeddb/transaction-read-only-private.html: Added.
* storage/indexeddb/transaction-readwrite-exclusive-private-expected.txt: Added.
* storage/indexeddb/transaction-readwrite-exclusive-private.html: Added.
* storage/indexeddb/transaction-rollback-private-expected.txt: Added.
* storage/indexeddb/transaction-rollback-private.html: Added.
* storage/indexeddb/transaction-scope-sequencing-private-expected.txt: Added.
* storage/indexeddb/transaction-scope-sequencing-private.html: Added.
* storage/indexeddb/transaction-starvation-private-expected.txt: Added.
* storage/indexeddb/transaction-storeNames-required-private-expected.txt: Added.
* storage/indexeddb/transaction-storeNames-required-private.html: Added.
* storage/indexeddb/unblocked-version-changes-private-expected.txt: Added.
* storage/indexeddb/unblocked-version-changes-private.html: Added.
* storage/indexeddb/unprefix-private-expected.txt: Added.
* storage/indexeddb/unprefix-private.html: Added.
* storage/indexeddb/value-undefined-private-expected.txt: Added.
* storage/indexeddb/value-undefined-private.html: Added.
* storage/indexeddb/values-odd-types-private-expected.txt: Added.
* storage/indexeddb/values-odd-types-private.html: Added.
* storage/indexeddb/version-change-abort-private-expected.txt: Added.
* storage/indexeddb/version-change-abort-private.html: Added.
* storage/indexeddb/version-change-exclusive-private-expected.txt: Added.
* storage/indexeddb/version-change-exclusive-private.html: Added.
* storage/indexeddb/versionchangerequest-activedomobject-private-expected.txt: Added.
* storage/indexeddb/versionchangerequest-activedomobject-private.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195247
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sbarati@apple.com [Tue, 19 Jan 2016 04:08:56 +0000 (04:08 +0000)]
assertions in BytecodeUseDef.h about opcode length are off by one
https://bugs.webkit.org/show_bug.cgi?id=153215
Reviewed by Dan Bernstein.
* bytecode/BytecodeUseDef.h:
(JSC::computeUsesForBytecodeOffset):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195246
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
clopez@igalia.com [Tue, 19 Jan 2016 04:05:22 +0000 (04:05 +0000)]
[GTK][EFL] Layout tests abort with PulseAudioSanitizer instance has no attribute '_pa_module_index' when the build is not ready.
https://bugs.webkit.org/show_bug.cgi?id=153216
Reviewed by Michael Catanzaro.
* Scripts/webkitpy/port/pulseaudio_sanitizer.py:
(PulseAudioSanitizer.__init__): initialize _pa_module_index in the constructor.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195245
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric.carlson@apple.com [Tue, 19 Jan 2016 03:28:24 +0000 (03:28 +0000)]
[iOS Simulator WK1] ASSERT loading Blink layout test imported/web-platform-tests/mediacapture-streams/stream-api/mediastream/mediastream-idl.html
https://bugs.webkit.org/show_bug.cgi?id=153070
<rdar://problem/
24183105>
Reviewed by Darin Adler.
No new tests, this prevents an existing test from crashing.
* platform/mock/MockRealtimeVideoSource.cpp:
(WebCore::MockRealtimeVideoSource::MockRealtimeVideoSource): Create the timer with RunLoop::current
instead of RunLoop::main.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195244
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
gyuyoung.kim@webkit.org [Tue, 19 Jan 2016 02:56:34 +0000 (02:56 +0000)]
Reduce PassRefPtr uses in dom - 3
https://bugs.webkit.org/show_bug.cgi?id=153055
Reviewed by Darin Adler.
Third patch to reduce uses of PassRefPtr in WebCore/dom.
* dom/MutationObserverInterestGroup.cpp:
(WebCore::MutationObserverInterestGroup::enqueueMutationRecord):
* dom/MutationRecord.cpp:
(WebCore::MutationRecord::createChildList):
(WebCore::MutationRecord::createAttributes):
(WebCore::MutationRecord::createCharacterData):
(WebCore::MutationRecord::createWithNullOldValue):
* dom/MutationRecord.h:
* dom/NamedFlowCollection.cpp:
(WebCore::NamedFlowCollection::createCSSOMSnapshot):
* dom/NamedFlowCollection.h:
* dom/PendingScript.cpp:
(WebCore::PendingScript::releaseElementAndClear):
* dom/PendingScript.h:
* dom/ScriptRunner.h:
* dom/SecurityContext.h:
* dom/ShadowRoot.cpp:
(WebCore::ShadowRoot::cloneNode):
* dom/ShadowRoot.h:
* dom/SpaceSplitString.cpp:
(WebCore::SpaceSplitStringData::create):
* dom/SpaceSplitString.h:
* dom/TreeWalker.cpp:
(WebCore::TreeWalker::setCurrent):
(WebCore::TreeWalker::parentNode):
(WebCore::TreeWalker::previousNode):
(WebCore::TreeWalker::nextNode):
* dom/TreeWalker.h:
* dom/default/PlatformMessagePortChannel.cpp:
(WebCore::PlatformMessagePortChannel::entangledChannel):
* dom/default/PlatformMessagePortChannel.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195243
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mcatanzaro@igalia.com [Tue, 19 Jan 2016 01:23:08 +0000 (01:23 +0000)]
[CMake] Duplicate attempts to find software during cmake stage
https://bugs.webkit.org/show_bug.cgi?id=153211
Reviewed by Martin Robinson.
* CMakeLists.txt: Remove duplication of commands in WebKitCommon.cmake.
* Source/cmake/WebKitCommon.cmake: Guard the entire file so it runs only once.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195242
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ryuan.choi@navercorp.com [Tue, 19 Jan 2016 01:08:47 +0000 (01:08 +0000)]
[EFL] Remove wkView() from EwkView
https://bugs.webkit.org/show_bug.cgi?id=152604
Reviewed by Gyuyoung Kim.
* UIProcess/API/efl/EwkView.cpp:
(EwkViewEventHandler<EVAS_CALLBACK_SHOW>::handleEvent):
(EwkViewEventHandler<EVAS_CALLBACK_HIDE>::handleEvent):
(EwkView::EwkView):
(EwkView::create):
(EwkView::wkPage):
(EwkView::isVisible):
(EwkView::setVisible):
(EwkView::setDeviceScaleFactor):
(EwkView::deviceSize):
(EwkView::displayTimerFired):
(EwkView::setViewportPosition):
(EwkView::requestExitFullScreen):
(EwkView::contentsSize):
(EwkView::setThemePath):
(EwkView::feedTouchEvent):
(EwkView::createGLSurface):
(EwkView::showContextMenu):
(EwkView::requestPopupMenu):
(EwkView::webView):
(EwkView::handleEvasObjectCalculate):
(EwkView::handleEvasObjectColorSet):
(EwkView::handleEwkViewFocusIn):
(EwkView::handleEwkViewFocusOut):
(EwkView::feedTouchEvents):
(EwkView::takeSnapshot):
(EwkView::scrollBy):
(EwkView::setBackgroundColor):
(EwkView::backgroundColor):
* UIProcess/API/efl/EwkView.h:
(EwkView::wkView): Deleted.
* UIProcess/API/efl/GestureRecognizer.cpp:
(WebKit::GestureHandler::handleSingleTap):
* UIProcess/API/efl/ewk_view.cpp:
(EWKViewCreate):
(EWKViewGetWKView):
(ewk_view_fullscreen_exit):
(ewk_view_layout_fixed_set):
(ewk_view_layout_fixed_get):
(ewk_view_layout_fixed_size_set):
(ewk_view_layout_fixed_size_get):
(ewk_view_bg_color_get):
(ewk_view_contents_size_get):
* UIProcess/efl/PageViewportControllerClientEfl.cpp:
(WebKit::PageViewportControllerClientEfl::setPageScaleFactor):
* UIProcess/efl/ViewClientEfl.cpp:
(WebKit::ViewClientEfl::webProcessDidRelaunch):
(WebKit::ViewClientEfl::ViewClientEfl):
(WebKit::ViewClientEfl::~ViewClientEfl):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195241
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
n_wang@apple.com [Tue, 19 Jan 2016 00:56:13 +0000 (00:56 +0000)]
AX: [Mac] Implement next/previous text marker functions using TextIterator
https://bugs.webkit.org/show_bug.cgi?id=152728
Reviewed by Chris Fleizach.
Source/WebCore:
The existing AXTextMarker based calls are implemented using visible position, and that introduced
some bugs which make VoiceOver working incorrectly on Mac sometimes. Since TextIterator uses rendering
position, we tried to use it to refactor those AXTextMarker based calls.
In this patch, I implemented functions to navigate to previous/next text marker using Range and TextIterator.
Also added a conversion between visible position and character offset to make sure unconverted text marker
related functions are still working correctly.
Tests: accessibility/mac/previous-next-text-marker.html
accessibility/mac/text-marker-with-user-select-none.html
* accessibility/AXObjectCache.cpp:
(WebCore::AXObjectCache::visiblePositionForTextMarkerData):
(WebCore::AXObjectCache::traverseToOffsetInRange):
(WebCore::AXObjectCache::lengthForRange):
(WebCore::AXObjectCache::rangeForNodeContents):
(WebCore::characterOffsetsInOrder):
(WebCore::AXObjectCache::rangeForUnorderedCharacterOffsets):
(WebCore::AXObjectCache::setTextMarkerDataWithCharacterOffset):
(WebCore::AXObjectCache::startOrEndTextMarkerDataForRange):
(WebCore::AXObjectCache::textMarkerDataForCharacterOffset):
(WebCore::AXObjectCache::nextNode):
(WebCore::AXObjectCache::previousNode):
(WebCore::AXObjectCache::visiblePositionFromCharacterOffset):
(WebCore::AXObjectCache::characterOffsetFromVisiblePosition):
(WebCore::AXObjectCache::accessibilityObjectForTextMarkerData):
(WebCore::AXObjectCache::textMarkerDataForVisiblePosition):
* accessibility/AXObjectCache.h:
(WebCore::CharacterOffset::CharacterOffset):
(WebCore::CharacterOffset::remaining):
(WebCore::CharacterOffset::isNull):
(WebCore::AXObjectCache::setNodeInUse):
(WebCore::AXObjectCache::removeNodeForUse):
(WebCore::AXObjectCache::isNodeInUse):
* accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::selectionRange):
(WebCore::AccessibilityObject::elementRange):
(WebCore::AccessibilityObject::selectText):
(WebCore::AccessibilityObject::lineRangeForPosition):
(WebCore::AccessibilityObject::replacedNodeNeedsCharacter):
(WebCore::renderListItemContainerForNode):
(WebCore::listMarkerTextForNode):
(WebCore::AccessibilityObject::listMarkerTextForNodeAndPosition):
(WebCore::AccessibilityObject::stringForRange):
(WebCore::AccessibilityObject::stringForVisiblePositionRange):
(WebCore::replacedNodeNeedsCharacter): Deleted.
* accessibility/AccessibilityObject.h:
(WebCore::AccessibilityObject::visiblePositionRange):
(WebCore::AccessibilityObject::visiblePositionRangeForLine):
(WebCore::AccessibilityObject::boundsForVisiblePositionRange):
(WebCore::AccessibilityObject::setSelectedVisiblePositionRange):
* accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
(isTextMarkerIgnored):
(-[WebAccessibilityObjectWrapper accessibilityObjectForTextMarker:]):
(accessibilityObjectForTextMarker):
(-[WebAccessibilityObjectWrapper textMarkerRangeFromRange:]):
(textMarkerRangeFromRange):
(-[WebAccessibilityObjectWrapper startOrEndTextMarkerForRange:isStart:]):
(startOrEndTextmarkerForRange):
(-[WebAccessibilityObjectWrapper nextTextMarkerForNode:offset:]):
(-[WebAccessibilityObjectWrapper previousTextMarkerForNode:offset:]):
(-[WebAccessibilityObjectWrapper textMarkerForNode:offset:]):
(textMarkerForCharacterOffset):
(-[WebAccessibilityObjectWrapper rangeForTextMarkerRange:]):
(-[WebAccessibilityObjectWrapper characterOffsetForTextMarker:]):
(textMarkerForVisiblePosition):
(-[WebAccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
Tools:
* WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
(WTR::AccessibilityUIElement::accessibilityElementForTextMarker):
LayoutTests:
* accessibility/mac/previous-next-text-marker-expected.txt: Added.
* accessibility/mac/previous-next-text-marker.html: Added.
* accessibility/mac/text-marker-with-user-select-none-expected.txt: Added.
* accessibility/mac/text-marker-with-user-select-none.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195240
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 19 Jan 2016 00:06:46 +0000 (00:06 +0000)]
[Mac] Remove unused playerToPrivateMap()
https://bugs.webkit.org/show_bug.cgi?id=153203
Patch by Olivier Blin <olivier.blin@softathome.com> on 2016-01-18
Reviewed by Darin Adler.
This was used in previous EME implementations, but is unnecessary
since r163907.
No new tests since this removes dead code only.
* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::globalLoaderDelegateQueue): Deleted.
(WebCore::MediaPlayerPrivateAVFoundationObjC::~MediaPlayerPrivateAVFoundationObjC): Deleted.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195239
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sbarati@apple.com [Mon, 18 Jan 2016 22:15:30 +0000 (22:15 +0000)]
FTL doesn't do proper spilling for exception handling when GetById/Snippets go to slow path
https://bugs.webkit.org/show_bug.cgi?id=153186
Reviewed by Michael Saboff.
Michael was investigating a bug he found while doing the new JSC calling
convention work and it turns out to be a latent bug in FTL try/catch machinery.
After I looked at the code again, I realized that what I had previously
written is wrong in a subtle way. The FTL callOperation machinery will remove
its result register from the set of registers it needs to spill. This is not
correct when we have try/catch. We may want to do value recovery on
the value that the result register is prior to the call after the call
throws an exception. The case that we were solving before was when the
resultRegister == baseRegister in a GetById, or left/rightRegister == resultRegister in a Snippet.
This code is correct in wanting to spill in that case, even though it might spill
when we don't need it to (i.e the result is not needed for value recovery). Once I
investigated this bug further, I realized that the previous rule is just a
partial subset of the rule that says we should spill anytime the result is
a register we might do value recovery on. This patch implements the rule that
says we always want to spill the result when we will do value recovery on it
if an exception is thrown.
* ftl/FTLCompile.cpp:
(JSC::FTL::mmAllocateDataSection):
* tests/stress/ftl-try-catch-getter-throw-interesting-value-recovery.js: Added.
(assert):
(random):
(identity):
(let.o2.get f):
(let.o3.get f):
(foo):
(i.else):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195238
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Mon, 18 Jan 2016 21:27:53 +0000 (21:27 +0000)]
Add TextStream-based logging for Position and VisiblePosition
https://bugs.webkit.org/show_bug.cgi?id=153195
Reviewed by Ryosuke Niwa.
Make it easy to dump Positions and VisiblePositions with a TextStream.
* dom/Position.cpp:
(WebCore::operator<<):
* dom/Position.h:
* editing/VisiblePosition.cpp:
(WebCore::operator<<):
* editing/VisiblePosition.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@195237
268f45cc-cd09-0410-ab3c-
d52691b4dbfc