WebKit-https.git
15 months ago[JSC] Rename Array#flatten to flat
utatane.tea@gmail.com [Sat, 26 May 2018 18:17:09 +0000 (18:17 +0000)]
[JSC] Rename Array#flatten to flat
https://bugs.webkit.org/show_bug.cgi?id=186012

Reviewed by Saam Barati.

JSTests:

* stress/array-flatten.js:
(shouldThrow):
* test262/expectations.yaml:

Source/JavaScriptCore:

Rename Array#flatten to Array#flat. This rename is done in TC39 since flatten
conflicts with the mootools' function name.

* builtins/ArrayPrototype.js:
(globalPrivate.flatIntoArray):
(flat):
(globalPrivate.flatIntoArrayWithCallback):
(flatMap):
(globalPrivate.flattenIntoArray): Deleted.
(flatten): Deleted.
(globalPrivate.flattenIntoArrayWithCallback): Deleted.
* runtime/ArrayPrototype.cpp:
(JSC::ArrayPrototype::finishCreation):

LayoutTests:

* inspector/model/remote-object-get-properties-expected.txt:
* js/Object-getOwnPropertyNames-expected.txt:
* js/script-tests/Object-getOwnPropertyNames.js:

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

15 months ago[LFC] Implement margin computation
zalan@apple.com [Sat, 26 May 2018 15:26:03 +0000 (15:26 +0000)]
[LFC] Implement margin computation
https://bugs.webkit.org/show_bug.cgi?id=186008

Reviewed by Antti Koivisto.

* WebCore.xcodeproj/project.pbxproj:
* layout/FormattingContext.cpp:
(WebCore::Layout::FormattingContext::computeMargin const):
(WebCore::Layout::FormattingContext::marginTop const): Deleted.
(WebCore::Layout::FormattingContext::marginLeft const): Deleted.
(WebCore::Layout::FormattingContext::marginBottom const): Deleted.
(WebCore::Layout::FormattingContext::marginRight const): Deleted.
* layout/FormattingContext.h:
* layout/blockformatting/BlockFormattingContext.cpp:
(WebCore::Layout::BlockFormattingContext::layout const):
(WebCore::Layout::BlockFormattingContext::computeMargin const):
(WebCore::Layout::BlockFormattingContext::marginTop const): Deleted.
(WebCore::Layout::BlockFormattingContext::marginBottom const): Deleted.
* layout/blockformatting/BlockFormattingContext.h:
* layout/blockformatting/BlockFormattingContextGeometry.cpp:
(WebCore::Layout::BlockFormattingContext::Geometry::inFlowNonReplacedHeight):
(WebCore::Layout::BlockFormattingContext::Geometry::computedMargin):
* layout/blockformatting/BlockMarginCollapse.cpp:
(WebCore::Layout::_isMarginBottomCollapsedWithParent):
(WebCore::Layout::collapsedMarginBottomFromLastChild):
(WebCore::Layout::BlockFormattingContext::MarginCollapse::marginTop):
(WebCore::Layout::BlockFormattingContext::MarginCollapse::marginBottom):
(WebCore::Layout::BlockFormattingContext::MarginCollapse::isMarginBottomCollapsedWithParent):
(WebCore::Layout::BlockFormattingContext::MarginCollapse::isMarginTopCollapsedWithParentMarginBottom):
(WebCore::Layout::BlockMarginCollapse::marginTop): Deleted.
(WebCore::Layout::BlockMarginCollapse::marginBottom): Deleted.
(WebCore::Layout::BlockMarginCollapse::isMarginBottomCollapsedWithParent): Deleted.
(WebCore::Layout::BlockMarginCollapse::isMarginTopCollapsedWithParentMarginBottom): Deleted.
* layout/blockformatting/BlockMarginCollapse.h: Removed.

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

15 months agoUpgrade test262 to May 24 version
utatane.tea@gmail.com [Sat, 26 May 2018 10:55:47 +0000 (10:55 +0000)]
Upgrade test262 to May 24 version
https://bugs.webkit.org/show_bug.cgi?id=185937

Reviewed by Darin Adler.

* test262/expectations.yaml:
* test262/harness/doneprintHandle.js:
(DONE):
* test262/latest-changes-summary.txt:
* test262/test/annexB/language/eval-code/direct/global-block-decl-eval-global-existing-global-init.js:
* test262/test/annexB/language/eval-code/direct/global-block-decl-eval-global-existing-non-enumerable-global-init.js: Added.
* test262/test/annexB/language/eval-code/direct/global-if-decl-else-decl-a-eval-global-existing-global-init.js:
* test262/test/annexB/language/eval-code/direct/global-if-decl-else-decl-a-eval-global-existing-non-enumerable-global-init.js: Copied from JSTests/test262/test/annexB/language/eval-code/direct/global-if-decl-else-decl-a-eval-global-existing-global-init.js.
* test262/test/annexB/language/eval-code/direct/global-if-decl-else-decl-b-eval-global-existing-global-init.js:
* test262/test/annexB/language/eval-code/direct/global-if-decl-else-decl-b-eval-global-existing-non-enumerable-global-init.js: Copied from JSTests/test262/test/annexB/language/eval-code/direct/global-if-decl-else-decl-b-eval-global-existing-global-init.js.
* test262/test/annexB/language/eval-code/direct/global-if-decl-else-stmt-eval-global-existing-global-init.js:
* test262/test/annexB/language/eval-code/direct/global-if-decl-else-stmt-eval-global-existing-non-enumerable-global-init.js: Copied from JSTests/test262/test/annexB/language/eval-code/direct/global-if-decl-else-stmt-eval-global-existing-global-init.js.
* test262/test/annexB/language/eval-code/direct/global-if-decl-no-else-eval-global-existing-global-init.js:
* test262/test/annexB/language/eval-code/direct/global-if-decl-no-else-eval-global-existing-non-enumerable-global-init.js: Copied from JSTests/test262/test/annexB/language/eval-code/direct/global-if-decl-no-else-eval-global-existing-global-init.js.
* test262/test/annexB/language/eval-code/direct/global-if-stmt-else-decl-eval-global-existing-global-init.js:
* test262/test/annexB/language/eval-code/direct/global-if-stmt-else-decl-eval-global-existing-non-enumerable-global-init.js: Copied from JSTests/test262/test/annexB/language/eval-code/direct/global-if-stmt-else-decl-eval-global-existing-global-init.js.
* test262/test/annexB/language/eval-code/direct/global-switch-case-eval-global-existing-global-init.js:
* test262/test/annexB/language/eval-code/direct/global-switch-case-eval-global-existing-non-enumerable-global-init.js: Added.
* test262/test/annexB/language/eval-code/direct/global-switch-dflt-eval-global-existing-global-init.js:
* test262/test/annexB/language/eval-code/direct/global-switch-dflt-eval-global-existing-non-enumerable-global-init.js: Added.
* test262/test/annexB/language/eval-code/indirect/global-block-decl-eval-global-existing-global-init.js:
* test262/test/annexB/language/eval-code/indirect/global-block-decl-eval-global-existing-non-enumerable-global-init.js: Added.
* test262/test/annexB/language/eval-code/indirect/global-if-decl-else-decl-a-eval-global-existing-global-init.js:
* test262/test/annexB/language/eval-code/indirect/global-if-decl-else-decl-a-eval-global-existing-non-enumerable-global-init.js: Copied from JSTests/test262/test/annexB/language/eval-code/indirect/global-if-decl-else-decl-a-eval-global-existing-global-init.js.
* test262/test/annexB/language/eval-code/indirect/global-if-decl-else-decl-b-eval-global-existing-global-init.js:
* test262/test/annexB/language/eval-code/indirect/global-if-decl-else-decl-b-eval-global-existing-non-enumerable-global-init.js: Copied from JSTests/test262/test/annexB/language/eval-code/indirect/global-if-decl-else-decl-b-eval-global-existing-global-init.js.
* test262/test/annexB/language/eval-code/indirect/global-if-decl-else-stmt-eval-global-existing-global-init.js:
* test262/test/annexB/language/eval-code/indirect/global-if-decl-else-stmt-eval-global-existing-non-enumerable-global-init.js: Copied from JSTests/test262/test/annexB/language/eval-code/indirect/global-if-decl-else-stmt-eval-global-existing-global-init.js.
* test262/test/annexB/language/eval-code/indirect/global-if-decl-no-else-eval-global-existing-global-init.js:
* test262/test/annexB/language/eval-code/indirect/global-if-decl-no-else-eval-global-existing-non-enumerable-global-init.js: Copied from JSTests/test262/test/annexB/language/eval-code/indirect/global-if-decl-no-else-eval-global-existing-global-init.js.
* test262/test/annexB/language/eval-code/indirect/global-if-stmt-else-decl-eval-global-existing-global-init.js:
* test262/test/annexB/language/eval-code/indirect/global-if-stmt-else-decl-eval-global-existing-non-enumerable-global-init.js: Copied from JSTests/test262/test/annexB/language/eval-code/indirect/global-if-stmt-else-decl-eval-global-existing-global-init.js.
* test262/test/annexB/language/eval-code/indirect/global-switch-case-eval-global-existing-global-init.js:
* test262/test/annexB/language/eval-code/indirect/global-switch-case-eval-global-existing-non-enumerable-global-init.js: Added.
* test262/test/annexB/language/eval-code/indirect/global-switch-dflt-eval-global-existing-global-init.js:
* test262/test/annexB/language/eval-code/indirect/global-switch-dflt-eval-global-existing-non-enumerable-global-init.js: Added.
* test262/test/annexB/language/global-code/block-decl-global-existing-global-init.js: Added.
(262.evalScript.f):
* test262/test/annexB/language/global-code/block-decl-global-existing-non-enumerable-global-init.js: Added.
(262.evalScript.f):
* test262/test/annexB/language/global-code/if-decl-else-decl-a-global-existing-global-init.js: Added.
(262.evalScript.true.f):
(else._f):
* test262/test/annexB/language/global-code/if-decl-else-decl-a-global-existing-non-enumerable-global-init.js: Added.
(262.evalScript.true.f):
(else._f):
* test262/test/annexB/language/global-code/if-decl-else-decl-b-global-existing-global-init.js: Added.
(262.evalScript.false._f):
(else.f):
* test262/test/annexB/language/global-code/if-decl-else-decl-b-global-existing-non-enumerable-global-init.js: Added.
(262.evalScript.false._f):
(else.f):
* test262/test/annexB/language/global-code/if-decl-else-stmt-global-existing-global-init.js: Added.
(262.evalScript.true.f):
* test262/test/annexB/language/global-code/if-decl-else-stmt-global-existing-non-enumerable-global-init.js: Added.
(262.evalScript.true.f):
* test262/test/annexB/language/global-code/if-decl-no-else-global-existing-global-init.js: Added.
(262.evalScript.true.f):
* test262/test/annexB/language/global-code/if-decl-no-else-global-existing-non-enumerable-global-init.js: Added.
(262.evalScript.true.f):
* test262/test/annexB/language/global-code/if-stmt-else-decl-global-existing-global-init.js: Added.
(else.f):
* test262/test/annexB/language/global-code/if-stmt-else-decl-global-existing-non-enumerable-global-init.js: Added.
(else.f):
* test262/test/annexB/language/global-code/switch-case-global-existing-global-init.js: Added.
(262.evalScript.switch.case.1):
(262.evalScript.switch):
* test262/test/annexB/language/global-code/switch-case-global-existing-non-enumerable-global-init.js: Added.
(262.evalScript.switch.case.1):
(262.evalScript.switch):
* test262/test/annexB/language/global-code/switch-dflt-global-existing-global-init.js: Added.
(262.evalScript.switch.default):
(262.evalScript.switch):
* test262/test/annexB/language/global-code/switch-dflt-global-existing-non-enumerable-global-init.js: Added.
(262.evalScript.switch.default):
(262.evalScript.switch):
* test262/test/built-ins/Array/prototype/flat/array-like-objects.js: Renamed from JSTests/test262/test/built-ins/Array/prototype/flatten/array-like-objects.js.
* test262/test/built-ins/Array/prototype/flat/bound-function-call.js: Renamed from JSTests/test262/test/built-ins/Array/prototype/flatten/bound-function-call.js.
* test262/test/built-ins/Array/prototype/flat/empty-array-elements.js: Renamed from JSTests/test262/test/built-ins/Array/prototype/flatten/empty-array-elements.js.
* test262/test/built-ins/Array/prototype/flat/empty-object-elements.js: Renamed from JSTests/test262/test/built-ins/Array/prototype/flatten/empty-object-elements.js.
* test262/test/built-ins/Array/prototype/flat/length.js: Added.
* test262/test/built-ins/Array/prototype/flat/name.js: Added.
* test262/test/built-ins/Array/prototype/flat/non-numeric-depth-should-not-throw.js: Renamed from JSTests/test262/test/built-ins/Array/prototype/flatten/non-numeric-depth-should-not-throw.js.
* test262/test/built-ins/Array/prototype/flat/non-object-ctor-throws.js: Renamed from JSTests/test262/test/built-ins/Array/prototype/flatten/non-object-ctor-throws.js.
* test262/test/built-ins/Array/prototype/flat/null-undefined-elements.js: Added.
* test262/test/built-ins/Array/prototype/flat/null-undefined-input-throws.js: Renamed from JSTests/test262/test/built-ins/Array/prototype/flatten/null-undefined-input-throws.js.
* test262/test/built-ins/Array/prototype/flat/positive-infinity.js: Renamed from JSTests/test262/test/built-ins/Array/prototype/flatten/positive-infinity.js.
* test262/test/built-ins/Array/prototype/flat/prop-desc.js: Renamed from JSTests/test262/test/built-ins/Array/prototype/flatten/prop-desc.js.
* test262/test/built-ins/Array/prototype/flat/symbol-object-create-null-depth-throws.js: Renamed from JSTests/test262/test/built-ins/Array/prototype/flatten/symbol-object-create-null-depth-throws.js.
* test262/test/built-ins/Array/prototype/flatten/length.js: Removed.
* test262/test/built-ins/Array/prototype/flatten/name.js: Removed.
* test262/test/built-ins/Array/prototype/flatten/null-undefined-elements.js: Removed.
* test262/test/built-ins/AsyncGeneratorPrototype/next/name.js:
* test262/test/built-ins/AsyncGeneratorPrototype/return/name.js:
* test262/test/built-ins/AsyncGeneratorPrototype/throw/name.js:
* test262/test/built-ins/Math/acosh/nan-returns.js:
* test262/test/built-ins/Math/asinh/asinh-specialVals.js:
* test262/test/built-ins/Math/atanh/atanh-specialVals.js:
* test262/test/built-ins/Math/cbrt/cbrt-specialValues.js:
* test262/test/built-ins/Math/cbrt/prop-desc.js:
* test262/test/built-ins/Math/cosh/cosh-specialVals.js:
* test262/test/built-ins/Math/expm1/expm1-specialVals.js:
* test262/test/built-ins/Math/log10/Log10-specialVals.js:
* test262/test/built-ins/Math/log2/log2-basicTests.js:
* test262/test/built-ins/Math/sign/sign-specialVals.js:
* test262/test/built-ins/Math/sinh/sinh-specialVals.js:
* test262/test/built-ins/Math/tanh/tanh-specialVals.js:
* test262/test/built-ins/Math/trunc/trunc-sampleTests.js:
* test262/test/built-ins/Math/trunc/trunc-specialVals.js:
* test262/test/built-ins/Object/internals/DefineOwnProperty/consistent-value-regexp-dollar1.js: Added.
* test262/test/built-ins/Object/internals/DefineOwnProperty/consistent-writable-regexp-dollar1.js: Added.
* test262/test/intl402/Intl/getCanonicalLocales/descriptor.js:
* test262/test/intl402/Intl/getCanonicalLocales/duplicates.js:
* test262/test/intl402/Locale/constructor-getter-order.js: Added.
(new.Intl.Locale.toString):
(get language):
(get script):
(get region):
(get calendar):
(get collation):
(get hourCycle):
(get caseFirst):
(get numeric):
(get numberingSystem):
* test262/test/intl402/Locale/constructor-locale-object.js: Added.
* test262/test/intl402/Locale/constructor-non-iana-canon.js: Added.
* test262/test/intl402/Locale/constructor-options-casefirst-invalid.js: Added.
(valueOf):
(const.invalidCaseFirstOption.of.invalidCaseFirstOptions.new.Intl.Locale):
* test262/test/intl402/Locale/constructor-options-casefirst-valid.js: Added.
(toString):
* test262/test/intl402/Locale/constructor-options-collation-invalid.js: Added.
(const.invalidCollationOption.of.invalidCollationOptions.new.Intl.Locale):
* test262/test/intl402/Locale/constructor-options-collation-valid.js: Added.
* test262/test/intl402/Locale/constructor-options-hourcycle-invalid.js: Added.
(const.invalidHourCycleOption.of.invalidHourCycleOptions.new.Intl.Locale):
* test262/test/intl402/Locale/constructor-options-hourcycle-valid.js: Added.
(toString):
* test262/test/intl402/Locale/constructor-options-language-grandfathered.js: Added.
* test262/test/intl402/Locale/constructor-options-language-valid.js:
(toString):
* test262/test/intl402/Locale/constructor-options-numberingsystem-invalid.js: Added.
(const.invalidNumberingSystemOption.of.invalidNumberingSystemOptions.new.Intl.Locale):
* test262/test/intl402/Locale/constructor-options-numberingsystem-valid.js: Added.
* test262/test/intl402/Locale/constructor-options-numeric-valid.js: Added.
(valueOf):
* test262/test/intl402/Locale/constructor-options-region-valid.js:
* test262/test/intl402/Locale/constructor-options-script-valid.js:
(toString):
* test262/test/intl402/Locale/constructor-parse-twice.js: Added.
* test262/test/intl402/Locale/constructor-tag-tostring.js: Added.
(CustomError):
(WrongCustomError):
(const.errors.get Symbol):
(throw.new.CustomError):
(throw.new.CustomError.get toString):
(throw.new.CustomError.get valueOf):
(throw.new.WrongCustomError.get valueOf):
(throw.new.WrongCustomError):
* test262/test/intl402/Locale/constructor-unicode-ext-invalid.js: Added.
* test262/test/intl402/Locale/constructor-unicode-ext-valid.js: Added.
(canonical.of.Object.entries):
* test262/test/intl402/Locale/extensions-grandfathered.js: Added.
(of.testData.value.of.Object.entries):
* test262/test/intl402/Locale/extensions-private.js: Added.
* test262/test/intl402/Locale/getters-grandfathered.js: Added.
* test262/test/intl402/Locale/getters-missing.js: Added.
* test262/test/intl402/Locale/getters-privateuse.js: Added.
* test262/test/intl402/Locale/getters.js: Added.
* test262/test/intl402/Locale/invalid-tag-throws-symbol.js:
* test262/test/intl402/Locale/likely-subtags-grandfathered.js: Added.
* test262/test/intl402/Locale/prop-desc.js:
* test262/test/intl402/Locale/prototype/baseName/prop-desc.js: Added.
* test262/test/intl402/Locale/prototype/calendar/prop-desc.js: Added.
* test262/test/intl402/Locale/prototype/caseFirst/prop-desc.js: Added.
* test262/test/intl402/Locale/prototype/collation/prop-desc.js: Added.
* test262/test/intl402/Locale/prototype/constructor/prop-desc.js: Copied from JSTests/test262/test/intl402/Locale/prototype/constructor.js.
* test262/test/intl402/Locale/prototype/hourCycle/prop-desc.js: Added.
* test262/test/intl402/Locale/prototype/language/prop-desc.js: Added.
* test262/test/intl402/Locale/prototype/maximize/length.js:
* test262/test/intl402/Locale/prototype/maximize/prop-desc.js:
* test262/test/intl402/Locale/prototype/minimize/length.js: Copied from JSTests/test262/test/intl402/Locale/prototype/maximize/length.js.
* test262/test/intl402/Locale/prototype/minimize/name.js: Added.
* test262/test/intl402/Locale/prototype/minimize/prop-desc.js: Copied from JSTests/test262/test/intl402/Locale/prototype/constructor.js.
* test262/test/intl402/Locale/prototype/numberingSystem/prop-desc.js: Added.
* test262/test/intl402/Locale/prototype/numeric/prop-desc.js: Added.
* test262/test/intl402/Locale/prototype/region/prop-desc.js: Added.
* test262/test/intl402/Locale/prototype/script/prop-desc.js: Added.
* test262/test/intl402/Locale/prototype/toString/prop-desc.js: Renamed from JSTests/test262/test/intl402/Locale/prototype/constructor.js.
* test262/test/intl402/Locale/prototype/toStringTag/toStringTag.js: Renamed from JSTests/test262/test/intl402/Locale/prototype/toStringTag.js.
* test262/test/intl402/Number/prototype/toLocaleString/length.js:
* test262/test/intl402/NumberFormat/length.js:
* test262/test/intl402/NumberFormat/name.js:
* test262/test/intl402/NumberFormat/prop-desc.js:
* test262/test/intl402/PluralRules/length.js:
* test262/test/intl402/PluralRules/name.js:
* test262/test/intl402/PluralRules/prop-desc.js: Copied from JSTests/test262/test/intl402/NumberFormat/prop-desc.js.
* test262/test/language/expressions/addition/bigint-and-number.js:
* test262/test/language/expressions/addition/bigint-arithmetic.js:
(testAdd): Deleted.
* test262/test/language/expressions/addition/bigint-errors.js:
(Symbol.toPrimitive):
(0n.Symbol.toPrimitive):
(valueOf):
(0n.valueOf):
(toString):
(0n.toString):
* test262/test/language/expressions/addition/bigint-toprimitive.js:
* test262/test/language/expressions/addition/bigint-wrapped-values.js:
* test262/test/language/expressions/bitwise-and/bigint-and-number.js:
* test262/test/language/expressions/bitwise-and/bigint-errors.js:
(Symbol.toPrimitive):
(0n.Symbol.toPrimitive):
(valueOf):
(0n.valueOf):
(toString):
(0n.toString):
* test262/test/language/expressions/bitwise-and/bigint-non-primitive.js:
(assert.sameValue.Symbol.toPrimitive):
(assert.sameValue.0b011n.Symbol.toPrimitive):
(assert.sameValue.valueOf):
(assert.sameValue.0b011n.valueOf):
(assert.sameValue.toString):
(assert.sameValue.0b011n.toString):
* test262/test/language/expressions/bitwise-and/bigint-toprimitive.js:
* test262/test/language/expressions/bitwise-and/bigint-wrapped-values.js:
* test262/test/language/expressions/bitwise-not/bigint-non-primitive.js:
(assert.sameValue.Symbol.toPrimitive):
(assert.sameValue.valueOf):
(assert.sameValue.toString):
* test262/test/language/expressions/bitwise-or/bigint-and-number.js:
* test262/test/language/expressions/bitwise-or/bigint-errors.js:
(Symbol.toPrimitive):
(0n.Symbol.toPrimitive):
(valueOf):
(0n.valueOf):
(toString):
(0n.toString):
* test262/test/language/expressions/bitwise-or/bigint-non-primitive.js:
(assert.sameValue.Symbol.toPrimitive):
(assert.sameValue.0b011n.Symbol.toPrimitive):
(assert.sameValue.valueOf):
(assert.sameValue.0b011n.valueOf):
(assert.sameValue.toString):
(assert.sameValue.0b011n.toString):
* test262/test/language/expressions/bitwise-or/bigint-toprimitive.js:
* test262/test/language/expressions/bitwise-or/bigint-wrapped-values.js:
* test262/test/language/expressions/bitwise-xor/bigint-and-number.js:
* test262/test/language/expressions/bitwise-xor/bigint-errors.js:
(Symbol.toPrimitive):
(0n.Symbol.toPrimitive):
(valueOf):
(0n.valueOf):
(toString):
(0n.toString):
* test262/test/language/expressions/bitwise-xor/bigint-non-primitive.js:
(assert.sameValue.Symbol.toPrimitive):
(assert.sameValue.0b011n.Symbol.toPrimitive):
(assert.sameValue.valueOf):
(assert.sameValue.0b011n.valueOf):
(assert.sameValue.toString):
(assert.sameValue.0b011n.toString):
* test262/test/language/expressions/bitwise-xor/bigint-toprimitive.js:
* test262/test/language/expressions/bitwise-xor/bigint-wrapped-values.js:
* test262/test/language/expressions/division/bigint-and-number.js:
* test262/test/language/expressions/division/bigint-arithmetic.js:
(testDiv): Deleted.
* test262/test/language/expressions/division/bigint-complex-infinity.js:
* test262/test/language/expressions/division/bigint-errors.js:
(Symbol.toPrimitive):
(0n.Symbol.toPrimitive):
(valueOf):
(0n.valueOf):
(toString):
(0n.toString):
* test262/test/language/expressions/division/bigint-toprimitive.js:
* test262/test/language/expressions/division/bigint-wrapped-values.js:
* test262/test/language/expressions/does-not-equals/bigint-and-bigint.js:
* test262/test/language/expressions/does-not-equals/bigint-and-boolean.js:
* test262/test/language/expressions/does-not-equals/bigint-and-incomparable-primitive.js:
* test262/test/language/expressions/does-not-equals/bigint-and-non-finite.js:
* test262/test/language/expressions/does-not-equals/bigint-and-number-extremes.js:
* test262/test/language/expressions/does-not-equals/bigint-and-number.js:
* test262/test/language/expressions/does-not-equals/bigint-and-object.js:
(assert.sameValue.0n.valueOf):
(assert.sameValue.valueOf):
(assert.sameValue.0n.toString):
(assert.sameValue.toString):
(assert.sameValue.900719925474099101n.valueOf):
(assert.sameValue.900719925474099101n.toString):
* test262/test/language/expressions/does-not-equals/bigint-and-string.js:
* test262/test/language/expressions/equals/bigint-and-bigint.js:
* test262/test/language/expressions/equals/bigint-and-boolean.js:
* test262/test/language/expressions/equals/bigint-and-incomparable-primitive.js:
* test262/test/language/expressions/equals/bigint-and-non-finite.js:
* test262/test/language/expressions/equals/bigint-and-number-extremes.js:
* test262/test/language/expressions/equals/bigint-and-number.js:
* test262/test/language/expressions/equals/bigint-and-object.js:
(assert.sameValue.0n.valueOf):
(assert.sameValue.valueOf):
(assert.sameValue.0n.toString):
(assert.sameValue.toString):
(assert.sameValue.900719925474099101n.valueOf):
(assert.sameValue.900719925474099101n.toString):
* test262/test/language/expressions/equals/bigint-and-string.js:
* test262/test/language/expressions/exponentiation/bigint-and-number.js:
* test262/test/language/expressions/exponentiation/bigint-arithmetic.js:
(testExpt): Deleted.
* test262/test/language/expressions/exponentiation/bigint-errors.js:
(Symbol.toPrimitive):
(0n.Symbol.toPrimitive):
(valueOf):
(0n.valueOf):
(toString):
(0n.toString):
* test262/test/language/expressions/exponentiation/bigint-negative-exponent-throws.js: Renamed from JSTests/test262/test/language/expressions/exponentiation/bigint-exp-operator-negative-throws.js.
* test262/test/language/expressions/exponentiation/bigint-toprimitive.js:
* test262/test/language/expressions/exponentiation/bigint-wrapped-values.js:
* test262/test/language/expressions/exponentiation/bigint-zero-base-zero-exponent.js:
* test262/test/language/expressions/greater-than-or-equal/bigint-and-bigint.js:
* test262/test/language/expressions/greater-than-or-equal/bigint-and-incomparable-string.js:
* test262/test/language/expressions/greater-than-or-equal/bigint-and-non-finite.js:
* test262/test/language/expressions/greater-than-or-equal/bigint-and-number-extremes.js:
* test262/test/language/expressions/greater-than-or-equal/bigint-and-number.js:
* test262/test/language/expressions/greater-than-or-equal/bigint-and-string.js:
* test262/test/language/expressions/greater-than/11.8.2-1.js:
(obj1.valueOf):
(obj2.valueOf):
* test262/test/language/expressions/greater-than/11.8.2-2.js:
(obj1.valueOf):
(obj2.toString):
* test262/test/language/expressions/greater-than/11.8.2-3.js:
(obj1.toString):
(obj2.valueOf):
* test262/test/language/expressions/greater-than/11.8.2-4.js:
(obj1.toString):
(obj2.toString):
* test262/test/language/expressions/greater-than/bigint-and-bigint.js:
* test262/test/language/expressions/greater-than/bigint-and-boolean.js:
* test262/test/language/expressions/greater-than/bigint-and-incomparable-string.js:
* test262/test/language/expressions/greater-than/bigint-and-non-finite.js:
* test262/test/language/expressions/greater-than/bigint-and-number-extremes.js:
* test262/test/language/expressions/greater-than/bigint-and-number.js:
* test262/test/language/expressions/greater-than/bigint-and-string.js:
* test262/test/language/expressions/greater-than/bigint-and-symbol.js: Added.
* test262/test/language/expressions/left-shift/bigint-and-number.js:
* test262/test/language/expressions/left-shift/bigint-errors.js:
(Symbol.toPrimitive):
(0n.Symbol.toPrimitive):
(valueOf):
(0n.valueOf):
(toString):
(0n.toString):
* test262/test/language/expressions/left-shift/bigint-non-primitive.js:
(assert.sameValue.Symbol.toPrimitive):
(assert.sameValue.valueOf):
(assert.sameValue.toString):
(assert.sameValue.0b101n.Symbol.toPrimitive):
(assert.sameValue.0b101n.valueOf):
(assert.sameValue.0b101n.toString):
(valueOf):
* test262/test/language/expressions/left-shift/bigint-toprimitive.js:
* test262/test/language/expressions/left-shift/bigint-wrapped-values.js:
* test262/test/language/expressions/less-than-or-equal/11.8.3-1.js:
(obj1.valueOf):
(obj2.valueOf):
* test262/test/language/expressions/less-than-or-equal/11.8.3-2.js:
(obj1.valueOf):
(obj2.toString):
* test262/test/language/expressions/less-than-or-equal/11.8.3-3.js:
(obj1.toString):
(obj2.valueOf):
* test262/test/language/expressions/less-than-or-equal/11.8.3-4.js:
(obj1.toString):
(obj2.toString):
* test262/test/language/expressions/less-than-or-equal/11.8.3-5.js: Removed.
* test262/test/language/expressions/less-than-or-equal/bigint-and-bigint.js:
* test262/test/language/expressions/less-than-or-equal/bigint-and-incomparable-string.js:
* test262/test/language/expressions/less-than-or-equal/bigint-and-non-finite.js:
* test262/test/language/expressions/less-than-or-equal/bigint-and-number-extremes.js:
* test262/test/language/expressions/less-than-or-equal/bigint-and-number.js:
* test262/test/language/expressions/less-than-or-equal/bigint-and-string.js:
* test262/test/language/expressions/less-than/bigint-and-bigint.js:
* test262/test/language/expressions/less-than/bigint-and-boolean.js:
* test262/test/language/expressions/less-than/bigint-and-incomparable-string.js:
* test262/test/language/expressions/less-than/bigint-and-non-finite.js:
* test262/test/language/expressions/less-than/bigint-and-number-extremes.js:
* test262/test/language/expressions/less-than/bigint-and-number.js:
* test262/test/language/expressions/less-than/bigint-and-string.js:
* test262/test/language/expressions/less-than/bigint-and-symbol.js: Added.
* test262/test/language/expressions/modulus/bigint-and-number.js:
* test262/test/language/expressions/modulus/bigint-arithmetic.js:
(testMod): Deleted.
* test262/test/language/expressions/modulus/bigint-errors.js:
(Symbol.toPrimitive):
(0n.Symbol.toPrimitive):
(valueOf):
(0n.valueOf):
(toString):
(0n.toString):
* test262/test/language/expressions/modulus/bigint-modulo-zero.js:
* test262/test/language/expressions/modulus/bigint-toprimitive.js:
* test262/test/language/expressions/modulus/bigint-wrapped-values.js:
* test262/test/language/expressions/multiplication/bigint-and-number.js:
* test262/test/language/expressions/multiplication/bigint-arithmetic.js:
(testMul): Deleted.
* test262/test/language/expressions/multiplication/bigint-errors.js:
(Symbol.toPrimitive):
(0n.Symbol.toPrimitive):
(valueOf):
(0n.valueOf):
(toString):
(0n.toString):
* test262/test/language/expressions/multiplication/bigint-toprimitive.js:
* test262/test/language/expressions/multiplication/bigint-wrapped-values.js:
* test262/test/language/expressions/right-shift/bigint-and-number.js:
* test262/test/language/expressions/right-shift/bigint-errors.js:
(Symbol.toPrimitive):
(0n.Symbol.toPrimitive):
(valueOf):
(0n.valueOf):
(toString):
(0n.toString):
* test262/test/language/expressions/right-shift/bigint-non-primitive.js:
(assert.sameValue.Symbol.toPrimitive):
(assert.sameValue.valueOf):
(assert.sameValue.toString):
(assert.sameValue.0b101n.Symbol.toPrimitive):
(assert.sameValue.0b101n.valueOf):
(assert.sameValue.0b101n.toString):
(valueOf):
* test262/test/language/expressions/right-shift/bigint-toprimitive.js:
* test262/test/language/expressions/right-shift/bigint-wrapped-values.js:
* test262/test/language/expressions/strict-does-not-equals/bigint-and-bigint.js:
* test262/test/language/expressions/strict-does-not-equals/bigint-and-boolean.js:
* test262/test/language/expressions/strict-does-not-equals/bigint-and-incomparable-primitive.js:
* test262/test/language/expressions/strict-does-not-equals/bigint-and-non-finite.js:
* test262/test/language/expressions/strict-does-not-equals/bigint-and-number-extremes.js:
* test262/test/language/expressions/strict-does-not-equals/bigint-and-number.js:
* test262/test/language/expressions/strict-does-not-equals/bigint-and-object.js:
(assert.sameValue.0n.valueOf):
(assert.sameValue.valueOf):
(assert.sameValue.0n.toString):
(assert.sameValue.toString):
(assert.sameValue.900719925474099101n.valueOf):
(assert.sameValue.900719925474099101n.toString):
* test262/test/language/expressions/strict-does-not-equals/bigint-and-string.js:
* test262/test/language/expressions/strict-equals/bigint-and-bigint.js:
* test262/test/language/expressions/strict-equals/bigint-and-boolean.js:
* test262/test/language/expressions/strict-equals/bigint-and-incomparable-primitive.js:
* test262/test/language/expressions/strict-equals/bigint-and-non-finite.js:
* test262/test/language/expressions/strict-equals/bigint-and-number-extremes.js:
* test262/test/language/expressions/strict-equals/bigint-and-number.js:
* test262/test/language/expressions/strict-equals/bigint-and-object.js:
(assert.sameValue.0n.valueOf):
(assert.sameValue.valueOf):
(assert.sameValue.0n.toString):
(assert.sameValue.toString):
(assert.sameValue.900719925474099101n.valueOf):
(assert.sameValue.900719925474099101n.toString):
* test262/test/language/expressions/strict-equals/bigint-and-string.js:
* test262/test/language/expressions/subtraction/bigint-and-number.js:
* test262/test/language/expressions/subtraction/bigint-arithmetic.js:
(testSub): Deleted.
* test262/test/language/expressions/subtraction/bigint-errors.js:
(Symbol.toPrimitive):
(0n.Symbol.toPrimitive):
(valueOf):
(0n.valueOf):
(toString):
(0n.toString):
* test262/test/language/expressions/subtraction/bigint-toprimitive.js:
* test262/test/language/expressions/subtraction/bigint-wrapped-values.js:
* test262/test/language/expressions/unary-minus/bigint-non-primitive.js:
(assert.sameValue.Symbol.toPrimitive):
(assert.sameValue.valueOf):
(assert.sameValue.toString):
* test262/test/language/expressions/unary-plus/bigint-throws.js:
* test262/test/language/expressions/unsigned-right-shift/bigint-and-number.js:
* test262/test/language/expressions/unsigned-right-shift/bigint-errors.js:
(Symbol.toPrimitive):
(0n.Symbol.toPrimitive):
(valueOf):
(0n.valueOf):
(toString):
(0n.toString):
* test262/test/language/expressions/unsigned-right-shift/bigint-non-primitive.js:
(Symbol.toPrimitive):
(valueOf):
(toString):
(0b101n.Symbol.toPrimitive):
(0b101n.valueOf):
(0b101n.toString):
(valueOf.valueOf):
* test262/test/language/expressions/unsigned-right-shift/bigint-toprimitive.js:
* test262/test/language/expressions/unsigned-right-shift/bigint-wrapped-values.js:
* test262/test/language/literals/numeric/numeric-followed-by-ident.js: Added.
* test262/test/language/literals/string/line-continuation-double.js: Added.
* test262/test/language/literals/string/line-continuation-single.js: Added.
* test262/test262-Revision.txt:

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

15 months ago[Cocoa] Delete unnecessary WebCascadeList in ComplexTextController
mmaxfield@apple.com [Sat, 26 May 2018 05:29:31 +0000 (05:29 +0000)]
[Cocoa] Delete unnecessary WebCascadeList in ComplexTextController
https://bugs.webkit.org/show_bug.cgi?id=186007

Reviewed by Zalan Bujtas.

Inside ComplexTextController::collectComplexTextRuns(), we chop up text based on which fonts should be
used to render which grapheme clusters. For each grapheme cluster, we run through the font-family list
in FontCascade::fontForCombiningCharacterSequence() and find the first font that can render the cluster.
If no items can render the cluster, we construct a WebCascadeList and let CoreText try to figure out
which fonts can render which clusters.

Except there's no point, because we just determined that no font in the list can be used to render the
cluster. CoreText isn't magic; it isn't going to somehow disagree with us. WebCascadeList is just
useless code.

No new tests because there is no behavior change.

* platform/graphics/mac/ComplexTextControllerCoreText.mm:
(WebCore::ComplexTextController::collectComplexTextRunsForCharacters):
(-[WebCascadeList initWithFont:character:]): Deleted.
(-[WebCascadeList count]): Deleted.
(-[WebCascadeList objectAtIndex:]): Deleted.

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

15 months agoDisplay detailed error logs when a script fails in EWS
aakash_jain@apple.com [Sat, 26 May 2018 03:56:45 +0000 (03:56 +0000)]
Display detailed error logs when a script fails in EWS
https://bugs.webkit.org/show_bug.cgi?id=175696
<rdar://problem/34841885>

Reviewed by Darin Adler.

* Scripts/webkitpy/tool/bot/queueengine.py: Set output_limit to 5000 characters instead of default 500 characters.
* Scripts/webkitpy/tool/commands/abstractsequencedcommand.py: Ditto.
* Scripts/webkitpy/tool/commands/download.py: Ditto.
* Scripts/webkitpy/tool/commands/earlywarningsystem.py: Ditto.
* Scripts/webkitpy/tool/commands/queues.py: Ditto.
* Scripts/webkitpy/tool/commands/stepsequence.py: Ditto.

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

15 months agoImprove the performance of Font::canRenderCombiningCharacterSequence()
mmaxfield@apple.com [Sat, 26 May 2018 03:44:49 +0000 (03:44 +0000)]
Improve the performance of Font::canRenderCombiningCharacterSequence()
https://bugs.webkit.org/show_bug.cgi?id=185933

Reviewed by Ryosuke Niwa.

PerformanceTests:

* Layout/ComplexLongUnique.html: Added.

Source/WebCore:

We don't need to create a whole CTLine just to determine whether or not a font supports rendering a grapheme cluster.
Instead, the right way to do it is just see if the font's cmap table supports every code point in the cluster.

This patch reports a 2% progression on the attached PerformanceTest.

Test: Layout/ComplexLongUnique.html

* platform/graphics/Font.cpp:
(WebCore::Font::canRenderCombiningCharacterSequence const):
* platform/graphics/Font.h:
* platform/graphics/cocoa/FontCocoa.mm:
(WebCore::provideStringAndAttributes): Deleted.
(WebCore::Font::canRenderCombiningCharacterSequence const): Deleted.
* platform/graphics/freetype/SimpleFontDataFreeType.cpp:
(WebCore::Font::canRenderCombiningCharacterSequence const): Deleted.

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

15 months agoCaptions are sized incorrectly in PiP mode
eric.carlson@apple.com [Sat, 26 May 2018 01:02:44 +0000 (01:02 +0000)]
Captions are sized incorrectly in PiP mode
https://bugs.webkit.org/show_bug.cgi?id=186005
<rdar://problem/39729718>

Reviewed by Dean Jackson.

* html/shadow/MediaControlElements.cpp:
(WebCore::MediaControlTextTrackContainerElement::updateSizes): Only sync text track bounds
when the size actually changes.

* platform/graphics/avfoundation/objc/VideoFullscreenLayerManagerObjC.mm:
(WebCore::VideoFullscreenLayerManagerObjC::setVideoFullscreenFrame): Call syncTextTrackBounds.
(WebCore::VideoFullscreenLayerManagerObjC::syncTextTrackBounds): Set the text track layer size
to m_videoFullscreenFrame, it is always set the size of the PiP/Fullscreen layer.

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

15 months agofor-in loops should preserve and restore the TDZ stack for each of its internal loops.
mark.lam@apple.com [Sat, 26 May 2018 00:23:57 +0000 (00:23 +0000)]
for-in loops should preserve and restore the TDZ stack for each of its internal loops.
https://bugs.webkit.org/show_bug.cgi?id=185995
<rdar://problem/40173142>

Reviewed by Saam Barati.

JSTests:

* stress/regress-185995.js: Added.

Source/JavaScriptCore:

This is because there's no guarantee that any of the loop bodies will be
executed.  Hence, there's no guarantee that the TDZ variables will have been
initialized after each loop body.

* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::preserveTDZStack):
(JSC::BytecodeGenerator::restoreTDZStack):
* bytecompiler/BytecodeGenerator.h:
* bytecompiler/NodesCodegen.cpp:
(JSC::ForInNode::emitBytecode):

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

15 months agoSetting drawsBackground to YES on a WKView doesn't take effect immediately
timothy@apple.com [Sat, 26 May 2018 00:13:43 +0000 (00:13 +0000)]
Setting drawsBackground to YES on a WKView doesn't take effect immediately
https://bugs.webkit.org/show_bug.cgi?id=185885
rdar://problem/39706506

Reviewed by Simon Fraser.

Source/WebCore:

* page/Frame.cpp:
(WebCore::Frame::createView): Always call updateBackgroundRecursively, it handles
invalid colors correctly already.
* page/FrameView.cpp:
(WebCore::FrameView::setTransparent): Call setNeedsLayout() since base background color
and transparent is used to update layers.
(WebCore::FrameView::setBaseBackgroundColor): Ditto.
(WebCore::FrameView::updateBackgroundRecursively): Schedule layout if needed.
* page/FrameView.h:
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::viewHasTransparentBackground const): Use baseBackgroundColor
instead of hardcoding white.
(WebCore::RenderLayerCompositor::rootBackgroundTransparencyChanged): Fixed incorrect changed logging.

Source/WebKit:

* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _initializeWithConfiguration:]): Removed setBackgroundExtendsBeyondPage(true)
since it is now the default.
* UIProcess/Cocoa/WebViewImpl.mm:
(WebKit::WebViewImpl::setDrawsBackground): Make sure updateLayer gets called on the web view
by calling setNeedsDisplay:YES.
(WebKit::WebViewImpl::setBackgroundColor): Ditto.
(WebKit::WebViewImpl::updateLayer): Removed dead code.
* UIProcess/WebPageProxy.h: Make m_backgroundExtendsBeyondPage default to true. WebKit was
always turning this on during WKWebView initializtion, which would cause the scroll
shadow layer to be created, flash black because of no background, then destroyed soon
after once WebKit's message to turn it on got delivered.
* WebProcess/WebPage/WebPage.cpp:
(WebPage::WebPage): Call setBackgroundExtendsBeyondPage earlier to avoid creating the scroll
shadow layer, since backgroundShouldExtendBeyondPage defautls to false in WebCore for WK1.
(WebKit::WebPage::setDrawsBackground): Use updateBackgroundRecursively to propagate the
correct base background color.

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

15 months agoMigrate From-Origin to Cross-Origin-Resource-Policy
youenn@apple.com [Sat, 26 May 2018 00:06:08 +0000 (00:06 +0000)]
Migrate From-Origin to Cross-Origin-Resource-Policy
https://bugs.webkit.org/show_bug.cgi?id=185840

Reviewed by Chris Dumez.

Source/WebCore:

Tests: http/wpt/cross-origin-resource-policy/fetch-in-iframe.html
       http/wpt/cross-origin-resource-policy/fetch.html
       http/wpt/cross-origin-resource-policy/iframe-loads.html
       http/wpt/cross-origin-resource-policy/image-loads.html
       http/wpt/cross-origin-resource-policy/script-loads.html

* platform/network/HTTPHeaderNames.in:
* platform/network/HTTPParsers.cpp:
(WebCore::parseCrossOriginResourcePolicyHeader):
* platform/network/HTTPParsers.h:

Source/WebKit:

Do Cross-Origin-Resource-Policy (CORP) checks in NetworkLoadChecker instead of NetworkResourceLoader directly.
Make sure CORP only applies to no-cors loads.
Remove ancestor checks and only consider the document origin making the load.
This means that in case of cross-origin redirection to same-origin, the redirection will be CORP-checked,
the final response will not be CORP-checked but will be opaque.

* NetworkProcess/NetworkLoadChecker.cpp:
(WebKit::NetworkLoadChecker::validateCrossOriginResourcePolicyPolicy):
(WebKit::NetworkLoadChecker::validateResponse):
* NetworkProcess/NetworkLoadChecker.h:
* NetworkProcess/NetworkResourceLoader.cpp:
(WebKit::NetworkResourceLoader::retrieveCacheEntry):
(WebKit::NetworkResourceLoader::didReceiveResponse):
(WebKit::NetworkResourceLoader::continueWillSendRedirectedRequest):
(WebKit::NetworkResourceLoader::didRetrieveCacheEntry):
(WebKit::NetworkResourceLoader::dispatchWillSendRequestForCacheEntry):
* NetworkProcess/NetworkResourceLoader.h:
* WebProcess/Network/WebLoaderStrategy.cpp:
(WebKit::WebLoaderStrategy::scheduleLoadFromNetworkProcess):
Send ancestor information for navigation loads only.

LayoutTests:

Migrating From-Origin tests to Cross-Origin-Resource-Policy tests.
Given the scope of the header is reduced to no-cors and no ancestor checks,
We cover the new header with fetch/image/script loads.

* TestExpectations:
* http/tests/from-origin: Removed.
* http/wpt/cross-origin-resource-policy/fetch-expected.txt: Added.
* http/wpt/cross-origin-resource-policy/fetch-in-iframe-expected.txt: Added.
* http/wpt/cross-origin-resource-policy/fetch-in-iframe.html: Added.
* http/wpt/cross-origin-resource-policy/fetch.html: Added.
* http/wpt/cross-origin-resource-policy/iframe-loads-expected.txt: Added.
* http/wpt/cross-origin-resource-policy/iframe-loads.html: Added.
* http/wpt/cross-origin-resource-policy/image-loads-expected.txt: Added.
* http/wpt/cross-origin-resource-policy/image-loads.html: Added.
* http/wpt/cross-origin-resource-policy/resources/green.png: Added.
* http/wpt/cross-origin-resource-policy/resources/hello.py: Added.
* http/wpt/cross-origin-resource-policy/resources/iframe.py: Added.
* http/wpt/cross-origin-resource-policy/resources/iframeFetch.html: Added.
* http/wpt/cross-origin-resource-policy/resources/image.py: Added.
* http/wpt/cross-origin-resource-policy/resources/redirect.py: Added.
* http/wpt/cross-origin-resource-policy/resources/script.py: Added.
* http/wpt/cross-origin-resource-policy/script-loads-expected.txt: Added.
* http/wpt/cross-origin-resource-policy/script-loads.html: Added.
* platform/wk2/TestExpectations:

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

15 months agoNavigationAction should not hold a strong reference to a Document
dbates@webkit.org [Fri, 25 May 2018 23:48:11 +0000 (23:48 +0000)]
NavigationAction should not hold a strong reference to a Document
https://bugs.webkit.org/show_bug.cgi?id=185712
<rdar://problem/40320916>

Reviewed by Brent Fulgham.

Source/WebCore:

Have NavigationAction store all the relevant details callers need to know about the document
that initiated the navigation in an independent data structure, called NavigationAction::Requester,
as opposed to holding a RefPtr to the document itself. The benefit of this approach is that it
is a step towards ensuring that NavigationAction does not keep the document alive after navigating
to a new document given that DocumentLoader stores the NavigationAction for the last navigation.

* loader/NavigationAction.cpp:
(WebCore::NavigationAction::Requester::Requester): Track all relevant details of the document that
requested this navigation that are needed to support WebKit API/SPI. We hold the SecurityOrigin in
a RefPtr to avoid the need to explicitly define a copy constructor and copy-assignment constructor
because Requester needs to be copyable as NavigationAction, which owns a Requester, is copyable.
(WebCore::shouldTreatAsSameOriginNavigation): Fix some style nits.
(WebCore::NavigationAction::NavigationAction): Instantiate a Requester from the specified document.
* loader/NavigationAction.h:
(WebCore::NavigationAction::Requester::url const): Added.
(WebCore::NavigationAction::Requester::securityOrigin const): Added.
(WebCore::NavigationAction::Requester::pageID const): Added.
(WebCore::NavigationAction::Requester::frameID const): Added.
(WebCore::NavigationAction::requester const): Returns details about the document that requested
this navigation, if applicable.
(WebCore::NavigationAction::isEmpty const): Update criterion for being empty to consider the
requester.
(WebCore::NavigationAction::setOpener): Extracted out the datatype of the parameter into a
type alias to avoid duplication and updated this code to use the alias.
(WebCore::NavigationAction::opener const): Ditto.
(WebCore::NavigationAction::sourceDocument const): Deleted.

Source/WebKit:

Update code to make use of NavigationAction::requester().

* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):

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

15 months agoMachineContext's instructionPointer() should handle null PCs correctly.
mark.lam@apple.com [Fri, 25 May 2018 23:45:36 +0000 (23:45 +0000)]
MachineContext's instructionPointer() should handle null PCs correctly.
https://bugs.webkit.org/show_bug.cgi?id=186004
<rdar://problem/40570067>

Reviewed by Saam Barati.

instructionPointer() returns a MacroAssemblerCodePtr<CFunctionPtrTag>.  However,
MacroAssemblerCodePtr's constructor does not accept a null pointer value and will
assert accordingly with a debug ASSERT.  This is inconsequential for release
builds, but to avoid this assertion failure, we should check for a null PC and
return MacroAssemblerCodePtr<CFunctionPtrTag>(nullptr) instead (which uses the
MacroAssemblerCodePtr(std::nullptr_t) version of the constructor instead).

Alternatively, we can change all of MacroAssemblerCodePtr's constructors to check
for null pointers, but I rather not do that yet.  In general,
MacroAssemblerCodePtrs are constructed with non-null pointers, and I prefer to
leave it that way for now.

Note: this assertion failure only manifests when we have signal traps enabled,
and encounter a null pointer deref.

* runtime/MachineContext.h:
(JSC::MachineContext::instructionPointer):

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

15 months agotest-webkitpy messages logged using __main__ logger are not displayed
dbates@webkit.org [Fri, 25 May 2018 23:41:19 +0000 (23:41 +0000)]
test-webkitpy messages logged using __main__ logger are not displayed
https://bugs.webkit.org/show_bug.cgi?id=185823

Rubber-stamped by Aakash Jain.

Configure the logger for __main__ so that messages that are logged before it parses its
command line arguments are printed to standard error.

Currently test-webkitpy creates a named logger (__main__) for its logging. However it does
not configure a stream to use for printing until after it parses its command line arguments
via webkitpy.test.printer.Printer.configure(). Messages logged until then are never written
to the console. We explicitly configure the __main__ logger instead of calling webkitpy.test.printer.Printer.configure()
earlier because the latter both configures a stream and filters logged messages based on
the specified verbosity. Logged messaged from code in __main__ should not be subject to
such filtering. So, we explicitly configure the __main__ logger.

* Scripts/webkitpy/test/main.py:
(main):

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

15 months agofast/text/user-installed-fonts/shadow-family.html and fast/text/user-installed-fonts...
ryanhaddad@apple.com [Fri, 25 May 2018 23:27:02 +0000 (23:27 +0000)]
fast/text/user-installed-fonts/shadow-family.html and fast/text/user-installed-fonts/shadow-postscript-family.html are flaky
https://bugs.webkit.org/show_bug.cgi?id=185994

Unreviewed test gardening.

Patch by David Fenton <david_fenton@apple.com> on 2018-05-25

* platform/mac-wk2/TestExpectations:

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

15 months agoJavaScriptCore: Disable 32-bit JIT on Windows
msaboff@apple.com [Fri, 25 May 2018 23:26:42 +0000 (23:26 +0000)]
JavaScriptCore: Disable 32-bit JIT on Windows
https://bugs.webkit.org/show_bug.cgi?id=185989

Reviewed by Saam Barati.

* wtf/Platform.h:

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

15 months agoEnforce invariant that GetterSetter objects are invariant.
mark.lam@apple.com [Fri, 25 May 2018 23:18:15 +0000 (23:18 +0000)]
Enforce invariant that GetterSetter objects are invariant.
https://bugs.webkit.org/show_bug.cgi?id=185968
<rdar://problem/40541416>

Reviewed by Saam Barati.

The code already assumes the invariant that GetterSetter objects are immutable.
For example, the use of @tryGetById in builtins expect this invariant to be true.
The existing code mostly enforces this except for one case: JSObject's
validateAndApplyPropertyDescriptor, where it will re-use the same GetterSetter
object.

This patch enforces this invariant by removing the setGetter and setSetter methods
of GetterSetter, and requiring the getter/setter callback functions to be
specified at construction time.

* jit/JITOperations.cpp:
* llint/LLIntSlowPaths.cpp:
(JSC::LLInt::LLINT_SLOW_PATH_DECL):
* runtime/GetterSetter.cpp:
(JSC::GetterSetter::withGetter): Deleted.
(JSC::GetterSetter::withSetter): Deleted.
* runtime/GetterSetter.h:
* runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::init):
* runtime/JSObject.cpp:
(JSC::JSObject::putIndexedDescriptor):
(JSC::JSObject::putDirectNativeIntrinsicGetter):
(JSC::putDescriptor):
(JSC::validateAndApplyPropertyDescriptor):
* runtime/JSTypedArrayViewPrototype.cpp:
(JSC::JSTypedArrayViewPrototype::finishCreation):
* runtime/Lookup.cpp:
(JSC::reifyStaticAccessor):
* runtime/PropertyDescriptor.cpp:
(JSC::PropertyDescriptor::slowGetterSetter):

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

15 months agoMake JSC have a mini mode that kicks in when the JIT is disabled
sbarati@apple.com [Fri, 25 May 2018 22:47:59 +0000 (22:47 +0000)]
Make JSC have a mini mode that kicks in when the JIT is disabled
https://bugs.webkit.org/show_bug.cgi?id=185931

Reviewed by Mark Lam.

Source/JavaScriptCore:

This patch makes JSC have a mini VM mode. This currently only kicks in
when the process can't JIT. Mini VM now means a few things:
- We always use a 1.27x heap growth factor. This number was the best tradeoff
  between memory use progression and time regression in run-testmem. We may
  want to tune this more in the future as we make other mini VM changes.
- We always sweep synchronously.
- We disable generational GC.

I'm going to continue to extend what mini VM mode means in future changes.

This patch is a 50% memory progression and an ~8-9% time regression
on run-testmem when running in mini VM mode with the JIT disabled.

* heap/Heap.cpp:
(JSC::Heap::collectNow):
(JSC::Heap::finalize):
(JSC::Heap::useGenerationalGC):
(JSC::Heap::shouldSweepSynchronously):
(JSC::Heap::shouldDoFullCollection):
* heap/Heap.h:
* runtime/Options.h:
* runtime/VM.cpp:
(JSC::VM::isInMiniMode):
* runtime/VM.h:

Tools:

This renames a variable for clarity.

* Scripts/run-testmem:

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

15 months agoEnsure that the Web Content process doesn't sleep during initialization
timothy_horton@apple.com [Fri, 25 May 2018 21:53:17 +0000 (21:53 +0000)]
Ensure that the Web Content process doesn't sleep during initialization
https://bugs.webkit.org/show_bug.cgi?id=185975
<rdar://problem/40548159>

Reviewed by Geoffrey Garen.

WebProcessPool::warmInitialProcess isn't worth much (or at least, as much
as it could be) if the Web Content process goes to sleep in the middle
of initializeWebProcess.

Keep the Web Content process alive until it has handled all messages
sent from WebProcessPool::initializeNewWebProcess.

This is a significant speedup on some benchmarks I've been running
that involve prewarming a process long before any content is loaded.

* UIProcess/WebProcessPool.cpp:
(WebKit::WebProcessPool::initializeNewWebProcess):

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

15 months agoFullscreen element can be clipped by ancestor.
commit-queue@webkit.org [Fri, 25 May 2018 21:53:08 +0000 (21:53 +0000)]
Fullscreen element can be clipped by ancestor.
https://bugs.webkit.org/show_bug.cgi?id=185980
rdar://problem/40320006

Patch by Jeremy Jones <jeremyj@apple.com> on 2018-05-25
Reviewed by Jer Noble.

Adds style to fullscreen css to prevent the fullscreen element from being clipped by an ancestor element.

* css/fullscreen.css:
(:-webkit-full-screen-ancestor:not(iframe)):

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

15 months agoUse correct AVKit delegate for picture in picture failure.
commit-queue@webkit.org [Fri, 25 May 2018 21:49:01 +0000 (21:49 +0000)]
Use correct AVKit delegate for picture in picture failure.
https://bugs.webkit.org/show_bug.cgi?id=185981
rdar://problem/40549652

Patch by Jeremy Jones <jeremyj@apple.com> on 2018-05-25
Reviewed by Eric Carlson.

No new tests since we don't have a way to simulate picture-in-picture failure.

Use the new name for this delegate callback.

* platform/ios/VideoFullscreenInterfaceAVKit.mm:
(-[WebAVPlayerViewControllerDelegate playerViewController:failedToStartPictureInPictureWithError:]):
(-[WebAVPlayerViewControllerDelegate playerViewControllerFailedToStartPictureInPicture:withError:]): Deleted.

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

15 months agoiBooks: text can disappear/flash during finger drag highlight
zalan@apple.com [Fri, 25 May 2018 21:42:52 +0000 (21:42 +0000)]
iBooks: text can disappear/flash during finger drag highlight
https://bugs.webkit.org/show_bug.cgi?id=185993
<rdar://problem/34026943>

Reviewed by Simon Fraser.

Reuse existing tiles when override rect is fully covered by the active grid.
Also, recover dropped tiles if override rect forces us to create new ones.

Unable to create a reproducible test case.

* platform/ios/LegacyTileCache.h:
* platform/ios/LegacyTileCache.mm:
(WebCore::LegacyTileCache::setOverrideVisibleRect):
* platform/ios/LegacyTileLayer.mm:
(-[LegacyTileHostLayer renderInContext:]):

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

15 months agoWebsiteDataStore::enableResourceLoadStatisticsAndSetTestingCallback() unexpectedly...
cdumez@apple.com [Fri, 25 May 2018 21:35:30 +0000 (21:35 +0000)]
WebsiteDataStore::enableResourceLoadStatisticsAndSetTestingCallback() unexpectedly constructs a process pool
https://bugs.webkit.org/show_bug.cgi?id=185992

Reviewed by Geoffrey Garen.

Update enableResourceLoadStatisticsAndSetTestingCallback() to pass the right parameter to processPools()
to avoid constructing a process pool when none exist. Also drop the 'resourceLoadStatisticsEnabled'
flag on the WebProcessPool and have it query its data store instead to know if the feature is enabled.

* UIProcess/WebProcessPool.cpp:
(WebKit::WebProcessPool::initializeNewWebProcess):
(WebKit::WebProcessPool::setResourceLoadStatisticsEnabled):
* UIProcess/WebProcessPool.h:
* UIProcess/WebsiteData/WebsiteDataStore.cpp:
(WebKit::WebsiteDataStore::enableResourceLoadStatisticsAndSetTestingCallback):

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

15 months agoEncode ISOWebVTTCue "strings" when logging
eric.carlson@apple.com [Fri, 25 May 2018 21:35:13 +0000 (21:35 +0000)]
Encode ISOWebVTTCue "strings" when logging
https://bugs.webkit.org/show_bug.cgi?id=185991
<rdar://problem/40563902>

Reviewed by Jer Noble.

* platform/graphics/iso/ISOVTTCue.cpp:
(WebCore::ISOWebVTTCue::toJSONString const): Use encodeWithURLEscapeSequences for all Strings
taken from ISO boxes.

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

15 months agoDrop support for NSURLCache in WebKit2
cdumez@apple.com [Fri, 25 May 2018 21:27:19 +0000 (21:27 +0000)]
Drop support for NSURLCache in WebKit2
https://bugs.webkit.org/show_bug.cgi?id=185990

Reviewed by Geoffrey Garen.

Drop support for NSURLCache in WebKit2 now that the WebKit network cache is stable.

Source/WebCore/PAL:

* pal/spi/cf/CFNetworkSPI.h:

Source/WebKit:

* NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::setCacheModel):
* NetworkProcess/NetworkProcess.h:
* NetworkProcess/NetworkProcessCreationParameters.cpp:
(WebKit::NetworkProcessCreationParameters::encode const):
(WebKit::NetworkProcessCreationParameters::decode):
* NetworkProcess/NetworkProcessCreationParameters.h:
* NetworkProcess/cocoa/NetworkProcessCocoa.mm:
(WebKit::NetworkProcess::platformInitializeNetworkProcessCocoa):
(WebKit::NetworkProcess::clearDiskCache):
(WebKit::NetworkProcess::platformSetURLCacheSize): Deleted.
(WebKit::clearNSURLCache): Deleted.
* NetworkProcess/cocoa/NetworkSessionCocoa.h:
* NetworkProcess/cocoa/NetworkSessionCocoa.mm:
(WebKit::NetworkSessionCocoa::NetworkSessionCocoa):
(): Deleted.
(WebKit::NetworkSessionCocoa::setUsesNetworkCache): Deleted.
* NetworkProcess/curl/NetworkProcessCurl.cpp:
(WebKit::NetworkProcess::platformSetURLCacheSize): Deleted.
* NetworkProcess/soup/NetworkProcessSoup.cpp:
(WebKit::NetworkProcess::platformSetURLCacheSize): Deleted.
* UIProcess/Cocoa/WebProcessPoolCocoa.mm:
(WebKit::WebProcessPool::platformInitializeNetworkProcess):
(WebKit::WebProcessPool::legacyPlatformDefaultNetworkCacheDirectory):
(WebKit::WebProcessPool::isNetworkCacheEnabled): Deleted.
* UIProcess/WebProcessPool.h:
* WebProcess/WebPage/WebFrame.cpp:
(WebKit::WebFrame::suggestedFilenameForResourceWithURL const):
(WebKit::WebFrame::mimeTypeForResourceWithURL const):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::getResourceDataFromFrame):
(WebKit::WebPage::hasLocalDataForURL):
* WebProcess/WebPage/WebPage.h:
* WebProcess/WebPage/gtk/WebPageGtk.cpp:
(WebKit::WebPage::platformHasLocalDataForURL): Deleted.
(WebKit::WebPage::cachedResponseMIMETypeForURL): Deleted.
(WebKit::WebPage::cachedSuggestedFilenameForURL): Deleted.
(WebKit::WebPage::cachedResponseDataForURL): Deleted.
* WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::platformHasLocalDataForURL): Deleted.
(WebKit::WebPage::cachedSuggestedFilenameForURL): Deleted.
(WebKit::WebPage::cachedResponseMIMETypeForURL): Deleted.
(WebKit::WebPage::cachedResponseDataForURL): Deleted.
* WebProcess/WebPage/mac/WebPageMac.mm:
(WebKit::WebPage::accessibilityRemoteObject):
(WebKit::WebPage::platformHasLocalDataForURL): Deleted.
(WebKit::cachedResponseForURL): Deleted.
(WebKit::WebPage::cachedSuggestedFilenameForURL): Deleted.
(WebKit::WebPage::cachedResponseMIMETypeForURL): Deleted.
(WebKit::WebPage::cachedResponseDataForURL): Deleted.
* WebProcess/WebPage/win/WebPageWin.cpp:
(WebKit::WebPage::platformHasLocalDataForURL): Deleted.
(WebKit::WebPage::cachedResponseMIMETypeForURL): Deleted.
(WebKit::WebPage::cachedSuggestedFilenameForURL): Deleted.
(WebKit::WebPage::cachedResponseDataForURL): Deleted.
* WebProcess/WebPage/wpe/WebPageWPE.cpp:
(WebKit::WebPage::platformHasLocalDataForURL): Deleted.
(WebKit::WebPage::cachedResponseMIMETypeForURL): Deleted.
(WebKit::WebPage::cachedSuggestedFilenameForURL): Deleted.
(WebKit::WebPage::cachedResponseDataForURL): Deleted.
* WebProcess/cocoa/WebProcessCocoa.mm:
(WebKit::WebProcess::platformInitializeWebProcess):

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

15 months agoFix internal iOS builds after r232198
achristensen@apple.com [Fri, 25 May 2018 21:18:04 +0000 (21:18 +0000)]
Fix internal iOS builds after r232198
https://bugs.webkit.org/show_bug.cgi?id=185986

* WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::sendTapHighlightForNodeIfNecessary):

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

15 months agoUnreviewed, rebaseline two fast/forms/ios/ipad tests.
ryanhaddad@apple.com [Fri, 25 May 2018 21:02:20 +0000 (21:02 +0000)]
Unreviewed, rebaseline two fast/forms/ios/ipad tests.

* fast/forms/ios/ipad/select-form-run-twice-expected.txt:
* fast/forms/ios/ipad/unfocus-inside-fixed-hittest-expected.txt:

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

15 months agoURL::host should return a StringView to reduce allocations
achristensen@apple.com [Fri, 25 May 2018 20:39:37 +0000 (20:39 +0000)]
URL::host should return a StringView to reduce allocations
https://bugs.webkit.org/show_bug.cgi?id=185986

Reviewed by Geoff Garen.

Source/WebCore:

No change in behaviour.  Just fewer allocations.

* Modules/plugins/YouTubePluginReplacement.cpp:
(WebCore::isYouTubeURL):
(WebCore::processAndCreateYouTubeURL):
* Modules/websockets/WebSocketHandshake.cpp:
(WebCore::hostName):
(WebCore::WebSocketHandshake::host const):
* contentextensions/ContentExtension.cpp:
(WebCore::ContentExtensions::ContentExtension::populateConditionCacheIfNeeded):
* html/HTMLAnchorElement.cpp:
(WebCore::HTMLAnchorElement::parseAttribute):
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::mediaSessionTitle const):
(WebCore::needsSeekingSupportQuirk):
* html/HTMLPlugInImageElement.cpp:
(WebCore::HTMLPlugInImageElement::restartSimilarPlugIns):
(WebCore::HTMLPlugInImageElement::userDidClickSnapshot):
(WebCore::HTMLPlugInImageElement::subframeLoaderWillCreatePlugIn):
* html/ImageDocument.cpp:
(WebCore::ImageDocument::finishedParsing):
* html/URLUtils.h:
(WebCore::URLUtils<T>::hostname const):
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::setFirstPartyForCookies):
* loader/LinkLoader.cpp:
(WebCore::LinkLoader::loadLink):
* loader/ResourceLoadStatistics.cpp:
(WebCore::ResourceLoadStatistics::primaryDomain):
* loader/mac/LoaderNSURLExtras.mm:
(suggestedFilenameWithMIMEType):
* page/Chrome.cpp:
(WebCore::Chrome::mouseDidMoveOverElement):
* page/Location.cpp:
(WebCore::Location::hostname const):
* page/Page.cpp:
(WebCore::Page::mainFrameLoadStarted):
* page/PerformanceMonitor.cpp:
(WebCore::reportPageOverPostLoadResourceThreshold):
* page/SecurityOrigin.cpp:
(WebCore::isLoopbackIPAddress):
(WebCore::shouldTreatAsPotentiallyTrustworthy):
(WebCore::SecurityOrigin::isLocalHostOrLoopbackIPAddress):
* page/SecurityOrigin.h:
* page/SecurityOriginData.h:
(WebCore::SecurityOriginData::fromURL):
* page/UserContentURLPattern.cpp:
(WebCore::UserContentURLPattern::matchesHost const):
* page/csp/ContentSecurityPolicySource.cpp:
(WebCore::ContentSecurityPolicySource::hostMatches const):
* platform/PublicSuffix.h:
* platform/URL.cpp:
(WebCore::URL::host const):
(WebCore::URL::hostAndPort const):
(WebCore::URL::isMatchingDomain const):
* platform/URL.h:
* platform/mac/SSLKeyGeneratorMac.mm:
(WebCore::signedPublicKeyAndChallengeString):
* platform/network/ResourceRequestBase.h:
(WebCore::registrableDomainsAreEqual):
* platform/network/cf/NetworkStorageSessionCFNet.cpp:
(WebCore::getPartitioningDomain):
* platform/network/cf/SocketStreamHandleImplCFNet.cpp:
(WebCore::SocketStreamHandleImpl::createStreams):
* workers/WorkerLocation.cpp:
(WebCore::WorkerLocation::hostname const):
* workers/service/server/SWServer.cpp:
(WebCore::SWServer::performGetOriginsWithRegistrationsCallbacks):

Source/WebKit:

* NetworkProcess/NetworkProcess.cpp:
(WebKit::fetchDiskCacheEntries):
* NetworkProcess/NetworkResourceLoader.cpp:
(WebKit::areFrameAncestorsSameSite):
* NetworkProcess/mac/NetworkProcessMac.mm:
(WebKit::overrideSystemProxies):
* Shared/API/APIURL.h:
(API::URL::host const):
* UIProcess/Automation/WebAutomationSession.cpp:
(WebKit::WebAutomationSession::addSingleCookie):
(WebKit::WebAutomationSession::deleteAllCookies):
* UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::processDidTerminateOrFailedToLaunch):
* WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::pluginDidReceiveUserInteraction):
* WebProcess/Plugins/WebPluginInfoProvider.cpp:
(WebKit::WebPluginInfoProvider::populatePluginCache):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::needsHiddenContentEditableQuirk):
(WebKit::needsPlainTextQuirk):
(WebKit::WebPage::determinePrimarySnapshottedPlugIn):

Source/WebKitLegacy:

* WebCoreSupport/WebResourceLoadScheduler.cpp:
(WebResourceLoadScheduler::hostForURL):

Tools:

* TestWebKitAPI/Tests/WebCore/URL.cpp:
(TestWebKitAPI::TEST_F):
* TestWebKitAPI/Tests/WebCore/URLParser.cpp:
(TestWebKitAPI::eq):
* TestWebKitAPI/Tests/mac/SSLKeyGenerator.mm:
(TestWebKitAPI::SSLKeyGeneratorTest::TearDown):

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

15 months agoUnreviewed. Update OptionsWPE.cmake and NEWS for 2.21.2 release.
aperez@igalia.com [Fri, 25 May 2018 19:14:35 +0000 (19:14 +0000)]
Unreviewed. Update OptionsWPE.cmake and NEWS for 2.21.2 release.

* Source/cmake/OptionsWPE.cmake: Bump version numbers.

* wpe/NEWS: Add release notes for the 2.21.2 release.

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

15 months agoMinor improvements to wpt exporter.
Ms2ger@igalia.com [Fri, 25 May 2018 19:12:54 +0000 (19:12 +0000)]
Minor improvements to wpt exporter.
https://bugs.webkit.org/show_bug.cgi?id=185978

Reviewed by Youenn Fablet.

* Scripts/webkitpy/w3c/test_exporter.py:
(TestExporter.push_to_wpt_fork): Update call to create_upload_remote().
(TestExporter.make_pull_request): Improve the description of the created PR.
(TestExporter.create_upload_remote): Always update the remote to override any obsolete state.

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

15 months agoNeed to provide a way to feature detect support for system preview
dino@apple.com [Fri, 25 May 2018 19:10:38 +0000 (19:10 +0000)]
Need to provide a way to feature detect support for system preview
https://bugs.webkit.org/show_bug.cgi?id=185970
<rdar://problem/40538321>

Reviewed by Sam Weinig.

Update the supports function in the DOMTokenList that HTMLAnchorElement
produces for relList to return true for the system preview token.

Tested internally.

* html/HTMLAnchorElement.cpp:
(WebCore::HTMLAnchorElement::relList const):

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

15 months agoHave a memory test where we can validate JSCs mini memory mode
sbarati@apple.com [Fri, 25 May 2018 19:05:25 +0000 (19:05 +0000)]
Have a memory test where we can validate JSCs mini memory mode
https://bugs.webkit.org/show_bug.cgi?id=185932

Reviewed by Mark Lam.

PerformanceTests:

We add a directory here with the contents of the testmem benchmark.
To run it, use `Tools/Scripts/run-testmem`. To add new tests in the future,
you just need to add JS files to this directory.

* testmem: Added.
* testmem/air.js: Added.
* testmem/base64.js: Added.
* testmem/basic.js: Added.
* testmem/box2d.js: Added.
* testmem/crypto-md5.js: Added.
* testmem/date-format-tofte.js: Added.
* testmem/earley-boyer.js: Added.
* testmem/hash-map.js: Added.
* testmem/regex-dna.js: Added.
* testmem/splay.js: Added.
* testmem/tagcloud.js: Added.

Source/JavaScriptCore:

This patch adds the testmem CLI. It takes as input a file to run
and the number of iterations to run it (by default it runs it
20 times). Each iteration runs in a new JSContext. Each JSContext
belongs to a VM that is created once. When finished, the CLI dumps
out the peak memory usage of the process, the memory usage at the end
of running all the iterations of the process, and the total time it
took to run all the iterations.

* JavaScriptCore.xcodeproj/project.pbxproj:
* testmem: Added.
* testmem/testmem.mm: Added.
(description):
(Footprint::now):
(main):

Tools:

This patch adds the run-testmem script. This runs the new testmem
CLI against the contents in the testmem benchmark. The contents of testmem
contain tests from ARES-6, Sunspider, Octane, and JetStream.

One iteration of the benchmark comprises of running each testmem test for
a certain number of iterations. We collect the peak memory usage, the memory
usage after running all the iterations, and the time it takes to run all the
iterations. We then run the entire benchmark 3 times over. For each test, we
compute the arithmetic mean over each iteration for time, peak memory, and
end memory. The benchmark then computes a time score and memory score.

peak memory score = geomean({peak memory of each individual test})
end memory score = geomean({end memory of each individual test})
memory score = geomean({peak memory score, end memory score})
time score = geomean({time score of each individual test})

We want the memory score to weigh improvements to peak memory usage and
memory usage at the end equally.

We plan to tune this benchmark in JSC's mini mode by improving the memory
score while ensuring the time score is not more than 10-15% regressed.

* Scripts/run-testmem: Added.

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

15 months agoMinor ApplicationCacheStorage clean up
cdumez@apple.com [Fri, 25 May 2018 18:40:27 +0000 (18:40 +0000)]
Minor ApplicationCacheStorage clean up
https://bugs.webkit.org/show_bug.cgi?id=185984

Reviewed by Youenn Fablet.

Source/WebCore:

* loader/appcache/ApplicationCacheStorage.cpp:
(WebCore::ApplicationCacheStorage::getManifestURLs):
(WebCore::ApplicationCacheStorage::deleteCacheGroup):
(WebCore::ApplicationCacheStorage::originsWithCache):
(WebCore::ApplicationCacheStorage::deleteAllCaches):
(WebCore::ApplicationCacheStorage::deleteCacheForOrigin):
(WebCore::ApplicationCacheStorage::ApplicationCacheStorage):
(WebCore::ApplicationCacheStorage::cacheDirectory const): Deleted.
(WebCore::ApplicationCacheStorage::cacheGroupSize): Deleted.
(WebCore::ApplicationCacheStorage::getOriginsWithCache): Deleted.
(WebCore::ApplicationCacheStorage::create): Deleted.
* loader/appcache/ApplicationCacheStorage.h:
(WebCore::ApplicationCacheStorage::create):

Source/WebKit:

* UIProcess/WebsiteData/WebsiteDataStore.cpp:
(WebKit::WebsiteDataStore::fetchDataAndApply):
* WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
(WKBundlePageCopyOriginsWithApplicationCache):

Source/WebKitLegacy/mac:

* WebCoreSupport/WebApplicationCache.mm:
(+[WebApplicationCache originsWithCache]):

Source/WebKitLegacy/win:

* WebApplicationCache.cpp:
(WebApplicationCache::originsWithCache):

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

15 months ago[WKHTTPCookieStore getAllCookies] returns inconsistent creation time
sihui_liu@apple.com [Fri, 25 May 2018 18:35:13 +0000 (18:35 +0000)]
[WKHTTPCookieStore getAllCookies] returns inconsistent creation time
https://bugs.webkit.org/show_bug.cgi?id=185041
<rdar://problem/34684214>

Reviewed by Geoffrey Garen.

Source/WebCore:

Set creationtime property when creating Cookie object to keep consistency after conversion.

New API test: WebKit.WKHTTPCookieStoreCreationTime.

* platform/network/cocoa/CookieCocoa.mm:
(WebCore::Cookie::operator NSHTTPCookie * const):

Tools:

Add API test coverage.

* TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:
(TEST):

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

15 months agoAvoid triggering network cache speculative revalidation for loads allowing expired...
cdumez@apple.com [Fri, 25 May 2018 17:23:13 +0000 (17:23 +0000)]
Avoid triggering network cache speculative revalidation for loads allowing expired content
https://bugs.webkit.org/show_bug.cgi?id=185985

Reviewed by Antti Koivisto.

Avoid triggering network cache speculative revalidation for loads allowing expired content
(e.g. history loads, restoring pages after crash or safari relaunch). This causes us to do
unnecessary revalidations, it is both wasteful and bad for performance.

* NetworkProcess/cache/NetworkCache.cpp:
(WebKit::NetworkCache::Cache::retrieve):

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

15 months agoWeb Inspector: Popover dismissed while attempting to move cursor inside
mattbaker@apple.com [Fri, 25 May 2018 16:25:27 +0000 (16:25 +0000)]
Web Inspector: Popover dismissed while attempting to move cursor inside
https://bugs.webkit.org/show_bug.cgi?id=185741
<rdar://problem/40340938>

Reviewed by Joseph Pecoraro.

Hovering a token within the bounds of the current popover should not
show a new popover. This prevents the popover from being dismissed when
the cursor passes over a token under the transparent portion of the
popover frame.

* UserInterface/Views/SourceCodeTextEditor.js:
(WI.SourceCodeTextEditor.prototype._showPopover):

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

15 months ago[LFC] Implement border and padding computation
zalan@apple.com [Fri, 25 May 2018 14:33:54 +0000 (14:33 +0000)]
[LFC] Implement border and padding computation
https://bugs.webkit.org/show_bug.cgi?id=185972

Reviewed by Antti Koivisto.

This patch also removes redundant Display::Box methods and adds a lightweight Edge struct.
(Since padding is optional, if during layout we mistakenly try to access paddingTop/Left/Bottom/Right, Display::Box will assert!)

* layout/FormattingContext.cpp:
(WebCore::Layout::FormattingContext::computeBorderAndPadding const):
* layout/FormattingContext.h:
* layout/FormattingContextGeometry.cpp:
(WebCore::Layout::FormattingContext::Geometry::computedBorder):
(WebCore::Layout::FormattingContext::Geometry::computedPadding):
* layout/blockformatting/BlockFormattingContext.cpp:
(WebCore::Layout::BlockFormattingContext::layout const):
* layout/displaytree/DisplayBox.cpp:
(WebCore::Display::Box::marginBox const):
(WebCore::Display::Box::paddingBox const):
(WebCore::Display::Box::contentBox const):
* layout/displaytree/DisplayBox.h:
(WebCore::Display::Box::Edges::Edges):
(WebCore::Display::Box::setHasValidPosition):
(WebCore::Display::Box::setWidth):
(WebCore::Display::Box::setHeight):
(WebCore::Display::Box::setMargin):
(WebCore::Display::Box::setBorder):
(WebCore::Display::Box::setPadding):
(WebCore::Display::Box::marginTop const):
(WebCore::Display::Box::marginLeft const):
(WebCore::Display::Box::marginBottom const):
(WebCore::Display::Box::marginRight const):
(WebCore::Display::Box::paddingTop const):
(WebCore::Display::Box::paddingLeft const):
(WebCore::Display::Box::paddingBottom const):
(WebCore::Display::Box::paddingRight const):
(WebCore::Display::Box::borderTop const):
(WebCore::Display::Box::borderLeft const):
(WebCore::Display::Box::borderBottom const):
(WebCore::Display::Box::borderRight const):
(WebCore::Display::Box::invalidateSize): Deleted.
(WebCore::Display::Box::setHasValidSize): Deleted.
(WebCore::Display::Box::setHasValidGeometry): Deleted.
(WebCore::Display::Box::setRect): Deleted.
(WebCore::Display::Box::setSize): Deleted.
* layout/layouttree/LayoutBox.cpp:
(WebCore::Layout::Box::isPaddingEnabled const):
* layout/layouttree/LayoutBox.h:

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

15 months agoFix issues with -dealloc methods found by clang static analyzer
ddkilzer@apple.com [Fri, 25 May 2018 14:19:58 +0000 (14:19 +0000)]
Fix issues with -dealloc methods found by clang static analyzer
<https://webkit.org/b/185887>

Reviewed by Joseph Pecoraro.

Source/JavaScriptCore:

* API/JSValue.mm:
(-[JSValue dealloc]):
(-[JSValue description]):
- Move method implementations from (Internal) category to the
  main category since these are public API.  This fixes the
  false positive warning about a missing -dealloc method.

Source/WebCore:

* platform/ios/WebAVPlayerController.mm:
(-[WebAVPlayerController dealloc]): Release `_minTiming` and
`_maxTiming` to fix leaks.
* platform/ios/WebBackgroundTaskController.mm:
(-[WebBackgroundTaskController dealloc]): Release
`_backgroundTaskStartBlock` and `_backgroundTaskEndBlock` to fix
leaks.
* platform/ios/WebItemProviderPasteboard.mm:
(-[WebItemProviderRegistrationInfoList dealloc]): Release
`_teamData` to fix leak.

Source/WebKit:

* UIProcess/Cocoa/SystemPreviewControllerCocoa.mm: Drive-by fix
to use `copy` for `mimeType` property.
(-[_WKPreviewControllerDataSource initWithMIMEType:]): Drive-by
fix to use `instancetype` instead of `id`.  Use -copy for
`mimeType` argument to match property definition.
(-[_WKPreviewControllerDataSource dealloc]): Add.  Release
`_completionHandler` and `_mimeType` to fix leaks.
* UIProcess/ios/WKPasswordView.mm:
(-[WKPasswordView dealloc]): Add.  Release
`_userDidEnterPassword` to fix leak.
* UIProcess/ios/fullscreen/WKFullScreenViewController.h:
Drive-by clean-up to make `location` property `copy` instead of
`retain`.
* UIProcess/ios/fullscreen/WKFullScreenViewController.mm:
(-[WKFullScreenViewController dealloc]): Release `_target` and
`_location` to fix leaks.
* UIProcess/ios/fullscreen/WKFullScreenWindowControllerIOS.mm:
(-[WKFullscreenAnimationController dealloc]): Add.  Release
`_viewController` to fix leak.
* UIProcess/ios/fullscreen/WKFullscreenStackView.mm:
(@property secondaryMaterialOverlayView): Mark explicitly as
`assign` since this isn't a retained variable.
(@property secondaryMaterialOverlayViewConstraints): Mark
explicitly as `retain` since there is nothing to keep this
object alive.
(+[WKFullscreenStackView secondaryMaterialOverlayView]): Fix
leak by autoreleasing the return value.
(-[WKFullscreenStackView dealloc]): Release retained instance
variables to fix leaks.  Note that `_stackView` and
`_visualEffectView` are internally retained despite their
@property declarations.
(-[WKFullscreenStackView setTargetViewForSecondaryMaterialOverlay:]):
Retain @property targetViewForSecondaryMaterialOverlay to match
its declaration.

Source/WebKitLegacy/mac:

* WebView/WebView.mm:
(-[WebUITextIndicatorData dealloc]):
- Move method implementation from (WebUITextIndicatorInternal)
  category to the main category since this is public API.  This
  fixes the false positive warning about a missing -dealloc
  method.

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

15 months ago[Web Animations] Use DEFAULT_EXPERIMENTAL_FEATURES_ENABLED for Web Animations experim...
graouts@webkit.org [Fri, 25 May 2018 13:47:11 +0000 (13:47 +0000)]
[Web Animations] Use DEFAULT_EXPERIMENTAL_FEATURES_ENABLED for Web Animations experimental features
https://bugs.webkit.org/show_bug.cgi?id=185919

Reviewed by Dean Jackson.

* Shared/WebPreferences.yaml:

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

15 months ago[Web Animations] WebAnimation objects never get destroyed
graouts@webkit.org [Fri, 25 May 2018 13:45:15 +0000 (13:45 +0000)]
[Web Animations] WebAnimation objects never get destroyed
https://bugs.webkit.org/show_bug.cgi?id=185917
<rdar://problem/39539371>

Reviewed by Dean Jackson and Antti Koivisto.

Source/WebCore:

The AnimationTimeline class keeps references to WebAnimation objects organized in various ways. First, there
are three main maps across which all animations are stored, one for non-subclass WebAnimation objects
(m_elementToAnimationsMap), one for CSSSAnimation objects (m_elementToCSSAnimationsMap) and one for CSSTranstion
objects (m_elementToCSSTransitionsMap). On top of that, we also keep a map to access CSSAnimation objects for
a given element by CSS animation name (m_elementToCSSAnimationByName) and another map to access CSSTransition
objects for a given element by CSS property (m_elementToCSSTransitionByCSSPropertyID).

None of the RefPtr<WebAnimation> stored in these maps would get cleared when the document would get torn down,
which would also prevent the AnimationTimeline (and its DocumentTimeline subclass) from being destroyed.

We now ensure that element and document tear-down correctly removes animations and clears those maps, which
in turn allows the DocumentTimeline to be destroyed, fixing the significant memory leak introduced by Web Animations
so far.

Finally, we change the collection type for those maps to be ListHashRef instead of Vector to guarantee we only
add an animation once per collection due to changes in how setEffect() and setTimeline() operate.

Test: animations/leak-document-with-css-animation.html

* animation/AnimationTimeline.cpp:
(WebCore::AnimationTimeline::~AnimationTimeline): There is no need to clear those tables as they'll need to be empty
for the AnimationTimeline to even be destroyed.
(WebCore::AnimationTimeline::relevantMapForAnimation): Change to use ListHashRef instead of Vector.
(WebCore::AnimationTimeline::animationWasAddedToElement): Change to use ListHashRef instead of Vector.
(WebCore::AnimationTimeline::animationWasRemovedFromElement): When an animation is removed from an element, ensure that
references to this animation stored in the m_elementToCSSAnimationByName and m_elementToCSSTransitionByCSSPropertyID maps
are cleared.
(WebCore::AnimationTimeline::animationsForElement const): Change to use ListHashRef instead of Vector.
(WebCore::AnimationTimeline::removeAnimationsForElement): Instead of just calling cancel() on all known declarative animations
(this method used to be called cancelDeclarativeAnimationsForElement()), we now set the effect of known animations, declarative
or not, for the provided element which will in turn call animationWasRemovedFromElement() and remove the animation from all
maps that might keep a reference to it.
(WebCore::AnimationTimeline::updateCSSTransitionsForElement): Replace call to removeDeclarativeAnimation() with a simple call
to removeAnimation() which will remove references for this animation from the relevant maps.
(WebCore::AnimationTimeline::cancelOrRemoveDeclarativeAnimation): Ditto.
(WebCore::AnimationTimeline::cancelDeclarativeAnimationsForElement): Deleted.
(WebCore::AnimationTimeline::removeDeclarativeAnimation): Deleted.
* animation/AnimationTimeline.h:
(WebCore::AnimationTimeline::elementToAnimationsMap): Change to use ListHashRef instead of Vector.
(WebCore::AnimationTimeline::elementToCSSAnimationsMap): Change to use ListHashRef instead of Vector.
(WebCore::AnimationTimeline::elementToCSSTransitionsMap): Change to use ListHashRef instead of Vector.
* animation/WebAnimation.cpp:
(WebCore::WebAnimation::setEffect): In the case of a declarative animation, we don't want to remove the animation from the relevant
maps because while the effect was set via the API, the element still has a transition or animation set up and we must not break the
timeline-to-animation relationship.
(WebCore::WebAnimation::setEffectInternal): Factor parts of setEffect() out into a new method that can be called from
AnimationTimeline::removeAnimationsForElement() to reset the m_effect member and correctly call animationWasRemovedFromElement()
without all the Web Animations machinery of setEffect(), which is a public API that has unwanted side effects (such as rejecting
promises).
(WebCore::WebAnimation::setTimeline): In the case of a declarative animation, we don't want to remove the animation from the
relevant maps because, while the timeline was set via the API, the element still has a transition or animation set up and we must
not break the relationship.
* animation/DocumentTimeline.cpp:
(WebCore::DocumentTimeline::~DocumentTimeline):
(WebCore::DocumentTimeline::detachFromDocument): Close the GenericTaskQueues when detaching from the document as it's too late to
perform this work in the destructor. We also cancel the schedule timer which we had forgotten to do before.
* animation/WebAnimation.h:
* dom/Document.cpp:
(WebCore::Document::prepareForDestruction):
* dom/Element.cpp:
(WebCore::Element::removedFromAncestor):
* dom/PseudoElement.cpp:
(WebCore::PseudoElement::clearHostElement):
* rendering/updating/RenderTreeUpdater.cpp:
(WebCore::RenderTreeUpdater::tearDownRenderers):

LayoutTests:

Add a new test that would fail before this fix since the Document would leak. We also remove a homegrown test that was not correct
and is no longer relevant thanks to the tests under imported/mozilla.

* animations/leak-document-with-css-animation-expected.txt: Added.
* animations/leak-document-with-css-animation.html: Added.
* animations/resources/animation-leak-iframe.html: Added.
* platform/win/TestExpectations:
* webanimations/css-transitions-expected.txt: Removed.
* webanimations/css-transitions.html: Removed.

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

15 months agoProcessLauncherMac.mm contains a couple of meaningless #ifndef directives
mitz@apple.com [Fri, 25 May 2018 05:09:33 +0000 (05:09 +0000)]
ProcessLauncherMac.mm contains a couple of meaningless #ifndef directives
https://bugs.webkit.org/show_bug.cgi?id=185973

Reviewed by Tim Horton.

* UIProcess/Launcher/mac/ProcessLauncherMac.mm:
(WebKit::ProcessLauncher::launchProcess): Use #if !ASSERT_DISABLED to guard statements that
  are only needed for an assertion, instead of #ifndef _NDEBUG, which is always true.

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

15 months agoImport Web Platform Tests for WOFF2
fred.wang@free.fr [Fri, 25 May 2018 04:59:07 +0000 (04:59 +0000)]
Import Web Platform Tests for WOFF2
https://bugs.webkit.org/show_bug.cgi?id=179108

Patch by Frederic Wang <fwang@igalia.com> on 2018-05-24
Reviewed by Youenn Fablet.

LayoutTests/imported/w3c:

* resources/import-expectations.json:
* resources/resource-files.json:
* web-platform-tests/css/WOFF2/OWNERS: Added.
* web-platform-tests/css/WOFF2/available-001.xht: Added.
* web-platform-tests/css/WOFF2/blocks-extraneous-data-001-expected.xht: Added.
* web-platform-tests/css/WOFF2/blocks-extraneous-data-001.xht: Added.
* web-platform-tests/css/WOFF2/blocks-extraneous-data-002-expected.xht: Added.
* web-platform-tests/css/WOFF2/blocks-extraneous-data-002.xht: Added.
* web-platform-tests/css/WOFF2/blocks-extraneous-data-003-expected.xht: Added.
* web-platform-tests/css/WOFF2/blocks-extraneous-data-003.xht: Added.
* web-platform-tests/css/WOFF2/blocks-extraneous-data-004-expected.xht: Added.
* web-platform-tests/css/WOFF2/blocks-extraneous-data-004.xht: Added.
* web-platform-tests/css/WOFF2/blocks-extraneous-data-005-expected.xht: Added.
* web-platform-tests/css/WOFF2/blocks-extraneous-data-005.xht: Added.
* web-platform-tests/css/WOFF2/blocks-extraneous-data-006-expected.xht: Added.
* web-platform-tests/css/WOFF2/blocks-extraneous-data-006.xht: Added.
* web-platform-tests/css/WOFF2/blocks-extraneous-data-007-expected.xht: Added.
* web-platform-tests/css/WOFF2/blocks-extraneous-data-007.xht: Added.
* web-platform-tests/css/WOFF2/blocks-extraneous-data-008-expected.xht: Added.
* web-platform-tests/css/WOFF2/blocks-extraneous-data-008.xht: Added.
* web-platform-tests/css/WOFF2/blocks-overlap-001-expected.xht: Added.
* web-platform-tests/css/WOFF2/blocks-overlap-001.xht: Added.
* web-platform-tests/css/WOFF2/blocks-overlap-002-expected.xht: Added.
* web-platform-tests/css/WOFF2/blocks-overlap-002.xht: Added.
* web-platform-tests/css/WOFF2/blocks-overlap-003-expected.xht: Added.
* web-platform-tests/css/WOFF2/blocks-overlap-003.xht: Added.
* web-platform-tests/css/WOFF2/datatypes-alt-255uint16-001-expected.xht: Added.
* web-platform-tests/css/WOFF2/datatypes-alt-255uint16-001.xht: Added.
* web-platform-tests/css/WOFF2/datatypes-invalid-base128-001-expected.xht: Added.
* web-platform-tests/css/WOFF2/datatypes-invalid-base128-001.xht: Added.
* web-platform-tests/css/WOFF2/datatypes-invalid-base128-002-expected.xht: Added.
* web-platform-tests/css/WOFF2/datatypes-invalid-base128-002.xht: Added.
* web-platform-tests/css/WOFF2/datatypes-invalid-base128-003-expected.xht: Added.
* web-platform-tests/css/WOFF2/datatypes-invalid-base128-003.xht: Added.
* web-platform-tests/css/WOFF2/directory-mismatched-tables-001-expected.xht: Added.
* web-platform-tests/css/WOFF2/directory-mismatched-tables-001.xht: Added.
* web-platform-tests/css/WOFF2/header-length-001-expected.xht: Added.
* web-platform-tests/css/WOFF2/header-length-001.xht: Added.
* web-platform-tests/css/WOFF2/header-length-002-expected.xht: Added.
* web-platform-tests/css/WOFF2/header-length-002.xht: Added.
* web-platform-tests/css/WOFF2/header-numTables-001-expected.xht: Added.
* web-platform-tests/css/WOFF2/header-numTables-001.xht: Added.
* web-platform-tests/css/WOFF2/header-reserved-001-expected.xht: Added.
* web-platform-tests/css/WOFF2/header-reserved-001.xht: Added.
* web-platform-tests/css/WOFF2/header-signature-001-expected.xht: Added.
* web-platform-tests/css/WOFF2/header-signature-001.xht: Added.
* web-platform-tests/css/WOFF2/header-totalsfntsize-001-expected.xht: Added.
* web-platform-tests/css/WOFF2/header-totalsfntsize-001.xht: Added.
* web-platform-tests/css/WOFF2/header-totalsfntsize-002-expected.xht: Added.
* web-platform-tests/css/WOFF2/header-totalsfntsize-002.xht: Added.
* web-platform-tests/css/WOFF2/metadata-noeffect-001-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadata-noeffect-001.xht: Added.
* web-platform-tests/css/WOFF2/metadata-noeffect-002-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadata-noeffect-002.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-authoritative-001-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-authoritative-001.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-compression-001-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-compression-001.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-encoding-001-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-encoding-001.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-encoding-002-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-encoding-002.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-encoding-003-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-encoding-003.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-encoding-004-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-encoding-004.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-encoding-005-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-encoding-005.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-encoding-006-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-encoding-006.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-metaOrigLength-001-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-metaOrigLength-001.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-metaOrigLength-002-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-metaOrigLength-002.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-001-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-001.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-002-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-002.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-003-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-003.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-004-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-004.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-005-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-005.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-006-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-006.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-007-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-007.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-008-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-008.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-009-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-009.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-010-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-010.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-011-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-011.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-012-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-012.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-013-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-013.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-014-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-014.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-015-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-015.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-016-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-016.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-017-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-017.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-018-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-018.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-019-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-019.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-020-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-020.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-021-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-021.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-022-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-022.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-023-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-023.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-024-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-024.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-025-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-025.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-026-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-026.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-027-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-027.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-028-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-028.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-029-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-029.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-030-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-copyright-030.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-credit-001-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-credit-001.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-credit-002-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-credit-002.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-credit-003-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-credit-003.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-credit-004-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-credit-004.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-credit-005-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-credit-005.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-credit-006-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-credit-006.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-credit-007-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-credit-007.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-credit-008-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-credit-008.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-credit-009-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-credit-009.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-credit-010-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-credit-010.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-credit-011-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-credit-011.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-credits-001-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-credits-001.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-credits-002-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-credits-002.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-credits-003-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-credits-003.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-credits-004-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-credits-004.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-credits-005-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-credits-005.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-credits-006-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-credits-006.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-credits-007-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-credits-007.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-001-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-001.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-002-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-002.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-003-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-003.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-004-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-004.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-005-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-005.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-006-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-006.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-007-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-007.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-008-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-008.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-009-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-009.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-010-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-010.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-011-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-011.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-012-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-012.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-013-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-013.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-014-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-014.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-015-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-015.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-016-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-016.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-017-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-017.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-018-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-018.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-019-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-019.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-020-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-020.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-021-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-021.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-022-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-022.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-023-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-023.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-024-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-024.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-025-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-025.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-026-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-026.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-027-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-027.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-028-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-028.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-029-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-029.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-030-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-030.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-031-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-031.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-032-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-description-032.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-001-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-001.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-002-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-002.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-003-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-003.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-004-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-004.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-005-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-005.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-006-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-006.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-007-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-007.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-008-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-008.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-009-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-009.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-010-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-010.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-011-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-011.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-012-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-012.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-013-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-013.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-014-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-014.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-015-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-015.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-016-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-016.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-017-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-017.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-018-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-018.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-019-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-019.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-020-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-020.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-021-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-021.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-022-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-022.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-023-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-023.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-024-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-024.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-025-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-025.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-026-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-026.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-027-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-027.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-028-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-028.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-029-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-029.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-030-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-030.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-031-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-031.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-032-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-032.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-033-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-033.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-034-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-034.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-035-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-035.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-036-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-036.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-037-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-037.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-038-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-038.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-039-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-039.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-040-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-040.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-041-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-041.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-042-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-042.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-043-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-043.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-044-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-044.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-045-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-045.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-046-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-046.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-047-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-047.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-048-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-048.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-049-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-049.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-050-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-extension-050.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-001-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-001.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-002-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-002.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-003-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-003.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-004-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-004.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-005-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-005.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-006-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-006.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-007-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-007.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-008-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-008.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-009-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-009.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-010-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-010.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-011-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-011.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-012-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-012.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-013-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-013.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-014-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-014.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-015-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-015.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-016-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-016.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-017-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-017.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-018-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-018.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-019-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-019.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-020-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-020.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-021-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-021.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-022-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-022.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-023-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-023.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-024-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-024.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-025-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-025.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-026-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-026.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-027-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-027.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-028-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-028.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-029-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-029.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-030-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-030.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-031-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-031.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-032-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-032.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-033-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-license-033.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-licensee-001-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-licensee-001.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-licensee-002-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-licensee-002.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-licensee-003-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-licensee-003.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-licensee-004-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-licensee-004.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-licensee-005-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-licensee-005.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-licensee-006-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-licensee-006.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-licensee-007-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-licensee-007.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-licensee-008-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-licensee-008.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-licensee-009-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-licensee-009.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-licensee-010-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-licensee-010.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-metadata-001-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-metadata-001.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-metadata-002-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-metadata-002.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-metadata-003-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-metadata-003.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-metadata-004-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-metadata-004.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-metadata-005-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-metadata-005.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-metadata-006-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-metadata-006.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-001-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-001.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-002-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-002.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-003-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-003.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-004-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-004.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-005-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-005.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-006-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-006.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-007-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-007.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-008-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-008.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-009-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-009.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-010-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-010.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-011-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-011.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-012-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-012.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-013-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-013.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-014-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-014.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-015-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-015.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-016-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-016.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-017-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-017.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-018-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-018.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-019-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-019.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-020-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-020.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-021-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-021.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-022-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-022.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-023-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-023.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-024-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-024.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-025-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-025.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-026-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-026.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-027-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-027.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-028-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-028.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-029-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-029.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-030-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-trademark-030.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-uniqueid-001-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-uniqueid-001.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-uniqueid-002-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-uniqueid-002.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-uniqueid-003-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-uniqueid-003.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-uniqueid-004-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-uniqueid-004.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-uniqueid-005-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-uniqueid-005.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-uniqueid-006-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-uniqueid-006.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-uniqueid-007-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-uniqueid-007.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-vendor-001-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-vendor-001.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-vendor-002-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-vendor-002.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-vendor-003-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-vendor-003.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-vendor-004-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-vendor-004.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-vendor-005-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-vendor-005.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-vendor-006-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-vendor-006.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-vendor-007-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-vendor-007.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-vendor-008-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-vendor-008.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-vendor-009-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-vendor-009.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-vendor-010-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-vendor-010.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-vendor-011-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-vendor-011.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-vendor-012-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-schema-vendor-012.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-well-formed-001-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-well-formed-001.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-well-formed-002-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-well-formed-002.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-well-formed-003-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-well-formed-003.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-well-formed-004-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-well-formed-004.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-well-formed-005-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-well-formed-005.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-well-formed-006-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-well-formed-006.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-well-formed-007-expected.xht: Added.
* web-platform-tests/css/WOFF2/metadatadisplay-well-formed-007.xht: Added.
* web-platform-tests/css/WOFF2/privatedata-noeffect-001-expected.xht: Added.
* web-platform-tests/css/WOFF2/privatedata-noeffect-001.xht: Added.
* web-platform-tests/css/WOFF2/privatedata-noeffect-002-expected.xht: Added.
* web-platform-tests/css/WOFF2/privatedata-noeffect-002.xht: Added.
* web-platform-tests/css/WOFF2/support/SFNT-CFF-Fallback.otf: Added.
* web-platform-tests/css/WOFF2/support/SFNT-CFF-Reference.otf: Added.
* web-platform-tests/css/WOFF2/support/SFNT-TTF-Fallback.ttf: Added.
* web-platform-tests/css/WOFF2/support/SFNT-TTF-Reference.ttf: Added.
* web-platform-tests/css/WOFF2/support/available-001a.xht: Added.
* web-platform-tests/css/WOFF2/support/available-001b.xht: Added.
* web-platform-tests/css/WOFF2/support/blocks-extraneous-data-001.woff2: Added.
* web-platform-tests/css/WOFF2/support/blocks-extraneous-data-002.woff2: Added.
* web-platform-tests/css/WOFF2/support/blocks-extraneous-data-003.woff2: Added.
* web-platform-tests/css/WOFF2/support/blocks-extraneous-data-004.woff2: Added.
* web-platform-tests/css/WOFF2/support/blocks-extraneous-data-005.woff2: Added.
* web-platform-tests/css/WOFF2/support/blocks-extraneous-data-006.woff2: Added.
* web-platform-tests/css/WOFF2/support/blocks-extraneous-data-007.woff2: Added.
* web-platform-tests/css/WOFF2/support/blocks-extraneous-data-008.woff2: Added.
* web-platform-tests/css/WOFF2/support/blocks-overlap-001.woff2: Added.
* web-platform-tests/css/WOFF2/support/blocks-overlap-002.woff2: Added.
* web-platform-tests/css/WOFF2/support/blocks-overlap-003.woff2: Added.
* web-platform-tests/css/WOFF2/support/datatypes-alt-255uint16-001.woff2: Added.
* web-platform-tests/css/WOFF2/support/datatypes-invalid-base128-001.woff2: Added.
* web-platform-tests/css/WOFF2/support/datatypes-invalid-base128-002.woff2: Added.
* web-platform-tests/css/WOFF2/support/datatypes-invalid-base128-003.woff2: Added.
* web-platform-tests/css/WOFF2/support/directory-mismatched-tables-001.woff2: Added.
* web-platform-tests/css/WOFF2/support/header-length-001.woff2: Added.
* web-platform-tests/css/WOFF2/support/header-length-002.woff2: Added.
* web-platform-tests/css/WOFF2/support/header-numTables-001.woff2: Added.
* web-platform-tests/css/WOFF2/support/header-reserved-001.woff2: Added.
* web-platform-tests/css/WOFF2/support/header-signature-001.woff2: Added.
* web-platform-tests/css/WOFF2/support/header-totalsfntsize-001.woff2: Added.
* web-platform-tests/css/WOFF2/support/header-totalsfntsize-002.woff2: Added.
* web-platform-tests/css/WOFF2/support/index.css: Added.
(body):
(p):
(a):
(a:hover):
(h1):
(.mainNote):
(h2.testCategory):
(.testCategoryNote):
(.testCase):
(.testCaseOverview):
(.testCaseOverview h3):
(.testCaseDetails):
(.testCaseDetails p):
(.testCasePages):
(.testCasePages a):
(.testCaseExpectations):
* web-platform-tests/css/WOFF2/support/metadata-noeffect-001.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadata-noeffect-002.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-authoritative-001.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-compression-001.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-encoding-001.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-encoding-002.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-encoding-003.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-encoding-004.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-encoding-005.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-encoding-006.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-metaOrigLength-001.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-metaOrigLength-002.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-copyright-001.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-copyright-002.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-copyright-003.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-copyright-004.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-copyright-005.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-copyright-006.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-copyright-007.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-copyright-008.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-copyright-009.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-copyright-010.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-copyright-011.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-copyright-012.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-copyright-013.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-copyright-014.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-copyright-015.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-copyright-016.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-copyright-017.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-copyright-018.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-copyright-019.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-copyright-020.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-copyright-021.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-copyright-022.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-copyright-023.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-copyright-024.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-copyright-025.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-copyright-026.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-copyright-027.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-copyright-028.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-copyright-029.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-copyright-030.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-credit-001.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-credit-002.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-credit-003.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-credit-004.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-credit-005.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-credit-006.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-credit-007.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-credit-008.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-credit-009.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-credit-010.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-credit-011.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-credits-001.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-credits-002.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-credits-003.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-credits-004.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-credits-005.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-credits-006.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-credits-007.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-description-001.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-description-002.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-description-003.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-description-004.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-description-005.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-description-006.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-description-007.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-description-008.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-description-009.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-description-010.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-description-011.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-description-012.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-description-013.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-description-014.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-description-015.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-description-016.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-description-017.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-description-018.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-description-019.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-description-020.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-description-021.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-description-022.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-description-023.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-description-024.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-description-025.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-description-026.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-description-027.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-description-028.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-description-029.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-description-030.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-description-031.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-description-032.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-001.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-002.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-003.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-004.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-005.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-006.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-007.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-008.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-009.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-010.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-011.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-012.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-013.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-014.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-015.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-016.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-017.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-018.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-019.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-020.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-021.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-022.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-023.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-024.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-025.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-026.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-027.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-028.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-029.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-030.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-031.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-032.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-033.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-034.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-035.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-036.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-037.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-038.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-039.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-040.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-041.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-042.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-043.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-044.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-045.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-046.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-047.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-048.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-049.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-extension-050.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-license-001.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-license-002.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-license-003.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-license-004.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-license-005.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-license-006.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-license-007.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-license-008.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-license-009.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-license-010.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-license-011.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-license-012.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-license-013.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-license-014.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-license-015.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-license-016.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-license-017.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-license-018.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-license-019.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-license-020.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-license-021.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-license-022.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-license-023.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-license-024.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-license-025.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-license-026.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-license-027.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-license-028.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-license-029.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-license-030.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-license-031.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-license-032.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-license-033.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-licensee-001.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-licensee-002.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-licensee-003.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-licensee-004.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-licensee-005.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-licensee-006.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-licensee-007.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-licensee-008.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-licensee-009.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-licensee-010.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-metadata-001.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-metadata-002.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-metadata-003.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-metadata-004.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-metadata-005.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-metadata-006.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-trademark-001.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-trademark-002.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-trademark-003.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-trademark-004.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-trademark-005.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-trademark-006.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-trademark-007.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-trademark-008.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-trademark-009.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-trademark-010.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-trademark-011.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-trademark-012.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-trademark-013.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-trademark-014.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-trademark-015.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-trademark-016.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-trademark-017.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-trademark-018.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-trademark-019.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-trademark-020.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-trademark-021.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-trademark-022.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-trademark-023.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-trademark-024.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-trademark-025.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-trademark-026.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-trademark-027.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-trademark-028.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-trademark-029.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-trademark-030.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-uniqueid-001.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-uniqueid-002.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-uniqueid-003.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-uniqueid-004.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-uniqueid-005.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-uniqueid-006.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-uniqueid-007.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-vendor-001.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-vendor-002.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-vendor-003.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-vendor-004.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-vendor-005.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-vendor-006.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-vendor-007.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-vendor-008.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-vendor-009.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-vendor-010.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-vendor-011.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-schema-vendor-012.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-well-formed-001.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-well-formed-002.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-well-formed-003.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-well-formed-004.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-well-formed-005.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-well-formed-006.woff2: Added.
* web-platform-tests/css/WOFF2/support/metadatadisplay-well-formed-007.woff2: Added.
* web-platform-tests/css/WOFF2/support/privatedata-noeffect-001.woff2: Added.
* web-platform-tests/css/WOFF2/support/privatedata-noeffect-002.woff2: Added.
* web-platform-tests/css/WOFF2/support/tabledata-bad-origlength-loca-001.woff2: Added.
* web-platform-tests/css/WOFF2/support/tabledata-bad-origlength-loca-002.woff2: Added.
* web-platform-tests/css/WOFF2/support/tabledata-brotli-001.woff2: Added.
* web-platform-tests/css/WOFF2/support/tabledata-decompressed-length-001.woff2: Added.
* web-platform-tests/css/WOFF2/support/tabledata-decompressed-length-002.woff2: Added.
* web-platform-tests/css/WOFF2/support/tabledata-decompressed-length-003.woff2: Added.
* web-platform-tests/css/WOFF2/support/tabledata-decompressed-length-004.woff2: Added.
* web-platform-tests/css/WOFF2/support/tabledata-extraneous-data-001.woff2: Added.
* web-platform-tests/css/WOFF2/support/tabledata-glyf-bbox-001.woff2: Added.
* web-platform-tests/css/WOFF2/support/tabledata-glyf-bbox-002.woff2: Added.
* web-platform-tests/css/WOFF2/support/tabledata-glyf-bbox-003.woff2: Added.
* web-platform-tests/css/WOFF2/support/tabledata-glyf-origlength-001.woff2: Added.
* web-platform-tests/css/WOFF2/support/tabledata-glyf-origlength-002.woff2: Added.
* web-platform-tests/css/WOFF2/support/tabledata-non-zero-loca-001.woff2: Added.
* web-platform-tests/css/WOFF2/support/tabledata-recontruct-loca-001.woff2: Added.
* web-platform-tests/css/WOFF2/support/tabledata-transform-bad-flag-001.woff2: Added.
* web-platform-tests/css/WOFF2/support/tabledata-transform-bad-flag-002.woff2: Added.
* web-platform-tests/css/WOFF2/support/tabledata-transform-hmtx-001.woff2: Added.
* web-platform-tests/css/WOFF2/support/tabledata-transform-hmtx-002.woff2: Added.
* web-platform-tests/css/WOFF2/support/tabledata-transform-hmtx-003.woff2: Added.
* web-platform-tests/css/WOFF2/support/tabledata-transform-hmtx-004.woff2: Added.
* web-platform-tests/css/WOFF2/support/test-fonts.css: Added.
(@font-face):
* web-platform-tests/css/WOFF2/support/valid-001.woff2: Added.
* web-platform-tests/css/WOFF2/support/valid-002.woff2: Added.
* web-platform-tests/css/WOFF2/support/valid-003.woff2: Added.
* web-platform-tests/css/WOFF2/support/valid-004.woff2: Added.
* web-platform-tests/css/WOFF2/support/valid-005.woff2: Added.
* web-platform-tests/css/WOFF2/support/valid-006.woff2: Added.
* web-platform-tests/css/WOFF2/support/valid-007.woff2: Added.
* web-platform-tests/css/WOFF2/support/valid-008.woff2: Added.
* web-platform-tests/css/WOFF2/support/w3c-import.log: Added.
* web-platform-tests/css/WOFF2/tabledata-bad-origlength-loca-001-expected.xht: Added.
* web-platform-tests/css/WOFF2/tabledata-bad-origlength-loca-001.xht: Added.
* web-platform-tests/css/WOFF2/tabledata-bad-origlength-loca-002-expected.xht: Added.
* web-platform-tests/css/WOFF2/tabledata-bad-origlength-loca-002.xht: Added.
* web-platform-tests/css/WOFF2/tabledata-brotli-001-expected.xht: Added.
* web-platform-tests/css/WOFF2/tabledata-brotli-001.xht: Added.
* web-platform-tests/css/WOFF2/tabledata-decompressed-length-001-expected.xht: Added.
* web-platform-tests/css/WOFF2/tabledata-decompressed-length-001.xht: Added.
* web-platform-tests/css/WOFF2/tabledata-decompressed-length-002-expected.xht: Added.
* web-platform-tests/css/WOFF2/tabledata-decompressed-length-002.xht: Added.
* web-platform-tests/css/WOFF2/tabledata-decompressed-length-003-expected.xht: Added.
* web-platform-tests/css/WOFF2/tabledata-decompressed-length-003.xht: Added.
* web-platform-tests/css/WOFF2/tabledata-decompressed-length-004-expected.xht: Added.
* web-platform-tests/css/WOFF2/tabledata-decompressed-length-004.xht: Added.
* web-platform-tests/css/WOFF2/tabledata-extraneous-data-001-expected.xht: Added.
* web-platform-tests/css/WOFF2/tabledata-extraneous-data-001.xht: Added.
* web-platform-tests/css/WOFF2/tabledata-glyf-bbox-001-expected.xht: Added.
* web-platform-tests/css/WOFF2/tabledata-glyf-bbox-001.xht: Added.
* web-platform-tests/css/WOFF2/tabledata-glyf-bbox-002-expected.xht: Added.
* web-platform-tests/css/WOFF2/tabledata-glyf-bbox-002.xht: Added.
* web-platform-tests/css/WOFF2/tabledata-glyf-bbox-003-expected.xht: Added.
* web-platform-tests/css/WOFF2/tabledata-glyf-bbox-003.xht: Added.
* web-platform-tests/css/WOFF2/tabledata-glyf-origlength-001-expected.xht: Added.
* web-platform-tests/css/WOFF2/tabledata-glyf-origlength-001.xht: Added.
* web-platform-tests/css/WOFF2/tabledata-glyf-origlength-002-expected.xht: Added.
* web-platform-tests/css/WOFF2/tabledata-glyf-origlength-002.xht: Added.
* web-platform-tests/css/WOFF2/tabledata-non-zero-loca-001-expected.xht: Added.
* web-platform-tests/css/WOFF2/tabledata-non-zero-loca-001.xht: Added.
* web-platform-tests/css/WOFF2/tabledata-recontruct-loca-001-expected.xht: Added.
* web-platform-tests/css/WOFF2/tabledata-recontruct-loca-001.xht: Added.
* web-platform-tests/css/WOFF2/tabledata-transform-bad-flag-001-expected.xht: Added.
* web-platform-tests/css/WOFF2/tabledata-transform-bad-flag-001.xht: Added.
* web-platform-tests/css/WOFF2/tabledata-transform-bad-flag-002-expected.xht: Added.
* web-platform-tests/css/WOFF2/tabledata-transform-bad-flag-002.xht: Added.
* web-platform-tests/css/WOFF2/tabledata-transform-hmtx-001-expected.xht: Added.
* web-platform-tests/css/WOFF2/tabledata-transform-hmtx-001.xht: Added.
* web-platform-tests/css/WOFF2/tabledata-transform-hmtx-002-expected.xht: Added.
* web-platform-tests/css/WOFF2/tabledata-transform-hmtx-002.xht: Added.
* web-platform-tests/css/WOFF2/tabledata-transform-hmtx-003-expected.xht: Added.
* web-platform-tests/css/WOFF2/tabledata-transform-hmtx-003.xht: Added.
* web-platform-tests/css/WOFF2/tabledata-transform-hmtx-004-expected.xht: Added.
* web-platform-tests/css/WOFF2/tabledata-transform-hmtx-004.xht: Added.
* web-platform-tests/css/WOFF2/testcaseindex.xht: Added.
* web-platform-tests/css/WOFF2/valid-001-expected.xht: Added.
* web-platform-tests/css/WOFF2/valid-001.xht: Added.
* web-platform-tests/css/WOFF2/valid-002-expected.xht: Added.
* web-platform-tests/css/WOFF2/valid-002.xht: Added.
* web-platform-tests/css/WOFF2/valid-003-expected.xht: Added.
* web-platform-tests/css/WOFF2/valid-003.xht: Added.
* web-platform-tests/css/WOFF2/valid-004-expected.xht: Added.
* web-platform-tests/css/WOFF2/valid-004.xht: Added.
* web-platform-tests/css/WOFF2/valid-005-expected.xht: Added.
* web-platform-tests/css/WOFF2/valid-005.xht: Added.
* web-platform-tests/css/WOFF2/valid-006-expected.xht: Added.
* web-platform-tests/css/WOFF2/valid-006.xht: Added.
* web-platform-tests/css/WOFF2/valid-007-expected.xht: Added.
* web-platform-tests/css/WOFF2/valid-007.xht: Added.
* web-platform-tests/css/WOFF2/valid-008-expected.xht: Added.
* web-platform-tests/css/WOFF2/valid-008.xht: Added.
* web-platform-tests/css/WOFF2/w3c-import.log: Added.

LayoutTests:

Layout/fast/text contains only two tests for WOFF2. This commit imports the WPT tests in
order to improve test coverage. However, for now we only run them on the GTK port because
they don't pass on other platforms (bug 185939) and because WPT tests are slow (bug 178277).
Maintainers for other platforms can decide whether they want to unskip them later.

* TestExpectations: By default skip the WOFF2 test on all platforms.
* platform/gtk/TestExpectations: Run tests on the GTK port and mark failures for 4 of them.

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

15 months ago[Baseline] Remove a hack for DCE removal of NewFunction
utatane.tea@gmail.com [Fri, 25 May 2018 04:29:13 +0000 (04:29 +0000)]
[Baseline] Remove a hack for DCE removal of NewFunction
https://bugs.webkit.org/show_bug.cgi?id=185945

Reviewed by Saam Barati.

This `undefined` check in baseline is originally introduced in r177871. The problem was,
when NewFunction is removed in DFG DCE, its referencing scope DFG node  is also removed.
While op_new_func_xxx want to have scope for function creation, DFG OSR exit cannot
retrieve this into the stack since the scope is not referenced from anywhere.

In r177871, we fixed this by accepting `undefined` scope in the baseline op_new_func_xxx
implementation. But rather than that, just emitting `Phantom` for this scope is clean
and consistent to the other DFG nodes like GetClosureVar.

This patch emits Phantom instead, and removes unnecessary `undefined` check in baseline.
While we emit Phantom, it is not testable since NewFunction is guarded by MovHint which
is not removed in DFG. And in FTL, NewFunction will be converted to PhantomNewFunction
if it is not referenced. And scope node is kept by PutHint. But emitting Phantom is nice
since it conservatively guards the scope, and it does not introduce any additional overhead
compared to the current status.

* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::parseBlock):
* jit/JITOpcodes.cpp:
(JSC::JIT::emitNewFuncExprCommon):

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

15 months agoREGRESSION: performance-api/performance-observer-entry-sort.html is flaky
rniwa@webkit.org [Fri, 25 May 2018 03:21:28 +0000 (03:21 +0000)]
REGRESSION: performance-api/performance-observer-entry-sort.html is flaky
​https://bugs.webkit.org/show_bug.cgi?id=185385

Rubber-stamped by Joseph Pecoraro.

Add back some assertions in r232033 reverted in r232166.

* performance-api/performance-observer-entry-sort.html:

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

15 months agoAvoid doing unnecessary work in Document::shouldEnforceContentDispositionAttachmentSa...
cdumez@apple.com [Fri, 25 May 2018 01:58:33 +0000 (01:58 +0000)]
Avoid doing unnecessary work in Document::shouldEnforceContentDispositionAttachmentSandbox() when setting is disabled
https://bugs.webkit.org/show_bug.cgi?id=185964

Reviewed by Geoffrey Garen.

* dom/Document.cpp:
(WebCore::Document::shouldEnforceContentDispositionAttachmentSandbox const):

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

15 months ago[iOS] Avoid dlopening QuickLooks in the common case where the main resource is HTML...
cdumez@apple.com [Fri, 25 May 2018 01:58:14 +0000 (01:58 +0000)]
[iOS] Avoid dlopening QuickLooks in the common case where the main resource is HTML or plain text
https://bugs.webkit.org/show_bug.cgi?id=185966

Reviewed by Geoffrey Garen.

Avoid dlopening QuickLooks in the common case where the main resource is HTML or plain text
for performance reasons.

* loader/ios/PreviewLoader.mm:
(WebCore::PreviewLoader::shouldCreateForMIMEType):

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

15 months agoModernize RenderStyleConstants.h - Part 2
commit-queue@webkit.org [Fri, 25 May 2018 01:42:36 +0000 (01:42 +0000)]
Modernize RenderStyleConstants.h - Part 2
https://bugs.webkit.org/show_bug.cgi?id=185901

Patch by Sam Weinig <sam@webkit.org> on 2018-05-24
Reviewed by Simon Fraser.

Source/WebCore:

Modernized the second set of enums in RenderStyleConstants.h by:
    - Converting them to enum classes
    - Renaming them to remove unnecessary prefix 'E's
    - Renaming values to take advantage of enum class scoping (e.g. StyleDifferenceEqual -> StyleDifference::Equal)
    - Renaming to match modern conventions (e.g BNONE -> None)
    - Reformatting them so that each value is on its own line.

Modernizes the following enums:
    PseudoId
    ListStyleType (renamed from EListStyleType)
    BorderFit (renamed from EBorderFit)
    AnimationFillMode (renamed from EAnimationFillMode)
    AnimationPlayState (renamed from EAnimPlayState)
    WhiteSpace (renamed from EWhiteSpace)
    TextAlignMode (renamed from ETextAlign)
    TextTransform (renamed from ETextTransform)
    TextDecorationStyle
    TextAlignLast
    TextJustify
    TextZoom
    BreakBetween
    BreakInside
    EmptyCell (renamed from EEmptyCell)
    CaptionSide (renamed from ECaptionSide)
    ListStylePosition (renamed from EListStylePosition)
    Visibility (renamed from EVisibility)
    CursorType (renamed from ECursor)
    CursorVisibility
    DisplayType (renamed from EDisplay)
    InsideLink (renamed from EInsideLink)
    PointerEvents (renamed from EPointerEvents)
    Hyphens
    TextEmphasisFill
    TextEmphasisMark
    ImageResolutionSource
    ImageResolutionSnap
    Order
    ColumnAxis
    ColumnProgression
    LineSnap
    LineAlign
    RubyPosition
    AutoRepeatType
    CSSBoxType

* accessibility/AXObjectCache.cpp:
(WebCore::AXObjectCache::isNodeVisible const):
* accessibility/AccessibilityList.cpp:
(WebCore::AccessibilityList::determineAccessibilityRole):
* accessibility/AccessibilityMediaControls.cpp:
(WebCore::AccessibilityMediaControl::computeAccessibilityIsIgnored const):
(WebCore::AccessibilityMediaTimeDisplay::computeAccessibilityIsIgnored const):
* accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::isDOMHidden const):
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::defaultObjectInclusion const):
(WebCore::AccessibilityRenderObject::isUnvisited const):
(WebCore::AccessibilityRenderObject::isVisited const):
(WebCore::AccessibilityRenderObject::setValue):
* accessibility/AccessibilityTable.cpp:
(WebCore::AccessibilityTable::isDataTable const):
* accessibility/atk/WebKitAccessibleInterfaceText.cpp:
(getAttributeSetForAccessibilityObject):
* animation/AnimationTimeline.cpp:
(WebCore::AnimationTimeline::updateCSSAnimationsForElement):
(WebCore::AnimationTimeline::updateCSSTransitionsForElement):
* animation/CSSAnimation.cpp:
(WebCore::CSSAnimation::syncPropertiesWithBackingAnimation):
* animation/DeclarativeAnimation.cpp:
(WebCore::DeclarativeAnimation::initialize):
* animation/KeyframeEffectReadOnly.cpp:
(WebCore::KeyframeEffectReadOnly::backingAnimationForCompositedRenderer const):
* css/CSSComputedStyleDeclaration.cpp:
(WebCore::renderTextDecorationStyleFlagsToCSSValue):
(WebCore::convertToPageBreak):
(WebCore::convertToColumnBreak):
(WebCore::ComputedStyleExtractor::styledElement const):
(WebCore::ComputedStyleExtractor::styledRenderer const):
(WebCore::computeRenderStyleForProperty):
(WebCore::shapePropertyValue):
(WebCore::ComputedStyleExtractor::valueForPropertyinStyle):
* css/CSSComputedStyleDeclaration.h:
* css/CSSPrimitiveValueMappings.h:
(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
(WebCore::CSSPrimitiveValue::operator CaptionSide const):
(WebCore::CSSPrimitiveValue::operator CursorType const):
(WebCore::CSSPrimitiveValue::operator CursorVisibility const):
(WebCore::CSSPrimitiveValue::operator DisplayType const):
(WebCore::CSSPrimitiveValue::operator EmptyCell const):
(WebCore::CSSPrimitiveValue::operator ListStylePosition const):
(WebCore::CSSPrimitiveValue::operator ListStyleType const):
(WebCore::CSSPrimitiveValue::operator BreakBetween const):
(WebCore::CSSPrimitiveValue::operator BreakInside const):
(WebCore::CSSPrimitiveValue::operator TextAlignMode const):
(WebCore::CSSPrimitiveValue::operator TextAlignLast const):
(WebCore::CSSPrimitiveValue::operator TextJustify const):
(WebCore::CSSPrimitiveValue::operator TextDecorationStyle const):
(WebCore::CSSPrimitiveValue::operator TextTransform const):
(WebCore::CSSPrimitiveValue::operator Visibility const):
(WebCore::CSSPrimitiveValue::operator WhiteSpace const):
(WebCore::CSSPrimitiveValue::operator RubyPosition const):
(WebCore::CSSPrimitiveValue::operator TextEmphasisFill const):
(WebCore::CSSPrimitiveValue::operator TextEmphasisMark const):
(WebCore::CSSPrimitiveValue::operator PointerEvents const):
(WebCore::CSSPrimitiveValue::operator Hyphens const):
(WebCore::CSSPrimitiveValue::operator LineSnap const):
(WebCore::CSSPrimitiveValue::operator LineAlign const):
(WebCore::CSSPrimitiveValue::operator Order const):
(WebCore::CSSPrimitiveValue::operator BorderFit const):
(WebCore::CSSPrimitiveValue::operator ColumnAxis const):
(WebCore::CSSPrimitiveValue::operator ColumnProgression const):
(WebCore::CSSPrimitiveValue::operator CSSBoxType const):
(WebCore::CSSPrimitiveValue::operator TextZoom const):
(WebCore::CSSPrimitiveValue::operator ECaptionSide const): Deleted.
(WebCore::CSSPrimitiveValue::operator ECursor const): Deleted.
(WebCore::CSSPrimitiveValue::operator EDisplay const): Deleted.
(WebCore::CSSPrimitiveValue::operator EEmptyCell const): Deleted.
(WebCore::CSSPrimitiveValue::operator EListStylePosition const): Deleted.
(WebCore::CSSPrimitiveValue::operator EListStyleType const): Deleted.
(WebCore::CSSPrimitiveValue::operator ETextAlign const): Deleted.
(WebCore::CSSPrimitiveValue::operator ETextTransform const): Deleted.
(WebCore::CSSPrimitiveValue::operator EVisibility const): Deleted.
(WebCore::CSSPrimitiveValue::operator EWhiteSpace const): Deleted.
(WebCore::CSSPrimitiveValue::operator EPointerEvents const): Deleted.
(WebCore::CSSPrimitiveValue::operator EBorderFit const): Deleted.
* css/CSSSelector.cpp:
(WebCore::CSSSelector::pseudoId):
* css/CSSToStyleMap.cpp:
(WebCore::CSSToStyleMap::mapAnimationFillMode):
(WebCore::CSSToStyleMap::mapAnimationPlayState):
* css/CSSValueKeywords.in:
* css/ElementRuleCollector.cpp:
(WebCore::ElementRuleCollector::collectMatchingRules):
(WebCore::ElementRuleCollector::ruleMatches):
(WebCore::ElementRuleCollector::collectMatchingRulesForList):
* css/ElementRuleCollector.h:
* css/SelectorChecker.cpp:
(WebCore::SelectorChecker::match const):
(WebCore::SelectorChecker::matchHostPseudoClass const):
(WebCore::hasScrollbarPseudoElement):
(WebCore::SelectorChecker::matchRecursively const):
* css/SelectorChecker.h:
* css/StyleBuilderConverter.h:
(WebCore::StyleBuilderConverter::convertTextAlign):
(WebCore::StyleBuilderConverter::convertClipPath):
(WebCore::StyleBuilderConverter::convertShapeValue):
(WebCore::StyleBuilderConverter::createGridTrackList):
(WebCore::StyleBuilderConverter::csstoLengthConversionDataWithTextZoomFactor):
(WebCore::StyleBuilderConverter::convertPageBreakBetween):
(WebCore::StyleBuilderConverter::convertPageBreakInside):
(WebCore::StyleBuilderConverter::convertColumnBreakBetween):
(WebCore::StyleBuilderConverter::convertColumnBreakInside):
* css/StyleBuilderCustom.h:
(WebCore::StyleBuilderCustom::applyValueImageResolution):
(WebCore::computeBaseSpecifiedFontSize):
(WebCore::StyleBuilderCustom::applyValueWebkitTextZoom):
(WebCore::StyleBuilderCustom::isValidDisplayValue):
(WebCore::StyleBuilderCustom::applyInheritDisplay):
(WebCore::StyleBuilderCustom::applyValueDisplay):
(WebCore::StyleBuilderCustom::applyValueWebkitTextEmphasisStyle):
(WebCore::StyleBuilderCustom::applyValueCursor):
(WebCore::StyleBuilderCustom::applyValueContent):
(WebCore::StyleBuilderCustom::determineRubyTextSizeMultiplier):
(WebCore::StyleBuilderCustom::applyValueAlt):
* css/StyleResolver.cpp:
(WebCore::StyleResolver::styleForElement):
(WebCore::equivalentBlockDisplay):
(WebCore::doesNotInheritTextDecoration):
(WebCore::StyleResolver::adjustStyleForInterCharacterRuby):
(WebCore::adjustDisplayContentsStyle):
(WebCore::StyleResolver::adjustSVGElementStyle):
(WebCore::StyleResolver::adjustRenderStyle):
(WebCore::StyleResolver::styleRulesForElement):
(WebCore::isCacheableInMatchedPropertiesCache):
(WebCore::StyleResolver::applyMatchedProperties):
(WebCore::StyleResolver::CascadedProperties::Property::apply):
* css/StyleResolver.h:
(WebCore::StyleResolver::State::elementLinkState const):
* cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::constructFragmentsInternal):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateRequestedPseudoElementEqualsToSelectorPseudoElement):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateMarkPseudoStyleForPseudoElement):
* dom/Document.cpp:
(WebCore::Document::styleForElementIgnoringPendingStylesheets):
(WebCore::Document::isPageBoxVisible):
(WebCore::Document::setVisuallyOrdered):
* dom/Document.h:
* dom/Element.cpp:
(WebCore::Element::isFocusable const):
(WebCore::Element::hasDisplayContents const):
(WebCore::Element::storeDisplayContentsStyle):
(WebCore::Element::rendererIsNeeded):
(WebCore::beforeOrAfterPseudoElement):
(WebCore::Element::computedStyle):
* dom/Element.h:
* dom/Node.cpp:
(WebCore::computeEditabilityFromComputedStyle):
* dom/Node.h:
(WebCore::Node::isPseudoElement const):
(WebCore::Node::isBeforePseudoElement const):
(WebCore::Node::isAfterPseudoElement const):
(WebCore::Node::pseudoId const):
(WebCore::Node::customPseudoId const):
* dom/Position.cpp:
(WebCore::Position::upstream const):
(WebCore::Position::downstream const):
(WebCore::Position::isCandidate const):
(WebCore::Position::rendersInDifferentPosition const):
* dom/PositionIterator.cpp:
(WebCore::PositionIterator::isCandidate const):
* dom/PseudoElement.cpp:
(WebCore::PseudoElement::pseudoElementNameForEvents):
(WebCore::PseudoElement::PseudoElement):
* dom/VisitedLinkState.cpp:
(WebCore::VisitedLinkState::determineLinkStateSlowCase):
* dom/VisitedLinkState.h:
(WebCore::VisitedLinkState::determineLinkState):
* editing/Editing.cpp:
(WebCore::isSpecialHTMLElement):
(WebCore::isNodeRendered):
* editing/TextIterator.cpp:
(WebCore::hasVisibleTextNode):
(WebCore::TextIterator::handleTextNode):
(WebCore::TextIterator::handleTextBox):
(WebCore::TextIterator::handleTextNodeFirstLetter):
(WebCore::TextIterator::handleReplacedElement):
(WebCore::TextIterator::shouldRepresentNodeOffsetZero):
(WebCore::SimplifiedBackwardsTextIterator::advance):
* editing/VisibleUnits.cpp:
(WebCore::findStartOfParagraph):
(WebCore::findEndOfParagraph):
* editing/ios/EditorIOS.mm:
(WebCore::Editor::setTextAlignmentForChangedBaseWritingDirection):
* html/HTMLAreaElement.cpp:
(WebCore::HTMLAreaElement::isFocusable const):
* html/HTMLFormElement.cpp:
(WebCore::HTMLFormElement::rendererIsNeeded):
* html/HTMLIFrameElement.cpp:
(WebCore::HTMLIFrameElement::rendererIsNeeded):
* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::createInnerTextStyle):
* html/HTMLOptGroupElement.cpp:
(WebCore::HTMLOptGroupElement::isFocusable const):
* html/HTMLOptionElement.cpp:
(WebCore::HTMLOptionElement::isFocusable const):
* html/HTMLTextAreaElement.cpp:
(WebCore::HTMLTextAreaElement::createInnerTextStyle):
* html/HTMLTextFormControlElement.cpp:
(WebCore::HTMLTextFormControlElement::setSelectionRange):
(WebCore::HTMLTextFormControlElement::adjustInnerTextStyle const):
* html/MediaElementSession.cpp:
(WebCore::MediaElementSession::autoplayPermitted const):
(WebCore::isMainContentForPurposesOfAutoplay):
* html/RubyElement.cpp:
(WebCore::RubyElement::createElementRenderer):
* html/RubyTextElement.cpp:
(WebCore::RubyTextElement::createElementRenderer):
* html/shadow/TextControlInnerElements.cpp:
(WebCore::TextControlInnerElement::resolveCustomStyle):
(WebCore::TextControlPlaceholderElement::resolveCustomStyle):
* inspector/InspectorOverlay.cpp:
(WebCore::buildObjectForElementData):
* inspector/agents/InspectorCSSAgent.cpp:
(WebCore::InspectorCSSAgent::getMatchedStylesForNode):
(WebCore::InspectorCSSAgent::buildArrayForMatchedRuleList):
* inspector/agents/InspectorDOMAgent.cpp:
(WebCore::pseudoElementType):
(WebCore::InspectorDOMAgent::buildObjectForNode):
* inspector/agents/InspectorLayerTreeAgent.cpp:
(WebCore::InspectorLayerTreeAgent::buildObjectForLayer):
* layout/layouttree/LayoutBox.cpp:
(WebCore::Layout::Box::isInlineBlockBox const):
(WebCore::Layout::Box::isBlockLevelBox const):
(WebCore::Layout::Box::isInlineLevelBox const):
(WebCore::Layout::Box::isBlockContainerBox const):
* page/EventHandler.cpp:
(WebCore::EventHandler::selectCursor):
* page/Frame.cpp:
(WebCore::Frame::searchForLabelsAboveCell):
(WebCore::Frame::searchForLabelsBeforeElement):
* page/FrameView.cpp:
(WebCore::FrameView::createScrollbar):
(WebCore::FrameView::adjustScrollStepForFixedContent):
(WebCore::FrameView::updateScrollCorner):
* page/animation/AnimationBase.cpp:
(WebCore::AnimationBase::playStatePlaying const):
(WebCore::AnimationBase::updatePlayState):
* page/animation/AnimationBase.h:
* page/animation/CSSPropertyAnimation.cpp:
(WebCore::blendFunc):
(WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap):
* page/animation/CompositeAnimation.cpp:
(WebCore::CompositeAnimation::updateTransitions):
(WebCore::CompositeAnimation::updateKeyframeAnimations):
(WebCore::CompositeAnimation::suspendAnimations):
(WebCore::CompositeAnimation::resumeAnimations):
* page/animation/KeyframeAnimation.cpp:
(WebCore::KeyframeAnimation::animate):
* page/ios/FrameIOS.mm:
(WebCore::Frame::nodeRespondingToClickEvents):
* platform/animation/Animation.cpp:
(WebCore::Animation::Animation):
* platform/animation/Animation.h:
(WebCore::Animation::clearPlayState):
(WebCore::Animation::fillMode const):
(WebCore::Animation::playState const):
(WebCore::Animation::setFillMode):
(WebCore::Animation::setPlayState):
(WebCore::Animation::fillsBackwards const):
(WebCore::Animation::fillsForwards const):
(WebCore::Animation::initialFillMode):
(WebCore::Animation::initialPlayState):
* platform/graphics/GraphicsTypes.h:
* platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::GraphicsLayerCA::createTransformAnimationsFromKeyframes):
* platform/ios/wak/WAKWindow.mm:
(-[WAKWindow dumpTiles]):
* platform/mac/WebCoreNSURLExtras.mm:
(WebCore::isLookalikeCharacter):
* rendering/ClipPathOperation.h:
* rendering/InlineBox.h:
(WebCore::InlineBox::visibleToHitTesting const):
* rendering/InlineFlowBox.cpp:
(WebCore::InlineFlowBox::addToLine):
(WebCore::InlineFlowBox::placeBoxesInBlockDirection):
(WebCore::InlineFlowBox::addTextBoxVisualOverflow):
(WebCore::InlineFlowBox::paint):
(WebCore::InlineFlowBox::paintBoxDecorations):
(WebCore::InlineFlowBox::paintMask):
(WebCore::InlineFlowBox::computeOverAnnotationAdjustment const):
(WebCore::InlineFlowBox::computeUnderAnnotationAdjustment const):
(WebCore::InlineFlowBox::collectLeafBoxesInLogicalOrder const):
* rendering/InlineFlowBox.h:
(WebCore::InlineFlowBox::InlineFlowBox):
* rendering/InlineTextBox.cpp:
(WebCore::InlineTextBox::emphasisMarkExistsAndIsAbove const):
(WebCore::InlineTextBox::paint):
(WebCore::InlineTextBox::createTextRun const):
* rendering/PointerEventsHitRules.cpp:
(WebCore::PointerEventsHitRules::PointerEventsHitRules):
* rendering/PointerEventsHitRules.h:
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::computeStartPositionDeltaForChildAvoidingFloats):
(WebCore::RenderBlock::paint):
(WebCore::RenderBlock::paintObject):
(WebCore::RenderBlock::shouldPaintSelectionGaps const):
(WebCore::RenderBlock::adjustLogicalLeftOffsetForLine const):
(WebCore::RenderBlock::adjustLogicalRightOffsetForLine const):
(WebCore::isChildHitTestCandidate):
(WebCore::RenderBlock::computeBlockPreferredLogicalWidths const):
(WebCore::RenderBlock::firstLineBlock const):
(WebCore::findFirstLetterBlock):
(WebCore::RenderBlock::getFirstLetter):
(WebCore::RenderBlock::createAnonymousBlockWithStyleAndDisplay):
(WebCore::RenderBlock::childBoxIsUnsplittableForFragmentation const):
(WebCore::RenderBlock::constructTextRun):
(WebCore::RenderBlock::layoutExcludedChildren):
* rendering/RenderBlock.h:
(WebCore::RenderBlock::createAnonymousWithParentRendererAndDisplay):
(WebCore::RenderBlock::createAnonymousBlock const):
* rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::willCreateColumns const):
(WebCore::RenderBlockFlow::layoutBlock):
(WebCore::RenderBlockFlow::applyBeforeBreak):
(WebCore::RenderBlockFlow::applyAfterBreak):
(WebCore::RenderBlockFlow::adjustForUnsplittableChild):
(WebCore::RenderBlockFlow::updateStylesForColumnChildren):
(WebCore::RenderBlockFlow::computeLogicalLocationForFloat):
(WebCore::RenderBlockFlow::lowestInitialLetterLogicalBottom const):
(WebCore::RenderBlockFlow::adjustForBorderFit const):
(WebCore::RenderBlockFlow::fitBorderToLinesIfNeeded):
(WebCore::RenderBlockFlow::lineAtIndex const):
(WebCore::RenderBlockFlow::lineCount const):
(WebCore::getHeightForLineCount):
(WebCore::RenderBlockFlow::clearTruncation):
(WebCore::RenderBlockFlow::findClosestTextAtAbsolutePoint):
(WebCore::RenderBlockFlow::lineCountForTextAutosizing):
(WebCore::RenderBlockFlow::setComputedColumnCountAndWidth):
(WebCore::RenderBlockFlow::updateColumnProgressionFromStyle):
(WebCore::RenderBlockFlow::isTopLayoutOverflowAllowed const):
(WebCore::RenderBlockFlow::isLeftLayoutOverflowAllowed const):
* rendering/RenderBlockFlow.h:
* rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlockFlow::constructLine):
(WebCore::RenderBlockFlow::textAlignmentForLine const):
(WebCore::RenderBlockFlow::updateLogicalWidthForAlignment):
(WebCore::RenderBlockFlow::computeInlineDirectionPositionsForLine):
(WebCore::expansionBehaviorForInlineTextBox):
(WebCore::RenderBlockFlow::computeInlineDirectionPositionsForSegment):
(WebCore::RenderBlockFlow::layoutRunsAndFloatsInRange):
(WebCore::RenderBlockFlow::checkFloatInCleanLine):
(WebCore::RenderBlockFlow::deleteEllipsisLineBoxes):
(WebCore::RenderBlockFlow::checkLinesForTextOverflow):
(WebCore::RenderBlockFlow::startAlignedOffsetForLine):
* rendering/RenderBox.cpp:
(WebCore::RenderBox::hasVerticalScrollbarWithAutoBehavior const):
(WebCore::RenderBox::hasHorizontalScrollbarWithAutoBehavior const):
(WebCore::isCandidateForOpaquenessTest):
(WebCore::RenderBox::paintMask):
(WebCore::RenderBox::paintClippingMask):
(WebCore::RenderBox::positionLineBox):
(WebCore::RenderBox::clippedOverflowRectForRepaint const):
(WebCore::RenderBox::computeLogicalWidthInFragment const):
(WebCore::RenderBox::computeInlineDirectionMargins const):
(WebCore::RenderBox::skipContainingBlockForPercentHeightCalculation const):
(WebCore::RenderBox::positionForPoint):
(WebCore::RenderBox::isUnsplittableForPagination const):
* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::localCaretRectForEmptyElement):
* rendering/RenderBoxModelObject.h:
* rendering/RenderCounter.cpp:
(WebCore::planCounter):
(WebCore::RenderCounter::originalText const):
* rendering/RenderDeprecatedFlexibleBox.cpp:
(WebCore::childDoesNotAffectWidthOrFlexing):
(WebCore::RenderDeprecatedFlexibleBox::layoutHorizontalBox):
(WebCore::RenderDeprecatedFlexibleBox::layoutVerticalBox):
* rendering/RenderDetailsMarker.cpp:
(WebCore::RenderDetailsMarker::paint):
* rendering/RenderElement.cpp:
(WebCore::RenderElement::createFor):
(WebCore::RenderElement::computeFirstLineStyle const):
(WebCore::RenderElement::propagateStyleToAnonymousChildren):
(WebCore::RenderElement::styleWillChange):
(WebCore::RenderElement::insertedIntoTree):
(WebCore::RenderElement::willBeRemovedFromTree):
(WebCore::RenderElement::repaintAfterLayoutIfNeeded):
(WebCore::RenderElement::isVisibleInDocumentRect const):
(WebCore::RenderElement::getCachedPseudoStyle const):
(WebCore::RenderElement::getUncachedPseudoStyle const):
(WebCore::RenderElement::selectionPseudoStyle const):
* rendering/RenderElement.h:
(WebCore::RenderElement::visibleToHitTesting const):
* rendering/RenderFileUploadControl.cpp:
(WebCore::RenderFileUploadControl::paintObject):
* rendering/RenderFullScreen.cpp:
(WebCore::createFullScreenStyle):
* rendering/RenderGrid.cpp:
(WebCore::RenderGrid::computeEmptyTracksForAutoRepeat const):
* rendering/RenderImage.cpp:
(WebCore::RenderImage::repaintOrMarkForLayout):
* rendering/RenderInline.cpp:
(WebCore::RenderInline::willBeDestroyed):
(WebCore::updateStyleOfAnonymousBlockContinuations):
(WebCore::RenderInline::updateAlwaysCreateLineBoxes):
(WebCore::RenderInline::clippedOverflowRectForRepaint const):
(WebCore::RenderInline::addAnnotatedRegions):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::RenderLayer):
(WebCore::RenderLayer::updateDescendantDependentFlags):
(WebCore::RenderLayer::createScrollbar):
(WebCore::styleRequiresScrollbar):
(WebCore::styleDefinesAutomaticScrollbar):
(WebCore::computeReferenceBox):
(WebCore::RenderLayer::calculateClipRects const):
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateAfterDescendants):
* rendering/RenderLayerCompositor.cpp:
(WebCore::scrollbarHasDisplayNone):
(WebCore::RenderLayerCompositor::requiresCompositingForPlugin const):
(WebCore::RenderLayerCompositor::requiresCompositingForFrame const):
* rendering/RenderListBox.cpp:
(WebCore::RenderListBox::paintObject):
(WebCore::itemOffsetForAlignment):
(WebCore::RenderListBox::paintItemForeground):
(WebCore::RenderListBox::paintItemBackground):
(WebCore::RenderListBox::createScrollbar):
* rendering/RenderListItem.cpp:
(WebCore::RenderListItem::computeMarkerStyle const):
* rendering/RenderListMarker.cpp:
(WebCore::effectiveListMarkerType):
(WebCore::listMarkerSuffix):
(WebCore::listMarkerText):
(WebCore::RenderListMarker::paint):
(WebCore::RenderListMarker::updateContent):
(WebCore::RenderListMarker::computePreferredLogicalWidths):
(WebCore::RenderListMarker::updateMargins):
(WebCore::RenderListMarker::suffix const):
(WebCore::RenderListMarker::isInside const):
(WebCore::RenderListMarker::getRelativeMarkerRect):
* rendering/RenderListMarker.h:
* rendering/RenderMediaControlElements.cpp:
(WebCore::RenderMediaVolumeSliderContainer::layout):
(WebCore::RenderTextTrackContainerElement::layout):
* rendering/RenderMenuList.cpp:
(WebCore::RenderMenuList::adjustInnerStyle):
(WebCore::if):
(RenderMenuList::itemStyle const):
(RenderMenuList::menuStyle const):
(RenderMenuList::createScrollbar):
* rendering/RenderMultiColumnSpannerPlaceholder.cpp:
(WebCore::RenderMultiColumnSpannerPlaceholder::createAnonymous):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::addAnnotatedRegions):
* rendering/RenderObject.h:
(WebCore::RenderObject::isAnonymousBlock const):
(WebCore::RenderObject::isBeforeContent const):
(WebCore::RenderObject::isAfterContent const):
* rendering/RenderReplaced.cpp:
(WebCore::RenderReplaced::shouldPaint):
(WebCore::RenderReplaced::clippedOverflowRectForRepaint const):
* rendering/RenderRubyBase.cpp:
(WebCore::RenderRubyBase::textAlignmentForLine const):
* rendering/RenderRubyBase.h:
* rendering/RenderRubyRun.cpp:
(WebCore::RenderRubyRun::createRubyBase const):
(WebCore::RenderRubyRun::staticCreateRubyRun):
(WebCore::RenderRubyRun::layoutBlock):
* rendering/RenderRubyText.cpp:
(WebCore::RenderRubyText::textAlignmentForLine const):
(WebCore::RenderRubyText::adjustInlineDirectionLineBounds const):
* rendering/RenderRubyText.h:
* rendering/RenderScrollbar.cpp:
(WebCore::pseudoForScrollbarPart):
(WebCore::RenderScrollbar::updateScrollbarPart):
* rendering/RenderSearchField.cpp:
(WebCore::RenderSearchField::updateCancelButtonVisibility const):
(WebCore::RenderSearchField::visibilityForCancelButton const):
(WebCore::RenderSearchField::menuStyle const):
(WebCore::RenderSearchField::createScrollbar):
* rendering/RenderSearchField.h:
* rendering/RenderTable.cpp:
(WebCore::RenderTable::willInsertTableSection):
(WebCore::RenderTable::layoutCaptions):
(WebCore::RenderTable::layout):
(WebCore::RenderTable::paintObject):
(WebCore::RenderTable::adjustBorderBoxRectForPainting):
(WebCore::RenderTable::paintMask):
(WebCore::RenderTable::recalcSections const):
(WebCore::RenderTable::createTableWithStyle):
* rendering/RenderTableCell.cpp:
(WebCore::RenderTableCell::styleDidChange):
(WebCore::RenderTableCell::paintCollapsedBorders):
(WebCore::RenderTableCell::paintBackgroundsBehindCell):
(WebCore::RenderTableCell::paintBoxDecorations):
(WebCore::RenderTableCell::paintMask):
(WebCore::RenderTableCell::createTableCellWithStyle):
* rendering/RenderTableCol.cpp:
(WebCore::RenderTableCol::updateFromElement):
(WebCore::RenderTableCol::isChildAllowed const):
* rendering/RenderTableCol.h:
* rendering/RenderTableRow.cpp:
(WebCore::RenderTableRow::styleDidChange):
(WebCore::RenderTableRow::paintOutlineForRowIfNeeded):
(WebCore::RenderTableRow::createTableRowWithStyle):
* rendering/RenderTableSection.cpp:
(WebCore::RenderTableSection::addCell):
(WebCore::RenderTableSection::paint):
(WebCore::RenderTableSection::createTableSectionWithStyle):
* rendering/RenderText.cpp:
(WebCore::RenderText::styleDidChange):
(WebCore::RenderText::computePreferredLogicalWidths):
(WebCore::applyTextTransform):
* rendering/RenderTextFragment.cpp:
(WebCore::RenderTextFragment::styleDidChange):
(WebCore::RenderTextFragment::blockForAccompanyingFirstLetter):
* rendering/RenderTheme.cpp:
(WebCore::RenderTheme::adjustStyle):
* rendering/RenderThemeMac.mm:
(WebCore::RenderThemeMac::adjustMenuListStyle const):
* rendering/RenderThemeWin.cpp:
(WebCore::RenderThemeWin::adjustMenuListButtonStyle const):
* rendering/RenderView.cpp:
(WebCore::rendererObscuresBackground):
* rendering/RenderWidget.cpp:
(WebCore::RenderWidget::setWidget):
(WebCore::RenderWidget::styleDidChange):
* rendering/RootInlineBox.cpp:
(WebCore::RootInlineBox::paintEllipsisBox const):
(WebCore::RootInlineBox::lineSnapAdjustment const):
(WebCore::RootInlineBox::lineSelectionGap):
(WebCore::RootInlineBox::computeCaretRect const):
* rendering/SimpleLineLayout.cpp:
(WebCore::SimpleLineLayout::canUseForFontAndText):
(WebCore::SimpleLineLayout::canUseForStyle):
(WebCore::SimpleLineLayout::computeLineLeft):
(WebCore::SimpleLineLayout::updateLineConstrains):
(WebCore::SimpleLineLayout::createLineRuns):
(WebCore::SimpleLineLayout::textAlignForLine):
(WebCore::SimpleLineLayout::closeLineEndingAndAdjustRuns):
* rendering/SimpleLineLayoutFunctions.cpp:
(WebCore::SimpleLineLayout::paintFlow):
(WebCore::SimpleLineLayout::hitTestFlow):
* rendering/SimpleLineLayoutTextFragmentIterator.cpp:
(WebCore::SimpleLineLayout::TextFragmentIterator::Style::Style):
* rendering/SimpleLineLayoutTextFragmentIterator.h:
* rendering/TextDecorationPainter.cpp:
(WebCore::textDecorationStyleToStrokeStyle):
(WebCore::TextDecorationPainter::paintTextDecoration):
(WebCore::collectStylesForRenderer):
* rendering/TextDecorationPainter.h:
* rendering/line/BreakingContext.h:
(WebCore::BreakingContext::BreakingContext):
(WebCore::BreakingContext::clearLineBreakIfFitsOnLine):
(WebCore::BreakingContext::handleBR):
(WebCore::BreakingContext::handleOutOfFlowPositioned):
(WebCore::BreakingContext::handleText):
(WebCore::BreakingContext::canBreakAtThisPosition):
(WebCore::BreakingContext::handleEndOfLine):
* rendering/line/LineInlineHeaders.h:
(WebCore::shouldCollapseWhiteSpace):
* rendering/line/LineWidth.cpp:
(WebCore::newFloatShrinksLine):
* rendering/mathml/MathOperator.cpp:
(WebCore::MathOperator::paint):
* rendering/mathml/RenderMathMLFraction.cpp:
(WebCore::RenderMathMLFraction::paint):
* rendering/mathml/RenderMathMLMath.cpp:
(WebCore::RenderMathMLMath::layoutBlock):
* rendering/mathml/RenderMathMLMenclose.cpp:
(WebCore::RenderMathMLMenclose::paint):
* rendering/mathml/RenderMathMLRoot.cpp:
(WebCore::RenderMathMLRoot::paint):
* rendering/mathml/RenderMathMLToken.cpp:
(WebCore::RenderMathMLToken::paint):
* rendering/shapes/BoxShape.cpp:
(WebCore::computeRoundedRectForBoxShape):
* rendering/shapes/ShapeOutsideInfo.cpp:
(WebCore::referenceBox):
(WebCore::ShapeOutsideInfo::setReferenceBoxLogicalSize):
(WebCore::ShapeOutsideInfo::logicalTopOffset const):
(WebCore::ShapeOutsideInfo::logicalLeftOffset const):
* rendering/style/CounterContent.h:
(WebCore::CounterContent::CounterContent):
(WebCore::CounterContent::listStyle const):
* rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::createAnonymousStyleWithDisplay):
(WebCore::RenderStyle::createStyleInheritingFromPseudoStyle):
(WebCore::RenderStyle::RenderStyle):
(WebCore::RenderStyle::hasUniquePseudoStyle const):
(WebCore::RenderStyle::getCachedPseudoStyle const):
(WebCore::RenderStyle::addCachedPseudoStyle):
(WebCore::RenderStyle::changeRequiresLayout const):
(WebCore::requiresPainting):
(WebCore::RenderStyle::hyphenString const):
(WebCore::RenderStyle::textEmphasisMarkString const):
(WebCore::RenderStyle::visitedDependentColor const):
(WebCore::RenderStyle::textEmphasisMark const):
(WebCore::RenderStyle::setColumnStylesFromPaginationMode):
* rendering/style/RenderStyle.h:
(WebCore::RenderStyle::setStyleType):
(WebCore::RenderStyle::setRTLOrdering):
(WebCore::RenderStyle::display const):
(WebCore::RenderStyle::visibility const):
(WebCore::RenderStyle::textAlign const):
(WebCore::RenderStyle::textTransform const):
(WebCore::RenderStyle::whiteSpace const):
(WebCore::RenderStyle::emptyCells const):
(WebCore::RenderStyle::captionSide const):
(WebCore::RenderStyle::listStyleType const):
(WebCore::RenderStyle::listStylePosition const):
(WebCore::RenderStyle::cursor const):
(WebCore::RenderStyle::insideLink const):
(WebCore::RenderStyle::borderFit const):
(WebCore::RenderStyle::pointerEvents const):
(WebCore::RenderStyle::setDisplay):
(WebCore::RenderStyle::setOriginalDisplay):
(WebCore::RenderStyle::setVisibility):
(WebCore::RenderStyle::setTextAlign):
(WebCore::RenderStyle::setTextTransform):
(WebCore::RenderStyle::setTextDecorationStyle):
(WebCore::RenderStyle::setTextDecorationSkip):
(WebCore::RenderStyle::setTextUnderlinePosition):
(WebCore::RenderStyle::setDirection):
(WebCore::RenderStyle::setTextZoom):
(WebCore::RenderStyle::setWhiteSpace):
(WebCore::RenderStyle::setEmptyCells):
(WebCore::RenderStyle::setCaptionSide):
(WebCore::RenderStyle::setListStyleType):
(WebCore::RenderStyle::setListStylePosition):
(WebCore::RenderStyle::setCursor):
(WebCore::RenderStyle::setCursorVisibility):
(WebCore::RenderStyle::setInsideLink):
(WebCore::RenderStyle::setHyphens):
(WebCore::RenderStyle::setBorderFit):
(WebCore::RenderStyle::setColumnAxis):
(WebCore::RenderStyle::setColumnProgression):
(WebCore::RenderStyle::setTextEmphasisFill):
(WebCore::RenderStyle::setTextEmphasisMark):
(WebCore::RenderStyle::setRubyPosition):
(WebCore::RenderStyle::setBreakBefore):
(WebCore::RenderStyle::setBreakAfter):
(WebCore::RenderStyle::setBreakInside):
(WebCore::RenderStyle::setHangingPunctuation):
(WebCore::RenderStyle::setLineSnap):
(WebCore::RenderStyle::setLineAlign):
(WebCore::RenderStyle::setPointerEvents):
(WebCore::RenderStyle::initialDisplay):
(WebCore::RenderStyle::initialBreakBetween):
(WebCore::RenderStyle::initialBreakInside):
(WebCore::RenderStyle::initialCaptionSide):
(WebCore::RenderStyle::initialColumnAxis):
(WebCore::RenderStyle::initialColumnProgression):
(WebCore::RenderStyle::initialEmptyCells):
(WebCore::RenderStyle::initialListStylePosition):
(WebCore::RenderStyle::initialListStyleType):
(WebCore::RenderStyle::initialTextTransform):
(WebCore::RenderStyle::initialVisibility):
(WebCore::RenderStyle::initialWhiteSpace):
(WebCore::RenderStyle::initialCursor):
(WebCore::RenderStyle::initialTextAlign):
(WebCore::RenderStyle::initialTextDecorationStyle):
(WebCore::RenderStyle::initialTextZoom):
(WebCore::RenderStyle::initialHyphens):
(WebCore::RenderStyle::initialBorderFit):
(WebCore::RenderStyle::initialRTLOrdering):
(WebCore::RenderStyle::initialPointerEvents):
(WebCore::RenderStyle::initialTextEmphasisColor):
(WebCore::RenderStyle::initialTextEmphasisFill):
(WebCore::RenderStyle::initialTextEmphasisMark):
(WebCore::RenderStyle::initialRubyPosition):
(WebCore::RenderStyle::initialImageResolutionSource):
(WebCore::RenderStyle::initialImageResolutionSnap):
(WebCore::RenderStyle::initialTextAlignLast):
(WebCore::RenderStyle::initialTextJustify):
(WebCore::RenderStyle::initialCursorVisibility):
(WebCore::RenderStyle::initialGridAutoRepeatType):
(WebCore::RenderStyle::initialLineSnap):
(WebCore::RenderStyle::initialLineAlign):
(WebCore::RenderStyle::NonInheritedFlags::hasAnyPublicPseudoStyles const):
(WebCore::RenderStyle::originalDisplay const):
(WebCore::RenderStyle::NonInheritedFlags::hasPseudoStyle const):
(WebCore::RenderStyle::NonInheritedFlags::setHasPseudoStyle):
(WebCore::RenderStyle::NonInheritedFlags::setHasPseudoStyles):
(WebCore::RenderStyle::autoWrap):
(WebCore::RenderStyle::preserveNewline):
(WebCore::RenderStyle::collapseWhiteSpace):
(WebCore::RenderStyle::breakOnlyAfterWhiteSpace const):
(WebCore::RenderStyle::hasInlineColumnAxis const):
(WebCore::RenderStyle::isDisplayRegionType const):
(WebCore::RenderStyle::isDisplayReplacedType):
(WebCore::RenderStyle::isDisplayInlineType):
(WebCore::RenderStyle::isDisplayFlexibleBox):
(WebCore::RenderStyle::isDisplayGridBox):
(WebCore::RenderStyle::isDisplayFlexibleOrGridBox):
(WebCore::pseudoElementRendererIsNeeded):
* rendering/style/RenderStyleConstants.cpp:
(WebCore::operator<<):
(WebCore::alwaysPageBreak):
* rendering/style/RenderStyleConstants.h:
(WebCore::PseudoIdSet::has const):
(WebCore::PseudoIdSet::add):
* rendering/style/ShapeValue.h:
* rendering/style/StyleMultiColData.cpp:
(WebCore::StyleMultiColData::StyleMultiColData):
* rendering/style/StyleRareInheritedData.cpp:
(WebCore::StyleRareInheritedData::StyleRareInheritedData):
* rendering/style/StyleRareNonInheritedData.cpp:
(WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
* rendering/style/StyleRareNonInheritedData.h:
* rendering/svg/RenderSVGContainer.cpp:
(WebCore::RenderSVGContainer::paint):
* rendering/svg/RenderSVGImage.cpp:
(WebCore::RenderSVGImage::paint):
(WebCore::RenderSVGImage::nodeAtFloatPoint):
* rendering/svg/RenderSVGInlineText.cpp:
(WebCore::RenderSVGInlineText::styleDidChange):
* rendering/svg/RenderSVGModelObject.cpp:
(WebCore::RenderSVGModelObject::checkIntersection):
(WebCore::RenderSVGModelObject::checkEnclosure):
* rendering/svg/RenderSVGResource.cpp:
(WebCore::requestPaintingResource):
* rendering/svg/RenderSVGResourceClipper.cpp:
(WebCore::RenderSVGResourceClipper::pathOnlyClipping):
(WebCore::RenderSVGResourceClipper::drawContentIntoMaskImage):
(WebCore::RenderSVGResourceClipper::calculateClipContentRepaintRect):
* rendering/svg/RenderSVGResourceMasker.cpp:
(WebCore::RenderSVGResourceMasker::drawContentIntoMaskImage):
(WebCore::RenderSVGResourceMasker::calculateMaskContentRepaintRect):
* rendering/svg/RenderSVGRoot.cpp:
(WebCore::RenderSVGRoot::clippedOverflowRectForRepaint const):
* rendering/svg/RenderSVGShape.cpp:
(WebCore::RenderSVGShape::paint):
(WebCore::RenderSVGShape::nodeAtFloatPoint):
* rendering/svg/RenderSVGText.cpp:
(WebCore::RenderSVGText::nodeAtFloatPoint):
* rendering/svg/SVGInlineTextBox.cpp:
(WebCore::SVGInlineTextBox::paintSelectionBackground):
(WebCore::SVGInlineTextBox::paint):
(WebCore::SVGInlineTextBox::constructTextRun const):
(WebCore::SVGInlineTextBox::paintDecoration):
(WebCore::SVGInlineTextBox::nodeAtPoint):
* rendering/svg/SVGRenderSupport.cpp:
(WebCore::SVGRenderSupport::clippedOverflowRectForRepaint):
* rendering/svg/SVGRenderingContext.cpp:
(WebCore::SVGRenderingContext::prepareToRenderSVGContent):
* rendering/svg/SVGTextLayoutAttributesBuilder.cpp:
(WebCore::processRenderSVGInlineText):
* rendering/svg/SVGTextMetricsBuilder.cpp:
(WebCore::SVGTextMetricsBuilder::measureTextRenderer):
* rendering/updating/RenderTreeBuilderBlock.cpp:
(WebCore::RenderTreeBuilder::Block::detach):
* rendering/updating/RenderTreeBuilderFirstLetter.cpp:
(WebCore::styleForFirstLetter):
(WebCore::RenderTreeBuilder::FirstLetter::updateAfterDescendants):
(WebCore::RenderTreeBuilder::FirstLetter::updateStyle):
(WebCore::RenderTreeBuilder::FirstLetter::createRenderers):
* rendering/updating/RenderTreeBuilderInline.cpp:
(WebCore::RenderTreeBuilder::Inline::attachIgnoringContinuation):
(WebCore::RenderTreeBuilder::Inline::newChildIsInline):
* rendering/updating/RenderTreeBuilderList.cpp:
(WebCore::RenderTreeBuilder::List::updateItemMarker):
* rendering/updating/RenderTreeBuilderMathML.cpp:
(WebCore::RenderTreeBuilder::MathML::createMathMLOperator):
* rendering/updating/RenderTreeBuilderMultiColumn.cpp:
(WebCore::RenderTreeBuilder::MultiColumn::createFragmentedFlow):
(WebCore::RenderTreeBuilder::MultiColumn::processPossibleSpannerDescendant):
* rendering/updating/RenderTreeBuilderRuby.cpp:
(WebCore::isAnonymousRubyInlineBlock):
(WebCore::isRubyBeforeBlock):
(WebCore::isRubyAfterBlock):
(WebCore::createAnonymousRubyInlineBlock):
* rendering/updating/RenderTreeBuilderTable.cpp:
(WebCore::RenderTreeBuilder::Table::findOrCreateParentForChild):
* rendering/updating/RenderTreeUpdater.cpp:
(WebCore::RenderTreeUpdater::updateBeforeDescendants):
(WebCore::RenderTreeUpdater::updateAfterDescendants):
(WebCore::RenderTreeUpdater::updateElementRenderer):
(WebCore::elementImplicitVisibility):
(WebCore::CheckForVisibilityChange::CheckForVisibilityChange):
(WebCore::CheckForVisibilityChange::~CheckForVisibilityChange):
* rendering/updating/RenderTreeUpdaterGeneratedContent.cpp:
(WebCore::RenderTreeUpdater::GeneratedContent::updatePseudoElement):
* style/InlineTextBoxStyle.cpp:
(WebCore::visualOverflowForDecorations):
* style/StyleChange.cpp:
(WebCore::Style::determineChange):
* style/StyleFontSizeFunctions.cpp:
(WebCore::Style::computedFontSizeFromSpecifiedSize):
* style/StyleResolveForDocument.cpp:
(WebCore::Style::resolveForDocument):
* style/StyleSharingResolver.cpp:
* style/StyleTreeResolver.cpp:
(WebCore::Style::affectsRenderedSubtree):
(WebCore::Style::TreeResolver::resolveElement):
(WebCore::Style::TreeResolver::resolvePseudoStyle):
(WebCore::Style::TreeResolver::parentBoxStyle const):
(WebCore::Style::createInheritedDisplayContentsStyleIfNeeded):
(WebCore::Style::TreeResolver::resolveComposedTree):
* svg/SVGElement.h:
* svg/SVGGElement.cpp:
(WebCore::SVGGElement::createElementRenderer):

Source/WebKitLegacy/mac:

* WebView/WebHTMLRepresentation.mm:
(searchForLabelsBeforeElement):
* WebView/WebView.mm:
(nsTextAlignmentFromRenderStyle):
Update for new enum names.

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

15 months agoEnable subsampling for progressive JPEG images
cdumez@apple.com [Fri, 25 May 2018 01:12:31 +0000 (01:12 +0000)]
Enable subsampling for progressive JPEG images
https://bugs.webkit.org/show_bug.cgi?id=185956

Reviewed by Said Abou-Hallawa.

Enable subsampling for progressive JPEG images now that it is supposed (rdar://problem/5191418).
I verified locally that such images are still loading and do not cause any hang on iOS.

* platform/graphics/cg/ImageDecoderCG.cpp:
(WebCore::ImageDecoderCG::frameAllowSubsamplingAtIndex const):

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

15 months ago[GTK][WPE] Memory pressure monitor doesn't reliable notify all the subprocesses
clopez@igalia.com [Fri, 25 May 2018 00:52:13 +0000 (00:52 +0000)]
[GTK][WPE] Memory pressure monitor doesn't reliable notify all the subprocesses
https://bugs.webkit.org/show_bug.cgi?id=184261

Reviewed by Carlos Garcia Campos.

Source/WebKit:

On Linux we had two implementations for getting notifications about memory pressure events:
- The memory cgroup (called systemd here).
- The UIProcess memory monitor (which delivered events via a shared eventfd)

The problem with the first is that it was usually not working on a standard machine due to
the special permissions or configurations required for memory cgroups, so the second one
(eventfd) was used as a fall-back in that case.
But this eventfd method is racy with more than one WebKit child process and it wasn't
reliably delivering the notifications.

This patch removes the memory cgroup implementation and modifies the UIProcess memory monitor
to deliver the events via WebKit IPC. This simplifies the code a lot and allows us to have
only one implementation that should work in any Linux machine.

The implementation now also triggers the event with information about the criticalness of it.

Previously a critical event was triggered always at a 95% of pressure.
Now a non-critical one is triggered at 90% and critical remains at a 95%.

Start triggering events early should compensate the fact than triggering the event via WebKit IPC is
a bit slower than doing that via an eventfd (or than listening on the memory cgroup event controller).

The events are delivered to all WebKit childs: WebProcess, NetworkProcess, StorageProcess, PluginProcess.

In the case of the StorageProcess a dummy controller is installed, which currently does nothing,
but leaves a note for a future implementation and at least allows to trigger platformReleaseMemory()
that on Linux/glibc should end calling malloc_trim()

* NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::initializeNetworkProcess):
* NetworkProcess/NetworkProcessCreationParameters.cpp:
(WebKit::NetworkProcessCreationParameters::encode const):
(WebKit::NetworkProcessCreationParameters::decode):
* NetworkProcess/NetworkProcessCreationParameters.h:
* PluginProcess/PluginProcess.cpp:
(WebKit::PluginProcess::didReceiveMessage):
(WebKit::PluginProcess::initializePluginProcess):
* Shared/ChildProcess.cpp:
(WebKit::ChildProcess::didReceiveMemoryPressureEvent):
* Shared/ChildProcess.h:
* Shared/ChildProcess.messages.in:
* Shared/Plugins/PluginProcessCreationParameters.cpp:
(WebKit::PluginProcessCreationParameters::encode const):
(WebKit::PluginProcessCreationParameters::decode):
* Shared/Plugins/PluginProcessCreationParameters.h:
* Shared/WebProcessCreationParameters.cpp:
(WebKit::WebProcessCreationParameters::encode const):
(WebKit::WebProcessCreationParameters::decode):
* Shared/WebProcessCreationParameters.h:
* StorageProcess/StorageProcess.cpp:
(WebKit::StorageProcess::initializeProcess):
* UIProcess/Plugins/PluginProcessManager.cpp:
(WebKit::PluginProcessManager::sendMemoryPressureEvent):
* UIProcess/Plugins/PluginProcessManager.h:
* UIProcess/Plugins/PluginProcessProxy.cpp:
(WebKit::PluginProcessProxy::sendMemoryPressureEvent):
(WebKit::PluginProcessProxy::didFinishLaunching):
* UIProcess/Plugins/PluginProcessProxy.h:
* UIProcess/WebProcessPool.cpp:
(WebKit::WebProcessPool::sendMemoryPressureEvent):
(WebKit::WebProcessPool::ensureNetworkProcess):
(WebKit::WebProcessPool::initializeNewWebProcess):
* UIProcess/WebProcessPool.h:
(WebKit::WebProcessPool::sendToStorageProcess):
* UIProcess/linux/MemoryPressureMonitor.cpp:
(WebKit::pollIntervalForUsedMemoryPercentage): Fix equation for calculating the interval percentage.
(WebKit::MemoryPressureMonitor::singleton):
(WebKit::MemoryPressureMonitor::start):
* UIProcess/linux/MemoryPressureMonitor.h:
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::initializeWebProcess):

Source/WTF:

Receive the memory pressure notifications from the UIProcess memory monitor via WebKit IPC.

* wtf/MemoryPressureHandler.h:
* wtf/linux/MemoryPressureHandlerLinux.cpp:
(WTF::MemoryPressureHandler::triggerMemoryPressureEvent):
(WTF::MemoryPressureHandler::install):
(WTF::MemoryPressureHandler::uninstall):

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

15 months agoReduce copying of FontCascadeDescription objects by moving them around
cdumez@apple.com [Fri, 25 May 2018 00:25:23 +0000 (00:25 +0000)]
Reduce copying of FontCascadeDescription objects by moving them around
https://bugs.webkit.org/show_bug.cgi?id=185963

Reviewed by Simon Fraser.

Reduce copying of FontCascadeDescription objects by moving them around when possible.

Source/WebCore:

* css/StyleBuilderCustom.h:
(WebCore::StyleBuilderCustom::applyValueWebkitLocale):
(WebCore::StyleBuilderCustom::applyInitialFontFamily):
(WebCore::StyleBuilderCustom::applyInheritFontFamily):
(WebCore::StyleBuilderCustom::applyValueFontFamily):
(WebCore::StyleBuilderCustom::applyInheritFontVariantLigatures):
(WebCore::StyleBuilderCustom::applyInitialFontVariantLigatures):
(WebCore::StyleBuilderCustom::applyValueFontVariantLigatures):
(WebCore::StyleBuilderCustom::applyInheritFontVariantNumeric):
(WebCore::StyleBuilderCustom::applyInitialFontVariantNumeric):
(WebCore::StyleBuilderCustom::applyValueFontVariantNumeric):
(WebCore::StyleBuilderCustom::applyInheritFontVariantEastAsian):
(WebCore::StyleBuilderCustom::applyInitialFontVariantEastAsian):
(WebCore::StyleBuilderCustom::applyValueFontVariantEastAsian):
(WebCore::StyleBuilderCustom::applyInitialFontSize):
(WebCore::StyleBuilderCustom::applyInheritFontSize):
(WebCore::StyleBuilderCustom::applyInitialFontStyle):
(WebCore::StyleBuilderCustom::applyInheritFontStyle):
(WebCore::StyleBuilderCustom::applyValueFontStyle):
(WebCore::StyleBuilderCustom::applyValueFontSize):
* css/StyleResolver.cpp:
(WebCore::checkForOrientationChange):
(WebCore::StyleResolver::checkForTextSizeAdjust):
(WebCore::StyleResolver::checkForZoomChange):
(WebCore::StyleResolver::checkForGenericFamilyChange):
(WebCore::StyleResolver::initializeFontStyle):
* css/StyleResolver.h:
(WebCore::StyleResolver::State::setFontDescription):
(WebCore::StyleResolver::setFontDescription):
* css/makeprop.pl:
(generateInitialValueSetter):
(generateInheritValueSetter):
(generateValueSetter):
* html/canvas/CanvasRenderingContext2D.cpp:
(WebCore::CanvasRenderingContext2D::setFont):
* page/DebugPageOverlays.cpp:
(WebCore::NonFastScrollableRegionOverlay::drawRect):
* page/linux/ResourceUsageOverlayLinux.cpp:
* platform/graphics/FontCascade.cpp:
(WebCore::FontCascade::FontCascade):
* platform/graphics/FontCascade.h:
* platform/graphics/ca/win/PlatformCALayerWin.cpp:
(PlatformCALayerWin::drawTextAtPoint const):
* platform/mock/MockRealtimeVideoSource.cpp:
(WebCore::MockRealtimeVideoSource::drawText):
* platform/win/DragImageWin.cpp:
(WebCore::dragLabelFont):
* platform/win/PopupMenuWin.cpp:
(WebCore::PopupMenuWin::calculatePositionAndSize):
(WebCore::PopupMenuWin::paint):
* rendering/RenderBox.cpp:
(WebCore::RenderBox::styleDidChange):
* rendering/RenderCombineText.cpp:
(WebCore::RenderCombineText::combineTextIfNeeded):
* rendering/RenderEmbeddedObject.cpp:
(WebCore::RenderEmbeddedObject::getReplacementTextGeometry const):
* rendering/RenderListBox.cpp:
(WebCore::bolder):
(WebCore::RenderListBox::paintItemForeground):
* rendering/RenderListItem.cpp:
(WebCore::RenderListItem::computeMarkerStyle const):
* rendering/RenderTheme.cpp:
(WebCore::RenderTheme::adjustStyle):
* rendering/RenderThemeMac.mm:
(WebCore::RenderThemeMac::setFontFromControlSize const):
* rendering/TextAutoSizing.cpp:
(WebCore::TextAutoSizingValue::adjustTextNodeSizes):
(WebCore::TextAutoSizingValue::reset):
* rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::setFontDescription):
(WebCore::RenderStyle::setFontSize):
(WebCore::RenderStyle::setFontVariationSettings):
(WebCore::RenderStyle::setFontWeight):
(WebCore::RenderStyle::setFontStretch):
(WebCore::RenderStyle::setFontItalic):
* rendering/style/RenderStyle.h:
* rendering/svg/RenderSVGInlineText.cpp:
(WebCore::RenderSVGInlineText::computeNewScaledFontForStyle):
* rendering/updating/RenderTreeBuilderFirstLetter.cpp:
(WebCore::styleForFirstLetter):
* style/StyleResolveForDocument.cpp:
(WebCore::Style::resolveForDocument):

Source/WebKitLegacy/win:

* FullscreenVideoController.cpp:
(FullscreenVideoController::draw):

Tools:

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

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

15 months agomedia/video-play-require-user-gesture.html and media/video-play-audio-require-user...
ryanhaddad@apple.com [Fri, 25 May 2018 00:13:30 +0000 (00:13 +0000)]
media/video-play-require-user-gesture.html and media/video-play-audio-require-user-gesture.html are flaky failures
https://bugs.webkit.org/show_bug.cgi?id=185962

Unreviewed test gardening.

Patch by David Fenton <david_fenton@apple.com> on 2018-05-24

* platform/mac-wk2/TestExpectations:

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

15 months agoAvoid constructing the string "all" repeatedly in MediaQueryParser
cdumez@apple.com [Fri, 25 May 2018 00:09:40 +0000 (00:09 +0000)]
Avoid constructing the string "all" repeatedly in MediaQueryParser
https://bugs.webkit.org/show_bug.cgi?id=185961

Reviewed by Simon Fraser.

Avoid constructing the string "all" repeatedly in MediaQueryParser by:
- Having MediaQueryData use an std::optional<String> instead of a String
- Updating MediaQueryParser to use a static to store the default media type
  and use it when the MediaQueryData's media type is std::nullopt.

Also do some cleanup.

* css/parser/MediaQueryParser.cpp:
(WebCore::MediaQueryParser::commitMediaQuery):
(WebCore::MediaQueryParser::MediaQueryData::MediaQueryData):
(WebCore::MediaQueryParser::MediaQueryData::clear):
(WebCore::MediaQueryParser::MediaQueryData::addExpression):
(WebCore::MediaQueryParser::MediaQueryData::lastExpressionValid):
(WebCore::MediaQueryParser::MediaQueryData::removeLastExpression):
* css/parser/MediaQueryParser.h:
(WebCore::MediaQueryParser::MediaQueryData::setMediaType):
(WebCore::MediaQueryParser::MediaQueryData::restrictor const):
(WebCore::MediaQueryParser::MediaQueryData::expressions):
(WebCore::MediaQueryParser::MediaQueryData::mediaType const):
(WebCore::MediaQueryParser::MediaQueryData::currentMediaQueryChanged const):
(WebCore::MediaQueryParser::MediaQueryData::restrictor):
(WebCore::MediaQueryParser::MediaQueryData::setRestrictor):
(WebCore::MediaQueryParser::MediaQueryData::setMediaFeature):
(WebCore::MediaQueryParser::MediaQueryData::setMediaQueryParserContext):

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

15 months agoUpdate plugin search path to look for user installed plugins
youenn@apple.com [Thu, 24 May 2018 23:42:15 +0000 (23:42 +0000)]
Update plugin search path to look for user installed plugins
https://bugs.webkit.org/show_bug.cgi?id=185960

Reviewed by Brent Fulgham.

Now that UIProcess may be sandboxed, the home directory is no longer the user home directory.
Update the path to still look for plugins in the user home directory.

* UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
(WebKit::PluginInfoStore::pluginsDirectories):

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

15 months ago[iOS] Hard link AppSupport instead of soft linking
commit-queue@webkit.org [Thu, 24 May 2018 23:39:09 +0000 (23:39 +0000)]
[iOS] Hard link AppSupport instead of soft linking
https://bugs.webkit.org/show_bug.cgi?id=185959
<rdar://problem/40506538>

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2018-05-24
Reviewed by Timothy Horton.

Source/WebCore:

* Configurations/WebCore.xcconfig:
* platform/network/ios/NetworkStateNotifierIOS.mm:
(-[WebNetworkStateObserver initWithBlock:]):
(WebCore::NetworkStateNotifier::updateStateWithoutNotifying):

WebKitLibraries:

* WebKitPrivateFrameworkStubs/iOS/10/AppSupport.framework/AppSupport.tbd:
* WebKitPrivateFrameworkStubs/iOS/11/AppSupport.framework/AppSupport.tbd:
Add stub for ObjC Class CPNetworkObserver.

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

15 months agoREGRESSION: performance-api/performance-observer-entry-sort.html is flaky
rniwa@webkit.org [Thu, 24 May 2018 22:06:39 +0000 (22:06 +0000)]
REGRESSION: performance-api/performance-observer-entry-sort.html is flaky
​https://bugs.webkit.org/show_bug.cgi?id=185385

Reviewed by Saam Barati.

Partially revert r232033 to see if the flaky failure comes back.

* performance-api/performance-observer-entry-sort.html:

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

15 months agoAdopt SecKeyProxy SPI in certificate based challenge response code
jiewen_tan@apple.com [Thu, 24 May 2018 21:47:20 +0000 (21:47 +0000)]
Adopt SecKeyProxy SPI in certificate based challenge response code
https://bugs.webkit.org/show_bug.cgi?id=185848
<rdar://problem/34586181>

Reviewed by Alex Christensen.

Source/WebCore/PAL:

Add SPIs to support SecKeyProxy and convert xpc_endpoint_t to NSXPCListenerEndpoint vice versa.

* PAL.xcodeproj/project.pbxproj:
* pal/spi/cocoa/NSXPCConnectionSPI.h: Added.
* pal/spi/cocoa/SecKeyProxySPI.h: Added.

Source/WebKit:

This patch adopts SecKeyProxy SPI in HTTPS client certificate authentication code.
1) SecKeyProxy is a new SPI to relay crypto operations from one process to another. The owner process of the proxy
will behave like a server, and other owners of the SecKeys created from the proxy's endpoints will then behave
like clients. This client-server model allows more restricted sandbox for client processes, and meanwhile permits
them to relay crypto operations to the server process while maintaining the same SecKey interfaces as used for local operations.
2) Because of the client-server model, the server process, i.e. the UI Process in our case, needs to keep the proxy
object alive long enough for the client process, i.e. Network Processes in our case, to finish all operations, and then destroy
the proxy object afterward. The ideal place to hold such a proxy is WebsiteDataStore such that proxies could live with the
corresponding network session.
3) A new class called SecKeyProxyStore is then created to bind the lifetime of SecKeyProxy to the WebsiteDataStore while initializing
it correctly. At the time the authentication process reaches WebPageProxy::didReceiveAuthenticationChallengeProxy where we have
accesses to the WebsiteDataStore, we haven't yet been able to determine the Credential to authenticate the challenge. Therefore, we
have to reserve a place in the WebsiteDataStore ahead and then fill it with the right Credential. That's why SecKeyProxyStore exists.
In WebPageProxy::didReceiveAuthenticationChallengeProxy, we create a strong reference of SecKeyProxyStore which will eventually hold
a strong reference of the SecKeyProxy, and move it to the WebsiteDataStore. We also create a weak reference to SecKeyProxyStore
and move it to the AuthenticationChallenge. In this way, we indirectly bind the lifetime of SecKeyProxy to the WebsiteDataStore through
the strong reference and also we can initialize the proxy through the weak reference while a credential is finally determined.
4) Endpoints of the SecKeyProxy will be passed to the Network Process for creating the 'remote' SecKey. However, those endpoints are
of NSXPCListenerEndpoint type, which can only be passed with xpc connections and are not compatible with our IPC mechanism. In order
to pass endpoints around, this patch reuses the xpc connection that is used to bootstrap Network Processes from the UI Process. To do
so, it sends xpc messages at the place where original IPC messages are sent and overwrites the boostrap listener of the xpc connection
when Network Process is initialized. From the listener, it continues the original authentication code path.
5) Tests, again, are manually covered by tlstestwebkit.org. Noted, the prompting Keychain dialog in macOS should say Safari instead of
"com.apple.WebKit.Networking*" now.

* Shared/AuthenticationManagerCocoa.mm: Added.
(WebKit::AuthenticationManager::initializeConnection):
* Shared/Authentication/cocoa/AuthenticationManager.h:
* Shared/Authentication/cocoa/ClientCertificateAuthenticationXPCConstants.h:
* UIProcess/Authentication/AuthenticationChallengeProxy.cpp:
(WebKit::AuthenticationChallengeProxy::useCredential):
(WebKit::AuthenticationChallengeProxy::setSecKeyProxyStore):
* UIProcess/Authentication/AuthenticationChallengeProxy.h:
* UIProcess/Authentication/cocoa/AuthenticationChallengeProxyCocoa.mm: Added.
(WebKit::AuthenticationChallengeProxy::sendClientCertificateCredentialOverXpc const):
* UIProcess/Authentication/cocoa/SecKeyProxyStore.h: Added.
(WebKit::SecKeyProxyStore::create):
(WebKit::SecKeyProxyStore::isInitialized const):
(WebKit::SecKeyProxyStore::get const):
(WebKit::SecKeyProxyStore::weakPtrFactory const):
* UIProcess/Authentication/cocoa/SecKeyProxyStore.mm: Added.
(WebKit::SecKeyProxyStore::initialize):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::didReceiveAuthenticationChallengeProxy):
* UIProcess/WebsiteData/WebsiteDataStore.cpp:
(WebKit::WebsiteDataStore::addSecKeyProxyStore):
* UIProcess/WebsiteData/WebsiteDataStore.h:
* WebKit.xcodeproj/project.pbxproj:

Source/WTF:

Add a condition macro to determine if SecKeyProxy SPI exists.

* wtf/Platform.h:

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

15 months agoFix Issues with Loupe Gesture
megan_gardner@apple.com [Thu, 24 May 2018 21:03:44 +0000 (21:03 +0000)]
Fix Issues with Loupe Gesture
https://bugs.webkit.org/show_bug.cgi?id=185926

Reviewed by Tim Horton.

The loupe gesture was not giving us the correct selection in some situations.

* UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView gestureRecognizer:canBePreventedByGestureRecognizer:]):
(-[WKContentView gestureRecognizer:shouldRecognizeSimultaneouslyWithGestureRecognizer:]):
(-[WKContentView setSelectedTextRange:]):
* WebProcess/WebPage/WebPage.h:
* WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::selectWithGesture):
(WebKit::WebPage::clearSelection):

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

15 months agoDon't track resource load milestones in private sessions
krollin@apple.com [Thu, 24 May 2018 20:54:21 +0000 (20:54 +0000)]
Don't track resource load milestones in private sessions
https://bugs.webkit.org/show_bug.cgi?id=185828
<rdar://problem/40424197>

Reviewed by Brent Fulgham.

Bug 184838 adds the facility for tracing the beginning and ending of
resources loads and reporting so that historical information can be
gathered to assess the health of the networking stack. Disable this
facility for private browsing sessions.

* NetworkProcess/NetworkConnectionToWebProcess.cpp:
(WebKit::NetworkConnectionToWebProcess::startTrackingResourceLoad):
(WebKit::NetworkConnectionToWebProcess::stopTrackingResourceLoad):
* NetworkProcess/NetworkConnectionToWebProcess.h:
* NetworkProcess/NetworkResourceLoader.cpp:
(WebKit::NetworkResourceLoader::start):

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

15 months agoREGRESSION(r224908): [macOS] Media playback not honoring custom caption styles
bfulgham@apple.com [Thu, 24 May 2018 20:33:17 +0000 (20:33 +0000)]
REGRESSION(r224908): [macOS] Media playback not honoring custom caption styles
https://bugs.webkit.org/show_bug.cgi?id=185955
<rdar://problem/40339278>

Reviewed by Eric Carlson.

In r224908 I removed access to the MediaAccessibility mach port, as well as
read/write access to various preferences associated with that process, as it
was no longer needed by modern WebKit media routines.

Detailed testing reveals that read access is still needed to these preferences
to properly handle custom caption styles.

This patch re-enables access to the media accessibility preferences.

* WebProcess/com.apple.WebProcess.sb.in:

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

15 months agoREGRESSION(r230269): ASSERTION FAILED: sendRightCount == 1 at ProcessLauncherMac...
bfulgham@apple.com [Thu, 24 May 2018 19:32:12 +0000 (19:32 +0000)]
REGRESSION(r230269): ASSERTION FAILED: sendRightCount == 1 at ProcessLauncherMac.mm(218)
https://bugs.webkit.org/show_bug.cgi?id=185687
<rdar://problem/39386361>

Reviewed by Brady Eidson.

In r230269 I added an assertion to help identify cases where we were doing bad
bookkeeping in our port send rights. I assumed that because we were adding
one send right, that when we went to close down the connection that we should
have only one send right.

I have since discovered that this assumption is invalid, and that I should
only be checking that we have AT LEAST ONE send right at the time we attempt
to remove it.

This patch changes the assertion to confirm that we have at least one send
right before we remove the send right.

* UIProcess/Launcher/mac/ProcessLauncherMac.mm:
(WebKit::ProcessLauncher::launchProcess):

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

15 months agoCache navigator.userAgent for performance
cdumez@apple.com [Thu, 24 May 2018 19:23:15 +0000 (19:23 +0000)]
Cache navigator.userAgent for performance
https://bugs.webkit.org/show_bug.cgi?id=185952

Reviewed by Geoffrey Garen.

Cache navigator.userAgent for performance. Previously, we would ask the client 5 times
while loading apple.com.

* page/Navigator.cpp:
(WebCore::Navigator::userAgent const):
* page/Navigator.h:
* page/NavigatorBase.h:
* page/NavigatorID.idl:
* page/WorkerNavigator.cpp:
(WebCore::WorkerNavigator::userAgent const):
* page/WorkerNavigator.h:

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

15 months agoSome of the work in initializeLogChannelsIfNecessary() is unnecessary for release...
cdumez@apple.com [Thu, 24 May 2018 19:23:00 +0000 (19:23 +0000)]
Some of the work in initializeLogChannelsIfNecessary() is unnecessary for release builds
https://bugs.webkit.org/show_bug.cgi?id=185951

Reviewed by Geoffrey Garen.

Some of the work in initializeLogChannelsIfNecessary() is unnecessary for release builds and slows down
launch time. In particular, it is unnecessary to read NSDefaults to figure out which logging channels
should be enabled.

Source/WebCore:

* platform/mac/LoggingMac.mm:
(WebCore::logLevelString):
* platform/unix/LoggingUnix.cpp:
(WebCore::logLevelString):
* platform/win/LoggingWin.cpp:
(WebCore::logLevelString):

Source/WebCore/PAL:

* pal/cocoa/LoggingCocoa.mm:
(PAL::logLevelString):
* pal/unix/LoggingUnix.cpp:
(PAL::logLevelString):
* pal/win/LoggingWin.cpp:
(PAL::logLevelString):

Source/WebKit:

* Platform/foundation/LoggingFoundation.mm:
(WebKit::logLevelString):
* Platform/unix/LoggingUnix.cpp:
(WebKit::logLevelString):
* Platform/win/LoggingWin.cpp:
(WebKit::logLevelString):

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

15 months agoCrash under WebKit::PluginProxy::destroy()
pvollan@apple.com [Thu, 24 May 2018 19:13:28 +0000 (19:13 +0000)]
Crash under WebKit::PluginProxy::destroy()
https://bugs.webkit.org/show_bug.cgi?id=185841
<rdar://problem/39936896>

Reviewed by Brent Fulgham.

A release assert in Connection::sencSync is failing since scripts are not allowed in this context,
and the WebKit process is allowed to process incoming messages while waiting for the sync reply.
In this context, scripts are disallowed in the method Element::addShadowRoot. To make sure the
WebContent process will not wait indefinitely for a reply from the Plugin process, use a timeout
of 1 second when sending the message.

* WebProcess/Plugins/PluginProxy.cpp:
(WebKit::PluginProxy::destroy):

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

15 months ago[iOS WK2] Layout Test imported/w3c/web-platform-tests/service-workers/service-worker...
cdumez@apple.com [Thu, 24 May 2018 18:10:05 +0000 (18:10 +0000)]
[iOS WK2] Layout Test imported/w3c/web-platform-tests/service-workers/service-worker/update-after-navigation-fetch-event.https.html is a flaky failure
https://bugs.webkit.org/show_bug.cgi?id=181499
<rdar://problem/36443428>

Reviewed by Youenn Fablet.

Source/WebCore:

After resolving a registration promise, we send an IPC back to the StorageProcess
for synchronization purposes, to make sure the registration does not get updated
before the promise's JS code has been executed. However, resolving a promise
schedules a microtask to run the JS and we would therefore send the IPC back too
early, thus causing flakiness. We now only send the IPC back back only after that
microtask has run and the JS has been executed.

* bindings/js/JSDOMPromiseDeferred.cpp:
(WebCore::DeferredPromise::callFunction):
(WebCore::DeferredPromise::whenSettled):
* bindings/js/JSDOMPromiseDeferred.h:
* workers/service/ServiceWorkerContainer.cpp:
(WebCore::ServiceWorkerContainer::jobResolvedWithRegistration):

LayoutTests:

Unskip test that should no longer be flaky.

* platform/ios/TestExpectations:

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

15 months ago[PaymentRequest] Remove currencySystem member
commit-queue@webkit.org [Thu, 24 May 2018 17:09:59 +0000 (17:09 +0000)]
[PaymentRequest] Remove currencySystem member
https://bugs.webkit.org/show_bug.cgi?id=185860

Patch by Jinho Bang <zino@chromium.org> on 2018-05-24
Reviewed by Andy Estes.

Source/WebCore:

After a long discussion, Web Payment Working Group decided to remove
the `currencySystem` member[1]. The currency code should be well-formed
3-letter alphabetic code and is allowed even if that is not part of
the official ISO 4217 list.

[1] https://github.com/w3c/payment-request/pull/694

Test: http/tests/inspector/paymentrequest/payment-request-internal-properties.https.html

* Modules/paymentrequest/PaymentCurrencyAmount.h:
* Modules/paymentrequest/PaymentCurrencyAmount.idl:
* Modules/paymentrequest/PaymentRequest.cpp:
(WebCore::checkAndCanonicalizeAmount):
(WebCore::checkAndCanonicalizeTotal):
* inspector/WebInjectedScriptHost.cpp:
(WebCore::objectForPaymentCurrencyAmount):

LayoutTests:

* http/tests/inspector/paymentrequest/payment-request-internal-properties.https-expected.txt:
* http/tests/inspector/paymentrequest/payment-request-internal-properties.https.html:

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

15 months ago[LFC] Implement position computation for inflow positioned elements
zalan@apple.com [Thu, 24 May 2018 16:57:24 +0000 (16:57 +0000)]
[LFC] Implement position computation for inflow positioned elements
https://bugs.webkit.org/show_bug.cgi?id=185936

Reviewed by Antti Koivisto.

* layout/blockformatting/BlockFormattingContext.cpp:
(WebCore::Layout::BlockFormattingContext::computeInFlowPositionedPosition const):
* layout/blockformatting/BlockFormattingContext.h:
* layout/blockformatting/BlockFormattingContextGeometry.cpp:
(WebCore::Layout::BlockFormattingContext::Geometry::inFlowPositionedPosition):

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

15 months ago[LFC] Implement FormattingContext::placeInFlowPositionedChildren
zalan@apple.com [Thu, 24 May 2018 15:01:11 +0000 (15:01 +0000)]
[LFC] Implement FormattingContext::placeInFlowPositionedChildren
https://bugs.webkit.org/show_bug.cgi?id=185934

Reviewed by Antti Koivisto.

* layout/FormattingContext.cpp:
(WebCore::Layout::FormattingContext::computeInFlowPositionedPosition const):
(WebCore::Layout::FormattingContext::placeInFlowPositionedChildren const):
* layout/FormattingContext.h:
* layout/blockformatting/BlockFormattingContext.cpp:
(WebCore::Layout::BlockFormattingContext::layout const):

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

15 months agoUnreviewed. Fix GTK+ input method unit tests after r232049.
carlosgc@webkit.org [Thu, 24 May 2018 09:41:17 +0000 (09:41 +0000)]
Unreviewed. Fix GTK+ input method unit tests after r232049.

Unit tests don't use a WebPageProxy.

* UIProcess/gtk/InputMethodFilter.cpp:
(WebKit::InputMethodFilter::isViewFocused const):
(WebKit::InputMethodFilter::setEnabled):
* UIProcess/gtk/InputMethodFilter.h:

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

15 months agoWebDriver: implement maximize, minimize and fullscreen window commands
carlosgc@webkit.org [Thu, 24 May 2018 08:54:37 +0000 (08:54 +0000)]
WebDriver: implement maximize, minimize and fullscreen window commands
https://bugs.webkit.org/show_bug.cgi?id=180398

Reviewed by Brian Burg.

Source/WebDriver:

* CMakeLists.txt: Add EnterFullscreen.js to the build.
* Session.cpp:
(WebDriver::Session::maximizeWindow):
(WebDriver::Session::minimizeWindow):
(WebDriver::Session::fullscreenWindow):
* Session.h:
* WebDriverService.cpp:
(WebDriver::WebDriverService::maximizeWindow):
(WebDriver::WebDriverService::minimizeWindow):
(WebDriver::WebDriverService::fullscreenWindow):
* WebDriverService.h:

Source/WebKit:

* UIProcess/API/APIAutomationSessionClient.h:
(API::AutomationSessionClient::requestMaximizeWindowOfPage): Added to allow clients maximize the window.
* UIProcess/API/glib/WebKitAutomationSession.cpp:
* UIProcess/API/glib/WebKitWebViewPrivate.h:
* UIProcess/API/gtk/WebKitWebViewGtk.cpp:
(WindowStateEvent::WindowStateEvent): Struct to handle window state events.
(WindowStateEvent::~WindowStateEvent): Complete the event.
(WindowStateEvent::complete): Call the completion handler is not called already.
(windowStateEventCallback): Handle window state event changes.
(webkitWebViewMaximizeWindow): Try to maximize the window and wait for the event.
(webkitWebViewMinimizeWindow): Try to minimize the window and wait for the event.
(webkitWebViewRestoreWindow): Try to unmaximize or unminimize the window and wait for the event.
* UIProcess/API/wpe/WebKitWebViewWPE.cpp:
(webkitWebViewMaximizeWindow):
(webkitWebViewMinimizeWindow):
(webkitWebViewRestoreWindow):
* UIProcess/Automation/Automation.json:
* UIProcess/Automation/WebAutomationSession.cpp:
(WebKit::WebAutomationSession::maximizeWindowOfBrowsingContext): Exit fullscreen, restore the window and then
maximize it.
(WebKit::WebAutomationSession::maximizeWindowForPage): Ask the client to maximize the window of page.
* UIProcess/Automation/WebAutomationSession.h:
* UIProcess/Automation/atoms/EnterFullscreen.js:
(enterFullscreen): Return early if fullscreen is disabled or if window is already in fullscreen.

Tools:

* Scripts/webkitpy/port/xvfbdriver.py:
(XvfbDriver._setup_environ_for_test): Set UNDER_XVFB environment variable when running under Xvfb.

WebDriverTests:

Remove expectations for tests that are passing now.

* TestExpectations.json:

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

15 months ago[GStreamer] Save some time disabling some compile options in the dependencies
calvaris@igalia.com [Thu, 24 May 2018 08:04:41 +0000 (08:04 +0000)]
[GStreamer] Save some time disabling some compile options in the dependencies
https://bugs.webkit.org/show_bug.cgi?id=185909

Reviewed by Philippe Normand.

* gstreamer/jhbuild.modules: Added  --disable-tests to gstreamer
and --disable-examples --disable-gtk-doc to gstreamer-vaapi.

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

15 months agoUse ASCIILiteral with applicationBundleIsEqualTo in RuntimeApplicationChecksCocoa
commit-queue@webkit.org [Thu, 24 May 2018 05:42:10 +0000 (05:42 +0000)]
Use ASCIILiteral with applicationBundleIsEqualTo in RuntimeApplicationChecksCocoa
https://bugs.webkit.org/show_bug.cgi?id=185935

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2018-05-23
Reviewed by Yusuke Suzuki.

* platform/cocoa/RuntimeApplicationChecksCocoa.mm:
(WebCore::MacApplication::isSafari):
(WebCore::MacApplication::isAppleMail):
(WebCore::MacApplication::isIBooks):
(WebCore::MacApplication::isITunes):
(WebCore::MacApplication::isMicrosoftMessenger):
(WebCore::MacApplication::isAdobeInstaller):
(WebCore::MacApplication::isAOLInstantMessenger):
(WebCore::MacApplication::isMicrosoftMyDay):
(WebCore::MacApplication::isMicrosoftOutlook):
(WebCore::MacApplication::isQuickenEssentials):
(WebCore::MacApplication::isAperture):
(WebCore::MacApplication::isVersions):
(WebCore::MacApplication::isHRBlock):
(WebCore::MacApplication::isIAdProducer):
(WebCore::MacApplication::isSolidStateNetworksDownloader):
(WebCore::IOSApplication::isMobileMail):
(WebCore::IOSApplication::isMobileSafari):
(WebCore::IOSApplication::isWebBookmarksD):
(WebCore::IOSApplication::isDumpRenderTree):
(WebCore::IOSApplication::isMobileStore):
(WebCore::IOSApplication::isSpringBoard):
(WebCore::IOSApplication::isWebApp):
(WebCore::IOSApplication::isIBooks):
(WebCore::IOSApplication::isIBooksStorytime):
(WebCore::IOSApplication::isTheSecretSocietyHiddenMystery):
(WebCore::IOSApplication::isCardiogram):
(WebCore::IOSApplication::isNike):

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

15 months agoAvoid keeping FormState alive longer than necessary
bfulgham@apple.com [Thu, 24 May 2018 05:23:00 +0000 (05:23 +0000)]
Avoid keeping FormState alive longer than necessary
https://bugs.webkit.org/show_bug.cgi?id=185877
<rdar://problem/39329219>

Reviewed by Ryosuke Niwa.

A number of crash fixes were done to prevent FormState objects from being
accessed after their relevant Frames had been destroyed. Unfortunately, this
could cause the FormState to persist after the owning Frame had been
destroyed, resulting in nullptr dereferences.

This patch does the following:

1. Uses WeakPtr's for FormState objects passed to completion handlers, rather
   than RefPtr, since those completion handlers might fire as part of the
   clean-up process during Frame destruction. This allows us to use the FormState
   if they are still valid, but gracefully handle cases where a form submission
   is cancelled in-flight.
2. Moves FormState object as they pass through the loader.
3. Removes some extraneous WTFMove() calls being made on bare FormState pointers.
4. Changes FormSubmission to hold a RefPtr so we can move the FormState to the
   loader in the code path that uses it (the FormSubmission is always destroyed
   shortly afterwards).
5. Changes the trap from Bug 183704 so that it only fires if the FormState object
   is being retained more than once.

* loader/DocumentLoader.cpp:
(WebCore::DocumentLoader::willSendRequest): Update for new CompletionHandler
signature.
* loader/FormState.cpp:
(WebCore::FormState::willDetachPage): Revise trap to check for retain counts
above one.
* loader/FormState.h:
(WebCore::FormState::weakPtrFactory const): Added.
* loader/FormSubmission.h:
(WebCore::FormSubmission::state const): Revised for change to RefPtr.
(WebCore::FormSubmission::takeState): Added.
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::urlSelected): Update for new CompletionHandler signature.
(WebCore::FrameLoader::loadURLIntoChildFrame): Ditto.
(WebCore::FrameLoader::loadFrameRequest): Ditto.
(WebCore::FrameLoader::loadURL): Ditto.
(WebCore::FrameLoader::load): Ditto.
(WebCore::FrameLoader::loadWithNavigationAction): Ditto.
(WebCore::FrameLoader::loadWithDocumentLoader): Ditto.
(WebCore::FrameLoader::reloadWithOverrideEncoding): Ditto.
(WebCore::FrameLoader::reload): Ditto.
(WebCore::FrameLoader::loadPostRequest): Ditto.
(WebCore::FrameLoader::loadDifferentDocumentItem): Ditto.
* loader/FrameLoader.h:
* loader/NavigationScheduler.cpp:
* loader/PolicyChecker.cpp:
(WebCore::PolicyChecker::checkNavigationPolicy):Revise to use WeakPtr for
FormState passed to the completion handler. Remove some extraneous WTFMove()
calls on bare pointers.
(WebCore::PolicyChecker::checkNewWindowPolicy): Ditto.
* loader/PolicyChecker.h:
* page/ContextMenuController.cpp:
(WebCore::openNewWindow): Revise for new signatures.
(WebCore::ContextMenuController::contextMenuItemSelected): Ditto.

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

15 months agoRegression(r229831): fast/loader/javascript-url-iframe-remove-on-navigate-async-deleg...
cdumez@apple.com [Thu, 24 May 2018 04:08:43 +0000 (04:08 +0000)]
Regression(r229831): fast/loader/javascript-url-iframe-remove-on-navigate-async-delegate.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=183885
<rdar://problem/38733968>

Reviewed by Youenn Fablet.

Stop loading an external URL as this is not what the test is testing and since the error message for
the external load causes flakiness.

* TestExpectations:
* fast/loader/javascript-url-iframe-remove-on-navigate-async-delegate-expected.txt:
* fast/loader/javascript-url-iframe-remove-on-navigate-async-delegate.html:
* fast/loader/javascript-url-iframe-remove-on-navigate-expected.txt:
* fast/loader/javascript-url-iframe-remove-on-navigate.html:

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

15 months agoExpose $vm if window.internals is exposed
keith_miller@apple.com [Thu, 24 May 2018 03:01:43 +0000 (03:01 +0000)]
Expose $vm if window.internals is exposed
https://bugs.webkit.org/show_bug.cgi?id=185900

Reviewed by Mark Lam.

This is useful for testing vm internals when running LayoutTests.

Source/JavaScriptCore:

* runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::init):
(JSC::JSGlobalObject::visitChildren):
(JSC::JSGlobalObject::exposeDollarVM):
* runtime/JSGlobalObject.h:

Source/WebCore:

* testing/js/WebCoreTestSupport.cpp:
(WebCoreTestSupport::injectInternalsObject):

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

15 months agoOSBuildFetcher should respect maxRevision while finding OS builds to report.
dewei_zhu@apple.com [Thu, 24 May 2018 01:18:20 +0000 (01:18 +0000)]
OSBuildFetcher should respect maxRevision while finding OS builds to report.
https://bugs.webkit.org/show_bug.cgi?id=185925

Reviewed by Ryosuke Niwa.

* server-tests/tools-os-build-fetcher-tests.js: Fix a typo in the unit tests.
Added unit tests for this change. Aslo convert an existing test using async.
* tools/js/os-build-fetcher.js:
(prototype._fetchAvailableBuilds): It should also use 'maxRevision' to filter builds to be reported.
It should use 'minRevisionOrder' when no commit has ever been submitted.
(prototype._commitsForAvailableBuilds): Takes 'maxOrder' as fifth argument.
'minOrder' and 'maxOrder' should be inclusive.

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

15 months agoUpdate ChartPane per change r231087.
dewei_zhu@apple.com [Thu, 24 May 2018 01:18:17 +0000 (01:18 +0000)]
Update ChartPane per change r231087.
https://bugs.webkit.org/show_bug.cgi?id=185570

Reviewed by Ryosuke Niwa.

On r231087 we change the return type of AnalysisTask.create, ChartPane needs to adapt
this change.

* public/v3/pages/chart-pane.js: Adapted the change that AnalysisTask.create now returns
an AnalysisTask object.
(ChartPane.prototype.async._analyzeRange):

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

15 months agoRemove Source Sans Pro from WebKit website
commit-queue@webkit.org [Thu, 24 May 2018 00:53:08 +0000 (00:53 +0000)]
Remove Source Sans Pro from WebKit website
https://bugs.webkit.org/show_bug.cgi?id=185871

Patch by Roy Reapor <rreapor@apple.com> on 2018-05-23
Reviewed by Aakash Jain.

* demos/spring/index.html:

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

15 months agoDon't create the SubimageCache just to clear an image from it
ddkilzer@apple.com [Thu, 24 May 2018 00:50:16 +0000 (00:50 +0000)]
Don't create the SubimageCache just to clear an image from it
<https://webkit.org/b/185757>

Reviewed by Said Abou-Hallawa.

To fix this we make SubimageCacheWithTimer::clearImage() a
static class method that checks whether the cache exists before
removing it.  We also make SubimageCacheWithTimer::getImage() a
static class method, and move more methods into the
SubimageCacheWithTimer class and make them private to reduce API
footprint.

* platform/graphics/cg/GraphicsContextCG.cpp:
(WebCore::GraphicsContext::drawNativeImage): Switch to use new
SubimageCacheWithTimer::getSubimage() static class method.
* platform/graphics/cg/NativeImageCG.cpp:
(WebCore::clearNativeImageSubimages): Switch to use new
SubimageCacheWithTimer::clearImage() static class method which
returns early if the subimage cache has not been created yet.
This fixes the bug.

* platform/graphics/cg/SubimageCacheWithTimer.cpp:
(WebCore::SubimageCacheWithTimer::s_cache): Allocate space for
static class variable.
(WebCore::SubimageCacheWithTimer::getSubimage): Replace instance
method with new static class method that gets the subimage cache
singleton and calls the subimage() instance method.
(WebCore::SubimageCacheWithTimer::clearImage): Replace instance
methdod with new static class method that returns early if the
static cache singleton doesn't exist (fixes the bug), otherwise
calls the clearImageAndSubimages() instance method.
(WebCore::SubimageCacheWithTimer::subimage): Rename from
getSubimage().  Use `auto` after renaming SubimageCache typedef
to SubimageCacheHashSet.
(WebCore::SubimageCacheWithTimer::clearImageAndSubimages):
Rename from clearImage().  Modernize loops.
(WebCore::SubimageCacheWithTimer::subimageCache): Change
WebCore::subimageCache() to a static class method that creates
the subimage cache singleton if it doesn't exist yet, and
returns it.
(WebCore::SubimageCacheWithTimer::subimageCacheExists): Add.
Returns false if the subimage cache singleton has not been
created yet.

* platform/graphics/cg/SubimageCacheWithTimer.h:
- Rename typedef SubimageCache to SubimageCacheHashSet to avoid
  general confusion.
(WebCore::SubimageCacheWithTimer::getSubimage):
(WebCore::SubimageCacheWithTimer::clearImage):
- Change to static class methods.
(WebCore::SubimageCacheWithTimer::SubimageCacheWithTimer):
- Make private.
(WebCore::SubimageCacheWithTimer::subimage):
- Rename from getSubimage() and make private.
(WebCore::SubimageCacheWithTimer::clearImageAndSubimages):
- Rename from clearImage() and make private.
(WebCore::SubimageCacheWithTimer::subimageCache):
- Rename from WebCore::subimageCache() and make a private static
  class method.
(WebCore::SubimageCacheWithTimer::subimageCacheExists):
- Add private static class method.
(WebCore::SubimageCacheWithTimer::s_cache):
- Declare private static variable to hold singleton.

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

15 months agoDefine length on CoW array should properly convert to writable
keith_miller@apple.com [Thu, 24 May 2018 00:47:35 +0000 (00:47 +0000)]
Define length on CoW array should properly convert to writable
https://bugs.webkit.org/show_bug.cgi?id=185927

Reviewed by Yusuke Suzuki.

JSTests:

* stress/cow-define-length-as-value.js: Added.
(test):

Source/JavaScriptCore:

* runtime/JSArray.cpp:
(JSC::JSArray::setLength):

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

15 months agoUse Helvetica on build.webkit.org webpages
commit-queue@webkit.org [Thu, 24 May 2018 00:05:54 +0000 (00:05 +0000)]
Use Helvetica on build.webkit.org webpages
https://bugs.webkit.org/show_bug.cgi?id=185894

Patch by Roy Reapor <rreapor@apple.com> on 2018-05-23
Reviewed by Aakash Jain.

* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/garden-o-matic.html:
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/styles/common.css:
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/summary-mock.html:

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

15 months agoAvoid loading AVFoundation to check supported MIME types if possible
eric.carlson@apple.com [Thu, 24 May 2018 00:00:54 +0000 (00:00 +0000)]
Avoid loading AVFoundation to check supported MIME types if possible
https://bugs.webkit.org/show_bug.cgi?id=185839
<rdar://problem/40182010>

Reviewed by Jer Noble.
Source/WebCore:

Avoid loading AVFoundation to call +[AVURLAssetClass audiovisualMIMETypes] as long as possible,
and when they are loaded send the list to the UI process so it can pass it to all extant
and all new web processes so they can won't have call it at all.

* WebCore.xcodeproj/project.pbxproj:
* platform/graphics/ImageDecoder.cpp:
(WebCore::ImageDecoder::create): Don't call ImageDecoderAVFObjC::canDecodeType if
ImageDecoderCG can decode the type so we don't have to load AVFoundation.
(WebCore::ImageDecoder::supportsMediaType): Return as soon as a decoder class says
it supports a media type to avoid calling more than one. Call ImageDecoderAVFObjC last.

* platform/graphics/avfoundation/objc/AVFoundationMIMETypeCache.h:
(WebCore::AVFoundationMIMETypeCache::setCacheMIMETypesCallback):
* platform/graphics/avfoundation/objc/AVFoundationMIMETypeCache.mm:
(WebCore::AVFoundationMIMETypeCache::singleton): Simplify.
(WebCore::AVFoundationMIMETypeCache::setSupportedTypes): Cache the supplied list of types
so we won't have to load AVFoundation when asked for types later.
(WebCore::AVFoundationMIMETypeCache::types):
(WebCore::AVFoundationMIMETypeCache::supportsContentType): New convenience routine.
(WebCore::AVFoundationMIMETypeCache::canDecodeType): Ditto.
(WebCore::AVFoundationMIMETypeCache::isAvailable const): New, check to see if AVFoundation.framework
is available without actually loading it.
(WebCore::AVFoundationMIMETypeCache::loadMIMETypes): Load types if possible.
(WebCore::AVFoundationMIMETypeCache::AVFoundationMIMETypeCache): Deleted.
(WebCore::AVFoundationMIMETypeCache::loadTypes): Deleted.

* platform/graphics/avfoundation/objc/ImageDecoderAVFObjC.mm:
(WebCore::ImageDecoderAVFObjC::create): Use AVFoundationMIMETypeCache::isAvailable instead
of loading the frameworks.
(WebCore::ImageDecoderAVFObjC::supportsMediaType): Ditto.
(WebCore::ImageDecoderAVFObjC::supportsContentType): Use AVFoundationMIMETypeCache::supportsContentType.
(WebCore::ImageDecoderAVFObjC::canDecodeType): Use AVFoundationMIMETypeCache::canDecodeType.

* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::MediaPlayerPrivateAVFoundationObjC::registerMediaEngine): ASSERT if the
AVFoundationMIMETypeCache is empty, it shouldn't be possible to get here in that state.
(WebCore::MediaPlayerPrivateAVFoundationObjC::supportsType): Use AVFoundationMIMETypeCache::supportsContentType.
(WebCore::MediaPlayerPrivateAVFoundationObjC::supportsKeySystem): Use AVFoundationMIMETypeCache::canDecodeType.

* platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::registerMediaEngine): ASSERT if the
AVFoundationMIMETypeCache is empty, it shouldn't be possible to get here in that state.
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::supportsType): Use AVFoundationMIMETypeCache::canDecodeType.

* platform/graphics/cg/ImageDecoderCG.cpp:
(WebCore::ImageDecoderCG::canDecodeType): New.
* platform/graphics/cg/ImageDecoderCG.h:

Source/WebKit:

* Shared/WebProcessCreationParameters.cpp:
(WebKit::WebProcessCreationParameters::encode const): Encode mediaMIMETypes.
(WebKit::WebProcessCreationParameters::decode): Decode mediaMIMETypes.
* Shared/WebProcessCreationParameters.h:

* UIProcess/Cocoa/WebProcessProxyCocoa.mm:
(WebKit::mediaTypeCache): Static Vector of media MIME types.
(WebKit::WebProcessProxy::cacheMediaMIMETypes): Cache the type list and pass it to every other
process proxy.
(WebKit::WebProcessProxy::cacheMediaMIMETypesInternal): Cache the type list and pass it to the
web process.
(WebKit::WebProcessProxy::mediaMIMETypes): Return the cached type list.

* UIProcess/WebProcessPool.cpp:
(WebKit::WebProcessPool::initializeNewWebProcess): Set parameters.mediaMIMETypes.

* UIProcess/WebProcessProxy.h:
* UIProcess/WebProcessProxy.messages.in: Add CacheMediaMIMETypes.

* WebProcess/WebProcess.h:
* WebProcess/WebProcess.messages.in: Add SetMediaMIMETypes.

* WebProcess/cocoa/WebProcessCocoa.mm:
(WebKit::WebProcess::platformInitializeWebProcess): Cache the MIME types if the list isn't
empty, else register with AVFoundationMIMETypeCache to be notified when it loads types.
AVFoundationMIMETypeCache to
(WebKit::WebProcess::platformTerminate): Unregister with AVFoundationMIMETypeCache.
(WebKit::WebProcess::setMediaMIMETypes): Pass list of types to AVFoundationMIMETypeCache.

Source/WTF:

* wtf/cocoa/SoftLinking.h: Add SOFT_LINK_FRAMEWORK_OPTIONAL_PREFLIGHT.

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

15 months agoAdd Buildbot configuration for Opensource EWS
aakash_jain@apple.com [Wed, 23 May 2018 23:41:43 +0000 (23:41 +0000)]
Add Buildbot configuration for Opensource EWS
https://bugs.webkit.org/show_bug.cgi?id=185484

Rubber-stamped by Alexey Proskuryakov.

* BuildSlaveSupport/ews-build/config.json: Added, config file.
* BuildSlaveSupport/ews-build/factories.py: Added, basic template for factories.
* BuildSlaveSupport/ews-build/loadConfig.py: Added.
(loadBuilderConfig): Loads the configuration.
(checkValidWorker): Checks if the worker is valid.
(checkValidBuilder): Checks if the builder is valid.
(checkWorkersAndBuildersForConsistency): Check if workers and builders are consistent.
(checkWorkersAndBuildersForConsistency._find_worker_with_name):
(getBlackListedTags): Returns a list of keywords which should not be listed as tags.
(getValidTags): Returns a list of valid tags.
(getTagsForBuilder): Return a list of tags for given builder.
* BuildSlaveSupport/ews-build/loadConfig_unittest.py: unit-tests for loadConfig.py.
* BuildSlaveSupport/ews-build/master.cfg: Configuration for buildbot.

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

15 months agoInPlaceAbstractState should filter variables at the tail from a GetLocal by their...
keith_miller@apple.com [Wed, 23 May 2018 23:04:58 +0000 (23:04 +0000)]
InPlaceAbstractState should filter variables at the tail from a GetLocal by their flush format
https://bugs.webkit.org/show_bug.cgi?id=185923

Reviewed by Saam Barati.

Previously, we could confuse AI by overly broadening a type. This happens when a block in a
loop has a local mutated following a GetLocal but never SetLocaled to the stack. For example,

Block 1:
@1: GetLocal(loc42, FlushedInt32);
@2: PutStructure(Check: Cell: @1);
@3: Jump(Block 1);

Would cause us to claim that loc42 could be either an int32 or a some cell. However,
the type of an local cannot change without writing to it.

This fixes a crash in destructuring-rest-element.js

* dfg/DFGInPlaceAbstractState.cpp:
(JSC::DFG::InPlaceAbstractState::endBasicBlock):

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

15 months agoWeb Automation: disable process swap on navigation when an automation session is...
bburg@apple.com [Wed, 23 May 2018 22:55:28 +0000 (22:55 +0000)]
Web Automation: disable process swap on navigation when an automation session is active
https://bugs.webkit.org/show_bug.cgi?id=185552

Reviewed by Tim Horton.

* UIProcess/WebProcessPool.cpp:
(WebKit::WebProcessPool::processForNavigationInternal):
This is not intended to work right now. Opt out to avoid crashing
later when a process is deallocated unexpectedly.

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

15 months agoSpeed up JetStream/base64
fpizlo@apple.com [Wed, 23 May 2018 22:34:18 +0000 (22:34 +0000)]
Speed up JetStream/base64
https://bugs.webkit.org/show_bug.cgi?id=185914

Reviewed by Michael Saboff.

Source/JavaScriptCore:

Make allocation fast paths ALWAYS_INLINE.

This is a 1% speed-up on SunSpider, mostly because of base64. It also speeds up pdfjs by
~6%.

* CMakeLists.txt:
* JavaScriptCore.xcodeproj/project.pbxproj:
* heap/AllocatorInlines.h:
(JSC::Allocator::allocate const):
* heap/CompleteSubspace.cpp:
(JSC::CompleteSubspace::allocateNonVirtual): Deleted.
* heap/CompleteSubspace.h:
* heap/CompleteSubspaceInlines.h: Added.
(JSC::CompleteSubspace::allocateNonVirtual):
* heap/FreeListInlines.h:
(JSC::FreeList::allocate):
* heap/IsoSubspace.cpp:
(JSC::IsoSubspace::allocateNonVirtual): Deleted.
* heap/IsoSubspace.h:
(JSC::IsoSubspace::allocatorForNonVirtual):
* heap/IsoSubspaceInlines.h: Added.
(JSC::IsoSubspace::allocateNonVirtual):
* runtime/JSCellInlines.h:
* runtime/VM.h:

Source/WTF:

Make Vector<>::append ALWAYS_INLINE.

* wtf/Vector.h:
(WTF::Vector::append):
(WTF::minCapacity>::expandCapacity):
(WTF::minCapacity>::append):
(WTF::minCapacity>::tryAppend):

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

15 months agoVersioning.
bshafiei@apple.com [Wed, 23 May 2018 22:03:20 +0000 (22:03 +0000)]
Versioning.

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

15 months agoRenderLayer::scrollRectToVisible() should not propagate a subframe's scroll to its...
cdumez@apple.com [Wed, 23 May 2018 20:22:18 +0000 (20:22 +0000)]
RenderLayer::scrollRectToVisible() should not propagate a subframe's scroll to its cross-origin parent
https://bugs.webkit.org/show_bug.cgi?id=185664
<rdar://problem/36185260>

Reviewed by Simon Fraser.

Source/WebCore:

RenderLayer::scrollRectToVisible() should not propagate a subframe's scroll to its
cross-origin parent. There was logic in FrameLoader::scrollToFragmentWithParentBoundary()
to temporarily set the 'safeToPropagateScrollToParent' flag to false on the cross-origin
ancestor frame during the call to FrameView::scrollToFragment(). This would correctly
prevent RenderLayer::scrollRectToVisible() to propagate the scroll to the cross-origin
ancestor frame when scrollRectToVisible() is called synchronously. However,
scrollRectToVisible() can get called asynchronously in case of a dirty layout, as part
of the post layout tasks.

To address the issue, we get rid of the safeToPropagateScrollToParent flag on FrameView
and instead update FrameView::safeToPropagateScrollToParent() to do the cross-origin
check. FrameView::safeToPropagateScrollToParent() is called by RenderLayer::scrollRectToVisible()
and this is a lot more robust than relying on a flag which gets temporarily set.

Test: http/tests/navigation/fragment-navigation-cross-origin-subframe-no-scrolling-parent.html

* dom/Document.cpp:
* dom/Document.h:
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::scrollToFragmentWithParentBoundary):
* page/FrameView.cpp:
(WebCore::FrameView::FrameView):
(WebCore::FrameView::reset):
(WebCore::FrameView::safeToPropagateScrollToParent const):
* page/FrameView.h:

LayoutTests:

Add layout test coverage.

* http/tests/navigation/fragment-navigation-cross-origin-subframe-no-scrolling-parent-expected.txt: Added.
* http/tests/navigation/fragment-navigation-cross-origin-subframe-no-scrolling-parent.html: Added.
* http/tests/navigation/resources/clear-fragment.html: Added.

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

15 months agoDate.parse() doesn't properly handle input outside of ES Spec limits
msaboff@apple.com [Wed, 23 May 2018 20:02:37 +0000 (20:02 +0000)]
Date.parse() doesn't properly handle input outside of ES Spec limits
https://bugs.webkit.org/show_bug.cgi?id=185868

Reviewed by Mark Lam.

JSTests:

New test.

* stress/date-parse-ranges.js: Added.
(shouldBe):
(throw.new.Error):
(shouldBeNaN):

Source/WTF:

Clamped date creation to +/-100,000,000 days relative to midnight at the beginning
of 01 January, 1970 UTC as per ecma262/#sec-time-values-and-time-range and
ecma262/#sec-date-time-string-format.

* wtf/DateMath.cpp:
(WTF::ymdhmsToSeconds):
(WTF::parseES5DateFromNullTerminatedCharacters):

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

15 months agoNetworkLoadChecker should check cached redirections
youenn@apple.com [Wed, 23 May 2018 19:09:08 +0000 (19:09 +0000)]
NetworkLoadChecker should check cached redirections
https://bugs.webkit.org/show_bug.cgi?id=185849

Reviewed by Chris Dumez.

LayoutTests/imported/w3c:

* web-platform-tests/service-workers/service-worker/redirected-response.https-expected.txt:
* web-platform-tests/service-workers/service-worker/registration-security-error.https-expected.txt:

Source/WebCore:

Covered by rebased tests.

* loader/SubresourceLoader.cpp:
(WebCore::SubresourceLoader::willSendRequestInternal):
       Log the case of a redirection with fetch error mode.

Source/WebKit:

* NetworkProcess/NetworkLoadChecker.cpp:
(WebKit::NetworkLoadChecker::checkRedirection):
Set the resource error url as done by WebCore SubresourceLoader.
* NetworkProcess/NetworkResourceLoader.cpp:
(WebKit::NetworkResourceLoader::retrieveCacheEntry):
Pass the resource request to dispatchWillSendRedirectedRequest now needs it.
(WebKit::NetworkResourceLoader::willSendRedirectedRequest):
Make sure that m_networkLoad is not null before cancelling it since we might be checking a cached redirection.
(WebKit::NetworkResourceLoader::continueWillSendRedirectedRequest):
Ensure the redirect response is coming from the Network before adding it to the cache.
(WebKit::NetworkResourceLoader::dispatchWillSendRequestForCacheEntry):
Call willSendRedirectedRequest to make sure the cached redirect is validated.
* NetworkProcess/NetworkResourceLoader.h:

LayoutTests:

* TestExpectations:
* http/tests/fetch/redirectmode-and-preload-expected.txt:
* http/tests/fetch/redirectmode-and-preload.html:
Removed tests that mix manual/error redirect mode with no-cors since this is no longer a valid possibility.
* http/tests/xmlhttprequest/access-control-and-redirects-async-expected.txt:
* http/tests/xmlhttprequest/access-control-and-redirects-expected.txt:
* platform/mac-wk1/http/tests/xmlhttprequest/access-control-and-redirects-async-expected.txt: Removed.

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

15 months agoAX: setValue on contenteditable should preserve whitespace
n_wang@apple.com [Wed, 23 May 2018 18:38:42 +0000 (18:38 +0000)]
AX: setValue on contenteditable should preserve whitespace
https://bugs.webkit.org/show_bug.cgi?id=185897

Reviewed by Chris Fleizach.

Source/WebCore:

RenderText is using its parent renderer's style to determine if
whitespace collapsing is necessary. So when setting the innerText
of the element in setValue, let's also set its style in order to
preserve whitespaces.

Modified an existing test to cover this change.

* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::setValue):

LayoutTests:

* accessibility/mac/set-value-editable-types-expected.txt:
* accessibility/mac/set-value-editable-types.html:

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

15 months agoProhibit shrinking the FastBitVector
mcatanzaro@igalia.com [Wed, 23 May 2018 17:54:01 +0000 (17:54 +0000)]
Prohibit shrinking the FastBitVector
https://bugs.webkit.org/show_bug.cgi?id=181020

Reviewed by Oliver Hunt.

Prohibit shrinking the FastBitVector. It's not prepared for this and the current usage does
not require it.

* wtf/FastBitVector.cpp:
(WTF::FastBitVectorWordOwner::resizeSlow):

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

15 months ago[GTK] Silence GCC 8 warnings
mcatanzaro@igalia.com [Wed, 23 May 2018 17:50:44 +0000 (17:50 +0000)]
[GTK] Silence GCC 8 warnings
https://bugs.webkit.org/show_bug.cgi?id=185556

Reviewed by Žan Doberšek.

Source/WebCore:

Silence remaining -Wcast-function-type warnings by casting through void (*)(void), aka
GCallback.

* accessibility/atk/WebKitAccessibleHyperlink.cpp:
(webkitAccessibleHyperlinkSetProperty):
(webkitAccessibleHyperlinkGetType):
* accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
(webkitAccessibleGetType):
* platform/network/soup/NetworkStorageSessionSoup.cpp:
(WebCore::NetworkStorageSession::getCredentialFromPersistentStorage):

Tools:

GCC is complaining about this strncpy. It's guaranteed to be safe, because the length of
source and destination are always identical. But switching to snprintf avoids the warning.

* DumpRenderTree/TestNetscapePlugIn/Tests/FormValue.cpp:
(FormValue::NPP_GetValue):

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

15 months agoIncrease the simulated memory size on PLATFORM(IOS_SIMULATOR) from 512MB to 1024MB
antti@apple.com [Wed, 23 May 2018 17:39:03 +0000 (17:39 +0000)]
Increase the simulated memory size on PLATFORM(IOS_SIMULATOR) from 512MB to 1024MB
https://bugs.webkit.org/show_bug.cgi?id=185908

Reviewed by Geoffrey Garen.

Source/bmalloc:

We don't support 512MB devices anymore. This will make the simulator behave more
like a real device.

* bmalloc/AvailableMemory.cpp:
(bmalloc::memorySizeAccordingToKernel):

Factor to a function.
Don't use availableMemoryGuess for the simulator value as it is not a guess.

(bmalloc::computeAvailableMemory):

Apply the same adjustments to the simulated value too.

LayoutTests:

* platform/ios-simulator/fast/canvas/canvas-crash-expected.txt:
* platform/ios-simulator/fast/canvas/canvas-skia-excessive-size-expected.txt:

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

15 months ago[GTK] Unreviewed test gardening
aboya@igalia.com [Wed, 23 May 2018 17:31:18 +0000 (17:31 +0000)]
[GTK] Unreviewed test gardening
https://bugs.webkit.org/show_bug.cgi?id=185916

* platform/gtk/TestExpectations:
* platform/gtk/accessibility/table-roles-hierarchy-expected.txt:

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

15 months agoUnreviewed, rolling out r232112.
ryanhaddad@apple.com [Wed, 23 May 2018 16:59:58 +0000 (16:59 +0000)]
Unreviewed, rolling out r232112.

The tests added with this change  are failing on the bots.

Reverted changeset:

"test262/Runner.pm: add unit tests"
https://bugs.webkit.org/show_bug.cgi?id=185783
https://trac.webkit.org/changeset/232112

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

15 months ago[LFC] Move sizing/positioning logic to helper classes
zalan@apple.com [Wed, 23 May 2018 16:56:12 +0000 (16:56 +0000)]
[LFC] Move sizing/positioning logic to helper classes
https://bugs.webkit.org/show_bug.cgi?id=185898

Reviewed by Antti Koivisto.

The idea here is to move all the sizing and positioning logic to helper classes so that
the formatting context code stays lean.
This is similar to the dedicated BlockMarginCollapse class for the collapsing logic.
The helper classes have only static functions. These static functions do not mutate the associated DisplayBoxes,
but instead they simply retun the computed values.

* Sources.txt:
* WebCore.xcodeproj/project.pbxproj:
* layout/FormattingContext.cpp:
(WebCore::Layout::FormattingContext::computeOutOfFlowPosition const):
(WebCore::Layout::FormattingContext::computeOutOfFlowWidth const):
(WebCore::Layout::FormattingContext::computeFloatingWidth const):
(WebCore::Layout::FormattingContext::computeOutOfFlowHeight const):
(WebCore::Layout::FormattingContext::computeFloatingHeight const):
(WebCore::Layout::FormattingContext::computeOutOfFlowNonReplacedHeight const): Deleted.
(WebCore::Layout::FormattingContext::computeFloatingNonReplacedHeight const): Deleted.
(WebCore::Layout::FormattingContext::computeReplacedHeight const): Deleted.
(WebCore::Layout::FormattingContext::computeReplacedWidth const): Deleted.
(WebCore::Layout::FormattingContext::contentHeightForFormattingContextRoot const): Deleted.
(WebCore::Layout::FormattingContext::computeFloatingNonReplacedWidth const): Deleted.
(WebCore::Layout::FormattingContext::computeOutOfFlowNonReplacedWidth const): Deleted.
(WebCore::Layout::FormattingContext::computeOutOfFlowReplacedHeight const): Deleted.
(WebCore::Layout::FormattingContext::computeOutOfFlowReplacedWidth const): Deleted.
(WebCore::Layout::FormattingContext::computeOutOfFlowNonReplacedPosition const): Deleted.
(WebCore::Layout::FormattingContext::computeOutOfFlowReplacedPosition const): Deleted.
(WebCore::Layout::FormattingContext::shrinkToFitWidth const): Deleted.
* layout/FormattingContext.h:
* layout/FormattingContextGeometry.cpp: Copied from Source/WebCore/layout/FormattingContext.cpp.
(WebCore::Layout::contentHeightForFormattingContextRoot):
(WebCore::Layout::shrinkToFitWidth):
(WebCore::Layout::FormattingContextGeometry::outOfFlowNonReplacedHeight):
(WebCore::Layout::FormattingContextGeometry::outOfFlowNonReplacedWidth):
(WebCore::Layout::FormattingContextGeometry::outOfFlowReplacedHeight):
(WebCore::Layout::FormattingContextGeometry::outOfFlowReplacedWidth):
(WebCore::Layout::FormattingContextGeometry::floatingNonReplacedHeight):
(WebCore::Layout::FormattingContextGeometry::floatingNonReplacedWidth):
(WebCore::Layout::FormattingContextGeometry::floatingReplacedHeight):
(WebCore::Layout::FormattingContextGeometry::floatingReplacedWidth):
(WebCore::Layout::FormattingContextGeometry::outOfFlowNonReplacedPosition):
(WebCore::Layout::FormattingContextGeometry::outOfFlowReplacedPosition):
(WebCore::Layout::FormattingContextGeometry::replacedHeight):
(WebCore::Layout::FormattingContextGeometry::replacedWidth):
* layout/FormattingContextGeometry.h: Copied from Source/WebCore/layout/blockformatting/BlockFormattingContext.h.
* layout/blockformatting/BlockFormattingContext.cpp:
(WebCore::Layout::BlockFormattingContext::computeStaticPosition const):
(WebCore::Layout::BlockFormattingContext::computeInFlowHeight const):
(WebCore::Layout::BlockFormattingContext::computeInFlowWidth const):
(WebCore::Layout::BlockFormattingContext::computeInFlowNonReplacedWidth const): Deleted.
(WebCore::Layout::BlockFormattingContext::computeInFlowNonReplacedHeight const): Deleted.
* layout/blockformatting/BlockFormattingContext.h:
* layout/blockformatting/BlockFormattingContextGeometry.cpp: Added.
(WebCore::Layout::BlockFormattingContextGeometry::inFlowNonReplacedHeight):
(WebCore::Layout::BlockFormattingContextGeometry::inFlowNonReplacedWidth):
(WebCore::Layout::BlockFormattingContextGeometry::inFlowReplacedHeight):
(WebCore::Layout::BlockFormattingContextGeometry::inFlowReplacedWidth):
(WebCore::Layout::BlockFormattingContextGeometry::staticPosition):
* layout/blockformatting/BlockFormattingContextGeometry.h: Copied from Source/WebCore/layout/blockformatting/BlockFormattingContext.h.
* layout/displaytree/DisplayBox.h:

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

15 months agoPage keeps reloading when viewing photos in google drive (due to too high canvas...
antti@apple.com [Wed, 23 May 2018 16:09:54 +0000 (16:09 +0000)]
Page keeps reloading when viewing photos in google drive (due to too high canvas memory limits)
https://bugs.webkit.org/show_bug.cgi?id=185903
<rdar://problem/38420562>

Reviewed by Simon Fraser.

Source/WebCore:

The canvas memory usage limits don't work on iOS since the current 2GB minimum limit is
larger than the maximum process size.

* html/HTMLCanvasElement.cpp:
(WebCore::maxActivePixelMemory):

Always base this on the reported ramSize() on iOS. Make it still fairly large to not risk breaking
any currently working content. In practice the limit computes to 448MB on device at the moment.

LayoutTests:

* platform/ios-simulator/fast/canvas/canvas-crash-expected.txt:
* platform/ios-simulator/fast/canvas/canvas-skia-excessive-size-expected.txt: Added.

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

15 months agotest262/Runner.pm: add unit tests
commit-queue@webkit.org [Wed, 23 May 2018 15:33:49 +0000 (15:33 +0000)]
test262/Runner.pm: add unit tests
https://bugs.webkit.org/show_bug.cgi?id=185783

Patch by Valerie R Young <valerie@bocoup.com> on 2018-05-23
Reviewed by Aakash Jain.

Add unit tests to be run by test-webkitperl

* Scripts/test262/Runner.pm:
(main):
 - If harness files cannot be found in a custom, supplies test262 path,
   then sure the webkit test262 harness files.
 - Lazily create the test262-results directory.
 - If an expectation file is supplied via command line, save to the
   supplied location instead of the detault webkit location.
(compileTest):
(processResult):
(getHarness):
* Scripts/webkitperl/test262_unittest/README: Added.
* Scripts/webkitperl/test262_unittest/fixtures/expectations-compare.yaml: Added.
* Scripts/webkitperl/test262_unittest/fixtures/expectations.yaml: Added.
* Scripts/webkitperl/test262_unittest/fixtures/test/expected-to-fail-now-failing-with-new-error.js: Added.
* Scripts/webkitperl/test262_unittest/fixtures/test/expected-to-fail-now-failing.js: Added.
* Scripts/webkitperl/test262_unittest/fixtures/test/expected-to-fail-now-passing.js: Added.
(f):
* Scripts/webkitperl/test262_unittest/fixtures/test/expected-to-pass-now-failing.js: Added.
* Scripts/webkitperl/test262_unittest/fixtures/test/fail.js: Added.
* Scripts/webkitperl/test262_unittest/fixtures/test/pass.js: Added.
(f):
* Scripts/webkitperl/test262_unittest/test262-runner-tests.pl: Added.

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

15 months ago[GTK] WebDriver: implement AutomationSessionClient::didDisconnectFromRemote
carlosgc@webkit.org [Wed, 23 May 2018 15:24:58 +0000 (15:24 +0000)]
[GTK] WebDriver: implement AutomationSessionClient::didDisconnectFromRemote
https://bugs.webkit.org/show_bug.cgi?id=185866

Reviewed by Brian Burg.

Source/WebDriver:

Close the dbus connection when receiving an empty target list.

* glib/SessionHostGlib.cpp:
(WebDriver::SessionHost::setTargetList):

Source/WebKit:

To handle the case of the session being closed by the browser, for example in case of a network process
crash. This is currently causing WebDriver tests to timeout in the bot.

* UIProcess/API/glib/WebKitAutomationSession.cpp: Add an implementation of didDisconnectFromRemote() to notify
the WebContext that the session will be closed.
* UIProcess/API/glib/WebKitWebContext.cpp: Remove the automation session when closed.
* UIProcess/API/glib/WebKitWebContextPrivate.h:

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

15 months agoConversion misspelled "Convertion" in error message string
commit-queue@webkit.org [Wed, 23 May 2018 15:18:30 +0000 (15:18 +0000)]
Conversion misspelled "Convertion" in error message string
https://bugs.webkit.org/show_bug.cgi?id=185436

Patch by Rick Waldron <waldron.rick@gmail.com> on 2018-05-23
JSTests:

Reviewed by Saam Barati, Michael Saboff.

* bigIntTests.yaml:

Source/JavaScriptCore:

Reviewed by Saam Barati, Michael Saboff

* runtime/JSBigInt.cpp:
(JSC::JSBigInt::toNumber const):

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

15 months ago[LFC] Implement positioning for replaced out-of-flow elements
zalan@apple.com [Wed, 23 May 2018 14:46:39 +0000 (14:46 +0000)]
[LFC] Implement positioning for replaced out-of-flow elements
https://bugs.webkit.org/show_bug.cgi?id=185902

Reviewed by Antti Koivisto.

* layout/FormattingContext.cpp:
(WebCore::Layout::FormattingContext::computeOutOfFlowReplacedPosition const):

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