Timeline



Aug 9, 2015:

11:50 PM Changeset in webkit [188206] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[EFL] Use the non-overlay scrollbar
https://bugs.webkit.org/show_bug.cgi?id=147725

Patch by Hunseop Jeong <Hunseop Jeong> on 2015-08-09
Reviewed by Gyuyoung Kim.

No new tests because there is no behavior change.

  • platform/efl/ScrollbarThemeEfl.cpp:

(WebCore::ScrollbarThemeEfl::usesOverlayScrollbars):
Changed the condition of the 'usesOverlayScrollbars' to use the
setting value.

  • platform/efl/ScrollbarThemeEfl.h:
11:41 PM Changeset in webkit [188205] by Carlos Garcia Campos
  • 2 edits in trunk/Tools

Unreviewed. Skip GTK+ test /webkit2/WebKitWebView/install-missing-plugins-permission-request.

It's timing out in the bots. My guess is that there's no installer
installed in the bots and gst_install_plugins_supported() returns
false, so we don't even get a permission request because no
installer will be launched.

  • Scripts/run-gtk-tests:

(TestRunner):

9:14 PM Changeset in webkit [188204] by Chris Dumez
  • 3 edits
    4 adds in trunk

Page cache doesn't work for pages actively using Geolocation
https://bugs.webkit.org/show_bug.cgi?id=147785
<rdar://problem/11147901>

Reviewed by Darin Adler.

Source/WebCore:

Allow pages actively using Geolocation into the PageCache.

Tests: fast/history/page-cache-geolocation-active-oneshot.html

fast/history/page-cache-geolocation-active-watcher.html

  • Modules/geolocation/Geolocation.cpp:

(WebCore::Geolocation::canSuspendForPageCache):
(WebCore::Geolocation::suspend): Deleted.

  • history/PageCache.cpp:

LayoutTests:

Add layout test coverage for page caching of pages actively using
the Geolocation API.

  • fast/history/page-cache-geolocation-active-oneshot-expected.txt: Added.
  • fast/history/page-cache-geolocation-active-oneshot.html: Added.
  • fast/history/page-cache-geolocation-active-watcher-expected.txt: Added.
  • fast/history/page-cache-geolocation-active-watcher.html: Added.
6:53 PM Changeset in webkit [188203] by commit-queue@webkit.org
  • 14 edits
    2 adds in trunk

AX: CSS table display styles can cause malformed, inaccessible AXTables to be exposed to the AX tree
https://bugs.webkit.org/show_bug.cgi?id=136415
<rdar://problem/22026625>

Patch by Nan Wang <n_wang@apple.com> on 2015-08-09
Reviewed by Chris Fleizach.

Source/WebCore:

Applying CSS display styles to tables can end up inserting anonymous RenderTableRows, which is not handled well by the
accessibility code, which treats these as the actual rows. We can address this by diving deeper into anonymous nodes
and finding the real rows and cells we want. In addition, another thing also causing malformed tables is that "grid"
roles are being exposed as AXGrid instead of AXTable.

Test: accessibility/mac/malformed-table.html

  • accessibility/AccessibilityARIAGrid.cpp:

(WebCore::AccessibilityARIAGrid::addRowDescendant):

  • accessibility/AccessibilityTable.cpp:

(WebCore::AccessibilityTable::addChildren):
(WebCore::AccessibilityTable::addTableCellChild):
(WebCore::AccessibilityTable::addChildrenFromSection):

  • accessibility/AccessibilityTable.h:
  • accessibility/AccessibilityTableCell.cpp:

(WebCore::AccessibilityTableCell::parentTable):
(WebCore::AccessibilityTableCell::rowIndexRange):

  • accessibility/AccessibilityTableRow.cpp:

(WebCore::AccessibilityTableRow::parentTable):

  • accessibility/mac/WebAccessibilityObjectWrapperMac.mm:

(createAccessibilityRoleMap):

LayoutTests:

  • accessibility/aria-table-with-presentational-elements-expected.txt:
  • accessibility/aria-table-with-presentational-elements.html:
  • accessibility/mac/malformed-table-expected.txt: Added.
  • accessibility/mac/malformed-table.html: Added.
  • platform/mac-mavericks/accessibility/roles-exposed-expected.txt:
  • platform/mac/accessibility/aria-table-hierarchy-expected.txt:
  • platform/mac/accessibility/aria-tables-expected.txt:
  • platform/mac/accessibility/roles-exposed-expected.txt:
5:10 PM Changeset in webkit [188202] by Darin Adler
  • 14 edits
    83 deletes in trunk

Remove -webkit-color-correction CSS property
https://bugs.webkit.org/show_bug.cgi?id=147812

Reviewed by Maciej Stachowiak.

Source/WebCore:

Covered by existing tests.

I am doing some general cleanup of handling of color spaces in WebKit.
This removes the obsolete web-visible property that allowed clients to
get color correction on older Apple platforms where we chose not to do
it all the time for performance reasons. Currently, it has no effect on
any supported platform.

Now that this property is removed, a website can detect that it's not
there if it uses getComputedStyle, but I don't expect this to have
significant compatibility fallout. It's harmless to continue using the
property in legacy content or websites that have not been updated, since
unknown property names are ignored and it had no effect before anyway.

  • css/CSSComputedStyleDeclaration.cpp: Removed

CSSPropertyWebkitColorCorrection from the list of computed properties.
(WebCore::ComputedStyleExtractor::propertyValue): Removed the
CSSPropertyWebkitColorCorrection case.

  • css/CSSParser.cpp:

(WebCore::isValidKeywordPropertyAndValue): Removed the
CSSPropertyWebkitColorCorrection case.
(WebCore::isKeywordPropertyID): Ditto.
(WebCore::CSSParser::parseValue): Ditto.

  • css/CSSPrimitiveValueMappings.h:

(WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Deleted the overload
of this that converts a ColorSpace to a CSSPrimitiveValue.
(WebCore::CSSPrimitiveValue::operator ColorSpace): Deleted.

  • css/CSSPropertyNames.in: Removed -webkit-color-correction.
  • css/CSSValueKeywords.in: Removed the -webkit-color-correction section,

which contained sRGB.

  • css/SVGCSSValueKeywords.in: Uncommented sRGB now that it's not shared

with -webkit-color-correction.

  • rendering/style/RenderStyle.h: Removed setColorSpace and initialColorSpace.

Kept colorSpace around for now, but it simply returns ColorSpaceSRGB.
This prevents us from needing to touch every single call site that passes
the color space in to functions in the platform graphics abstraction.
We'll touch most of those call sites when we change Color to include the
color space and eventually we can delete this.

  • rendering/style/StyleRareInheritedData.cpp: Deleted colorSpace.

(WebCore::StyleRareInheritedData::StyleRareInheritedData): Deleted
code to initialize colorSpace and to copy colorSpace.
(WebCore::StyleRareInheritedData::operator==): Deleted code to compare
colorSpace.

LayoutTests:

Given that -webkit-color-correction had no effect on rendering on any platform in any
configuration we covered, it's amazing how many tests we had for it.

  • fast/css/getComputedStyle/computed-style-expected.txt: Removed expected results for

-webkit-color-correction property.

  • fast/css/getComputedStyle/computed-style-without-renderer-expected.txt: Ditto.
  • svg/css/getComputedStyle-basic-expected.txt: Ditto.
  • fast/css/getComputedStyle/resources/property-names.js: Removed -webkit-color-correction.
  • fast/css/color-correction-backgrounds-and-text.html: Removed.
  • fast/css/color-correction-on-background-image.html: Removed.
  • fast/css/color-correction-on-backgrounds.html: Removed.
  • fast/css/color-correction-on-box-shadow.html: Removed.
  • fast/css/color-correction-on-text-shadow.html: Removed.
  • fast/css/color-correction-on-text.html: Removed.
  • fast/css/color-correction-untagged-images.html: Removed.
  • fast/css/color-correction.html: Removed.
  • fast/css/parsing-color-correction-expected.txt: Removed.
  • fast/css/parsing-color-correction.html: Removed.
  • fast/css/resources/parsing-color-correction.js: Removed.
  • platform/efl/fast/css/color-correction-backgrounds-and-text-expected.png: Removed.
  • platform/efl/fast/css/color-correction-backgrounds-and-text-expected.txt: Removed.
  • platform/efl/fast/css/color-correction-expected.png: Removed.
  • platform/efl/fast/css/color-correction-expected.txt: Removed.
  • platform/efl/fast/css/color-correction-on-background-image-expected.png: Removed.
  • platform/efl/fast/css/color-correction-on-background-image-expected.txt: Removed.
  • platform/efl/fast/css/color-correction-on-backgrounds-expected.png: Removed.
  • platform/efl/fast/css/color-correction-on-backgrounds-expected.txt: Removed.
  • platform/efl/fast/css/color-correction-on-box-shadow-expected.png: Removed.
  • platform/efl/fast/css/color-correction-on-box-shadow-expected.txt: Removed.
  • platform/efl/fast/css/color-correction-on-text-expected.png: Removed.
  • platform/efl/fast/css/color-correction-on-text-expected.txt: Removed.
  • platform/efl/fast/css/color-correction-on-text-shadow-expected.png: Removed.
  • platform/efl/fast/css/color-correction-on-text-shadow-expected.txt: Removed.
  • platform/efl/fast/css/color-correction-untagged-images-expected.png: Removed.
  • platform/efl/fast/css/color-correction-untagged-images-expected.txt: Removed.
  • platform/gtk/fast/css/color-correction-backgrounds-and-text-expected.png: Removed.
  • platform/gtk/fast/css/color-correction-backgrounds-and-text-expected.txt: Removed.
  • platform/gtk/fast/css/color-correction-expected.png: Removed.
  • platform/gtk/fast/css/color-correction-expected.txt: Removed.
  • platform/gtk/fast/css/color-correction-on-background-image-expected.png: Removed.
  • platform/gtk/fast/css/color-correction-on-background-image-expected.txt: Removed.
  • platform/gtk/fast/css/color-correction-on-backgrounds-expected.png: Removed.
  • platform/gtk/fast/css/color-correction-on-backgrounds-expected.txt: Removed.
  • platform/gtk/fast/css/color-correction-on-box-shadow-expected.png: Removed.
  • platform/gtk/fast/css/color-correction-on-box-shadow-expected.txt: Removed.
  • platform/gtk/fast/css/color-correction-on-text-expected.png: Removed.
  • platform/gtk/fast/css/color-correction-on-text-expected.txt: Removed.
  • platform/gtk/fast/css/color-correction-on-text-shadow-expected.png: Removed.
  • platform/gtk/fast/css/color-correction-on-text-shadow-expected.txt: Removed.
  • platform/gtk/fast/css/color-correction-untagged-images-expected.png: Removed.
  • platform/gtk/fast/css/color-correction-untagged-images-expected.txt: Removed.
  • platform/ios-simulator-wk2/fast/css/color-correction-backgrounds-and-text-expected.txt: Removed.
  • platform/ios-simulator-wk2/fast/css/color-correction-expected.txt: Removed.
  • platform/ios-simulator-wk2/fast/css/color-correction-on-background-image-expected.txt: Removed.
  • platform/ios-simulator-wk2/fast/css/color-correction-on-backgrounds-expected.txt: Removed.
  • platform/ios-simulator-wk2/fast/css/color-correction-on-box-shadow-expected.txt: Removed.
  • platform/ios-simulator-wk2/fast/css/color-correction-on-text-expected.txt: Removed.
  • platform/ios-simulator-wk2/fast/css/color-correction-on-text-shadow-expected.txt: Removed.
  • platform/ios-simulator-wk2/fast/css/color-correction-untagged-images-expected.txt: Removed.
  • platform/ios-simulator/fast/css/color-correction-backgrounds-and-text-expected.txt: Removed.
  • platform/ios-simulator/fast/css/color-correction-expected.txt: Removed.
  • platform/ios-simulator/fast/css/color-correction-on-background-image-expected.txt: Removed.
  • platform/ios-simulator/fast/css/color-correction-on-backgrounds-expected.txt: Removed.
  • platform/ios-simulator/fast/css/color-correction-on-box-shadow-expected.txt: Removed.
  • platform/ios-simulator/fast/css/color-correction-on-text-expected.txt: Removed.
  • platform/ios-simulator/fast/css/color-correction-on-text-shadow-expected.txt: Removed.
  • platform/ios-simulator/fast/css/color-correction-untagged-images-expected.txt: Removed.
  • platform/mac/fast/css/color-correction-backgrounds-and-text-expected.png: Removed.
  • platform/mac/fast/css/color-correction-backgrounds-and-text-expected.txt: Removed.
  • platform/mac/fast/css/color-correction-expected.png: Removed.
  • platform/mac/fast/css/color-correction-expected.txt: Removed.
  • platform/mac/fast/css/color-correction-on-background-image-expected.png: Removed.
  • platform/mac/fast/css/color-correction-on-background-image-expected.txt: Removed.
  • platform/mac/fast/css/color-correction-on-backgrounds-expected.png: Removed.
  • platform/mac/fast/css/color-correction-on-backgrounds-expected.txt: Removed.
  • platform/mac/fast/css/color-correction-on-box-shadow-expected.png: Removed.
  • platform/mac/fast/css/color-correction-on-box-shadow-expected.txt: Removed.
  • platform/mac/fast/css/color-correction-on-text-expected.png: Removed.
  • platform/mac/fast/css/color-correction-on-text-expected.txt: Removed.
  • platform/mac/fast/css/color-correction-on-text-shadow-expected.png: Removed.
  • platform/mac/fast/css/color-correction-on-text-shadow-expected.txt: Removed.
  • platform/mac/fast/css/color-correction-untagged-images-expected.png: Removed.
  • platform/mac/fast/css/color-correction-untagged-images-expected.txt: Removed.
  • platform/win/fast/css/color-correction-backgrounds-and-text-expected.txt: Removed.
  • platform/win/fast/css/color-correction-expected.txt: Removed.
  • platform/win/fast/css/color-correction-on-background-image-expected.txt: Removed.
  • platform/win/fast/css/color-correction-on-backgrounds-expected.txt: Removed.
  • platform/win/fast/css/color-correction-on-box-shadow-expected.txt: Removed.
  • platform/win/fast/css/color-correction-on-text-expected.txt: Removed.
  • platform/win/fast/css/color-correction-on-text-shadow-expected.txt: Removed.
  • platform/win/fast/css/color-correction-untagged-images-expected.txt: Removed.
3:55 PM Changeset in webkit [188201] by Chris Dumez
  • 38 edits
    51 deletes in trunk

Regression(r188105): Seems to have caused crashes during PLT on some iPads
https://bugs.webkit.org/show_bug.cgi?id=147818

Unreviewed, roll out r188105.

Source/JavaScriptCore:

  • bytecode/ByValInfo.h:

(JSC::ByValInfo::ByValInfo):

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::getByValInfoMap): Deleted.
(JSC::CodeBlock::addByValInfo): Deleted.

  • bytecode/CodeBlock.h:

(JSC::CodeBlock::getByValInfo):
(JSC::CodeBlock::setNumberOfByValInfos):
(JSC::CodeBlock::numberOfByValInfos):
(JSC::CodeBlock::byValInfo):

  • bytecode/ExitKind.cpp:

(JSC::exitKindToString): Deleted.

  • bytecode/ExitKind.h:
  • bytecode/GetByIdStatus.cpp:

(JSC::GetByIdStatus::computeFor):
(JSC::GetByIdStatus::computeForStubInfo):
(JSC::GetByIdStatus::computeForStubInfoWithoutExitSiteFeedback): Deleted.

  • bytecode/GetByIdStatus.h:
  • dfg/DFGAbstractInterpreterInlines.h:

(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects): Deleted.

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::parseBlock):
(JSC::DFG::ByteCodeParser::InlineStackEntry::InlineStackEntry): Deleted.

  • dfg/DFGClobberize.h:

(JSC::DFG::clobberize): Deleted.

  • dfg/DFGConstantFoldingPhase.cpp:

(JSC::DFG::ConstantFoldingPhase::foldConstants): Deleted.

  • dfg/DFGDoesGC.cpp:

(JSC::DFG::doesGC): Deleted.

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode): Deleted.
(JSC::DFG::FixupPhase::observeUseKindOnNode): Deleted.

  • dfg/DFGNode.h:

(JSC::DFG::Node::hasUidOperand): Deleted.
(JSC::DFG::Node::uidOperand): Deleted.

  • dfg/DFGNodeType.h:
  • dfg/DFGPredictionPropagationPhase.cpp:

(JSC::DFG::PredictionPropagationPhase::propagate): Deleted.

  • dfg/DFGSafeToExecute.h:

(JSC::DFG::SafeToExecuteEdge::operator()): Deleted.
(JSC::DFG::safeToExecute): Deleted.

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileCheckIdent): Deleted.
(JSC::DFG::SpeculativeJIT::speculateSymbol): Deleted.
(JSC::DFG::SpeculativeJIT::speculate): Deleted.

  • dfg/DFGSpeculativeJIT.h:
  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::compile): Deleted.

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compile): Deleted.

  • dfg/DFGUseKind.cpp:

(WTF::printInternal): Deleted.

  • dfg/DFGUseKind.h:

(JSC::DFG::typeFilterFor): Deleted.
(JSC::DFG::isCell): Deleted.

  • ftl/FTLAbstractHeapRepository.h:
  • ftl/FTLCapabilities.cpp:

(JSC::FTL::canCompile): Deleted.

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::DFG::LowerDFGToLLVM::compileNode): Deleted.
(JSC::FTL::DFG::LowerDFGToLLVM::compileCheckIdent): Deleted.
(JSC::FTL::DFG::LowerDFGToLLVM::lowSymbol): Deleted.
(JSC::FTL::DFG::LowerDFGToLLVM::speculate): Deleted.
(JSC::FTL::DFG::LowerDFGToLLVM::isNotSymbol): Deleted.
(JSC::FTL::DFG::LowerDFGToLLVM::speculateSymbol): Deleted.

  • jit/JIT.cpp:

(JSC::JIT::privateCompile):

  • jit/JIT.h:

(JSC::ByValCompilationInfo::ByValCompilationInfo):
(JSC::JIT::compileGetByValWithCachedId): Deleted.

  • jit/JITInlines.h:

(JSC::JIT::callOperation): Deleted.

  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_has_indexed_property):
(JSC::JIT::emitSlow_op_has_indexed_property):

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::emit_op_has_indexed_property):
(JSC::JIT::emitSlow_op_has_indexed_property):

  • jit/JITOperations.cpp:

(JSC::getByVal):

  • jit/JITOperations.h:
  • jit/JITPropertyAccess.cpp:

(JSC::JIT::emit_op_get_by_val):
(JSC::JIT::emitSlow_op_get_by_val):
(JSC::JIT::emit_op_put_by_val):
(JSC::JIT::emitSlow_op_put_by_val):
(JSC::JIT::emitGetByValWithCachedId): Deleted.
(JSC::JIT::privateCompileGetByVal): Deleted.
(JSC::JIT::privateCompileGetByValWithCachedId): Deleted.

  • jit/JITPropertyAccess32_64.cpp:

(JSC::JIT::emit_op_get_by_val):
(JSC::JIT::emitSlow_op_get_by_val):
(JSC::JIT::emit_op_put_by_val):
(JSC::JIT::emitSlow_op_put_by_val):
(JSC::JIT::emitGetByValWithCachedId): Deleted.

  • runtime/Symbol.h:
  • tests/stress/get-by-val-with-string-constructor.js: Removed.
  • tests/stress/get-by-val-with-string-exit.js: Removed.
  • tests/stress/get-by-val-with-string-generated.js: Removed.
  • tests/stress/get-by-val-with-string-getter.js: Removed.
  • tests/stress/get-by-val-with-string.js: Removed.
  • tests/stress/get-by-val-with-symbol-constructor.js: Removed.
  • tests/stress/get-by-val-with-symbol-exit.js: Removed.
  • tests/stress/get-by-val-with-symbol-getter.js: Removed.
  • tests/stress/get-by-val-with-symbol.js: Removed.

LayoutTests:

  • js/regress/get-by-val-with-string-bimorphic-check-structure-elimination-expected.txt: Removed.
  • js/regress/get-by-val-with-string-bimorphic-check-structure-elimination-simple-expected.txt: Removed.
  • js/regress/get-by-val-with-string-bimorphic-check-structure-elimination-simple.html: Removed.
  • js/regress/get-by-val-with-string-bimorphic-check-structure-elimination.html: Removed.
  • js/regress/get-by-val-with-string-chain-from-try-block-expected.txt: Removed.
  • js/regress/get-by-val-with-string-chain-from-try-block.html: Removed.
  • js/regress/get-by-val-with-string-check-structure-elimination-expected.txt: Removed.
  • js/regress/get-by-val-with-string-check-structure-elimination.html: Removed.
  • js/regress/get-by-val-with-string-proto-or-self-expected.txt: Removed.
  • js/regress/get-by-val-with-string-proto-or-self.html: Removed.
  • js/regress/get-by-val-with-string-quadmorphic-check-structure-elimination-simple-expected.txt: Removed.
  • js/regress/get-by-val-with-string-quadmorphic-check-structure-elimination-simple.html: Removed.
  • js/regress/get-by-val-with-string-self-or-proto-expected.txt: Removed.
  • js/regress/get-by-val-with-string-self-or-proto.html: Removed.
  • js/regress/get-by-val-with-symbol-bimorphic-check-structure-elimination-expected.txt: Removed.
  • js/regress/get-by-val-with-symbol-bimorphic-check-structure-elimination-simple-expected.txt: Removed.
  • js/regress/get-by-val-with-symbol-bimorphic-check-structure-elimination-simple.html: Removed.
  • js/regress/get-by-val-with-symbol-bimorphic-check-structure-elimination.html: Removed.
  • js/regress/get-by-val-with-symbol-chain-from-try-block-expected.txt: Removed.
  • js/regress/get-by-val-with-symbol-chain-from-try-block.html: Removed.
  • js/regress/get-by-val-with-symbol-check-structure-elimination-expected.txt: Removed.
  • js/regress/get-by-val-with-symbol-check-structure-elimination.html: Removed.
  • js/regress/get-by-val-with-symbol-proto-or-self-expected.txt: Removed.
  • js/regress/get-by-val-with-symbol-proto-or-self.html: Removed.
  • js/regress/get-by-val-with-symbol-quadmorphic-check-structure-elimination-simple-expected.txt: Removed.
  • js/regress/get-by-val-with-symbol-quadmorphic-check-structure-elimination-simple.html: Removed.
  • js/regress/get-by-val-with-symbol-self-or-proto-expected.txt: Removed.
  • js/regress/get-by-val-with-symbol-self-or-proto.html: Removed.
  • js/regress/script-tests/get-by-val-with-string-bimorphic-check-structure-elimination-simple.js: Removed.
  • js/regress/script-tests/get-by-val-with-string-bimorphic-check-structure-elimination.js: Removed.
  • js/regress/script-tests/get-by-val-with-string-chain-from-try-block.js: Removed.
  • js/regress/script-tests/get-by-val-with-string-check-structure-elimination.js: Removed.
  • js/regress/script-tests/get-by-val-with-string-proto-or-self.js: Removed.
  • js/regress/script-tests/get-by-val-with-string-quadmorphic-check-structure-elimination-simple.js: Removed.
  • js/regress/script-tests/get-by-val-with-string-self-or-proto.js: Removed.
  • js/regress/script-tests/get-by-val-with-symbol-bimorphic-check-structure-elimination-simple.js: Removed.
  • js/regress/script-tests/get-by-val-with-symbol-bimorphic-check-structure-elimination.js: Removed.
  • js/regress/script-tests/get-by-val-with-symbol-chain-from-try-block.js: Removed.
  • js/regress/script-tests/get-by-val-with-symbol-check-structure-elimination.js: Removed.
  • js/regress/script-tests/get-by-val-with-symbol-proto-or-self.js: Removed.
  • js/regress/script-tests/get-by-val-with-symbol-quadmorphic-check-structure-elimination-simple.js: Removed.
  • js/regress/script-tests/get-by-val-with-symbol-self-or-proto.js: Removed.
3:39 PM Changeset in webkit [188200] by bshafiei@apple.com
  • 5 edits in branches/safari-601.1.46-branch/Source

Versioning.

3:26 PM Changeset in webkit [188199] by bshafiei@apple.com
  • 1 copy in tags/Safari-601.1.46.6

New tag.

3:20 PM Changeset in webkit [188198] by Chris Dumez
  • 2 edits in trunk/Source/WebKit2

Follow-up nit fixes after r187691.
https://bugs.webkit.org/show_bug.cgi?id=128006

Reviewed by Gavin Barraclough.

Use modern for-loops instead of explicit iterators.

  • Shared/Authentication/AuthenticationManager.cpp:

(WebKit::AuthenticationManager::shouldCoalesceChallenge):
(WebKit::AuthenticationManager::coalesceChallengesMatching):

3:15 PM Changeset in webkit [188197] by bshafiei@apple.com
  • 5 edits in branches/safari-601.1.46-branch/Source

Merged r188162. rdar://problem/22126518

1:39 PM Changeset in webkit [188196] by eric.carlson@apple.com
  • 2 edits in trunk/Source/WebCore

[Mac] Always require ExternalDeviceAutoPlayCandidate flag to AirPlay automatically
https://bugs.webkit.org/show_bug.cgi?id=147801

Reviewed by Dean Jackson.

Test: http/tests/media/video-media-document-disposition-download.html

  • Modules/mediasession/WebMediaSessionManager.cpp:

(WebCore::WebMediaSessionManager::configurePlaybackTargetClients): Don't tell the last element

to begin playing to the target unless the ExternalDeviceAutoPlayCandidate flag is set and
it is not currently playing.

1:01 PM Changeset in webkit [188195] by mmaxfield@apple.com
  • 3 edits
    2 adds in trunk

Crash in ComplexTextController when laying out obscure text
https://bugs.webkit.org/show_bug.cgi?id=147806
<rdar://problem/22102378>

Reviewed by Darin Adler.

Source/WebCore:

CTFontDescriptorCopyAttribute(fontDescriptor.get(), kCTFontReferenceURLAttribute) can return nullptr.

Test: fast/text/crash-obscure-text.html

  • platform/graphics/mac/ComplexTextControllerCoreText.mm:

(WebCore::safeCFEqual):
(WebCore::ComplexTextController::collectComplexTextRunsForCharacters):

LayoutTests:

  • fast/text/crash-obscure-text-expected.txt: Added.
  • fast/text/crash-obscure-text.html: Added.
4:15 AM Changeset in webkit [188194] by dino@apple.com
  • 10 edits in trunk

Remove the webkit prefix from CanvasRenderingContext2D imageSmoothingEnabled
https://bugs.webkit.org/show_bug.cgi?id=147803
<rdar://problem/22200553>

Reviewed by Sam Weinig.

Source/WebCore:

Rename webkitImageSmoothingEnabled to imageSmoothingEnabled.

Updated existing tests, and made sure that the prefixed version is
identical to the standard version.

  • html/canvas/CanvasRenderingContext2D.cpp:

(WebCore::CanvasRenderingContext2D::imageSmoothingEnabled): Renamed from webkitImageSmoothingEnabled.
(WebCore::CanvasRenderingContext2D::setImageSmoothingEnabled): Renamed from setWebkitImageSmoothingEnabled.
(WebCore::CanvasRenderingContext2D::webkitImageSmoothingEnabled): Deleted.
(WebCore::CanvasRenderingContext2D::setWebkitImageSmoothingEnabled): Deleted.

  • html/canvas/CanvasRenderingContext2D.h: Rename the methods.
  • html/canvas/CanvasRenderingContext2D.idl: Add the non-prefixed form, and mark is as the

implementation of the prefixed form.

LayoutTests:

Use the standard version of imageSmoothingEnabled rather than
the prefixed version.

  • fast/canvas/canvas-imageSmoothingEnabled-expected.txt:
  • fast/canvas/canvas-imageSmoothingEnabled-patterns.html:
  • fast/canvas/canvas-imageSmoothingEnabled-zero-size.html:
  • fast/canvas/script-tests/canvas-imageSmoothingEnabled-repaint.js:

(draw):

  • fast/canvas/script-tests/canvas-imageSmoothingEnabled.js: Add some tests

to make sure the prefixed version correctly maps to the standard version.

1:11 AM Changeset in webkit [188193] by akling@apple.com
  • 9 edits in trunk/Source/WebCore

Ref-ify some functions that always succeed in constructing Documents.
<https://webkit.org/b/147552>

Reviewed by Sam Weinig.

Update some functions involved in the construction of new Document objects
to codify that they always construct objects.

Bonus: DOMImplementation::createCSSStyleSheet().

  • dom/DOMImplementation.cpp:

(WebCore::DOMImplementation::createCSSStyleSheet):
(WebCore::DOMImplementation::createHTMLDocument):
(WebCore::DOMImplementation::createDocument):

  • dom/DOMImplementation.h:
  • loader/DocumentWriter.cpp:

(WebCore::DocumentWriter::createDocument):
(WebCore::DocumentWriter::begin):

  • loader/DocumentWriter.h:
  • xml/DOMParser.cpp:

(WebCore::DOMParser::parseFromString):

  • xml/DOMParser.h:
  • xml/XSLTProcessor.cpp:

(WebCore::XSLTProcessor::createDocumentFromSource):

  • xml/XSLTProcessor.h:

Aug 8, 2015:

7:06 PM Changeset in webkit [188192] by Devin Rousso
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: Timeline ruler handle tooltip shows wrong value when handles overlap
https://bugs.webkit.org/show_bug.cgi?id=147652

Reviewed by Timothy Hatcher.

  • UserInterface/Views/TimelineRuler.js:

(WebInspector.TimelineRuler.prototype._updateSelection):
Now changes the title depending on whether the selection start/end is clamped.

6:22 PM Changeset in webkit [188191] by Devin Rousso
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: Don't show "No Filter Results" when timeline is empty
https://bugs.webkit.org/show_bug.cgi?id=147662

Reviewed by Timothy Hatcher.

  • UserInterface/Views/TimelineView.js:

(WebInspector.TimelineView.prototype.reset):
Now hides the empty content placeholder on timeline clear.

11:40 AM Changeset in webkit [188190] by commit-queue@webkit.org
  • 4 edits
    2 deletes in trunk

Unreviewed, rolling out r179871.
https://bugs.webkit.org/show_bug.cgi?id=147810

Breaks product images on http://www.apple.com/shop/buy-
mac/macbook (Requested by smfr on #webkit).

Reverted changeset:

"Render: properly update body's background image"
https://bugs.webkit.org/show_bug.cgi?id=140183
http://trac.webkit.org/changeset/179871

Aug 7, 2015:

11:33 PM Changeset in webkit [188189] by ap@apple.com
  • 3 edits in branches/safari-601.1-branch/LayoutTests

Correct expectations for platform/mac/fast/scrolling/scroll-div-with-nested-nonscrollable-iframe.html.

Use a correct path, and only skip the test on WK1.

  • platform/mac-wk1/TestExpectations:
  • platform/mac/TestExpectations:
10:39 PM Changeset in webkit [188188] by Devin Rousso
  • 7 edits in trunk/Source/WebInspectorUI

Web Inspector: Decrease the padding of each rule in the Rules sidebar to allow more content to show
https://bugs.webkit.org/show_bug.cgi?id=147360

Reviewed by Timothy Hatcher.

Generally tightened the padding around each section in the rules panel, as well as the
content inside each section. Also moved the new rule button to be next to the filter bar.

  • UserInterface/Views/CSSStyleDeclarationSection.css:

(.style-declaration-section):
(.style-declaration-section.last-in-group):
(.style-declaration-section.last-in-group + .style-declaration-section): Deleted.

  • UserInterface/Views/CSSStyleDeclarationTextEditor.css:

(.css-style-text-editor):

  • UserInterface/Views/CSSStyleDetailsSidebarPanel.css:

(.sidebar > .panel.details.css-style > .content > .pseudo-classes):
(.sidebar > .panel.details.css-style > .content + .options-container):
(.sidebar > .panel.details.css-style > .content:not(.supports-new-rule, .has-filter-bar) + .options-container):
(.sidebar > .panel.details.css-style > .content + .options-container > .new-rule):
(.sidebar > .panel.details.css-style > .content + .options-container > .filter-bar):
(.sidebar > .panel.details.css-style > .content:not(.has-filter-bar) + .options-container > .filter-bar):
(.sidebar > .panel.details.css-style > .content.has-filter-bar + .filter-bar): Deleted.
(.sidebar > .panel.details.css-style > .content:not(.has-filter-bar) + .filter-bar): Deleted.

  • UserInterface/Views/CSSStyleDetailsSidebarPanel.js:

(WebInspector.CSSStyleDetailsSidebarPanel):
(WebInspector.CSSStyleDetailsSidebarPanel.prototype._switchPanels):
(WebInspector.CSSStyleDetailsSidebarPanel.prototype._newRuleButtonClicked):

  • UserInterface/Views/RulesStyleDetailsPanel.css:

(.sidebar > .panel.details.css-style .rules .label):

  • UserInterface/Views/RulesStyleDetailsPanel.js:

(WebInspector.RulesStyleDetailsPanel.prototype.refresh.insertMediaOrInheritanceLabel):
(WebInspector.RulesStyleDetailsPanel.prototype.newRuleButtonClicked):
(WebInspector.RulesStyleDetailsPanel.prototype.refresh.addNewRuleButton): Deleted.
(WebInspector.RulesStyleDetailsPanel.prototype.refresh): Deleted.
(WebInspector.RulesStyleDetailsPanel.prototype._newRuleClicked): Deleted.

10:39 PM Changeset in webkit [188187] by Gyuyoung Kim
  • 28 edits in trunk/Source

Reduce uses of PassRefPtr in bindings
https://bugs.webkit.org/show_bug.cgi?id=147781

Reviewed by Chris Dumez.

Use RefPtr when function can return null or an instance. If not, Ref is used.

Source/JavaScriptCore:

  • runtime/JSGenericTypedArrayView.h:

(JSC::toNativeTypedView):

Source/WebCore:

  • bindings/gobject/GObjectNodeFilterCondition.h:
  • bindings/gobject/GObjectXPathNSResolver.h:
  • bindings/gobject/WebKitDOMNodeFilter.cpp:

(WebKit::core):

  • bindings/gobject/WebKitDOMNodeFilterPrivate.h:
  • bindings/gobject/WebKitDOMXPathNSResolver.cpp:

(WebKit::core):

  • bindings/gobject/WebKitDOMXPathNSResolverPrivate.h:
  • bindings/js/CallbackFunction.h:

(WebCore::createFunctionOnlyCallback):

  • bindings/js/Dictionary.h:

(WebCore::Dictionary::getEventListener):

  • bindings/js/IDBBindingUtilities.cpp:

(WebCore::createIDBKeyFromValue):
(WebCore::internalCreateIDBKeyFromScriptValueAndKeyPath):
(WebCore::createIDBKeyFromScriptValueAndKeyPath):
(WebCore::scriptValueToIDBKey):

  • bindings/js/IDBBindingUtilities.h:
  • bindings/js/JSDOMBinding.h:

(WebCore::toInt8Array):
(WebCore::toInt16Array):
(WebCore::toInt32Array):
(WebCore::toUint8Array):
(WebCore::toUint8ClampedArray):
(WebCore::toUint16Array):
(WebCore::toUint32Array):
(WebCore::toFloat32Array):
(WebCore::toFloat64Array):

  • bindings/js/JSDOMStringListCustom.cpp:

(WebCore::JSDOMStringList::toWrapped):

  • bindings/js/JSDeviceMotionEventCustom.cpp:

(WebCore::readAccelerationArgument):
(WebCore::readRotationRateArgument):

  • bindings/js/JSErrorHandler.h:

(WebCore::createJSErrorHandler):

  • bindings/js/JSGeolocationCustom.cpp:

(WebCore::createPositionOptions):

  • bindings/js/JSNodeCustom.cpp:
  • bindings/js/JSNodeFilterCustom.cpp:

(WebCore::JSNodeFilter::toWrapped):

  • bindings/js/ScriptController.cpp:

(WebCore::ScriptController::createWorld):
(WebCore::ScriptController::createRootObject):
(WebCore::ScriptController::createScriptInstanceForWidget):

  • bindings/js/ScriptController.h:
  • bindings/js/ScriptControllerMac.mm:

(WebCore::ScriptController::createScriptInstanceForWidget):

  • bindings/js/SerializedScriptValue.cpp:

(WebCore::SerializedScriptValue::create):

  • bindings/js/SerializedScriptValue.h:
  • bindings/objc/DOMUIKitExtensions.mm:

(-[DOMNode rangeOfContainingParagraph]):

  • bindings/objc/ObjCNodeFilterCondition.h:
  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateHeader):

9:08 PM Changeset in webkit [188186] by mmaxfield@apple.com
  • 1 edit
    1 add in trunk/LayoutTests

[El Capitan] Test Gardening

Unreviewed.

  • platform/mac/css3/font-feature-settings-preinstalled-fonts-expected.txt: Added.
8:54 PM Changeset in webkit [188185] by mmaxfield@apple.com
  • 2 edits in trunk/Source/WebCore

[OS X] Remove dead code from FontCache::createFontPlatformData()
https://bugs.webkit.org/show_bug.cgi?id=147804

Reviewed by Zalan Bujtas.

CTFontCreateForCSS() always returns the best font.

No new tests because there is no behavior change.

  • platform/graphics/mac/FontCacheMac.mm:

(WebCore::fontWithFamily):

8:45 PM Changeset in webkit [188184] by Devin Rousso
  • 3 edits in trunk/Source/WebInspectorUI

Web Inspector: Don't include zero-width space into a copied text from the console
https://bugs.webkit.org/show_bug.cgi?id=147767

Reviewed by Timothy Hatcher.

Now removes work break characters in generated javascript text when copying
to the clipboard. Also replaced var with let in the modified functions.

  • UserInterface/Views/ConsoleCommandView.js:

(WebInspector.ConsoleCommandView.prototype.toClipboardString):
(WebInspector.ConsoleCommandView):

  • UserInterface/Views/ConsoleMessageView.js:

(WebInspector.ConsoleMessageView.prototype.toClipboardString):

8:06 PM Changeset in webkit [188183] by Alan Bujtas
  • 22 edits in trunk/Source/WebCore

Move painting functions from RenderObject to RenderElement.
https://bugs.webkit.org/show_bug.cgi?id=147764

Reviewed by Simon Fraser.

Ideally they should live in RenderBoxModelObject, but the current SVG architecture makes is difficult
to move them there.

No change in functionality.

  • platform/graphics/FloatRect.h:

(WebCore::FloatRect::FloatRect):

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::paintOneBorderSide):

  • rendering/RenderElement.cpp:

(WebCore::RenderElement::drawLineForBoxSide):
(WebCore::RenderElement::paintFocusRing):
(WebCore::RenderElement::paintOutline):

  • rendering/RenderElement.h:
  • rendering/RenderInline.cpp:

(WebCore::RenderInline::paintOutline):
(WebCore::RenderInline::paintOutlineForLine):

  • rendering/RenderMultiColumnSet.cpp:

(WebCore::RenderMultiColumnSet::paintColumnRules):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::drawLineForBoxSide): Deleted.
(WebCore::RenderObject::paintFocusRing): Deleted.
(WebCore::RenderObject::paintOutline): Deleted.

  • rendering/RenderObject.h:
  • rendering/RenderTableCell.cpp:

(WebCore::RenderTableCell::paintCollapsedBorders):

  • rendering/RenderTableSection.cpp:

(WebCore::RenderTableSection::paintRowGroupBorder):

  • rendering/RenderTheme.h:

(WebCore::RenderTheme::paintMenuListButtonDecorations):

  • rendering/RenderThemeIOS.h:
  • rendering/RenderThemeIOS.mm:

(WebCore::RenderThemeIOS::paintMenuListButtonDecorations):

  • rendering/RenderThemeMac.h:
  • rendering/RenderThemeMac.mm:

(WebCore::RenderThemeMac::paintMenuListButtonDecorations):

7:14 PM Changeset in webkit [188182] by jcraig@apple.com
  • 8 edits
    2 adds in trunk

REGRESSION(r184722) AX: WebKit video playback toolbar removed from DOM; no longer accessible to VoiceOver
https://bugs.webkit.org/show_bug.cgi?id=145684

Reviewed by Dean Jackson.

Source/WebCore:

Updated Apple Video controls to add an invisible but focusable button that allows VoiceOver
users (and when unblocked, keyboard users) to re-display the video controls.

Test: media/video-controls-show-on-kb-or-ax-event.html

  • English.lproj/mediaControlsLocalizedStrings.js:
  • Modules/mediacontrols/mediaControlsApple.css:

(audio::-webkit-media-show-controls):
(video::-webkit-media-show-controls):

  • Modules/mediacontrols/mediaControlsApple.js:

(Controller.prototype.createControls):
(Controller.prototype.handleFullscreenChange):
(Controller.prototype.handleShowControlsClick):
(Controller.prototype.handleWrapperMouseMove):
(Controller.prototype.updateForShowingControls):
(Controller.prototype.showControls):
(Controller.prototype.hideControls):
(Controller.prototype.setNeedsUpdateForDisplayedWidth):

  • Modules/mediacontrols/mediaControlsiOS.css:

(audio::-webkit-media-show-controls):
(video::-webkit-media-show-controls):

LayoutTests:

  • http/tests/contentextensions/text-track-blocked-expected.txt: Minor update to test case expectation.
  • media/video-controls-show-on-kb-or-ax-event-expected.txt: Added.
  • media/video-controls-show-on-kb-or-ax-event.html: New test validates video controls can be displayed without the need for a mouse.
  • platform/mac/media/track/track-cue-rendering-horizontal-expected.txt: Minor update to test case expectation.
6:13 PM Changeset in webkit [188181] by bshafiei@apple.com
  • 5 edits in branches/safari-601.1.46-branch/Source

Versioning.

5:48 PM Changeset in webkit [188180] by bshafiei@apple.com
  • 1 copy in tags/Safari-601.1.46.5

New tag.

5:21 PM Changeset in webkit [188179] by achristensen@apple.com
  • 2 edits in trunk/Tools

[GTK] Another build fix after r188157.

  • WebKitTestRunner/gtk/PlatformWebViewGtk.cpp:

(WTR::PlatformWebView::viewSupportsOptions):
Name all the things correctly!

5:14 PM Changeset in webkit [188178] by achristensen@apple.com
  • 2 edits in trunk/Tools

[EFL, GTK] Build fix after r188176.

  • DumpRenderTree/TestNetscapePlugIn/CMakeLists.txt:

I moved forwarding headers out of a unix subdirectory because I am using them on Windows now.

5:09 PM Changeset in webkit [188177] by achristensen@apple.com
  • 2 edits in trunk/Tools

[GTK] Speculative build fix after r188157.

  • WebKitTestRunner/gtk/PlatformWebViewGtk.cpp:

(WTR::PlatformWebView::PlatformWebView):
Update parameter list.

4:42 PM Changeset in webkit [188176] by achristensen@apple.com
  • 9 edits
    3 moves
    3 adds in trunk

Build more testing binaries with CMake on Windows
https://bugs.webkit.org/show_bug.cgi?id=147799

Reviewed by Brent Fulgham.

Source/JavaScriptCore:

  • shell/PlatformWin.cmake: Added.

Build jsc.dll and jsc.exe to find Apple Application Support or WinCairo dlls before using them.

Source/WebCore:

  • CMakeLists.txt:

MockCDM.cpp needs to be part of WebCoreTestSupport, not WebCore.

  • PlatformWin.cmake:

Added files needed for AppleWin port.

Source/WebKit/win:

  • WebKitDLL.cpp:

(loadResourceIntoBuffer):
AppleWin doesn't like exporting a function without a separate declaration.

Tools:

  • DumpRenderTree/CMakeLists.txt:

Build TestNetscapePlugin.

  • DumpRenderTree/PlatformWin.cmake:

Build ImageDiff and add files necessary for TestNetscapePlugin on Windows.

  • DumpRenderTree/TestNetscapePlugIn/ForwardingHeaders: Added.
  • DumpRenderTree/TestNetscapePlugIn/ForwardingHeaders/WebKit: Added.
  • DumpRenderTree/TestNetscapePlugIn/ForwardingHeaders/WebKit/npapi.h: Copied from DumpRenderTree/TestNetscapePlugIn/unix/ForwardingHeaders/WebKit/npapi.h.
  • DumpRenderTree/TestNetscapePlugIn/ForwardingHeaders/WebKit/npfunctions.h: Copied from DumpRenderTree/TestNetscapePlugIn/unix/ForwardingHeaders/WebKit/npfunctions.h.
  • DumpRenderTree/TestNetscapePlugIn/ForwardingHeaders/WebKit/npruntime.h: Copied from DumpRenderTree/TestNetscapePlugIn/unix/ForwardingHeaders/WebKit/npruntime.h.
  • DumpRenderTree/TestNetscapePlugIn/unix/ForwardingHeaders/WebKit/npapi.h: Removed.
  • DumpRenderTree/TestNetscapePlugIn/unix/ForwardingHeaders/WebKit/npfunctions.h: Removed.
  • DumpRenderTree/TestNetscapePlugIn/unix/ForwardingHeaders/WebKit/npruntime.h: Removed.
4:39 PM Changeset in webkit [188175] by andersca@apple.com
  • 3 edits in trunk/Source/WebCore

Being moving away from using SQLTransactionStateMachine in SQLTransactionBackend
https://bugs.webkit.org/show_bug.cgi?id=147798

Reviewed by Geoffrey Garen.

This is the first step towards getting rid of the state machine so we can ultimately merge SQLTransactionBackend
into SQLTransaction.

Instead of having the state machine run our functions, just run them ourselves where we can. For states that need
to be handled in the frontend, call SQLTransaction::requestTransitToState explicitly.

  • Modules/webdatabase/SQLTransactionBackend.cpp:

(WebCore::SQLTransactionBackend::stateFunctionFor):
(WebCore::SQLTransactionBackend::lockAcquired):
(WebCore::SQLTransactionBackend::openTransactionAndPreflight):
(WebCore::SQLTransactionBackend::runStatements):
(WebCore::SQLTransactionBackend::runCurrentStatement):
(WebCore::SQLTransactionBackend::handleCurrentStatementError):
(WebCore::SQLTransactionBackend::handleTransactionError):
(WebCore::SQLTransactionBackend::postflightAndCommit):
(WebCore::SQLTransactionBackend::runCurrentStatementAndGetNextState): Deleted.
(WebCore::SQLTransactionBackend::nextStateForCurrentStatementError): Deleted.
(WebCore::SQLTransactionBackend::nextStateForTransactionError): Deleted.
(WebCore::SQLTransactionBackend::sendToFrontendState): Deleted.

  • Modules/webdatabase/SQLTransactionBackend.h:
4:31 PM Changeset in webkit [188174] by mmaxfield@apple.com
  • 2 edits in trunk/LayoutTests

[Mac] Test gardening

Unreviewed.

  • platform/mac/TestExpectations:
4:25 PM Changeset in webkit [188173] by Nikita Vasilyev
  • 3 edits in trunk/Source/WebInspectorUI

Web Inspector: Simplify OS-specific CSS class names
https://bugs.webkit.org/show_bug.cgi?id=147794

Replace "body:not(.el-capitan)" with ".legacy-mac".
Replace "body.el-capitan" with ".latest-mac".

Reviewed by Timothy Hatcher.

  • UserInterface/Base/Main.js:

(WebInspector.contentLoaded):

  • UserInterface/Views/Toolbar.css:

(body.legacy-mac .toolbar .dashboard-container):
(body.legacy-mac .toolbar .search-bar > input[type="search"]):
(body.legacy-mac .toolbar .search-bar > input[type="search"]:focus):
(body.legacy-mac .toolbar .item.button:active):
(body.window-inactive.legacy-mac .toolbar .dashboard-container):
(body.latest-mac .toolbar .dashboard-container):
(body.latest-mac .toolbar .search-bar > input[type="search"]):
(body.latest-mac .toolbar .search-bar > input[type="search"]:focus):
(@media (-webkit-min-device-pixel-ratio: 2)):
(body.latest-mac .toolbar .item.button:active):
(body.latest-mac.window-inactive .toolbar .dashboard-container):
(body:not(.el-capitan) .toolbar .dashboard-container): Deleted.
(body:not(.el-capitan) .toolbar .search-bar > input[type="search"]): Deleted.
(body:not(.el-capitan) .toolbar .search-bar > input[type="search"]:focus): Deleted.
(body:not(.el-capitan) .toolbar .item.button:active): Deleted.
(body.window-inactive:not(.el-capitan) .toolbar .dashboard-container): Deleted.
(body.el-capitan .toolbar .dashboard-container): Deleted.
(body.el-capitan .toolbar .search-bar > input[type="search"]): Deleted.
(body.el-capitan .toolbar .search-bar > input[type="search"]:focus): Deleted.
(body.el-capitan .toolbar .item.button:active): Deleted.
(body.el-capitan.window-inactive .toolbar .dashboard-container): Deleted.

4:10 PM Changeset in webkit [188172] by commit-queue@webkit.org
  • 6 edits in trunk/Tools

Refactor BuildbotQueue.compareIterations and BuildbotQueue.compareIterationsByRevisions to be more generic
https://bugs.webkit.org/show_bug.cgi?id=147667

Patch by Jason Marcell <jmarcell@apple.com> on 2015-08-07
Reviewed by Daniel Bates.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueue.js:

(BuildbotQueue.prototype.compareIterations): Refactored to work more generically with repositories
other than "openSource" and "internal".
(BuildbotQueue.prototype.compareIterationsByRevisions): Ditto.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:

(Dashboard.get sortedPlatforms): Added. Returns a sorted array of platforms.
(Dashboard.get sortedRepositories): Added. Returns a sorted array of repositories.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Main.js:

(documentReady): Using Dashboard.sortedPlatforms instead of sortedPlatforms.
(sortedPlatforms): Deleted.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/MetricsMain.js:

(buildQueuesTable): Using Dashboard.sortedPlatforms instead of sortedPlatforms.
(sortedPlatforms): Deleted.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Utilities.js:

(sortDictionariesByOrder): Added. Takes an array of dictionaries that have an "order" property
and sorts them by this property returning the new sorted array.

4:07 PM Changeset in webkit [188171] by bshafiei@apple.com
  • 5 edits in branches/safari-601.1-branch/Source

Versioning.

4:04 PM Changeset in webkit [188170] by bshafiei@apple.com
  • 1 copy in tags/Safari-601.1.48

New tag.

3:38 PM Changeset in webkit [188169] by fpizlo@apple.com
  • 41 edits
    5 adds in trunk

Lightweight locks should be adaptive
https://bugs.webkit.org/show_bug.cgi?id=147545

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

  • dfg/DFGCommon.cpp:

(JSC::DFG::startCrashing):

  • heap/CopiedBlock.h:

(JSC::CopiedBlock::workListLock):

  • heap/CopiedBlockInlines.h:

(JSC::CopiedBlock::shouldReportLiveBytes):
(JSC::CopiedBlock::reportLiveBytes):

  • heap/CopiedSpace.cpp:

(JSC::CopiedSpace::doneFillingBlock):

  • heap/CopiedSpace.h:

(JSC::CopiedSpace::CopiedGeneration::CopiedGeneration):

  • heap/CopiedSpaceInlines.h:

(JSC::CopiedSpace::recycleEvacuatedBlock):

  • heap/GCThreadSharedData.cpp:

(JSC::GCThreadSharedData::didStartCopying):

  • heap/GCThreadSharedData.h:

(JSC::GCThreadSharedData::getNextBlocksToCopy):

  • heap/ListableHandler.h:

(JSC::ListableHandler::List::addThreadSafe):
(JSC::ListableHandler::List::addNotThreadSafe):

  • heap/MachineStackMarker.cpp:

(JSC::MachineThreads::tryCopyOtherThreadStacks):

  • heap/SlotVisitorInlines.h:

(JSC::SlotVisitor::copyLater):

  • parser/SourceProvider.cpp:

(JSC::SourceProvider::~SourceProvider):
(JSC::SourceProvider::getID):

  • profiler/ProfilerDatabase.cpp:

(JSC::Profiler::Database::addDatabaseToAtExit):
(JSC::Profiler::Database::removeDatabaseFromAtExit):
(JSC::Profiler::Database::removeFirstAtExitDatabase):

  • runtime/TypeProfilerLog.h:

Source/WebCore:

  • bindings/objc/WebScriptObject.mm:

(WebCore::getJSWrapper):
(WebCore::addJSWrapper):
(WebCore::removeJSWrapper):
(WebCore::removeJSWrapperIfRetainCountOne):

  • platform/audio/mac/CARingBuffer.cpp:

(WebCore::CARingBuffer::setCurrentFrameBounds):
(WebCore::CARingBuffer::getCurrentFrameBounds):

  • platform/audio/mac/CARingBuffer.h:
  • platform/ios/wak/WAKWindow.mm:

(-[WAKWindow setExposedScrollViewRect:]):
(-[WAKWindow exposedScrollViewRect]):

Source/WebKit2:

  • WebProcess/WebPage/EventDispatcher.cpp:

(WebKit::EventDispatcher::clearQueuedTouchEventsForPage):
(WebKit::EventDispatcher::getQueuedTouchEventsForPage):
(WebKit::EventDispatcher::touchEvent):
(WebKit::EventDispatcher::dispatchTouchEvents):

  • WebProcess/WebPage/EventDispatcher.h:
  • WebProcess/WebPage/ViewUpdateDispatcher.cpp:

(WebKit::ViewUpdateDispatcher::visibleContentRectUpdate):
(WebKit::ViewUpdateDispatcher::dispatchVisibleContentRectUpdate):

  • WebProcess/WebPage/ViewUpdateDispatcher.h:

Source/WTF:

A common idiom in WebKit is to use spinlocks. We use them because the lock acquisition
overhead is lower than system locks and because they take dramatically less space than system
locks. The speed and space advantages of spinlocks can be astonishing: an uncontended spinlock
acquire is up to 10x faster and under microcontention - short critical section with two or
more threads taking turns - spinlocks are up to 100x faster. Spinlocks take only 1 byte or 4
bytes depending on the flavor, while system locks take 64 bytes or more. Clearly, WebKit
should continue to avoid system locks - they are just far too slow and far too big.

But there is a problem with this idiom. System lock implementations will sleep a thread when
it attempts to acquire a lock that is held, while spinlocks will cause the thread to burn CPU.
In WebKit spinlocks, the thread will repeatedly call sched_yield(). This is awesome for
microcontention, but awful when the lock will not be released for a while. In fact, when
critical sections take tens of microseconds or more, the CPU time cost of our spinlocks is
almost 100x more than the CPU time cost of a system lock. This case doesn't arise too
frequently in our current uses of spinlocks, but that's probably because right now there are
places where we make a conscious decision to use system locks - even though they use more
memory and are slower - because we don't want to waste CPU cycles when a thread has to wait a
while to acquire the lock.

The solution is to just implement a modern adaptive mutex in WTF. Luckily, this isn't a new
concept. This patch implements a mutex that is reminiscent of the kinds of low-overhead locks
that JVMs use. The actual implementation here is inspired by some of the ideas from [1]. The
idea is simple: the fast path is an inlined CAS to immediately acquire a lock that isn't held,
the slow path tries some number of spins to acquire the lock, and if that fails, the thread is
put on a queue and put to sleep. The queue is made up of statically allocated thread nodes and
the lock itself is a tagged pointer: either it is just bits telling us the complete lock state
(not held or held) or it is a pointer to the head of a queue of threads waiting to acquire the
lock. This approach gives WTF::Lock three different levels of adaptation: an inlined fast path
if the lock is not contended, a short burst of spinning for microcontention, and a full-blown
queue for critical sections that are held for a long time.

On a locking microbenchmark, this new Lock exhibits the following performance
characteristics:

  • Lock+unlock on an uncontended no-op critical section: 2x slower than SpinLock and 3x faster than a system mutex.
  • Lock+unlock on a contended no-op critical section: 2x slower than SpinLock and 100x faster than a system mutex.
  • CPU time spent in lock() on a lock held for a while: same as system mutex, 90x less than a SpinLock.
  • Memory usage: sizeof(void*), so on 64-bit it's 8x less than a system mutex but 2x worse than a SpinLock.

This patch replaces all uses of SpinLock with Lock, since our critical sections are not
no-ops so if you do basically anything in your critical section, the Lock overhead will be
invisible. Also, in all places where we used SpinLock, we could tolerate 8 bytes of overhead
instead of 4. Performance benchmarking using JSC macrobenchmarks shows no difference, which is
as it should be: the purpose of this change is to reduce CPU time wasted, not wallclock time.
This patch doesn't replace any uses of ByteSpinLock, since we expect that the space benefits
of having a lock that just uses a byte are still better than the CPU wastage benefits of
Lock. But, this work will enable some future work to create locks that will fit in just 1.6
bits: https://bugs.webkit.org/show_bug.cgi?id=147665.

Rolling this back in after fixing Lock::unlockSlow() for architectures that have a truly weak
CAS. Since the Lock::unlock() fast path can go to slow path spuriously, it may go there even if
there aren't any threads on the Lock's queue. So, unlockSlow() must be able to deal with the
possibility of a null queue head.

[1] http://www.filpizlo.com/papers/pizlo-pppj2011-fable.pdf

  • WTF.vcxproj/WTF.vcxproj:
  • WTF.xcodeproj/project.pbxproj:
  • benchmarks: Added.
  • benchmarks/LockSpeedTest.cpp: Added.

(main):

  • wtf/Atomics.h:

(WTF::Atomic::compareExchangeWeak):
(WTF::Atomic::compareExchangeStrong):

  • wtf/CMakeLists.txt:
  • wtf/Lock.cpp: Added.

(WTF::LockBase::lockSlow):
(WTF::LockBase::unlockSlow):

  • wtf/Lock.h: Added.

(WTF::LockBase::lock):
(WTF::LockBase::unlock):
(WTF::LockBase::isHeld):
(WTF::LockBase::isLocked):
(WTF::Lock::Lock):

  • wtf/MetaAllocator.cpp:

(WTF::MetaAllocator::release):
(WTF::MetaAllocatorHandle::shrink):
(WTF::MetaAllocator::allocate):
(WTF::MetaAllocator::currentStatistics):
(WTF::MetaAllocator::addFreshFreeSpace):
(WTF::MetaAllocator::debugFreeSpaceSize):

  • wtf/MetaAllocator.h:
  • wtf/SpinLock.h:
  • wtf/ThreadingPthreads.cpp:
  • wtf/ThreadingWin.cpp:
  • wtf/text/AtomicString.cpp:
  • wtf/text/AtomicStringImpl.cpp:

(WTF::AtomicStringTableLocker::AtomicStringTableLocker):

Tools:

  • TestWebKitAPI/CMakeLists.txt:
  • TestWebKitAPI/TestWebKitAPI.vcxproj/TestWebKitAPI.vcxproj:
  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WTF/Lock.cpp: Added.

(TestWebKitAPI::runLockTest):
(TestWebKitAPI::TEST):

2:55 PM Changeset in webkit [188168] by mmaxfield@apple.com
  • 7 edits in trunk/Source/WebCore

Post-review comments on r188146
https://bugs.webkit.org/show_bug.cgi?id=147793

Reviewed by Daniel Bates.

No new tests because there is no behavior change.

  • platform/graphics/FontCache.h:
  • platform/graphics/cocoa/FontCacheCoreText.cpp:

(WebCore::appendTrueTypeFeature):
(WebCore::appendOpenTypeFeature):
(WebCore::applyFontFeatureSettings):

  • platform/graphics/ios/FontCacheIOS.mm:

(WebCore::FontCache::getSystemFontFallbackForCharacters):
(WebCore::FontCache::createFontPlatformData):

  • platform/graphics/mac/FontCacheMac.mm:

(WebCore::fontWithFamily):
(WebCore::FontCache::systemFallbackForCharacters):

  • platform/graphics/mac/FontCustomPlatformData.cpp:

(WebCore::FontCustomPlatformData::fontPlatformData):

  • rendering/RenderThemeIOS.mm:

(WebCore::RenderThemeIOS::updateCachedSystemFontDescription):

2:49 PM Changeset in webkit [188167] by mmaxfield@apple.com
  • 9 edits
    2 adds in trunk

Source/WebCore:
[Cocoa] Font fallback is not language-sensitive
https://bugs.webkit.org/show_bug.cgi?id=147390

Reviewed by Dean Jackson.

We need to make our font fallback code sensitive to locale.

This patch rolls r187729 back in. However, only particular versions of iOS and OS X are
performant enough to enable this language-sensitivity.

This patch also applies to iOS.

Test: fast/text/fallback-language-han.html

  • platform/graphics/mac/FontCacheMac.mm:

(WebCore::lookupCTFont):
(WebCore::FontCache::systemFallbackForCharacters):

  • platform/graphics/mac/FontCacheIOS.mm:

(WebCore::FontCache::systemFallbackForCharacters):

LayoutTests:
[OS X] Font fallback is not language-sensitive
https://bugs.webkit.org/show_bug.cgi?id=147390

Reviewed by Dean Jackson.

This test is expected to fail most places.

  • fast/text/fallback-language-han-expected.html: Added.
  • fast/text/fallback-language-han.html: Added.
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/win/TestExpectations:
  • platform/mac/TestExpectations:
  • platform/iOS/TestExpectations:
2:44 PM Changeset in webkit [188166] by Alan Bujtas
  • 6 edits in trunk/Source/WebCore

RenderTheme::volumeSliderOffsetFromMuteButton should take const& RenderBox.
https://bugs.webkit.org/show_bug.cgi?id=147731

Reviewed by Simon Fraser.

No change in functionality.

  • rendering/RenderMediaControlElements.cpp:

(WebCore::RenderMediaVolumeSliderContainer::layout):

  • rendering/RenderMediaControls.cpp:

(WebCore::RenderMediaControls::volumeSliderOffsetFromMuteButton): Deleted.

  • rendering/RenderMediaControls.h:
  • rendering/RenderTheme.cpp:

(WebCore::RenderTheme::volumeSliderOffsetFromMuteButton):

  • rendering/RenderTheme.h:
2:37 PM Changeset in webkit [188165] by bshafiei@apple.com
  • 5 edits in branches/safari-601.1.46-branch/Source/WebCore

Merged r188150. rdar://problem/22123707

2:30 PM Changeset in webkit [188164] by Alan Bujtas
  • 8 edits in trunk/Source/WebCore

Replace RenderObject::isRooted() logic with isDescendantOf().
https://bugs.webkit.org/show_bug.cgi?id=147788

Reviewed by Simon Fraser.

And some related cleanups.

No change in functionality.

  • page/FrameView.cpp:

(WebCore::FrameView::scheduleRelayoutOfSubtree):
(WebCore::FrameView::extendedBackgroundRectForPainting):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::paintRootBoxFillLayers):

  • rendering/RenderElement.cpp:

(WebCore::shouldRepaintForImageAnimation):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::isDescendantOf):
(WebCore::scheduleRelayoutForSubtree):
(WebCore::RenderObject::repaint):
(WebCore::RenderObject::repaintRectangle):
(WebCore::RenderObject::repaintSlowRepaintObject):
(WebCore::RenderObject::isRooted):

  • rendering/RenderObject.h:
  • rendering/RenderView.cpp:

(WebCore::RenderView::unextendedBackgroundRect):
(WebCore::RenderView::backgroundRect):

  • rendering/RenderView.h:
2:25 PM Changeset in webkit [188163] by Alan Bujtas
  • 9 edits in trunk/Source/WebCore

Subtree layout code should use RenderElement.
https://bugs.webkit.org/show_bug.cgi?id=147694

Reviewed by Simon Fraser.

Subtree layout will never begin at a RenderText, so tighten up
the code to operate on RenderElements instead of RenderObjects.
(This patch is based on webkit.org/b/126878)

No change in functionality.

  • inspector/InspectorTimelineAgent.cpp:

(WebCore::InspectorTimelineAgent::willLayout):

  • page/FrameView.cpp:

(WebCore::FrameView::FrameView): Deleted.
(WebCore::FrameView::layoutRoot): Deleted.

  • page/FrameView.h:
  • rendering/RenderBox.cpp:

(WebCore::RenderBox::computeLogicalWidthInRegion):

  • rendering/RenderElement.cpp:

(WebCore::RenderElement::clearLayoutRootIfNeeded):
(WebCore::RenderElement::willBeDestroyed):

  • rendering/RenderElement.h:
  • rendering/RenderObject.cpp:

(WebCore::RenderObject::clearLayoutRootIfNeeded): Deleted.
(WebCore::RenderObject::willBeDestroyed): Deleted.

  • rendering/RenderObject.h:
2:12 PM Changeset in webkit [188162] by Wenson Hsieh
  • 5 edits in trunk/Source

Temporarily allow programmatic input assistance for adding Gmail account
https://bugs.webkit.org/show_bug.cgi?id=147792

Reviewed by Enrica Casucci.
<rdar://problem/22126518>

Temporary fix for keyboard input sliding out and immediately back in upon user interaction
in the Gmail 2-factor authentication page.

Source/WebCore:

  • platform/RuntimeApplicationChecksIOS.h:
  • platform/RuntimeApplicationChecksIOS.mm:

(WebCore::applicationIsGmailAddAccountOnIOS): Added bundle ID for Gmail settings.

Source/WebKit2:

  • UIProcess/ios/WKContentViewInteraction.mm:

(-[WKContentView _startAssistingNode:userIsInteracting:blurPreviousNode:userObject:]): Early

return no longer triggers due to lack of user interaction when adding a new Gmail account
through Settings.

2:12 PM Changeset in webkit [188161] by andersca@apple.com
  • 2 edits in trunk/Tools

Fix a tyop.

  • WebKitTestRunner/ios/PlatformWebViewIOS.mm:

(WTR::PlatformWebView::viewSupportsOptions):

2:07 PM Changeset in webkit [188160] by Simon Fraser
  • 4 edits
    34 moves
    2 adds in trunk/LayoutTests

Move platform/mac/fast/scrolling/ tests into fast/scrolling/latching/

  • TestExpectations:
  • fast/scrolling/latching/iframe_in_iframe-expected.txt: Renamed from LayoutTests/platform/mac/fast/scrolling/iframe_in_iframe-expected.txt.
  • fast/scrolling/latching/iframe_in_iframe.html: Renamed from LayoutTests/platform/mac/fast/scrolling/iframe_in_iframe.html.
  • fast/scrolling/latching/resources/background.html: Renamed from LayoutTests/platform/mac/fast/scrolling/resources/background.html.
  • fast/scrolling/latching/resources/inner_content.html: Renamed from LayoutTests/platform/mac/fast/scrolling/resources/inner_content.html.
  • fast/scrolling/latching/resources/scroll_nested_iframe_test_inner.html: Renamed from LayoutTests/platform/mac/fast/scrolling/resources/scroll_nested_iframe_test_inner.html.
  • fast/scrolling/latching/resources/scroll_nested_iframe_test_outer.html: Renamed from LayoutTests/platform/mac/fast/scrolling/resources/scroll_nested_iframe_test_outer.html.
  • fast/scrolling/latching/resources/testContent.html: Renamed from LayoutTests/platform/mac/fast/scrolling/resources/testContent.html.
  • fast/scrolling/latching/resources/testImage.png: Renamed from LayoutTests/platform/mac/fast/scrolling/resources/testImage.png.
  • fast/scrolling/latching/scroll-div-latched-div-expected.txt: Renamed from LayoutTests/platform/mac/fast/scrolling/scroll-div-latched-div-expected.txt.
  • fast/scrolling/latching/scroll-div-latched-div.html: Renamed from LayoutTests/platform/mac/fast/scrolling/scroll-div-latched-div.html.
  • fast/scrolling/latching/scroll-div-latched-mainframe-expected.txt: Renamed from LayoutTests/platform/mac/fast/scrolling/scroll-div-latched-mainframe-expected.txt.
  • fast/scrolling/latching/scroll-div-latched-mainframe.html: Renamed from LayoutTests/platform/mac/fast/scrolling/scroll-div-latched-mainframe.html.
  • fast/scrolling/latching/scroll-div-no-latching-expected.txt: Renamed from LayoutTests/platform/mac/fast/scrolling/scroll-div-no-latching-expected.txt.
  • fast/scrolling/latching/scroll-div-no-latching.html: Renamed from LayoutTests/platform/mac/fast/scrolling/scroll-div-no-latching.html.
  • fast/scrolling/latching/scroll-div-with-nested-nonscrollable-iframe-expected.txt: Renamed from LayoutTests/platform/mac/fast/scrolling/scroll-div-with-nested-nonscrollable-iframe-expected.txt.
  • fast/scrolling/latching/scroll-div-with-nested-nonscrollable-iframe.html: Renamed from LayoutTests/platform/mac/fast/scrolling/scroll-div-with-nested-nonscrollable-iframe.html.
  • fast/scrolling/latching/scroll-iframe-fragment-expected.txt: Renamed from LayoutTests/platform/mac/fast/scrolling/scroll-iframe-fragment-expected.txt.
  • fast/scrolling/latching/scroll-iframe-fragment.html: Renamed from LayoutTests/platform/mac/fast/scrolling/scroll-iframe-fragment.html.
  • fast/scrolling/latching/scroll-iframe-latched-iframe-expected.txt: Renamed from LayoutTests/platform/mac/fast/scrolling/scroll-iframe-latched-iframe-expected.txt.
  • fast/scrolling/latching/scroll-iframe-latched-iframe.html: Renamed from LayoutTests/platform/mac/fast/scrolling/scroll-iframe-latched-iframe.html.
  • fast/scrolling/latching/scroll-iframe-latched-mainframe-expected.txt: Renamed from LayoutTests/platform/mac/fast/scrolling/scroll-iframe-latched-mainframe-expected.txt.
  • fast/scrolling/latching/scroll-iframe-latched-mainframe.html: Renamed from LayoutTests/platform/mac/fast/scrolling/scroll-iframe-latched-mainframe.html.
  • fast/scrolling/latching/scroll-iframe-webkit1-latching-bug-expected.txt: Renamed from LayoutTests/platform/mac/fast/scrolling/scroll-iframe-webkit1-latching-bug-expected.txt.
  • fast/scrolling/latching/scroll-iframe-webkit1-latching-bug.html: Renamed from LayoutTests/platform/mac/fast/scrolling/scroll-iframe-webkit1-latching-bug.html.
  • fast/scrolling/latching/scroll-latched-nested-div-expected.txt: Renamed from LayoutTests/platform/mac/fast/scrolling/scroll-latched-nested-div-expected.txt.
  • fast/scrolling/latching/scroll-latched-nested-div.html: Renamed from LayoutTests/platform/mac/fast/scrolling/scroll-latched-nested-div.html.
  • fast/scrolling/latching/scroll-nested-iframe-expected.txt: Renamed from LayoutTests/platform/mac/fast/scrolling/scroll-nested-iframe-expected.txt.
  • fast/scrolling/latching/scroll-nested-iframe.html: Renamed from LayoutTests/platform/mac/fast/scrolling/scroll-nested-iframe.html.
  • fast/scrolling/latching/scroll-select-bottom-test-expected.txt: Renamed from LayoutTests/platform/mac/fast/scrolling/scroll-select-bottom-test-expected.txt.
  • fast/scrolling/latching/scroll-select-bottom-test.html: Renamed from LayoutTests/platform/mac/fast/scrolling/scroll-select-bottom-test.html.
  • fast/scrolling/latching/scroll-select-latched-mainframe-expected.txt: Renamed from LayoutTests/platform/mac/fast/scrolling/scroll-select-latched-mainframe-expected.txt.
  • fast/scrolling/latching/scroll-select-latched-mainframe.html: Renamed from LayoutTests/platform/mac/fast/scrolling/scroll-select-latched-mainframe.html.
  • fast/scrolling/latching/scroll-select-latched-select-expected.txt: Renamed from LayoutTests/platform/mac/fast/scrolling/scroll-select-latched-select-expected.txt.
  • fast/scrolling/latching/scroll-select-latched-select.html: Renamed from LayoutTests/platform/mac/fast/scrolling/scroll-select-latched-select.html.
  • platform/mac-wk1/TestExpectations:
  • platform/mac/TestExpectations:
2:07 PM Changeset in webkit [188159] by Simon Fraser
  • 6 edits
    18 moves
    1 add
    1 delete in trunk/LayoutTests

Move platform/mac/fast/forms/ tests to fast/forms/

  • TestExpectations:
  • fast/forms/attributed-strings-expected.txt: Renamed from LayoutTests/platform/mac/fast/forms/attributed-strings-expected.txt.
  • fast/forms/attributed-strings.html: Renamed from LayoutTests/platform/mac/fast/forms/attributed-strings.html.
  • fast/forms/focus-option-control-on-page-expected.txt: Renamed from LayoutTests/platform/mac/fast/forms/focus-option-control-on-page-expected.txt.
  • fast/forms/focus-option-control-on-page.html: Renamed from LayoutTests/platform/mac/fast/forms/focus-option-control-on-page.html.
  • fast/forms/indeterminate-progress-inline-height-expected.txt: Renamed from LayoutTests/platform/mac/fast/forms/indeterminate-progress-inline-height-expected.txt.
  • fast/forms/indeterminate-progress-inline-height.html: Renamed from LayoutTests/platform/mac/fast/forms/indeterminate-progress-inline-height.html.
  • fast/forms/input-appearance-spinbutton-expected.png: Renamed from LayoutTests/platform/mac/fast/forms/input-appearance-spinbutton-expected.png.
  • fast/forms/input-appearance-spinbutton-expected.txt: Renamed from LayoutTests/platform/mac/fast/forms/input-appearance-spinbutton-expected.txt.
  • fast/forms/input-appearance-spinbutton-size-expected.txt: Renamed from LayoutTests/platform/mac/fast/forms/input-appearance-spinbutton-size-expected.txt.
  • fast/forms/input-appearance-spinbutton-size.html: Renamed from LayoutTests/platform/mac/fast/forms/input-appearance-spinbutton-size.html.
  • fast/forms/input-appearance-spinbutton-up-expected.txt: Renamed from LayoutTests/platform/mac/fast/forms/input-appearance-spinbutton-up-expected.txt.
  • fast/forms/input-appearance-spinbutton-up.html: Renamed from LayoutTests/platform/mac/fast/forms/input-appearance-spinbutton-up.html.
  • fast/forms/input-appearance-spinbutton.html: Renamed from LayoutTests/platform/mac/fast/forms/input-appearance-spinbutton.html.
  • fast/forms/input-number-click-expected.txt: Renamed from LayoutTests/platform/mac/fast/forms/input-number-click-expected.txt.
  • fast/forms/input-number-click.html: Renamed from LayoutTests/platform/mac/fast/forms/input-number-click.html.
  • fast/forms/listbox-scrollbar-hit-test-expected.txt: Renamed from LayoutTests/platform/mac/fast/forms/listbox-scrollbar-hit-test-expected.txt.
  • fast/forms/listbox-scrollbar-hit-test.html: Renamed from LayoutTests/platform/mac/fast/forms/listbox-scrollbar-hit-test.html.
  • fast/forms/script-tests/focus-option-control-on-page.js: Renamed from LayoutTests/platform/mac/fast/forms/script-tests/focus-option-control-on-page.js.
  • platform/mac-wk1/TestExpectations:
  • platform/mac-wk2/TestExpectations:
  • platform/mac/TestExpectations:
  • platform/mac/fast/forms/input-appearance-spinbutton-up-expected.png: Removed.
  • platform/wk2/TestExpectations:
1:45 PM Changeset in webkit [188158] by ap@apple.com
  • 3 edits in trunk/Tools

Update AppEngine app version numbers to the latest commit.

  • QueueStatusServer/app.yaml:
  • TestResultServer/app.yaml:
1:35 PM Changeset in webkit [188157] by andersca@apple.com
  • 10 edits
    1 add in trunk/Tools

Simplify WKTR's view options
https://bugs.webkit.org/show_bug.cgi?id=147791

Reviewed by Sam Weinig.

Instead of using a WKDictionaryRef, just use a struct for the options.

  • WebKitTestRunner/PlatformWebView.h:

(WTR::PlatformWebView::options):
(WTR::PlatformWebView::viewSupportsOptions): Deleted.

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::initialize):
(WTR::TestController::createWebViewWithOptions):
(WTR::TestController::ensureViewSupportsOptions):
(WTR::TestController::updateLayoutTypeForTest):

  • WebKitTestRunner/TestController.h:
  • WebKitTestRunner/ViewOptions.h: Added.
  • WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
  • WebKitTestRunner/efl/PlatformWebViewEfl.cpp:

(WTR::PlatformWebView::PlatformWebView):
(WTR::PlatformWebView::viewSupportsOptions):

  • WebKitTestRunner/gtk/PlatformWebViewGtk.cpp:

(WTR::PlatformWebView::viewSupportsOptions):

  • WebKitTestRunner/ios/PlatformWebViewIOS.mm:

(WTR::PlatformWebView::viewSupportsOptions):

  • WebKitTestRunner/mac/PlatformWebViewMac.mm:

(WTR::PlatformWebView::PlatformWebView):
(WTR::PlatformWebView::viewSupportsOptions):

  • WebKitTestRunner/mac/TestControllerMac.mm:

(WTR::TestController::platformConfigureViewForTest):

1:19 PM Changeset in webkit [188156] by Lucas Forschler
  • 2 edits in branches/safari-601.1.46-branch/Source/WebKit2

Merged r188115. rdar://problem/22181735

1:17 PM Changeset in webkit [188155] by Lucas Forschler
  • 2 edits in branches/safari-601.1.46-branch/Source/WebKit2

Merged r188112. <rdar://problem/22128839>

1:16 PM Changeset in webkit [188154] by Lucas Forschler
  • 2 edits in branches/safari-601.1.46-branch/Source/WebKit2

Merged r188111. <rdar://problem/22128839>

1:15 PM Changeset in webkit [188153] by Lucas Forschler
  • 2 edits in branches/safari-601.1.46-branch/Source/WebKit2

Merged r188109. <rdar://problem/22128839>

1:14 PM Changeset in webkit [188152] by Lucas Forschler
  • 2 edits in branches/safari-601.1.46-branch/Source/WebKit2

Merged r188058. <rdar://problem/22128839>

1:13 PM Changeset in webkit [188151] by Lucas Forschler
  • 3 edits in branches/safari-601.1.46-branch/Source/WebKit2

Merged r188053. <rdar://problem/22128839>

1:10 PM Changeset in webkit [188150] by aestes@apple.com
  • 5 edits in trunk/Source/WebCore

Crash when following a Google search link to Twitter with Limit Adult Content enabled
https://bugs.webkit.org/show_bug.cgi?id=147651

Reviewed by Brady Eidson.

When a loaded CachedRawResource gets a new client, it synthesizes the callbacks that the new client would have
received while the resource was loading. Unlike a real network load, it synthesizes these callbacks in a single
run loop iteration. When DocumentLoader receives a redirect, and finds substitute data in the app cache for the
redirect URL, it schedules a timer that removes DocumentLoader as a client of the CachedRawResource then
synthesizes its own set of CachedRawResourceClient callbacks. But since CachedRawResource has already delivered
client callbacks before the app cache timer fires, DocumentLoader unexpectedly ends up getting two sets of
client callbacks and badness ensues.

The fix is to let CachedRawResource detect if a redirect will trigger the client to load substitute data. If so,
stop delivering client callbacks.

Layout test to follow.

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::syntheticRedirectReceived): If there is valid substitute data, do not continue.

  • loader/DocumentLoader.h:
  • loader/cache/CachedRawResource.cpp: Returned early if syntheticRedirectReceived() said not to continue.

(WebCore::CachedRawResource::didAddClient):

  • loader/cache/CachedRawResourceClient.h:

(WebCore::CachedRawResourceClient::syntheticRedirectReceived):

1:06 PM Changeset in webkit [188149] by msaboff@apple.com
  • 3 edits in branches/jsc-tailcall/Source/JavaScriptCore

Unreviewed. Rollout r188072 as there are crashes with release builds.

The combination of r188071 and r188072 does not properly restore all registers for
all exceptions. Rolling out to make the branch functional again.

  • llint/LowLevelInterpreter.asm:
  • llint/LowLevelInterpreter64.asm:
12:40 PM Changeset in webkit [188148] by dino@apple.com
  • 3 edits
    2 adds in trunk

Shadows don't draw on fillText when using a gradient fill
https://bugs.webkit.org/show_bug.cgi?id=147758
<rdar://problem/20860912>

Reviewed by Myles Maxfield.

Source/WebCore:

Since we use a mask to render a pattern or gradient
into text, any shadow was being clipped out. Change
this to draw the shadow before the mask + fill operation,
using a technique similar to text-shadow.

Test: fast/canvas/gradient-text-with-shadow.html

  • html/canvas/CanvasRenderingContext2D.cpp:

(WebCore::CanvasRenderingContext2D::drawTextInternal): Get the current shadow
style, paint the text with a transformed shadow offset so that we only
see the shadow and not the text, then combine with the existing pattern/gradient
fill.

LayoutTests:

New test that exercises shadows on gradient fills. This really
should be a ref test, but there is a very small rendering difference
caused by masking, so instead it uses JS to look for pixels of
the correct color.

  • fast/canvas/gradient-text-with-shadow-expected.txt: Added.
  • fast/canvas/gradient-text-with-shadow.html: Added.
12:34 PM Changeset in webkit [188147] by mark.lam@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Rename some variables in the JSC watchdog implementation.
https://bugs.webkit.org/show_bug.cgi?id=147790

Rubber stamped by Benjamin Poulain.

This is just a refactoring patch to give the variable better names that describe their
intended use. There is no behavior change.

  • runtime/Watchdog.cpp:

(JSC::Watchdog::Watchdog):
(JSC::Watchdog::setTimeLimit):
(JSC::Watchdog::didFire):
(JSC::Watchdog::isEnabled):
(JSC::Watchdog::fire):
(JSC::Watchdog::startCountdownIfNeeded):

  • runtime/Watchdog.h:
12:09 PM Changeset in webkit [188146] by mmaxfield@apple.com
  • 8 edits
    4 adds in trunk

Implement font-feature-settings
https://bugs.webkit.org/show_bug.cgi?id=147722

Reviewed by Simon Fraser.

Source/WebCore:

Fonts with features are simply modeled as new font objects. Font
feature information is contained within FontDescription, and our
caches are correctly sensitive to this information. Therefore,
we just need to make our font lookup code honor the request to
use certain features.

This patch creates a file, FontCacheCoreText.cpp, which will be the
new home of all shared OS X / iOS FontCache code. Over time, I will
be moving more and more source into this file, until there is
nothing left of FontCacheMac.mm and FontCacheIOS.mm. For now, the
only function in this file is the code which applies font features.

Test: css3/font-feature-settings-preinstalled-fonts.html

  • WebCore.xcodeproj/project.pbxproj: Add FontCacheCoreText.cpp.
  • platform/graphics/FontCache.h:
  • platform/graphics/cocoa/FontCacheCoreText.cpp: Added.

(WebCore::appendTrueTypeFeature): What the name says.
(WebCore::appendOpenTypeFeature): Ditto.
(WebCore::applyFontFeatureSettings): Ditto.

  • platform/graphics/ios/FontCacheIOS.mm:

(WebCore::FontCache::getSystemFontFallbackForCharacters): Call
applyFontFeatureSettings().
(WebCore::FontCache::createFontPlatformData): Ditto.

  • platform/graphics/mac/FontCacheMac.mm:

(WebCore::fontWithFamily): Ditto.
(WebCore::FontCache::systemFallbackForCharacters): Ditto.
(WebCore::FontCache::createFontPlatformData): Ditto.

  • platform/graphics/mac/FontCustomPlatformData.cpp:

(WebCore::FontCustomPlatformData::fontPlatformData): Ditto.

  • rendering/RenderThemeIOS.mm:

(WebCore::RenderThemeIOS::updateCachedSystemFontDescription):
Ditto.

LayoutTests:

Until I can make a custom font for reference tests, use a simple dump-render-tree test.

  • css3/font-feature-settings-preinstalled-fonts.html: Added.
  • platform/mac-yosemite/css3/font-feature-settings-preinstalled-fonts-expected.txt: Added.
12:08 PM Changeset in webkit [188145] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Unreviewed, rolling out r187907.
https://bugs.webkit.org/show_bug.cgi?id=147789

taking a different approach to the fix (Requested by estes on
#webkit).

Reverted changeset:

"Crash when following a Google search link to Twitter with
Limit Adult Content enabled."
https://bugs.webkit.org/show_bug.cgi?id=147651
http://trac.webkit.org/changeset/187907

11:51 AM Changeset in webkit [188144] by Chris Dumez
  • 41 edits
    4 deletes in trunk

Source/JavaScriptCore:
Interpreter::unwind shouldn't be responsible for assigning the correct scope.
https://bugs.webkit.org/show_bug.cgi?id=147666

Patch by Saam barati <saambarati1@gmail.com> on 2015-08-07
Reviewed by Geoffrey Garen.

If we make the bytecode generator know about every local scope it
creates, and if we give each local scope a unique register, the
bytecode generator has all the information it needs to assign
the correct scope to a catch handler. Because the bytecode generator
knows this information, it's a better separation of responsibilties
for it to set up the proper scope instead of relying on the exception
handling runtime to find the scope.

  • bytecode/BytecodeList.json:
  • bytecode/BytecodeUseDef.h:

(JSC::computeUsesForBytecodeOffset):

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::dumpBytecode):
(JSC::CodeBlock::CodeBlock):

  • bytecode/HandlerInfo.h:

(JSC::UnlinkedHandlerInfo::UnlinkedHandlerInfo):
(JSC::HandlerInfo::initialize):

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::generate):
(JSC::BytecodeGenerator::pushLexicalScopeInternal):
(JSC::BytecodeGenerator::emitGetScope):
(JSC::BytecodeGenerator::emitPushWithScope):
(JSC::BytecodeGenerator::emitGetParentScope):
(JSC::BytecodeGenerator::emitPopScope):
(JSC::BytecodeGenerator::emitPopWithScope):
(JSC::BytecodeGenerator::allocateAndEmitScope):
(JSC::BytecodeGenerator::emitComplexPopScopes):
(JSC::BytecodeGenerator::pushTry):
(JSC::BytecodeGenerator::popTryAndEmitCatch):
(JSC::BytecodeGenerator::localScopeDepth):
(JSC::BytecodeGenerator::calculateTargetScopeDepthForExceptionHandler): Deleted.

  • bytecompiler/BytecodeGenerator.h:
  • bytecompiler/NodesCodegen.cpp:

(JSC::WithNode::emitBytecode):

  • interpreter/Interpreter.cpp:

(JSC::Interpreter::unwind):

  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_push_with_scope):
(JSC::JIT::compileOpStrictEq):

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::emit_op_push_with_scope):
(JSC::JIT::emit_op_to_number):

  • jit/JITOperations.cpp:
  • jit/JITOperations.h:
  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::LLINT_SLOW_PATH_DECL):

  • llint/LLIntSlowPaths.h:
  • llint/LowLevelInterpreter.asm:
  • runtime/CommonSlowPaths.cpp:

(JSC::SLOW_PATH_DECL):

  • runtime/CommonSlowPaths.h:
  • runtime/JSScope.cpp:

(JSC::JSScope::objectAtScope):
(JSC::isUnscopable):
(JSC::JSScope::depth): Deleted.

  • runtime/JSScope.h:

Source/WebCore:
Fix WinCairo build after r188130.

Patch by Alex Christensen <achristensen@webkit.org> on 2015-08-07

  • platform/graphics/win/FontCustomPlatformDataCairo.cpp:

(WebCore::FontCustomPlatformData::~FontCustomPlatformData):
(WebCore::FontCustomPlatformData::fontPlatformData):
I forgot the parameter name.

Source/WebKit2:
Move concrete KeyedDecoder/Encoder implementations to WebCore.
https://bugs.webkit.org/show_bug.cgi?id=147757.

Patch by Brady Eidson <beidson@apple.com> on 2015-08-07
Rubberstamped by Andy Estes.

  • DatabaseProcess/IndexedDB/IDBSerialization.cpp:

(WebKit::serializeIDBKeyPath):
(WebKit::deserializeIDBKeyPath):
(WebKit::serializeIDBKeyData):
(WebKit::deserializeIDBKeyData):

  • PlatformEfl.cmake:
  • PlatformGTK.cmake:
  • WebKit2.xcodeproj/project.pbxproj:

Source/WTF:
Unreviewed, roll out http://trac.webkit.org/changeset/187972.

Patch by Filip Pizlo <fpizlo@apple.com> on 2015-08-05

  • wtf/Atomics.cpp:

(WTF::getSwapLock):
(WTF::atomicStep):

  • wtf/MessageQueue.h:

(WTF::MessageQueue::infiniteTime):
(WTF::MessageQueue<DataType>::append):
(WTF::MessageQueue<DataType>::appendAndKill):
(WTF::MessageQueue<DataType>::appendAndCheckEmpty):
(WTF::MessageQueue<DataType>::prepend):
(WTF::MessageQueue<DataType>::removeIf):
(WTF::MessageQueue<DataType>::isEmpty):
(WTF::MessageQueue<DataType>::kill):
(WTF::MessageQueue<DataType>::killed):

  • wtf/ParallelJobsGeneric.cpp:

(WTF::ParallelEnvironment::ThreadPrivate::execute):
(WTF::ParallelEnvironment::ThreadPrivate::waitForFinish):
(WTF::ParallelEnvironment::ThreadPrivate::workerThread):

  • wtf/ParallelJobsGeneric.h:
  • wtf/RunLoop.cpp:

(WTF::RunLoop::performWork):
(WTF::RunLoop::dispatch):

  • wtf/RunLoop.h:
  • wtf/ThreadSpecificWin.cpp:

(WTF::destructorsList):
(WTF::destructorsMutex):
(WTF::threadSpecificKeyCreate):
(WTF::threadSpecificKeyDelete):
(WTF::ThreadSpecificThreadExit):

  • wtf/Threading.cpp:

(WTF::threadEntryPoint):
(WTF::createThread):

  • wtf/ThreadingPrimitives.h:
  • wtf/ThreadingPthreads.cpp:

(WTF::threadMapMutex):
(WTF::initializeThreading):
(WTF::identifierByPthreadHandle):
(WTF::establishIdentifierForPthreadHandle):
(WTF::changeThreadPriority):
(WTF::waitForThreadCompletion):
(WTF::detachThread):
(WTF::threadDidExit):
(WTF::currentThread):
(WTF::Mutex::Mutex):
(WTF::Mutex::~Mutex):
(WTF::Mutex::lock):
(WTF::Mutex::tryLock):
(WTF::Mutex::unlock):
(WTF::ThreadCondition::~ThreadCondition):
(WTF::ThreadCondition::wait):
(WTF::ThreadCondition::timedWait):
(WTF::DeprecatedMutex::DeprecatedMutex): Deleted.
(WTF::DeprecatedMutex::~DeprecatedMutex): Deleted.
(WTF::DeprecatedMutex::lock): Deleted.
(WTF::DeprecatedMutex::tryLock): Deleted.
(WTF::DeprecatedMutex::unlock): Deleted.

  • wtf/ThreadingWin.cpp:

(WTF::initializeCurrentThreadInternal):
(WTF::threadMapMutex):
(WTF::initializeThreading):
(WTF::storeThreadHandleByIdentifier):
(WTF::threadHandleForIdentifier):
(WTF::clearThreadHandleForIdentifier):
(WTF::currentThread):
(WTF::Mutex::Mutex):
(WTF::Mutex::~Mutex):
(WTF::Mutex::lock):
(WTF::Mutex::tryLock):
(WTF::Mutex::unlock):
(WTF::ThreadCondition::~ThreadCondition):
(WTF::ThreadCondition::wait):
(WTF::ThreadCondition::timedWait):
(WTF::DeprecatedMutex::DeprecatedMutex): Deleted.
(WTF::DeprecatedMutex::~DeprecatedMutex): Deleted.
(WTF::DeprecatedMutex::lock): Deleted.
(WTF::DeprecatedMutex::tryLock): Deleted.
(WTF::DeprecatedMutex::unlock): Deleted.

  • wtf/WorkQueue.h:
  • wtf/dtoa.cpp:
  • wtf/dtoa.h:
  • wtf/efl/DispatchQueueEfl.cpp:

(DispatchQueue::dispatch):
(DispatchQueue::performWork):
(DispatchQueue::performTimerWork):
(DispatchQueue::insertTimerWorkItem):
(DispatchQueue::wakeUpThread):
(DispatchQueue::getNextTimeOut):

  • wtf/efl/DispatchQueueEfl.h:
  • wtf/efl/RunLoopEfl.cpp:

(WTF::RunLoop::wakeUpEvent):
(WTF::RunLoop::wakeUp):

  • wtf/threads/BinarySemaphore.cpp:

(WTF::BinarySemaphore::signal):
(WTF::BinarySemaphore::wait):

  • wtf/threads/BinarySemaphore.h:
  • wtf/win/WorkQueueWin.cpp:

(WTF::WorkQueue::handleCallback):
(WTF::WorkQueue::platformInvalidate):
(WTF::WorkQueue::dispatch):
(WTF::WorkQueue::timerCallback):
(WTF::WorkQueue::dispatchAfter):

Tools:
Running tests for a long time results in some tests running very slowly (throttling)
https://bugs.webkit.org/show_bug.cgi?id=147718

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2015-08-07
Reviewed by Chris Dumez.

Follow-up, make DumpRenderTree consistent with WebKitTestRunner.
Although COCOA ports default this setting to be disabled in WebKit1,
we should make both test harnesses disable the setting for consistency.

  • DumpRenderTree/mac/DumpRenderTree.mm:

(resetWebPreferencesToConsistentValues):

11:40 AM Changeset in webkit [188143] by Simon Fraser
  • 1 edit
    8213 deletes in trunk/LayoutTests

Remove platform/ios-sim-deprecated. All of the tests here exist elsewhere already.

  • platform/ios-sim-deprecated/: Removed.
11:33 AM Changeset in webkit [188142] by Brian Burg
  • 12 edits
    149 copies
    8 moves
    7 adds
    1 delete in trunk/LayoutTests

Web Inspector: move LayoutTests/inspector-protocol/ tests to LayoutTests/inspector/
https://bugs.webkit.org/show_bug.cgi?id=147729

Reviewed by Timothy Hatcher.

Merge inspector-protocol tests into the inspector directory. Rename a few helper
resources whose names clashed. Put top-level tests into unit-tests/ and protocol/.

Update TestExpectations to not reference inspector-protocol paths.

  • TestExpectations:
  • http/tests/inspector/resources/console-test.js: Renamed from LayoutTests/inspector-protocol/resources/console-test.js.
  • http/tests/inspector/resources/probe-test.js: Renamed from LayoutTests/inspector-protocol/resources/probe-helper.js.
  • inspector-protocol/debugger/resources/breakpoint.js: Removed.
  • inspector/console/console-message-expected.txt: Renamed from LayoutTests/inspector-protocol/console/console-message-expected.txt.
  • inspector/console/console-message.html: Renamed from LayoutTests/inspector-protocol/console/console-message.html.
  • inspector/console/css-source-locations-expected.txt: Renamed from LayoutTests/inspector-protocol/console/css-source-locations-expected.txt.
  • inspector/console/css-source-locations.html: Renamed from LayoutTests/inspector-protocol/console/css-source-locations.html.
  • inspector/console/js-source-locations-expected.txt: Renamed from LayoutTests/inspector-protocol/console/js-source-locations-expected.txt.
  • inspector/console/js-source-locations.html: Renamed from LayoutTests/inspector-protocol/console/js-source-locations.html.
  • inspector/console/resources/errors.css: Renamed from LayoutTests/inspector-protocol/resources/errors.css.

(div):

  • inspector/console/resources/errors.js: Renamed from LayoutTests/inspector-protocol/resources/errors.js.

(foo):

  • inspector/console/x-frame-options-message-expected.txt: Renamed from LayoutTests/inspector-protocol/console/x-frame-options-message-expected.txt.
  • inspector/console/x-frame-options-message.html: Renamed from LayoutTests/inspector-protocol/console/x-frame-options-message.html.
  • inspector/css/getSupportedCSSProperties-expected.txt: Renamed from LayoutTests/inspector-protocol/css/getSupportedCSSProperties-expected.txt.
  • inspector/css/getSupportedCSSProperties.html: Renamed from LayoutTests/inspector-protocol/css/getSupportedCSSProperties.html.
  • inspector/debugger/breakpoint-action-detach-expected.txt: Renamed from LayoutTests/inspector-protocol/debugger/breakpoint-action-detach-expected.txt.
  • inspector/debugger/breakpoint-action-detach.html: Renamed from LayoutTests/inspector-protocol/debugger/breakpoint-action-detach.html.
  • inspector/debugger/breakpoint-action-eval.html:
  • inspector/debugger/breakpoint-action-with-exception-expected.txt: Renamed from LayoutTests/inspector-protocol/debugger/breakpoint-action-with-exception-expected.txt.
  • inspector/debugger/breakpoint-action-with-exception.html: Renamed from LayoutTests/inspector-protocol/debugger/breakpoint-action-with-exception.html.
  • inspector/debugger/breakpoint-condition-detach-expected.txt: Renamed from LayoutTests/inspector-protocol/debugger/breakpoint-condition-detach-expected.txt.
  • inspector/debugger/breakpoint-condition-detach.html: Renamed from LayoutTests/inspector-protocol/debugger/breakpoint-condition-detach.html.
  • inspector/debugger/breakpoint-condition-with-bad-script-expected.txt: Renamed from LayoutTests/inspector-protocol/debugger/breakpoint-condition-with-bad-script-expected.txt.
  • inspector/debugger/breakpoint-condition-with-bad-script.html: Renamed from LayoutTests/inspector-protocol/debugger/breakpoint-condition-with-bad-script.html.
  • inspector/debugger/breakpoint-condition-with-exception-expected.txt: Renamed from LayoutTests/inspector-protocol/debugger/breakpoint-condition-with-exception-expected.txt.
  • inspector/debugger/breakpoint-condition-with-exception.html: Renamed from LayoutTests/inspector-protocol/debugger/breakpoint-condition-with-exception.html.
  • inspector/debugger/breakpoint-eval-with-exception-expected.txt: Renamed from LayoutTests/inspector-protocol/debugger/breakpoint-eval-with-exception-expected.txt.
  • inspector/debugger/breakpoint-eval-with-exception.html: Renamed from LayoutTests/inspector-protocol/debugger/breakpoint-eval-with-exception.html.
  • inspector/debugger/breakpoint-inside-conditons-and-actions-expected.txt: Renamed from LayoutTests/inspector-protocol/debugger/breakpoint-inside-conditons-and-actions-expected.txt.
  • inspector/debugger/breakpoint-inside-conditons-and-actions.html: Renamed from LayoutTests/inspector-protocol/debugger/breakpoint-inside-conditons-and-actions.html.
  • inspector/debugger/call-frame-function-name-expected.txt: Renamed from LayoutTests/inspector-protocol/debugger/call-frame-function-name-expected.txt.
  • inspector/debugger/call-frame-function-name.html: Renamed from LayoutTests/inspector-protocol/debugger/call-frame-function-name.html.
  • inspector/debugger/call-frame-this-host-expected.txt: Renamed from LayoutTests/inspector-protocol/debugger/call-frame-this-host-expected.txt.
  • inspector/debugger/call-frame-this-host.html: Renamed from LayoutTests/inspector-protocol/debugger/call-frame-this-host.html.
  • inspector/debugger/call-frame-this-nonstrict-expected.txt: Renamed from LayoutTests/inspector-protocol/debugger/call-frame-this-nonstrict-expected.txt.
  • inspector/debugger/call-frame-this-nonstrict.html: Renamed from LayoutTests/inspector-protocol/debugger/call-frame-this-nonstrict.html.
  • inspector/debugger/call-frame-this-strict-expected.txt: Renamed from LayoutTests/inspector-protocol/debugger/call-frame-this-strict-expected.txt.
  • inspector/debugger/call-frame-this-strict.html: Renamed from LayoutTests/inspector-protocol/debugger/call-frame-this-strict.html.
  • inspector/debugger/debugger-statement-expected.txt: Renamed from LayoutTests/inspector-protocol/debugger/debugger-statement-expected.txt.
  • inspector/debugger/debugger-statement.html: Renamed from LayoutTests/inspector-protocol/debugger/debugger-statement.html.
  • inspector/debugger/didSampleProbe-multiple-probes-expected.txt: Renamed from LayoutTests/inspector-protocol/debugger/didSampleProbe-multiple-probes-expected.txt.
  • inspector/debugger/didSampleProbe-multiple-probes.html: Renamed from LayoutTests/inspector-protocol/debugger/didSampleProbe-multiple-probes.html.
  • inspector/debugger/hit-breakpoint-from-console-expected.txt: Renamed from LayoutTests/inspector-protocol/debugger/hit-breakpoint-from-console-expected.txt.
  • inspector/debugger/hit-breakpoint-from-console.html: Renamed from LayoutTests/inspector-protocol/debugger/hit-breakpoint-from-console.html.
  • inspector/debugger/nested-inspectors-expected.txt: Renamed from LayoutTests/inspector-protocol/debugger/nested-inspectors-expected.txt.
  • inspector/debugger/nested-inspectors.html: Renamed from LayoutTests/inspector-protocol/debugger/nested-inspectors.html.
  • inspector/debugger/pause-dedicated-worker-expected.txt: Renamed from LayoutTests/inspector-protocol/debugger/pause-dedicated-worker-expected.txt.
  • inspector/debugger/pause-dedicated-worker.html: Renamed from LayoutTests/inspector-protocol/debugger/pause-dedicated-worker.html.
  • inspector/debugger/pause-on-assert-expected.txt: Renamed from LayoutTests/inspector-protocol/debugger/pause-on-assert-expected.txt.
  • inspector/debugger/pause-on-assert.html: Renamed from LayoutTests/inspector-protocol/debugger/pause-on-assert.html.
  • inspector/debugger/probe-manager-add-remove-actions.html:
  • inspector/debugger/regress-133182-expected.txt: Renamed from LayoutTests/inspector-protocol/debugger/regress-133182-expected.txt.
  • inspector/debugger/regress-133182.html: Renamed from LayoutTests/inspector-protocol/debugger/regress-133182.html.
  • inspector/debugger/removeBreakpoint-expected.txt: Renamed from LayoutTests/inspector-protocol/debugger/removeBreakpoint-expected.txt.
  • inspector/debugger/removeBreakpoint.html: Renamed from LayoutTests/inspector-protocol/debugger/removeBreakpoint.html.
  • inspector/debugger/resources/assert.js: Renamed from LayoutTests/inspector-protocol/debugger/resources/assert.js.
  • inspector/debugger/resources/dedicated-worker.js: Renamed from LayoutTests/inspector-protocol/debugger/resources/dedicated-worker.js.
  • inspector/debugger/resources/exception.js: Renamed from LayoutTests/inspector-protocol/debugger/resources/exception.js.
  • inspector/debugger/resources/mac-linebreaks.js: Renamed from LayoutTests/inspector-protocol/debugger/resources/mac-linebreaks.js.
  • inspector/debugger/resources/mixed-linebreaks.js: Renamed from LayoutTests/inspector-protocol/debugger/resources/mixed-linebreaks.js.
  • inspector/debugger/resources/script-for-breakpoint-actions.js: Copied from LayoutTests/inspector/debugger/resources/breakpoint.js.
  • inspector/debugger/resources/unix-linebreaks.js: Renamed from LayoutTests/inspector-protocol/debugger/resources/unix-linebreaks.js.
  • inspector/debugger/resources/windows-linebreaks.js: Renamed from LayoutTests/inspector-protocol/debugger/resources/windows-linebreaks.js.
  • inspector/debugger/searchInContent-linebreaks-expected.txt: Renamed from LayoutTests/inspector-protocol/debugger/searchInContent-linebreaks-expected.txt.
  • inspector/debugger/searchInContent-linebreaks.html: Renamed from LayoutTests/inspector-protocol/debugger/searchInContent-linebreaks.html.
  • inspector/debugger/setBreakpoint-actions-expected.txt: Renamed from LayoutTests/inspector-protocol/debugger/setBreakpoint-actions-expected.txt.
  • inspector/debugger/setBreakpoint-actions.html: Renamed from LayoutTests/inspector-protocol/debugger/setBreakpoint-actions.html.
  • inspector/debugger/setBreakpoint-autoContinue-expected.txt: Renamed from LayoutTests/inspector-protocol/debugger/setBreakpoint-autoContinue-expected.txt.
  • inspector/debugger/setBreakpoint-autoContinue.html: Renamed from LayoutTests/inspector-protocol/debugger/setBreakpoint-autoContinue.html.
  • inspector/debugger/setBreakpoint-column-expected.txt: Renamed from LayoutTests/inspector-protocol/debugger/setBreakpoint-column-expected.txt.
  • inspector/debugger/setBreakpoint-column.html: Renamed from LayoutTests/inspector-protocol/debugger/setBreakpoint-column.html.
  • inspector/debugger/setBreakpoint-column.txt: Renamed from LayoutTests/inspector-protocol/debugger/setBreakpoint-column.txt.
  • inspector/debugger/setBreakpoint-condition-expected.txt: Renamed from LayoutTests/inspector-protocol/debugger/setBreakpoint-condition-expected.txt.
  • inspector/debugger/setBreakpoint-condition.html: Renamed from LayoutTests/inspector-protocol/debugger/setBreakpoint-condition.html.
  • inspector/debugger/setBreakpoint-dfg-and-modify-local-expected.txt: Renamed from LayoutTests/inspector-protocol/debugger/setBreakpoint-dfg-and-modify-local-expected.txt.
  • inspector/debugger/setBreakpoint-dfg-and-modify-local.html: Renamed from LayoutTests/inspector-protocol/debugger/setBreakpoint-dfg-and-modify-local.html.
  • inspector/debugger/setBreakpoint-dfg-callee-and-examine-dfg-local-expected.txt: Renamed from LayoutTests/inspector-protocol/debugger/setBreakpoint-dfg-callee-and-examine-dfg-local-expected.txt.
  • inspector/debugger/setBreakpoint-dfg-callee-and-examine-dfg-local.html: Renamed from LayoutTests/inspector-protocol/debugger/setBreakpoint-dfg-callee-and-examine-dfg-local.html.
  • inspector/debugger/setBreakpoint-dfg-expected.txt: Renamed from LayoutTests/inspector-protocol/debugger/setBreakpoint-dfg-expected.txt.
  • inspector/debugger/setBreakpoint-dfg.html: Renamed from LayoutTests/inspector-protocol/debugger/setBreakpoint-dfg.html.
  • inspector/debugger/setBreakpoint-expected.txt: Renamed from LayoutTests/inspector-protocol/debugger/setBreakpoint-expected.txt.
  • inspector/debugger/setBreakpoint-options-exception-expected.txt: Renamed from LayoutTests/inspector-protocol/debugger/setBreakpoint-options-exception-expected.txt.
  • inspector/debugger/setBreakpoint-options-exception.html: Renamed from LayoutTests/inspector-protocol/debugger/setBreakpoint-options-exception.html.
  • inspector/debugger/setBreakpoint.html: Renamed from LayoutTests/inspector-protocol/debugger/setBreakpoint.html.
  • inspector/debugger/setBreakpointByUrl-sourceURL-expected.txt: Renamed from LayoutTests/inspector-protocol/debugger/setBreakpointByUrl-sourceURL-expected.txt.
  • inspector/debugger/setBreakpointByUrl-sourceURL.html: Renamed from LayoutTests/inspector-protocol/debugger/setBreakpointByUrl-sourceURL.html.
  • inspector/debugger/setPauseOnExceptions-all-expected.txt: Renamed from LayoutTests/inspector-protocol/debugger/setPauseOnExceptions-all-expected.txt.
  • inspector/debugger/setPauseOnExceptions-all.html: Renamed from LayoutTests/inspector-protocol/debugger/setPauseOnExceptions-all.html.
  • inspector/debugger/setPauseOnExceptions-none-expected.txt: Renamed from LayoutTests/inspector-protocol/debugger/setPauseOnExceptions-none-expected.txt.
  • inspector/debugger/setPauseOnExceptions-none.html: Renamed from LayoutTests/inspector-protocol/debugger/setPauseOnExceptions-none.html.
  • inspector/debugger/setPauseOnExceptions-uncaught-expected.txt: Renamed from LayoutTests/inspector-protocol/debugger/setPauseOnExceptions-uncaught-expected.txt.
  • inspector/debugger/setPauseOnExceptions-uncaught.html: Renamed from LayoutTests/inspector-protocol/debugger/setPauseOnExceptions-uncaught.html.
  • inspector/debugger/setVariableValue-expected.txt: Renamed from LayoutTests/inspector-protocol/debugger/setVariableValue-expected.txt.
  • inspector/debugger/setVariableValue.html: Renamed from LayoutTests/inspector-protocol/debugger/setVariableValue.html.
  • inspector/debugger/terminate-dedicated-worker-while-paused-expected.txt: Renamed from LayoutTests/inspector-protocol/debugger/terminate-dedicated-worker-while-paused-expected.txt.
  • inspector/debugger/terminate-dedicated-worker-while-paused.html: Renamed from LayoutTests/inspector-protocol/debugger/terminate-dedicated-worker-while-paused.html.
  • inspector/dom-debugger/node-removed-expected.txt: Renamed from LayoutTests/inspector-protocol/dom-debugger/node-removed-expected.txt.
  • inspector/dom-debugger/node-removed.html: Renamed from LayoutTests/inspector-protocol/dom-debugger/node-removed.html.
  • inspector/dom/dom-remove-events-expected.txt: Renamed from LayoutTests/inspector-protocol/dom/dom-remove-events-expected.txt.
  • inspector/dom/dom-remove-events.html: Renamed from LayoutTests/inspector-protocol/dom/dom-remove-events.html.
  • inspector/dom/dom-search-crash-expected.txt: Renamed from LayoutTests/inspector-protocol/dom/dom-search-crash-expected.txt.
  • inspector/dom/dom-search-crash.html: Renamed from LayoutTests/inspector-protocol/dom/dom-search-crash.html.
  • inspector/dom/dom-search-expected.txt: Renamed from LayoutTests/inspector-protocol/dom/dom-search-expected.txt.
  • inspector/dom/dom-search-with-context-expected.txt: Renamed from LayoutTests/inspector-protocol/dom/dom-search-with-context-expected.txt.
  • inspector/dom/dom-search-with-context.html: Renamed from LayoutTests/inspector-protocol/dom/dom-search-with-context.html.
  • inspector/dom/dom-search.html: Renamed from LayoutTests/inspector-protocol/dom/dom-search.html.
  • inspector/dom/focus-expected.txt: Renamed from LayoutTests/inspector-protocol/dom/focus-expected.txt.
  • inspector/dom/focus.html: Renamed from LayoutTests/inspector-protocol/dom/focus.html.
  • inspector/dom/getAccessibilityPropertiesForNode-expected.txt: Renamed from LayoutTests/inspector-protocol/dom/getAccessibilityPropertiesForNode-expected.txt.
  • inspector/dom/getAccessibilityPropertiesForNode.html: Renamed from LayoutTests/inspector-protocol/dom/getAccessibilityPropertiesForNode.html.
  • inspector/dom/getAccessibilityPropertiesForNode_liveRegion-expected.txt: Renamed from LayoutTests/inspector-protocol/dom/getAccessibilityPropertiesForNode_liveRegion-expected.txt.
  • inspector/dom/getAccessibilityPropertiesForNode_liveRegion.html: Renamed from LayoutTests/inspector-protocol/dom/getAccessibilityPropertiesForNode_liveRegion.html.
  • inspector/dom/getAccessibilityPropertiesForNode_mouseEventNodeId-expected.txt: Renamed from LayoutTests/inspector-protocol/dom/getAccessibilityPropertiesForNode_mouseEventNodeId-expected.txt.
  • inspector/dom/getAccessibilityPropertiesForNode_mouseEventNodeId.html: Renamed from LayoutTests/inspector-protocol/dom/getAccessibilityPropertiesForNode_mouseEventNodeId.html.
  • inspector/dom/highlight-flow-with-no-region-expected.txt: Renamed from LayoutTests/inspector-protocol/dom/highlight-flow-with-no-region-expected.txt.
  • inspector/dom/highlight-flow-with-no-region.html: Renamed from LayoutTests/inspector-protocol/dom/highlight-flow-with-no-region.html.
  • inspector/dom/remove-multiple-nodes-expected.txt: Renamed from LayoutTests/inspector-protocol/dom/remove-multiple-nodes-expected.txt.
  • inspector/dom/remove-multiple-nodes.html: Renamed from LayoutTests/inspector-protocol/dom/remove-multiple-nodes.html.
  • inspector/dom/request-child-nodes-depth-expected.txt: Renamed from LayoutTests/inspector-protocol/dom/request-child-nodes-depth-expected.txt.
  • inspector/dom/request-child-nodes-depth.html: Renamed from LayoutTests/inspector-protocol/dom/request-child-nodes-depth.html.
  • inspector/dom/resources/dom-search-crash-iframe.html: Renamed from LayoutTests/inspector-protocol/dom/resources/dom-search-crash-iframe.html.
  • inspector/dom/resources/dom-search-iframe.html: Renamed from LayoutTests/inspector-protocol/dom/resources/dom-search-iframe.html.
  • inspector/dom/resources/dom-search-queries.js: Renamed from LayoutTests/inspector-protocol/dom/resources/dom-search-queries.js.
  • inspector/layers/layers-anonymous-expected.txt: Renamed from LayoutTests/inspector-protocol/layers/layers-anonymous-expected.txt.
  • inspector/layers/layers-anonymous.html: Renamed from LayoutTests/inspector-protocol/layers/layers-anonymous.html.
  • inspector/layers/layers-blending-compositing-reasons-expected.txt: Renamed from LayoutTests/inspector-protocol/layers/layers-blending-compositing-reasons-expected.txt.
  • inspector/layers/layers-blending-compositing-reasons.html: Renamed from LayoutTests/inspector-protocol/layers/layers-blending-compositing-reasons.html.
  • inspector/layers/layers-compositing-reasons-expected.txt: Renamed from LayoutTests/inspector-protocol/layers/layers-compositing-reasons-expected.txt.
  • inspector/layers/layers-compositing-reasons.html: Renamed from LayoutTests/inspector-protocol/layers/layers-compositing-reasons.html.
  • inspector/layers/layers-for-node-expected.txt: Renamed from LayoutTests/inspector-protocol/layers/layers-for-node-expected.txt.
  • inspector/layers/layers-for-node.html: Renamed from LayoutTests/inspector-protocol/layers/layers-for-node.html.
  • inspector/layers/layers-generated-content-expected.txt: Renamed from LayoutTests/inspector-protocol/layers/layers-generated-content-expected.txt.
  • inspector/layers/layers-generated-content.html: Renamed from LayoutTests/inspector-protocol/layers/layers-generated-content.html.
  • inspector/layers/layers-reflected-content-expected.txt: Renamed from LayoutTests/inspector-protocol/layers/layers-reflected-content-expected.txt.
  • inspector/layers/layers-reflected-content.html: Renamed from LayoutTests/inspector-protocol/layers/layers-reflected-content.html.
  • inspector/page/archive-expected.txt: Renamed from LayoutTests/inspector-protocol/page/archive-expected.txt.
  • inspector/page/archive.html: Renamed from LayoutTests/inspector-protocol/page/archive.html.
  • inspector/page/frameScheduledNavigation-expected.txt: Renamed from LayoutTests/inspector-protocol/page/frameScheduledNavigation-expected.txt.
  • inspector/page/frameScheduledNavigation.html: Renamed from LayoutTests/inspector-protocol/page/frameScheduledNavigation.html.
  • inspector/page/frameStartedLoading-expected.txt: Renamed from LayoutTests/inspector-protocol/page/frameStartedLoading-expected.txt.
  • inspector/page/frameStartedLoading.html: Renamed from LayoutTests/inspector-protocol/page/frameStartedLoading.html.
  • inspector/page/javascriptDialogEvents-expected.txt: Renamed from LayoutTests/inspector-protocol/page/javascriptDialogEvents-expected.txt.
  • inspector/page/javascriptDialogEvents.html: Renamed from LayoutTests/inspector-protocol/page/javascriptDialogEvents.html.
  • inspector/page/resources/blank.html: Renamed from LayoutTests/inspector-protocol/page/resources/blank.html.
  • inspector/page/setEmulatedMedia-expected.txt: Renamed from LayoutTests/inspector-protocol/page/setEmulatedMedia-expected.txt.
  • inspector/page/setEmulatedMedia.html: Renamed from LayoutTests/inspector-protocol/page/setEmulatedMedia.html.
  • inspector/protocol/protocol-promise-result-expected.txt: Renamed from LayoutTests/inspector/protocol-promise-result-expected.txt.
  • inspector/protocol/protocol-promise-result.html: Renamed from LayoutTests/inspector/protocol-promise-result.html.
  • inspector/runtime/getProperties-expected.txt: Renamed from LayoutTests/inspector-protocol/runtime/getProperties-expected.txt.
  • inspector/runtime/getProperties.html: Renamed from LayoutTests/inspector-protocol/runtime/getProperties.html.
  • inspector/unit-tests/async-test-suite-expected.txt: Renamed from LayoutTests/inspector-protocol/async-test-suite-expected.txt.
  • inspector/unit-tests/async-test-suite.html: Renamed from LayoutTests/inspector-protocol/async-test-suite.html.
  • inspector/unit-tests/event-listener-expected.txt: Renamed from LayoutTests/inspector/event-listener-expected.txt.
  • inspector/unit-tests/event-listener-set-expected.txt: Renamed from LayoutTests/inspector/event-listener-set-expected.txt.
  • inspector/unit-tests/event-listener-set.html: Renamed from LayoutTests/inspector/event-listener-set.html.
  • inspector/unit-tests/event-listener.html: Renamed from LayoutTests/inspector/event-listener.html.
  • inspector/unit-tests/sync-test-suite-expected.txt: Renamed from LayoutTests/inspector-protocol/sync-test-suite-expected.txt.
  • inspector/unit-tests/sync-test-suite.html: Renamed from LayoutTests/inspector-protocol/sync-test-suite.html.
  • inspector/unit-tests/test-harness-trivially-works-expected.txt: Renamed from LayoutTests/inspector/test-harness-trivially-works-expected.txt.
  • inspector/unit-tests/test-harness-trivially-works.html: Renamed from LayoutTests/inspector/test-harness-trivially-works.html.
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/ios-simulator-wk1/TestExpectations:
  • platform/ios-simulator-wk2/TestExpectations:
  • platform/mac-wk2/TestExpectations:
  • platform/mac/TestExpectations:
  • platform/win/TestExpectations:
11:27 AM Changeset in webkit [188141] by achristensen@apple.com
  • 2 edits in trunk/Source/WebCore

Fix WinCairo build after r188130.

  • platform/graphics/win/FontCustomPlatformDataCairo.cpp:

(WebCore::FontCustomPlatformData::~FontCustomPlatformData):
(WebCore::FontCustomPlatformData::fontPlatformData):
I forgot the parameter name.

11:22 AM Changeset in webkit [188140] by achristensen@apple.com
  • 2 edits in trunk/Source/WebCore

Fix WinCairo build after r188130.

  • platform/graphics/win/FontCustomPlatformDataCairo.cpp:

(WebCore::FontCustomPlatformData::~FontCustomPlatformData):
(WebCore::FontCustomPlatformData::fontPlatformData):
Update fontPlatformData parameters.

11:11 AM Changeset in webkit [188139] by Joseph Pecoraro
  • 2 edits in trunk/Tools

Running tests for a long time results in some tests running very slowly (throttling)
https://bugs.webkit.org/show_bug.cgi?id=147718

Reviewed by Chris Dumez.

Follow-up, make DumpRenderTree consistent with WebKitTestRunner.
Although COCOA ports default this setting to be disabled in WebKit1,
we should make both test harnesses disable the setting for consistency.

  • DumpRenderTree/mac/DumpRenderTree.mm:

(resetWebPreferencesToConsistentValues):

10:58 AM Changeset in webkit [188138] by Devin Rousso
  • 4 edits in trunk/Source/WebInspectorUI

Web Inspector: Option+Up/Down arrow keys should increment/decrement numbers in HTML and SVG attributes
https://bugs.webkit.org/show_bug.cgi?id=147317

Reviewed by Timothy Hatcher.

If the value under the cursor in an HTML element attribute is a number, pressing alt and
up/down will increment/decrement the number value and apply that change to the element.

  • UserInterface/Views/BoxModelDetailsSectionRow.js:

(WebInspector.BoxModelDetailsSectionRow.prototype._alteredFloatNumber):
(WebInspector.BoxModelDetailsSectionRow.prototype._handleKeyDown):

  • UserInterface/Views/DOMTreeElement.js:

(WebInspector.DOMTreeElement.prototype._startEditingAttribute):
(WebInspector.DOMTreeElement.prototype._attributeEditingCommitted):
(WebInspector.DOMTreeElement.prototype._attributeNumberEditingCommitted):

  • UserInterface/Views/EditingSupport.js:

(WebInspector.EditingConfig.prototype.setNumberCommitHandler):
(WebInspector.startEditing.defaultFinishHandler):
(WebInspector.startEditing.handleEditingResult):

10:47 AM Changeset in webkit [188137] by dbates@webkit.org
  • 3 edits in trunk/Source/WebCore

Attempt to fix the Windows build after <http://trac.webkit.org/changeset/188130>
(https://bugs.webkit.org/show_bug.cgi?id=147775)

Include header FontDescription.h.

  • platform/graphics/win/FontCustomPlatformData.cpp:
  • platform/graphics/win/FontCustomPlatformDataCairo.cpp:
10:41 AM Changeset in webkit [188136] by saambarati1@gmail.com
  • 20 edits in trunk/Source/JavaScriptCore

Interpreter::unwind shouldn't be responsible for assigning the correct scope.
https://bugs.webkit.org/show_bug.cgi?id=147666

Reviewed by Geoffrey Garen.

If we make the bytecode generator know about every local scope it
creates, and if we give each local scope a unique register, the
bytecode generator has all the information it needs to assign
the correct scope to a catch handler. Because the bytecode generator
knows this information, it's a better separation of responsibilties
for it to set up the proper scope instead of relying on the exception
handling runtime to find the scope.

  • bytecode/BytecodeList.json:
  • bytecode/BytecodeUseDef.h:

(JSC::computeUsesForBytecodeOffset):

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::dumpBytecode):
(JSC::CodeBlock::CodeBlock):

  • bytecode/HandlerInfo.h:

(JSC::UnlinkedHandlerInfo::UnlinkedHandlerInfo):
(JSC::HandlerInfo::initialize):

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::generate):
(JSC::BytecodeGenerator::pushLexicalScopeInternal):
(JSC::BytecodeGenerator::emitGetScope):
(JSC::BytecodeGenerator::emitPushWithScope):
(JSC::BytecodeGenerator::emitGetParentScope):
(JSC::BytecodeGenerator::emitPopScope):
(JSC::BytecodeGenerator::emitPopWithScope):
(JSC::BytecodeGenerator::allocateAndEmitScope):
(JSC::BytecodeGenerator::emitComplexPopScopes):
(JSC::BytecodeGenerator::pushTry):
(JSC::BytecodeGenerator::popTryAndEmitCatch):
(JSC::BytecodeGenerator::localScopeDepth):
(JSC::BytecodeGenerator::calculateTargetScopeDepthForExceptionHandler): Deleted.

  • bytecompiler/BytecodeGenerator.h:
  • bytecompiler/NodesCodegen.cpp:

(JSC::WithNode::emitBytecode):

  • interpreter/Interpreter.cpp:

(JSC::Interpreter::unwind):

  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_push_with_scope):
(JSC::JIT::compileOpStrictEq):

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::emit_op_push_with_scope):
(JSC::JIT::emit_op_to_number):

  • jit/JITOperations.cpp:
  • jit/JITOperations.h:
  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::LLINT_SLOW_PATH_DECL):

  • llint/LLIntSlowPaths.h:
  • llint/LowLevelInterpreter.asm:
  • runtime/CommonSlowPaths.cpp:

(JSC::SLOW_PATH_DECL):

  • runtime/CommonSlowPaths.h:
  • runtime/JSScope.cpp:

(JSC::JSScope::objectAtScope):
(JSC::isUnscopable):
(JSC::JSScope::depth): Deleted.

  • runtime/JSScope.h:
10:31 AM Changeset in webkit [188135] by Yusuke Suzuki
  • 6 edits in trunk/Source/JavaScriptCore

Add MacroAssembler::patchableBranch64 and fix ARM64's patchableBranchPtr
https://bugs.webkit.org/show_bug.cgi?id=147761

Reviewed by Mark Lam.

This patch implements MacroAssembler::patchableBranch64 in 64bit environments.
And fix the existing MacroAssemblerARM64::patchableBranchPtr, before this patch,
it truncates the immediate pointer into the 32bit immediate.
And use patchableBranch64 in the baseline JIT under the JSVALUE64 configuration.

  • assembler/MacroAssemblerARM64.h:

(JSC::MacroAssemblerARM64::patchableBranchPtr):
(JSC::MacroAssemblerARM64::patchableBranch64):

  • assembler/MacroAssemblerX86_64.h:

(JSC::MacroAssemblerX86_64::patchableBranch64):

  • jit/JIT.h:
  • jit/JITInlines.h:

(JSC::JIT::emitPatchableJumpIfNotImmediateInteger):

  • jit/JITPropertyAccess.cpp:

(JSC::JIT::emit_op_get_by_val):

10:30 AM Changeset in webkit [188134] by Simon Fraser
  • 1 edit
    37 deletes in trunk/LayoutTests

ios-sim-deprecated/iphone/fast/events/touch/ already existed in fast/events/touch, so remove them.

  • platform/ios-sim-deprecated/iphone/fast/events/touch/document-create-touch-list-ios-expected.txt: Removed.
  • platform/ios-sim-deprecated/iphone/fast/events/touch/document-create-touch-list-ios.html: Removed.
  • platform/ios-sim-deprecated/iphone/fast/events/touch/gesture-event-basic-expected.txt: Removed.
  • platform/ios-sim-deprecated/iphone/fast/events/touch/gesture-event-basic.html: Removed.
  • platform/ios-sim-deprecated/iphone/fast/events/touch/input-touch-target-expected.txt: Removed.
  • platform/ios-sim-deprecated/iphone/fast/events/touch/input-touch-target.html: Removed.
  • platform/ios-sim-deprecated/iphone/fast/events/touch/inserted-fragment-touch-target-expected.txt: Removed.
  • platform/ios-sim-deprecated/iphone/fast/events/touch/inserted-fragment-touch-target.html: Removed.
  • platform/ios-sim-deprecated/iphone/fast/events/touch/moved-touch-target-expected.txt: Removed.
  • platform/ios-sim-deprecated/iphone/fast/events/touch/moved-touch-target.html: Removed.
  • platform/ios-sim-deprecated/iphone/fast/events/touch/multi-touch-some-without-handlers-expected.txt: Removed.
  • platform/ios-sim-deprecated/iphone/fast/events/touch/multi-touch-some-without-handlers.html: Removed.
  • platform/ios-sim-deprecated/iphone/fast/events/touch/ontouchstart-active-selector-expected.txt: Removed.
  • platform/ios-sim-deprecated/iphone/fast/events/touch/ontouchstart-active-selector.html: Removed.
  • platform/ios-sim-deprecated/iphone/fast/events/touch/removed-fragment-touch-target-expected.txt: Removed.
  • platform/ios-sim-deprecated/iphone/fast/events/touch/removed-fragment-touch-target.html: Removed.
  • platform/ios-sim-deprecated/iphone/fast/events/touch/removed-touch-target-expected.txt: Removed.
  • platform/ios-sim-deprecated/iphone/fast/events/touch/removed-touch-target.html: Removed.
  • platform/ios-sim-deprecated/iphone/fast/events/touch/script-tests/TEMPLATE.html: Removed.
  • platform/ios-sim-deprecated/iphone/fast/events/touch/script-tests/document-create-touch-list-ios.js: Removed.
  • platform/ios-sim-deprecated/iphone/fast/events/touch/script-tests/input-touch-target.js: Removed.
  • platform/ios-sim-deprecated/iphone/fast/events/touch/script-tests/multi-touch-some-without-handlers.js: Removed.
  • platform/ios-sim-deprecated/iphone/fast/events/touch/script-tests/text-node-touch-target.js: Removed.
  • platform/ios-sim-deprecated/iphone/fast/events/touch/script-tests/textarea-touch-target.js: Removed.
  • platform/ios-sim-deprecated/iphone/fast/events/touch/script-tests/touch-event-frames.js: Removed.
  • platform/ios-sim-deprecated/iphone/fast/events/touch/script-tests/touch-event-pageXY.js: Removed.
  • platform/ios-sim-deprecated/iphone/fast/events/touch/script-tests/zoomed-touch-event-pageXY.js: Removed.
  • platform/ios-sim-deprecated/iphone/fast/events/touch/text-node-touch-target-expected.txt: Removed.
  • platform/ios-sim-deprecated/iphone/fast/events/touch/text-node-touch-target.html: Removed.
  • platform/ios-sim-deprecated/iphone/fast/events/touch/textarea-touch-target-expected.txt: Removed.
  • platform/ios-sim-deprecated/iphone/fast/events/touch/textarea-touch-target.html: Removed.
  • platform/ios-sim-deprecated/iphone/fast/events/touch/touch-event-frames-expected.txt: Removed.
  • platform/ios-sim-deprecated/iphone/fast/events/touch/touch-event-frames.html: Removed.
  • platform/ios-sim-deprecated/iphone/fast/events/touch/touch-event-pageXY-expected.txt: Removed.
  • platform/ios-sim-deprecated/iphone/fast/events/touch/touch-event-pageXY.html: Removed.
  • platform/ios-sim-deprecated/iphone/fast/events/touch/zoomed-touch-event-pageXY-expected.txt: Removed.
  • platform/ios-sim-deprecated/iphone/fast/events/touch/zoomed-touch-event-pageXY.html: Removed.
10:30 AM Changeset in webkit [188133] by Simon Fraser
  • 1 edit
    2 moves in trunk/LayoutTests

Move platform/ios-sim-deprecated/http/tests/loading/multiple-prioritization.html into http/tests/loading/

  • http/tests/loading/multiple-prioritization-expected.txt: Renamed from LayoutTests/platform/ios-sim-deprecated/http/tests/loading/multiple-prioritization-expected.txt.
  • http/tests/loading/multiple-prioritization.html: Renamed from LayoutTests/platform/ios-sim-deprecated/http/tests/loading/multiple-prioritization.html.
10:30 AM Changeset in webkit [188132] by Simon Fraser
  • 5 edits
    6 moves
    3 adds
    2 deletes in trunk/LayoutTests

Move ios-sim-deprecated/fast/dom/ tests into fast/dom

  • TestExpectations:
  • fast/dom/Range/expand-word-with-apostrophe-expected.txt: Renamed from LayoutTests/platform/ios-sim-deprecated/fast/dom/Range/expand-word-with-apostrophe-expected.txt.
  • fast/dom/Range/expand-word-with-apostrophe.html: Renamed from LayoutTests/platform/ios-sim-deprecated/fast/dom/Range/expand-word-with-apostrophe.html.
  • fast/dom/Window/no-window-resize-on-document-size-change-expected.txt: Added.
  • fast/dom/Window/no-window-resize-on-document-size-change.html: Renamed from LayoutTests/platform/ios-sim-deprecated/fast/dom/Window/no-window-resize-on-document-size-change.html.
  • fast/dom/adopt-attribute-crash-expected.txt:
  • fast/dom/navigator-iOS-userAgent-expected.txt: Added.
  • fast/dom/navigator-iOS-userAgent.html: Renamed from LayoutTests/platform/ios-sim-deprecated/fast/dom/navigator-iOS-userAgent.html.
  • fast/dom/timer-fire-after-page-pause-expected.txt: Renamed from LayoutTests/platform/ios-sim-deprecated/fast/dom/timer-fire-after-page-pause-expected.txt.
  • fast/dom/timer-fire-after-page-pause.html: Renamed from LayoutTests/platform/ios-sim-deprecated/fast/dom/timer-fire-after-page-pause.html.
  • platform/ios-sim-deprecated/fast/dom/Window/no-window-resize-on-document-size-change-expected.txt: Removed.
  • platform/ios-sim-deprecated/fast/dom/navigator-iOS-userAgent-expected.txt: Removed.
  • platform/ios-simulator-wk1/TestExpectations:
  • platform/ios-simulator/TestExpectations:
  • platform/ios-simulator/fast/dom/navigator-iOS-userAgent-expected.txt: Added.
10:30 AM Changeset in webkit [188131] by Simon Fraser
  • 4 edits
    1 copy
    4 moves
    1 delete in trunk/LayoutTests

Move two ios-sim-deprecated/animations/ tests into animations.

  • animations/resources/anim.html: Renamed from LayoutTests/platform/ios-sim-deprecated/animations/resources/anim.html.
  • animations/restart-after-scroll-expected.txt: Copied from LayoutTests/platform/ios-sim-deprecated/animations/restart-after-scroll-nested-expected.txt.
  • animations/restart-after-scroll-nested-expected.txt: Renamed from LayoutTests/platform/ios-sim-deprecated/animations/restart-after-scroll-nested-expected.txt.
  • animations/restart-after-scroll-nested.html: Renamed from LayoutTests/platform/ios-sim-deprecated/animations/restart-after-scroll-nested.html.
  • animations/restart-after-scroll.html: Renamed from LayoutTests/platform/ios-sim-deprecated/animations/restart-after-scroll.html.
  • platform/ios-sim-deprecated/animations/restart-after-scroll-expected.txt: Removed.
  • platform/ios-simulator-wk1/TestExpectations:
  • platform/ios-simulator-wk2/TestExpectations:
  • platform/ios-simulator/TestExpectations:
10:06 AM Changeset in webkit [188130] by mmaxfield@apple.com
  • 15 edits in trunk/Source/WebCore

Allow FontCustomPlatformData to consult with FontDescription
https://bugs.webkit.org/show_bug.cgi?id=147775

Reviewed by Zalan Bujtas.

In order to implement font-feature-settings, web fonts need to be
able to consult with the set of active font features. Rather than
add yet another argument to all the functions in this flow, this
patch passes around a reference to the FontDescription itself instead
of copies of constituent members of it.

No new tests because there is no behavior change.

  • css/CSSFontFaceSource.cpp:

(WebCore::CSSFontFaceSource::font):

  • loader/cache/CachedFont.cpp:

(WebCore::CachedFont::createFont):
(WebCore::CachedFont::platformDataFromCustomData):

  • loader/cache/CachedFont.h:
  • loader/cache/CachedSVGFont.cpp:

(WebCore::CachedSVGFont::platformDataFromCustomData):

  • loader/cache/CachedSVGFont.h:
  • platform/graphics/cairo/FontCustomPlatformData.h:
  • platform/graphics/freetype/FontCustomPlatformDataFreeType.cpp:

(WebCore::FontCustomPlatformData::fontPlatformData):

  • platform/graphics/freetype/FontPlatformData.h:
  • platform/graphics/freetype/FontPlatformDataFreeType.cpp:

(WebCore::FontPlatformData::FontPlatformData):

  • platform/graphics/freetype/SimpleFontDataFreeType.cpp:

(WebCore::Font::platformCreateScaledFont):

  • platform/graphics/mac/FontCustomPlatformData.cpp:

(WebCore::FontCustomPlatformData::fontPlatformData):

  • platform/graphics/mac/FontCustomPlatformData.h:
  • platform/graphics/win/FontCustomPlatformData.cpp:

(WebCore::FontCustomPlatformData::fontPlatformData):

  • platform/graphics/win/FontCustomPlatformData.h:
10:04 AM Changeset in webkit [188129] by rniwa@webkit.org
  • 2 edits in trunk/Tools

Use a specific version of Speedometer in run-benchmark
https://bugs.webkit.org/show_bug.cgi?id=147769

Reviewed by Chris Dumez.

Use the current latest revision as we work towards the bug 147768 (Update frameworks in Speedometer).

  • Scripts/webkitpy/benchmark_runner/data/plans/speedometer.plan:
9:36 AM Changeset in webkit [188128] by rniwa@webkit.org
  • 2 edits in trunk/Tools

twisted_http_server.py should support --port
https://bugs.webkit.org/show_bug.cgi?id=147771

Reviewed by Chris Dumez.

Added the option. This makes the script more useful on its own.

  • Scripts/webkitpy/benchmark_runner/http_server_driver/http_server/twisted_http_server.py:
9:35 AM Changeset in webkit [188127] by calvaris@igalia.com
  • 22 edits
    3 adds
    1 delete in trunk

[Streams API] Create CountQueuingStrategy object as per spec
https://bugs.webkit.org/show_bug.cgi?id=146594

Reviewed by Geoffrey Garen.

Source/WebCore:

CountQueuingStrategy is a class part of the Streams API that can be found at
https://streams.spec.whatwg.org/#cqs-class. We had it as js at the tests but the spec says we have to provide it
natively. The class is implemented in this patch by creating its corresponding IDL with the size method using
the [CustomBinding] attribute, that does not create any bindings against the object allowing us full control to
do what the spec requires (just returning 1 without any cast check). The constructor sets the highWaterMark
property taking it from the argument.

Covered by current tests
(LayoutTests/streams/reference-implementation/count-queuing-strategy.html and
LayoutTests/streams/reference-implementation/brand-checks.html).

  • CMakeLists.txt:
  • DerivedSources.cpp:
  • DerivedSources.make:
  • PlatformMac.cmake:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSBindingsAllInOne.cpp: Build infrastructure.
  • Modules/streams/CountQueuingStrategy.h: Added.

(WebCore::CountQueuingStrategy::~CountQueuingStrategy): Created empty.
(WebCore::CountQueuingStrategy::size): Returns 1.

  • Modules/streams/CountQueuingStrategy.idl: Added.
  • bindings/js/JSCountQueuingStrategyCustom.cpp: Added.

(WebCore::jsCountQueuingStrategyPrototypeFunctionSize): Calls WebCore::CountQueuingStrategy::size.
(WebCore::constructJSCountQueuingStrategy): Constructs the strategy, copies the highWaterMark from the argument
and returns it.

  • bindings/js/JSDOMBinding.h:

(WebCore::getPropertyFromObject): Moved from ReadableJSStream.cpp.
(WebCore::setPropertyToObject): Added to create a property into an object.

  • bindings/js/ReadableJSStream.cpp:

(WebCore::getPropertyFromObject): Deleted.

LayoutTests:

  • js/dom/global-constructors-attributes-expected.txt:
  • platform/efl/js/dom/global-constructors-attributes-expected.txt:
  • platform/gtk/js/dom/global-constructors-attributes-expected.txt:
  • platform/ios-sim-deprecated/js/dom/global-constructors-attributes-expected.txt:
  • platform/mac-mavericks/js/dom/global-constructors-attributes-expected.txt:
  • platform/mac-yosemite/js/dom/global-constructors-attributes-expected.txt:
  • platform/mac/js/dom/global-constructors-attributes-expected.txt:
  • platform/win/js/dom/global-constructors-attributes-expected.txt: Updated expectations with

CountQueuingStrategy constructor.

  • streams/reference-implementation/brand-checks.html:
  • streams/reference-implementation/count-queuing-strategy.html: Removed reference to count-queuing-strategy.js.
  • streams/reference-implementation/resources/count-queuing-strategy.js: Removed.

(CountQueuingStrategy): Deleted.
(CountQueuingStrategy.prototype.size): Deleted.

9:04 AM Changeset in webkit [188126] by beidson@apple.com
  • 10 edits
    8 moves in trunk/Source

Move concrete KeyedDecoder/Encoder implementations to WebCore.
https://bugs.webkit.org/show_bug.cgi?id=147757.

Rubberstamped by Andy Estes.

Source/WebCore:

  • PlatformEfl.cmake:
  • PlatformGTK.cmake:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/KeyedCoding.h:

(WebCore::KeyedDecoder::KeyedDecoder): Static constructor to be implemented per-platform.
(WebCore::KeyedEncoder::KeyedEncoder): Ditto.

  • platform/cf/KeyedDecoderCF.cpp: Renamed from Source/WebKit2/Shared/cf/KeyedDecoder.cpp.

(WebCore::KeyedDecoder::decoder):
(WebCore::KeyedDecoderCF::KeyedDecoderCF):
(WebCore::KeyedDecoderCF::~KeyedDecoderCF):
(WebCore::KeyedDecoderCF::decodeBytes):
(WebCore::KeyedDecoderCF::decodeBool):
(WebCore::KeyedDecoderCF::decodeUInt32):
(WebCore::KeyedDecoderCF::decodeInt32):
(WebCore::KeyedDecoderCF::decodeInt64):
(WebCore::KeyedDecoderCF::decodeFloat):
(WebCore::KeyedDecoderCF::decodeDouble):
(WebCore::KeyedDecoderCF::decodeString):
(WebCore::KeyedDecoderCF::beginObject):
(WebCore::KeyedDecoderCF::endObject):
(WebCore::KeyedDecoderCF::beginArray):
(WebCore::KeyedDecoderCF::beginArrayElement):
(WebCore::KeyedDecoderCF::endArrayElement):
(WebCore::KeyedDecoderCF::endArray):

  • platform/cf/KeyedDecoderCF.h: Renamed from Source/WebKit2/Shared/cf/KeyedDecoder.h.
  • platform/cf/KeyedEncoderCF.cpp: Renamed from Source/WebKit2/Shared/cf/KeyedEncoder.cpp.

(WebCore::KeyedEncoder::encoder):
(WebCore::createDictionary):
(WebCore::KeyedEncoderCF::KeyedEncoderCF):
(WebCore::KeyedEncoderCF::~KeyedEncoderCF):
(WebCore::KeyedEncoderCF::encodeBytes):
(WebCore::KeyedEncoderCF::encodeBool):
(WebCore::KeyedEncoderCF::encodeUInt32):
(WebCore::KeyedEncoderCF::encodeInt32):
(WebCore::KeyedEncoderCF::encodeInt64):
(WebCore::KeyedEncoderCF::encodeFloat):
(WebCore::KeyedEncoderCF::encodeDouble):
(WebCore::KeyedEncoderCF::encodeString):
(WebCore::KeyedEncoderCF::beginObject):
(WebCore::KeyedEncoderCF::endObject):
(WebCore::KeyedEncoderCF::beginArray):
(WebCore::KeyedEncoderCF::beginArrayElement):
(WebCore::KeyedEncoderCF::endArrayElement):
(WebCore::KeyedEncoderCF::endArray):
(WebCore::KeyedEncoderCF::finishEncoding):

  • platform/cf/KeyedEncoderCF.h: Renamed from Source/WebKit2/Shared/cf/KeyedEncoder.h.
  • platform/glib/KeyedDecoderGlib.cpp: Renamed from Source/WebKit2/Shared/glib/KeyedDecoder.cpp.

(WebCore::KeyedDecoder::decoder):
(WebCore::KeyedDecoderGlib::KeyedDecoderGlib):
(WebCore::KeyedDecoderGlib::~KeyedDecoderGlib):
(WebCore::KeyedDecoderGlib::dictionaryFromGVariant):
(WebCore::KeyedDecoderGlib::decodeBytes):
(WebCore::KeyedDecoderGlib::decodeSimpleValue):
(WebCore::KeyedDecoderGlib::decodeBool):
(WebCore::KeyedDecoderGlib::decodeUInt32):
(WebCore::KeyedDecoderGlib::decodeInt32):
(WebCore::KeyedDecoderGlib::decodeInt64):
(WebCore::KeyedDecoderGlib::decodeFloat):
(WebCore::KeyedDecoderGlib::decodeDouble):
(WebCore::KeyedDecoderGlib::decodeString):
(WebCore::KeyedDecoderGlib::beginObject):
(WebCore::KeyedDecoderGlib::endObject):
(WebCore::KeyedDecoderGlib::beginArray):
(WebCore::KeyedDecoderGlib::beginArrayElement):
(WebCore::KeyedDecoderGlib::endArrayElement):
(WebCore::KeyedDecoderGlib::endArray):

  • platform/glib/KeyedDecoderGlib.h: Renamed from Source/WebKit2/Shared/glib/KeyedDecoder.h.
  • platform/glib/KeyedEncoderGlib.cpp: Renamed from Source/WebKit2/Shared/glib/KeyedEncoder.cpp.

(WebCore::KeyedEncoder::encoder):
(WebCore::KeyedEncoderGlib::KeyedEncoderGlib):
(WebCore::KeyedEncoderGlib::~KeyedEncoderGlib):
(WebCore::KeyedEncoderGlib::encodeBytes):
(WebCore::KeyedEncoderGlib::encodeBool):
(WebCore::KeyedEncoderGlib::encodeUInt32):
(WebCore::KeyedEncoderGlib::encodeInt32):
(WebCore::KeyedEncoderGlib::encodeInt64):
(WebCore::KeyedEncoderGlib::encodeFloat):
(WebCore::KeyedEncoderGlib::encodeDouble):
(WebCore::KeyedEncoderGlib::encodeString):
(WebCore::KeyedEncoderGlib::beginObject):
(WebCore::KeyedEncoderGlib::endObject):
(WebCore::KeyedEncoderGlib::beginArray):
(WebCore::KeyedEncoderGlib::beginArrayElement):
(WebCore::KeyedEncoderGlib::endArrayElement):
(WebCore::KeyedEncoderGlib::endArray):
(WebCore::KeyedEncoderGlib::finishEncoding):

  • platform/glib/KeyedEncoderGlib.h: Renamed from Source/WebKit2/Shared/glib/KeyedEncoder.h.

Source/WebKit2:

  • DatabaseProcess/IndexedDB/IDBSerialization.cpp:

(WebKit::serializeIDBKeyPath):
(WebKit::deserializeIDBKeyPath):
(WebKit::serializeIDBKeyData):
(WebKit::deserializeIDBKeyData):

  • PlatformEfl.cmake:
  • PlatformGTK.cmake:
  • WebKit2.xcodeproj/project.pbxproj:
8:28 AM Changeset in webkit [188125] by Carlos Garcia Campos
  • 2 edits in trunk/Tools

[GTK] WTF unit tests are timing out in the bots
https://bugs.webkit.org/show_bug.cgi?id=147777

Reviewed by Filip Pizlo.

Add a way to mark google unit tests as slow and add
WTF_Lock.ContentedShortSection to the list. In case of slow test
we use the double of the given timeout for that particular test.

  • Scripts/run-gtk-tests:

(TestRunner):
(TestRunner._run_google_test):

5:01 AM WebKitIDL edited by calvaris@igalia.com
(diff)
4:17 AM Changeset in webkit [188124] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebKit2

Unreviewed. Fix GTK+ compile warning also introduced in r188121.

  • UIProcess/API/gtk/WebKitInstallMissingMediaPluginsPermissionRequest.cpp:

(webkit_install_missing_media_plugins_permission_request_get_description):

3:51 AM Changeset in webkit [188123] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebKit2

Unreviewed. Fix GTK+ debug build after r188121.

  • UIProcess/API/gtk/WebKitInstallMissingMediaPluginsPermissionRequest.cpp:

(webkit_install_missing_media_plugins_permission_request_get_description):

3:27 AM Changeset in webkit [188122] by Carlos Garcia Campos
  • 2 edits in trunk/Tools

[GTK] run-gtk-tests should not stop when a google test case fails
https://bugs.webkit.org/show_bug.cgi?id=147778

Reviewed by Philippe Normand.

For glib based tests we run the test runner with the -k option,
but for google tests we are aborting as soon as we find a failure.

  • Scripts/run-gtk-tests:

(TestRunner._run_google_test_suite): Use a global return code that
is set to 1 when any test has failed.

2:51 AM Changeset in webkit [188121] by Carlos Garcia Campos
  • 34 edits
    2 copies
    3 adds in trunk

[GStreamer] Do not automatically show PackageKit codec installation notifications
https://bugs.webkit.org/show_bug.cgi?id=135973

Reviewed by Philippe Normand.

Source/WebCore:

Add description parameter to requestInstallMissingPlugins() that
will be used by the API layer.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::requestInstallMissingPlugins):

  • html/HTMLMediaElement.h:
  • page/ChromeClient.h:
  • platform/graphics/MediaPlayer.h:

(WebCore::MediaPlayerClient::requestInstallMissingPlugins):

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

(WebCore::MediaPlayerPrivateGStreamer::handleMessage):

Source/WebKit2:

Add InstallMissingMediaPluginsPermissionRequest to ask the API
layer whether to allow or deny the installation of missing media
plugins. And add a GTK+ implementation based on current permission
request API. Replace the
PageClientImpl::createGstInstallPluginsContext() with
decicePolicyForInstallMissingMediaPluginsPermissionRequest() that
passes the InstallMissingMediaPluginsPermissionRequest object to
the API layer. The allow method receives the
GstInstallPluginsContext now, so that it can be created by the API implementation.

  • PlatformEfl.cmake:
  • PlatformGTK.cmake:
  • UIProcess/API/gtk/PageClientImpl.cpp:

(WebKit::PageClientImpl::decicePolicyForInstallMissingMediaPluginsPermissionRequest):

  • UIProcess/API/gtk/PageClientImpl.h:
  • UIProcess/API/gtk/WebKitInstallMissingMediaPluginsPermissionRequest.cpp: Added.

(createGstInstallPluginsContext):
(webkitInstallMissingMediaPluginsPermissionRequestAllow):
(webkitInstallMissingMediaPluginsPermissionRequestDeny):
(webkit_permission_request_interface_init):
(webkitInstallMissingMediaPluginsPermissionRequestDispose):
(webkit_install_missing_media_plugins_permission_request_class_init):
(webkitInstallMissingMediaPluginsPermissionRequestCreate):
(webkit_install_missing_media_plugins_permission_request_get_description):

  • UIProcess/API/gtk/WebKitInstallMissingMediaPluginsPermissionRequest.h: Added.
  • UIProcess/API/gtk/WebKitInstallMissingMediaPluginsPermissionRequestPrivate.h: Added.
  • UIProcess/API/gtk/WebKitWebView.cpp:

(webkitWebViewRequestInstallMissingMediaPlugins):

  • UIProcess/API/gtk/WebKitWebViewPrivate.h:
  • UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt:
  • UIProcess/API/gtk/docs/webkit2gtk-4.0.types:
  • UIProcess/API/gtk/docs/webkit2gtk-docs.sgml:
  • UIProcess/API/gtk/webkit2.h:
  • UIProcess/PageClient.h:
  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/efl/WebViewEfl.h:
  • UIProcess/gstreamer/InstallMissingMediaPluginsPermissionRequest.cpp: Copied from Source/WebKit2/UIProcess/gstreamer/WebPageProxyGStreamer.cpp.

(WebKit::InstallMissingMediaPluginsPermissionRequest::InstallMissingMediaPluginsPermissionRequest):
(WebKit::InstallMissingMediaPluginsPermissionRequest::~InstallMissingMediaPluginsPermissionRequest):
(WebKit::InstallMissingMediaPluginsPermissionRequest::allow):
(WebKit::InstallMissingMediaPluginsPermissionRequest::deny):
(WebKit::InstallMissingMediaPluginsPermissionRequest::didEndRequestInstallMissingMediaPlugins):

  • UIProcess/gstreamer/InstallMissingMediaPluginsPermissionRequest.h: Copied from Source/WebKit2/WebProcess/WebPage/gstreamer/WebPageGStreamer.cpp.

(WebKit::InstallMissingMediaPluginsPermissionRequest::create):
(WebKit::InstallMissingMediaPluginsPermissionRequest::page):
(WebKit::InstallMissingMediaPluginsPermissionRequest::details):
(WebKit::InstallMissingMediaPluginsPermissionRequest::description):

  • UIProcess/gstreamer/WebPageProxyGStreamer.cpp:

(WebKit::WebPageProxy::requestInstallMissingMediaPlugins):

  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::requestInstallMissingMediaPlugins):

  • WebProcess/WebCoreSupport/WebChromeClient.h:
  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/gstreamer/WebPageGStreamer.cpp:

(WebKit::WebPage::requestInstallMissingMediaPlugins):

Tools:

Handle the missing media plugins installation permission request
in MiniBrowser and add a test case for the new API.

  • MiniBrowser/gtk/BrowserWindow.c:

(webViewDecidePermissionRequest):

  • TestWebKitAPI/Tests/WebKit2Gtk/CMakeLists.txt:
  • TestWebKitAPI/Tests/WebKit2Gtk/TestWebExtensions.cpp:

(permissionRequestCallback):
(testInstallMissingPluginsPermissionRequest):
(beforeAll):

  • TestWebKitAPI/Tests/WebKit2Gtk/WebExtensionTest.cpp:

(methodCallCallback):

1:32 AM Changeset in webkit [188120] by commit-queue@webkit.org
  • 4 edits in trunk

AX: Bug 147737 is causing test failures in Mavericks WK1
https://bugs.webkit.org/show_bug.cgi?id=147763

Source/WebCore:

Restrict change made in 147737 to ElCapitan+ because it is causing tests
to fail in Mavericks.

Patch by Doug Russell <d_russell@apple.com> on 2015-08-07
Reviewed by Chris Fleizach.

Fixes failing tests.

  • accessibility/AXObjectCache.cpp:

(WebCore::AXObjectCache::setEnhancedUserInterfaceAccessibility):

LayoutTests:

Patch by Doug Russell <d_russell@apple.com> on 2015-08-07
Reviewed by Chris Fleizach.

  • platform/mac/TestExpectations:
1:15 AM Changeset in webkit [188119] by calvaris@igalia.com
  • 8 edits in trunk/Source/WebCore

Create [CustomBinding] extended IDL attribute
https://bugs.webkit.org/show_bug.cgi?id=146593

Reviewed by Geoffrey Garen.

Added the [CustomBinding] IDL extended attribute. The idea is that when using this attribute, bindings generate
only the signature of the JS functions and we have to implement all the access in the Custom.cpp files, meaning
accessing the implementations at our wish.

Added customBindingMethod, customBindingMethodWithArgs to the generator tests.

  • bindings/scripts/CodeGeneratorGObject.pm:

(SkipFunction): Skipped [CustomBinding] methods.

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateHeader): Consider CustomBinding as ForwardDeclareInHeader.
(GenerateImplementation): Avoid printing both header and implementation of the function.

  • bindings/scripts/CodeGeneratorObjC.pm:

(SkipFunction): Skipped [CustomBinding] methods.

  • bindings/scripts/IDLAttributes.txt: Added [CustomBinding] IDL extended attribute.
  • bindings/scripts/test/JS/JSTestObj.cpp:
  • bindings/scripts/test/TestObj.idl: Added customBindingMethod, customBindingMethodWithArgs and their

expectations.

Aug 6, 2015:

11:48 PM Changeset in webkit [188118] by zandobersek@gmail.com
  • 37 edits in trunk/Source/WebCore

Source/WebCore/crypto code should pass std::function<> objects through rvalue references
https://bugs.webkit.org/show_bug.cgi?id=147332

Reviewed by Anders Carlsson.

Pass the std::function<> callbacks through CryptoAlgorithm methods via
rvlaue references. This avoids generation of unnecessary move and copy
constructors for std::function<> objects that are being handled.

  • crypto/CryptoAlgorithm.cpp:

(WebCore::CryptoAlgorithm::encrypt):
(WebCore::CryptoAlgorithm::decrypt):
(WebCore::CryptoAlgorithm::sign):
(WebCore::CryptoAlgorithm::verify):
(WebCore::CryptoAlgorithm::digest):
(WebCore::CryptoAlgorithm::generateKey):
(WebCore::CryptoAlgorithm::deriveKey):
(WebCore::CryptoAlgorithm::deriveBits):
(WebCore::CryptoAlgorithm::importKey):
(WebCore::CryptoAlgorithm::encryptForWrapKey):
(WebCore::CryptoAlgorithm::decryptForUnwrapKey):

  • crypto/CryptoAlgorithm.h:
  • crypto/algorithms/CryptoAlgorithmAES_CBC.cpp:

(WebCore::CryptoAlgorithmAES_CBC::encrypt):
(WebCore::CryptoAlgorithmAES_CBC::decrypt):
(WebCore::CryptoAlgorithmAES_CBC::generateKey):
(WebCore::CryptoAlgorithmAES_CBC::importKey):

  • crypto/algorithms/CryptoAlgorithmAES_CBC.h:
  • crypto/algorithms/CryptoAlgorithmAES_KW.cpp:

(WebCore::CryptoAlgorithmAES_KW::encryptForWrapKey):
(WebCore::CryptoAlgorithmAES_KW::decryptForUnwrapKey):
(WebCore::CryptoAlgorithmAES_KW::generateKey):
(WebCore::CryptoAlgorithmAES_KW::importKey):

  • crypto/algorithms/CryptoAlgorithmAES_KW.h:
  • crypto/algorithms/CryptoAlgorithmHMAC.cpp:

(WebCore::CryptoAlgorithmHMAC::sign):
(WebCore::CryptoAlgorithmHMAC::verify):
(WebCore::CryptoAlgorithmHMAC::generateKey):
(WebCore::CryptoAlgorithmHMAC::importKey):

  • crypto/algorithms/CryptoAlgorithmHMAC.h:
  • crypto/algorithms/CryptoAlgorithmRSAES_PKCS1_v1_5.cpp:

(WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::encrypt):
(WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::decrypt):
(WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::generateKey):
(WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::importKey):

  • crypto/algorithms/CryptoAlgorithmRSAES_PKCS1_v1_5.h:
  • crypto/algorithms/CryptoAlgorithmRSASSA_PKCS1_v1_5.cpp:

(WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::sign):
(WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::verify):
(WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::generateKey):
(WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::importKey):

  • crypto/algorithms/CryptoAlgorithmRSASSA_PKCS1_v1_5.h:
  • crypto/algorithms/CryptoAlgorithmRSA_OAEP.cpp:

(WebCore::CryptoAlgorithmRSA_OAEP::encrypt):
(WebCore::CryptoAlgorithmRSA_OAEP::decrypt):
(WebCore::CryptoAlgorithmRSA_OAEP::generateKey):
(WebCore::CryptoAlgorithmRSA_OAEP::importKey):

  • crypto/algorithms/CryptoAlgorithmRSA_OAEP.h:
  • crypto/algorithms/CryptoAlgorithmSHA1.cpp:

(WebCore::CryptoAlgorithmSHA1::digest):

  • crypto/algorithms/CryptoAlgorithmSHA1.h:
  • crypto/algorithms/CryptoAlgorithmSHA224.cpp:

(WebCore::CryptoAlgorithmSHA224::digest):

  • crypto/algorithms/CryptoAlgorithmSHA224.h:
  • crypto/algorithms/CryptoAlgorithmSHA256.cpp:

(WebCore::CryptoAlgorithmSHA256::digest):

  • crypto/algorithms/CryptoAlgorithmSHA256.h:
  • crypto/algorithms/CryptoAlgorithmSHA384.cpp:

(WebCore::CryptoAlgorithmSHA384::digest):

  • crypto/algorithms/CryptoAlgorithmSHA384.h:
  • crypto/algorithms/CryptoAlgorithmSHA512.cpp:

(WebCore::CryptoAlgorithmSHA512::digest):

  • crypto/algorithms/CryptoAlgorithmSHA512.h:
  • crypto/gnutls/CryptoAlgorithmAES_CBCGnuTLS.cpp:

(WebCore::CryptoAlgorithmAES_CBC::platformEncrypt):
(WebCore::CryptoAlgorithmAES_CBC::platformDecrypt):

  • crypto/gnutls/CryptoAlgorithmAES_KWGnuTLS.cpp:

(WebCore::CryptoAlgorithmAES_KW::platformEncrypt):
(WebCore::CryptoAlgorithmAES_KW::platformDecrypt):

  • crypto/gnutls/CryptoAlgorithmHMACGnuTLS.cpp:

(WebCore::CryptoAlgorithmHMAC::platformSign):
(WebCore::CryptoAlgorithmHMAC::platformVerify):

  • crypto/gnutls/CryptoAlgorithmRSAES_PKCS1_v1_5GnuTLS.cpp:

(WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::platformEncrypt):
(WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::platformDecrypt):

  • crypto/gnutls/CryptoAlgorithmRSASSA_PKCS1_v1_5GnuTLS.cpp:

(WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::platformSign):
(WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::platformVerify):

  • crypto/gnutls/CryptoAlgorithmRSA_OAEPGnuTLS.cpp:

(WebCore::CryptoAlgorithmRSA_OAEP::platformEncrypt):
(WebCore::CryptoAlgorithmRSA_OAEP::platformDecrypt):

  • crypto/mac/CryptoAlgorithmAES_CBCMac.cpp:

(WebCore::transformAES_CBC):
(WebCore::CryptoAlgorithmAES_CBC::platformEncrypt):
(WebCore::CryptoAlgorithmAES_CBC::platformDecrypt):

  • crypto/mac/CryptoAlgorithmAES_KWMac.cpp:

(WebCore::CryptoAlgorithmAES_KW::platformEncrypt):
(WebCore::CryptoAlgorithmAES_KW::platformDecrypt):

  • crypto/mac/CryptoAlgorithmHMACMac.cpp:

(WebCore::CryptoAlgorithmHMAC::platformSign):
(WebCore::CryptoAlgorithmHMAC::platformVerify):

  • crypto/mac/CryptoAlgorithmRSAES_PKCS1_v1_5Mac.cpp:

(WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::platformEncrypt):
(WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::platformDecrypt):

  • crypto/mac/CryptoAlgorithmRSASSA_PKCS1_v1_5Mac.cpp:

(WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::platformSign):
(WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::platformVerify):

  • crypto/mac/CryptoAlgorithmRSA_OAEPMac.cpp:

(WebCore::CryptoAlgorithmRSA_OAEP::platformEncrypt):
(WebCore::CryptoAlgorithmRSA_OAEP::platformDecrypt):

11:17 PM Changeset in webkit [188117] by fpizlo@apple.com
  • 2 edits in trunk/Source/WTF

Unreviewed, work around assertions in Windows's std::atomic.

  • wtf/Atomics.h:

(WTF::Atomic::compareExchangeWeak):
(WTF::Atomic::compareExchangeStrong):

10:15 PM Changeset in webkit [188116] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Fix GTK clean build after r187997
https://bugs.webkit.org/show_bug.cgi?id=147723

Patch by Alex Christensen <achristensen@webkit.org> on 2015-08-06
Reviewed by Gyuyoung Kim.

  • CMakeLists.txt:

r187997 made it so WebCoreTestSupport does not link with WebCore, which is necessary to get DumpRenderTree to link.
It also made it so WebCoreTestSupport is no longer dependent on WebCore, which causes it to build at the same time.
This caused problems because WebCoreTestSupport uses headers that are generated for WebCore, such as WebKitFontFamilyNames.h.
Adding a dependency makes it so that WebCoreTestSupport waits until WebCore is done compiling before compiling,
which is what it used to do, but it does not cause linking problems with DumpRenderTree.

10:09 PM Changeset in webkit [188115] by Beth Dakin
  • 2 edits in trunk/Source/WebKit2

TextIndicator can have stale contentImage data and crash
https://bugs.webkit.org/show_bug.cgi?id=147770
-and corresponding-
rdar://problem/22181735

Reviewed by Tim Horton.

If there is no contentImage or contentImageWithHighlight, set them to
nullptr.

  • Shared/WebCoreArgumentCoders.cpp:

(IPC::ArgumentCoder<TextIndicatorData>::decode):

9:21 PM Changeset in webkit [188114] by mmaxfield@apple.com
  • 4 edits in trunk/Source/WebCore

CSSSegmentedFontFace::fontRanges() does not handle duplicate fonts correctly
https://bugs.webkit.org/show_bug.cgi?id=147765

Reviewed by Filip Pizlo.

CSSSegmentedFontFace::fontRanges() was trying to hash on FontDescriptors by
picking a few specific pieces of data out of the FontDescriptor, computing
a hash on it, and using that unsigned as a key in a HashMap. This has two
problems: it doesn't handle equality correctly, as hash collisions cannot
depend on an equality operator to dedup, and it doesn't hash on all the
members of a FontDescription.

Instead, this HashMap should use FontDescriptionKey, which represents a
FontDescription, and is designed exactly for the purpose of being used as a
key in a HashMap.

No new tests because there is no behavior change (because a problem occurs
when two different FontDescriptions hash to the same value, which is rare).

  • css/CSSSegmentedFontFace.cpp:

(WebCore::CSSSegmentedFontFace::fontRanges):

  • css/CSSSegmentedFontFace.h:
  • platform/graphics/FontCache.h:

(WebCore::FontDescriptionKeyHash::hash):
(WebCore::FontDescriptionKeyHash::equal):

9:17 PM Changeset in webkit [188113] by fpizlo@apple.com
  • 2 edits in trunk/Tools

Unreviewed, reduce the duration of a Lock unit test. It was timing out.

  • TestWebKitAPI/Tests/WTF/Lock.cpp:

(TestWebKitAPI::TEST):

8:44 PM Changeset in webkit [188112] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit2

Fixed all the builds after trying to fix the non-HAVE(LINK_PREVIEW) build.

  • UIProcess/ios/WKContentViewInteraction.mm:
8:41 PM Changeset in webkit [188111] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit2

Fixed the non-HAVE(LINK_PREVIEW) build.

  • UIProcess/ios/WKContentViewInteraction.mm:
8:34 PM Changeset in webkit [188110] by bshafiei@apple.com
  • 5 edits in branches/safari-601.1.46-branch/Source

Versioning.

8:27 PM Changeset in webkit [188109] by enrica@apple.com
  • 2 edits in trunk/Source/WebKit2

Cleanup action sheet only when long press is canceled (non ended).
https://bugs.webkit.org/show_bug.cgi?id=147766
rdar://problem/22181842

Reviewed by Tim Horton.

  • UIProcess/ios/WKContentViewInteraction.mm:

(-[WKContentView _longPressRecognized:]):

7:54 PM Changeset in webkit [188108] by bshafiei@apple.com
  • 1 copy in tags/Safari-601.1.46.4

New tag.

7:51 PM Changeset in webkit [188107] by bshafiei@apple.com
  • 3 edits in branches/safari-601.1.46-branch/Source/WebKit2

Roll out r188053. rdar://problem/22128839

7:49 PM Changeset in webkit [188106] by bshafiei@apple.com
  • 2 edits in branches/safari-601.1.46-branch/Source/WebKit2

Roll out r188058. rdar://problem/22128839

7:08 PM Changeset in webkit [188105] by Yusuke Suzuki
  • 38 edits
    51 adds in trunk

Introduce get_by_id like IC into get_by_val when the given name is String or Symbol
https://bugs.webkit.org/show_bug.cgi?id=147480

Reviewed by Filip Pizlo.

Source/JavaScriptCore:

This patch adds get_by_id IC to get_by_val operation by caching the string / symbol id.
The IC site only caches one id. After checking that the given id is the same to the
cached one, we perform the get_by_id IC onto it.
And by collecting IC StructureStubInfo information, we pass it to the DFG and DFG
compiles get_by_val op code into CheckIdent (with edge type check) and GetById related
operations when the given get_by_val leverages the property load with the cached id.

To ensure the incoming value is the expected id, in DFG layer, we use SymbolUse and
StringIdentUse to enforce the type. To use it, this patch implements SymbolUse.
This can be leveraged to optimize symbol operations in DFG.

And since byValInfo is frequently used, we align the byValInfo design to the stubInfo like one.
Allocated by the Bag and operations take the raw byValInfo pointer directly instead of performing
binary search onto m_byValInfos. And by storing ArrayProfile* under the ByValInfo, we replaced the
argument ArrayProfile* in the operations with ByValInfo*.

  • bytecode/ByValInfo.h:

(JSC::ByValInfo::ByValInfo):

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::getByValInfoMap):
(JSC::CodeBlock::addByValInfo):

  • bytecode/CodeBlock.h:

(JSC::CodeBlock::getByValInfo): Deleted.
(JSC::CodeBlock::setNumberOfByValInfos): Deleted.
(JSC::CodeBlock::numberOfByValInfos): Deleted.
(JSC::CodeBlock::byValInfo): Deleted.

  • bytecode/ExitKind.cpp:

(JSC::exitKindToString):

  • bytecode/ExitKind.h:
  • bytecode/GetByIdStatus.cpp:

(JSC::GetByIdStatus::computeFor):
(JSC::GetByIdStatus::computeForStubInfo):
(JSC::GetByIdStatus::computeForStubInfoWithoutExitSiteFeedback):

  • bytecode/GetByIdStatus.h:
  • dfg/DFGAbstractInterpreterInlines.h:

(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::parseBlock):
(JSC::DFG::ByteCodeParser::InlineStackEntry::InlineStackEntry):

  • dfg/DFGClobberize.h:

(JSC::DFG::clobberize):

  • dfg/DFGConstantFoldingPhase.cpp:

(JSC::DFG::ConstantFoldingPhase::foldConstants):

  • dfg/DFGDoesGC.cpp:

(JSC::DFG::doesGC):

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):
(JSC::DFG::FixupPhase::observeUseKindOnNode):

  • dfg/DFGNode.h:

(JSC::DFG::Node::hasUidOperand):
(JSC::DFG::Node::uidOperand):

  • dfg/DFGNodeType.h:
  • dfg/DFGPredictionPropagationPhase.cpp:

(JSC::DFG::PredictionPropagationPhase::propagate):

  • dfg/DFGSafeToExecute.h:

(JSC::DFG::SafeToExecuteEdge::operator()):
(JSC::DFG::safeToExecute):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileCheckIdent):
(JSC::DFG::SpeculativeJIT::speculateSymbol):
(JSC::DFG::SpeculativeJIT::speculate):

  • dfg/DFGSpeculativeJIT.h:
  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGUseKind.cpp:

(WTF::printInternal):

  • dfg/DFGUseKind.h:

(JSC::DFG::typeFilterFor):
(JSC::DFG::isCell):

  • ftl/FTLAbstractHeapRepository.h:
  • ftl/FTLCapabilities.cpp:

(JSC::FTL::canCompile):

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::DFG::LowerDFGToLLVM::compileNode):
(JSC::FTL::DFG::LowerDFGToLLVM::compileCheckIdent):
(JSC::FTL::DFG::LowerDFGToLLVM::lowSymbol):
(JSC::FTL::DFG::LowerDFGToLLVM::speculate):
(JSC::FTL::DFG::LowerDFGToLLVM::isNotSymbol):
(JSC::FTL::DFG::LowerDFGToLLVM::speculateSymbol):

  • jit/JIT.cpp:

(JSC::JIT::privateCompile):

  • jit/JIT.h:

(JSC::ByValCompilationInfo::ByValCompilationInfo):
(JSC::JIT::compileGetByValWithCachedId):

  • jit/JITInlines.h:

(JSC::JIT::callOperation):

  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_has_indexed_property):
(JSC::JIT::emitSlow_op_has_indexed_property):

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::emit_op_has_indexed_property):
(JSC::JIT::emitSlow_op_has_indexed_property):

  • jit/JITOperations.cpp:

(JSC::getByVal):

  • jit/JITOperations.h:
  • jit/JITPropertyAccess.cpp:

(JSC::JIT::emit_op_get_by_val):
(JSC::JIT::emitGetByValWithCachedId):
(JSC::JIT::emitSlow_op_get_by_val):
(JSC::JIT::emit_op_put_by_val):
(JSC::JIT::emitSlow_op_put_by_val):
(JSC::JIT::privateCompileGetByVal):
(JSC::JIT::privateCompileGetByValWithCachedId):

  • jit/JITPropertyAccess32_64.cpp:

(JSC::JIT::emit_op_get_by_val):
(JSC::JIT::emitGetByValWithCachedId):
(JSC::JIT::emitSlow_op_get_by_val):
(JSC::JIT::emit_op_put_by_val):
(JSC::JIT::emitSlow_op_put_by_val):

  • runtime/Symbol.h:
  • tests/stress/get-by-val-with-string-constructor.js: Added.

(Hello):
(get Hello.prototype.generate):
(ok):

  • tests/stress/get-by-val-with-string-exit.js: Added.

(shouldBe):
(getByVal):
(getStr1):
(getStr2):

  • tests/stress/get-by-val-with-string-generated.js: Added.

(shouldBe):
(getByVal):
(getStr1):
(getStr2):

  • tests/stress/get-by-val-with-string-getter.js: Added.

(object.get hello):
(ok):

  • tests/stress/get-by-val-with-string.js: Added.

(shouldBe):
(getByVal):
(getStr1):
(getStr2):

  • tests/stress/get-by-val-with-symbol-constructor.js: Added.

(Hello):
(get Hello.prototype.generate):
(ok):

  • tests/stress/get-by-val-with-symbol-exit.js: Added.

(shouldBe):
(getByVal):
(getSym1):
(getSym2):

  • tests/stress/get-by-val-with-symbol-getter.js: Added.

(object.get hello):
(.get ok):

  • tests/stress/get-by-val-with-symbol.js: Added.

(shouldBe):
(getByVal):
(getSym1):
(getSym2):

LayoutTests:

Add synthetic benchmarks that replaces normal property load with symbol/string keyed load.

  • js/regress/get-by-val-with-string-bimorphic-check-structure-elimination-expected.txt: Added.
  • js/regress/get-by-val-with-string-bimorphic-check-structure-elimination-simple-expected.txt: Added.
  • js/regress/get-by-val-with-string-bimorphic-check-structure-elimination-simple.html: Added.
  • js/regress/get-by-val-with-string-bimorphic-check-structure-elimination.html: Added.
  • js/regress/get-by-val-with-string-chain-from-try-block-expected.txt: Added.
  • js/regress/get-by-val-with-string-chain-from-try-block.html: Added.
  • js/regress/get-by-val-with-string-check-structure-elimination-expected.txt: Added.
  • js/regress/get-by-val-with-string-check-structure-elimination.html: Added.
  • js/regress/get-by-val-with-string-proto-or-self-expected.txt: Added.
  • js/regress/get-by-val-with-string-proto-or-self.html: Added.
  • js/regress/get-by-val-with-string-quadmorphic-check-structure-elimination-simple-expected.txt: Added.
  • js/regress/get-by-val-with-string-quadmorphic-check-structure-elimination-simple.html: Added.
  • js/regress/get-by-val-with-string-self-or-proto-expected.txt: Added.
  • js/regress/get-by-val-with-string-self-or-proto.html: Added.
  • js/regress/get-by-val-with-symbol-bimorphic-check-structure-elimination-expected.txt: Added.
  • js/regress/get-by-val-with-symbol-bimorphic-check-structure-elimination-simple-expected.txt: Added.
  • js/regress/get-by-val-with-symbol-bimorphic-check-structure-elimination-simple.html: Added.
  • js/regress/get-by-val-with-symbol-bimorphic-check-structure-elimination.html: Added.
  • js/regress/get-by-val-with-symbol-chain-from-try-block-expected.txt: Added.
  • js/regress/get-by-val-with-symbol-chain-from-try-block.html: Added.
  • js/regress/get-by-val-with-symbol-check-structure-elimination-expected.txt: Added.
  • js/regress/get-by-val-with-symbol-check-structure-elimination.html: Added.
  • js/regress/get-by-val-with-symbol-proto-or-self-expected.txt: Added.
  • js/regress/get-by-val-with-symbol-proto-or-self.html: Added.
  • js/regress/get-by-val-with-symbol-quadmorphic-check-structure-elimination-simple-expected.txt: Added.
  • js/regress/get-by-val-with-symbol-quadmorphic-check-structure-elimination-simple.html: Added.
  • js/regress/get-by-val-with-symbol-self-or-proto-expected.txt: Added.
  • js/regress/get-by-val-with-symbol-self-or-proto.html: Added.
  • js/regress/script-tests/get-by-val-with-string-bimorphic-check-structure-elimination-simple.js: Added.
  • js/regress/script-tests/get-by-val-with-string-bimorphic-check-structure-elimination.js: Added.
  • js/regress/script-tests/get-by-val-with-string-chain-from-try-block.js: Added.

(A):
(B):
(C):
(D):
(E):
(F):
(G):
(foo):

  • js/regress/script-tests/get-by-val-with-string-check-structure-elimination.js: Added.
  • js/regress/script-tests/get-by-val-with-string-proto-or-self.js: Added.

(foo):
(bar):
(Foo):

  • js/regress/script-tests/get-by-val-with-string-quadmorphic-check-structure-elimination-simple.js: Added.
  • js/regress/script-tests/get-by-val-with-string-self-or-proto.js: Added.

(foo):
(bar):
(Foo):

  • js/regress/script-tests/get-by-val-with-symbol-bimorphic-check-structure-elimination-simple.js: Added.
  • js/regress/script-tests/get-by-val-with-symbol-bimorphic-check-structure-elimination.js: Added.
  • js/regress/script-tests/get-by-val-with-symbol-chain-from-try-block.js: Added.

(A):
(B):
(C):
(D):
(E):
(F):
(G):
(foo):

  • js/regress/script-tests/get-by-val-with-symbol-check-structure-elimination.js: Added.
  • js/regress/script-tests/get-by-val-with-symbol-proto-or-self.js: Added.

(foo):
(bar):
(Foo):

  • js/regress/script-tests/get-by-val-with-symbol-quadmorphic-check-structure-elimination-simple.js: Added.
  • js/regress/script-tests/get-by-val-with-symbol-self-or-proto.js: Added.

(foo):
(bar):
(Foo):

6:36 PM Changeset in webkit [188104] by mmaxfield@apple.com
  • 2 edits in trunk/Source/WebCore

[iOS] Remove dead code from FontCache::createFontPlatformData()
https://bugs.webkit.org/show_bug.cgi?id=147762

Reviewed by Andy Estes.

No new tests because there is no behavior change.

  • platform/graphics/ios/FontCacheIOS.mm:

(WebCore::FontCache::createFontPlatformData): Deleted.

6:29 PM Changeset in webkit [188103] by achristensen@apple.com
  • 2 edits in trunk/Source/WebCore

Revert part of my "build fix" in r188101.

  • CMakeLists.txt:

MockCDM was already conditionally added to WebCore_SOURCES, and that change causes dependency cycles when bug 147723 is fixed.

6:22 PM Changeset in webkit [188102] by Joseph Pecoraro
  • 2 edits in trunk/Tools

Running tests for a long time results in some tests running very slowly (throttling)
https://bugs.webkit.org/show_bug.cgi?id=147718

Reviewed by Alexey Proskuryakov.

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::resetPreferencesToConsistentValues):
Ensure throttling settings are disabled for tests for all ports, as
COCOA ports default to having these setting enabled. Note, there is
still other timer throttling not covered by these setting.

6:03 PM Changeset in webkit [188101] by achristensen@apple.com
  • 4 edits in trunk

[Win] CMake build fix after r188098.

.:

  • Source/cmake/OptionsWinCairo.cmake:

OptionsWindows.cmake uses WTF_PLATFORM_WIN_CAIRO now, so we need to set it before including OptionsWindows.

Source/WebCore:

  • CMakeLists.txt:

MockCDM is necessary for testing if ENCRYPTED_MEDIA_V2 is enabled.

5:49 PM Changeset in webkit [188100] by fpizlo@apple.com
  • 40 edits
    5 adds in trunk

Lightweight locks should be adaptive
https://bugs.webkit.org/show_bug.cgi?id=147545

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

  • heap/CopiedBlock.h:

(JSC::CopiedBlock::workListLock):

  • heap/CopiedBlockInlines.h:

(JSC::CopiedBlock::shouldReportLiveBytes):
(JSC::CopiedBlock::reportLiveBytes):

  • heap/CopiedSpace.h:

(JSC::CopiedSpace::CopiedGeneration::CopiedGeneration):

  • heap/CopiedSpaceInlines.h:

(JSC::CopiedSpace::recycleEvacuatedBlock):

  • heap/GCThreadSharedData.h:

(JSC::GCThreadSharedData::getNextBlocksToCopy):

  • heap/ListableHandler.h:

(JSC::ListableHandler::List::addThreadSafe):
(JSC::ListableHandler::List::addNotThreadSafe):

  • heap/SlotVisitorInlines.h:

(JSC::SlotVisitor::copyLater):

  • runtime/TypeProfilerLog.h:

Source/WebCore:

No new tests because no new behavior.

  • bindings/objc/WebScriptObject.mm:

(WebCore::getJSWrapper):
(WebCore::addJSWrapper):
(WebCore::removeJSWrapper):
(WebCore::removeJSWrapperIfRetainCountOne):

  • platform/ios/wak/WAKWindow.mm:

(-[WAKWindow setExposedScrollViewRect:]):
(-[WAKWindow exposedScrollViewRect]):

Source/WebKit2:

  • WebProcess/WebPage/EventDispatcher.cpp:

(WebKit::EventDispatcher::clearQueuedTouchEventsForPage):
(WebKit::EventDispatcher::getQueuedTouchEventsForPage):
(WebKit::EventDispatcher::touchEvent):
(WebKit::EventDispatcher::dispatchTouchEvents):

  • WebProcess/WebPage/EventDispatcher.h:
  • WebProcess/WebPage/ViewUpdateDispatcher.cpp:

(WebKit::ViewUpdateDispatcher::visibleContentRectUpdate):
(WebKit::ViewUpdateDispatcher::dispatchVisibleContentRectUpdate):

  • WebProcess/WebPage/ViewUpdateDispatcher.h:

Source/WTF:

A common idiom in WebKit is to use spinlocks. We use them because the lock acquisition
overhead is lower than system locks and because they take dramatically less space than system
locks. The speed and space advantages of spinlocks can be astonishing: an uncontended spinlock
acquire is up to 10x faster and under microcontention - short critical section with two or
more threads taking turns - spinlocks are up to 100x faster. Spinlocks take only 1 byte or 4
bytes depending on the flavor, while system locks take 64 bytes or more. Clearly, WebKit
should continue to avoid system locks - they are just far too slow and far too big.

But there is a problem with this idiom. System lock implementations will sleep a thread when
it attempts to acquire a lock that is held, while spinlocks will cause the thread to burn CPU.
In WebKit spinlocks, the thread will repeatedly call sched_yield(). This is awesome for
microcontention, but awful when the lock will not be released for a while. In fact, when
critical sections take tens of microseconds or more, the CPU time cost of our spinlocks is
almost 100x more than the CPU time cost of a system lock. This case doesn't arise too
frequently in our current uses of spinlocks, but that's probably because right now there are
places where we make a conscious decision to use system locks - even though they use more
memory and are slower - because we don't want to waste CPU cycles when a thread has to wait a
while to acquire the lock.

The solution is to just implement a modern adaptive mutex in WTF. Luckily, this isn't a new
concept. This patch implements a mutex that is reminiscent of the kinds of low-overhead locks
that JVMs use. The actual implementation here is inspired by some of the ideas from [1]. The
idea is simple: the fast path is an inlined CAS to immediately acquire a lock that isn't held,
the slow path tries some number of spins to acquire the lock, and if that fails, the thread is
put on a queue and put to sleep. The queue is made up of statically allocated thread nodes and
the lock itself is a tagged pointer: either it is just bits telling us the complete lock state
(not held or held) or it is a pointer to the head of a queue of threads waiting to acquire the
lock. This approach gives WTF::Lock three different levels of adaptation: an inlined fast path
if the lock is not contended, a short burst of spinning for microcontention, and a full-blown
queue for critical sections that are held for a long time.

On a locking microbenchmark, this new Lock exhibits the following performance
characteristics:

  • Lock+unlock on an uncontended no-op critical section: 2x slower than SpinLock and 3x faster than a system mutex.
  • Lock+unlock on a contended no-op critical section: 2x slower than SpinLock and 100x faster than a system mutex.
  • CPU time spent in lock() on a lock held for a while: same as system mutex, 90x less than a SpinLock.
  • Memory usage: sizeof(void*), so on 64-bit it's 8x less than a system mutex but 2x worse than a SpinLock.

This patch replaces all uses of SpinLock with Lock, since our critical sections are not
no-ops so if you do basically anything in your critical section, the Lock overhead will be
invisible. Also, in all places where we used SpinLock, we could tolerate 8 bytes of overhead
instead of 4. Performance benchmarking using JSC macrobenchmarks shows no difference, which is
as it should be: the purpose of this change is to reduce CPU time wasted, not wallclock time.
This patch doesn't replace any uses of ByteSpinLock, since we expect that the space benefits
of having a lock that just uses a byte are still better than the CPU wastage benefits of
Lock. But, this work will enable some future work to create locks that will fit in just 1.6
bits: https://bugs.webkit.org/show_bug.cgi?id=147665.

[1] http://www.filpizlo.com/papers/pizlo-pppj2011-fable.pdf

  • WTF.vcxproj/WTF.vcxproj:
  • WTF.xcodeproj/project.pbxproj:
  • benchmarks: Added.
  • benchmarks/LockSpeedTest.cpp: Added.

(main):

  • wtf/CMakeLists.txt:
  • wtf/Lock.cpp: Added.

(WTF::LockBase::lockSlow):
(WTF::LockBase::unlockSlow):

  • wtf/Lock.h: Added.

(WTF::LockBase::lock):
(WTF::LockBase::unlock):
(WTF::LockBase::isHeld):
(WTF::Lock::Lock):

  • wtf/MetaAllocator.cpp:

(WTF::MetaAllocator::release):
(WTF::MetaAllocatorHandle::shrink):
(WTF::MetaAllocator::allocate):
(WTF::MetaAllocator::currentStatistics):
(WTF::MetaAllocator::addFreshFreeSpace):
(WTF::MetaAllocator::debugFreeSpaceSize):

  • wtf/MetaAllocator.h:
  • wtf/SpinLock.h:
  • wtf/ThreadingPthreads.cpp:
  • wtf/ThreadingWin.cpp:
  • wtf/text/AtomicString.cpp:
  • wtf/text/AtomicStringImpl.cpp:

(WTF::AtomicStringTableLocker::AtomicStringTableLocker):

Tools:

  • TestWebKitAPI/CMakeLists.txt:
  • TestWebKitAPI/TestWebKitAPI.vcxproj/TestWebKitAPI.vcxproj:
  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WTF/Lock.cpp: Added.

(TestWebKitAPI::runLockTest):
(TestWebKitAPI::TEST):

5:21 PM Changeset in webkit [188099] by commit-queue@webkit.org
  • 10 edits
    1 add in trunk/Source/JavaScriptCore

Parse the entire WebAssembly modules
https://bugs.webkit.org/show_bug.cgi?id=147393

Patch by Sukolsak Sakshuwong <Sukolsak Sakshuwong> on 2015-08-06
Reviewed by Geoffrey Garen.

Parse the entire WebAssembly modules from files produced by pack-asmjs
<https://github.com/WebAssembly/polyfill-prototype-1>. This patch can only
parse modules whose function definition section contains only functions that
have "return 0;" as their only statement. Parsing of any functions will be
implemented in a subsequent patch.

(JSC::JSWASMModule::destroy):

  • wasm/JSWASMModule.h:

(JSC::JSWASMModule::i32Constants):
(JSC::JSWASMModule::f32Constants):
(JSC::JSWASMModule::f64Constants):
(JSC::JSWASMModule::signatures):
(JSC::JSWASMModule::functionImports):
(JSC::JSWASMModule::functionImportSignatures):
(JSC::JSWASMModule::globalVariableTypes):
(JSC::JSWASMModule::functionDeclarations):
(JSC::JSWASMModule::functionPointerTables):

  • wasm/WASMFormat.h: Added.
  • wasm/WASMModuleParser.cpp:

(JSC::WASMModuleParser::parse):
(JSC::WASMModuleParser::parseModule):
(JSC::WASMModuleParser::parseConstantPoolSection):
(JSC::WASMModuleParser::parseSignatureSection):
(JSC::WASMModuleParser::parseFunctionImportSection):
(JSC::WASMModuleParser::parseGlobalSection):
(JSC::WASMModuleParser::parseFunctionDeclarationSection):
(JSC::WASMModuleParser::parseFunctionPointerTableSection):
(JSC::WASMModuleParser::parseFunctionDefinitionSection):
(JSC::WASMModuleParser::parseFunctionDefinition):
(JSC::WASMModuleParser::parseExportSection):

  • wasm/WASMModuleParser.h:
  • wasm/WASMReader.cpp:

(JSC::WASMReader::readUInt32):
(JSC::WASMReader::readCompactUInt32):
(JSC::WASMReader::readString):
(JSC::WASMReader::readType):
(JSC::WASMReader::readExpressionType):
(JSC::WASMReader::readExportFormat):
(JSC::WASMReader::readByte):
(JSC::WASMReader::readUnsignedInt32): Deleted.

  • wasm/WASMReader.h:
5:03 PM Changeset in webkit [188098] by achristensen@apple.com
  • 5 edits in trunk/Source

[Win] Enable all Windows features in CMake
https://bugs.webkit.org/show_bug.cgi?id=147744

Reviewed by Tim Horton.

  • PlatformWin.cmake:

Source/WebCore:

Add a file needed for enabling video.

Source/WebKit:

Add some include directories needed for the newly enabled features.

5:00 PM Changeset in webkit [188097] by mrajca@apple.com
  • 6 edits
    2 copies in trunk/Source/WebKit2

Media Session: notify focus manager clients when the playing state of the focused media element changes
https://bugs.webkit.org/show_bug.cgi?id=147745

Reviewed by Tim Horton.

Added plumbing to allow focus manager's clients to be notified when the focused Content media element begins
playing or is paused.

  • UIProcess/API/C/WKMediaSessionFocusManager.cpp:

(WKMediaSessionFocusManagerSetClient):

  • UIProcess/API/C/WKMediaSessionFocusManager.h:
  • UIProcess/WebMediaSessionFocusManager.cpp:

(WebKit::WebMediaSessionFocusManager::initializeClient):
(WebKit::WebMediaSessionFocusManager::mediaElementIsPlayingDidChange):

  • UIProcess/WebMediaSessionFocusManager.h:
  • UIProcess/WebMediaSessionFocusManagerClient.cpp:

(WebKit::WebMediaSessionFocusManagerClient::didChangePlaybackAttribute):

  • UIProcess/WebMediaSessionFocusManagerClient.h:
  • WebKit2.xcodeproj/project.pbxproj:
4:48 PM Changeset in webkit [188096] by achristensen@apple.com
  • 2 edits in trunk/Source/WebKit2

Make CMake usable on Mac.
https://bugs.webkit.org/show_bug.cgi?id=147756

Reviewed by Tim Horton.

  • PlatformMac.cmake:

DatabaseProcess_SOURCES needs something in order to not have errors when generating build systems from CMake.
This doesn't fix everything, but it can now be used to build jsc again.

4:48 PM Changeset in webkit [188095] by dburkart@apple.com
  • 11 edits in branches/safari-601.1-branch/Source/WebKit2

Merge r188011. rdar://problem/22055130

4:48 PM Changeset in webkit [188094] by dburkart@apple.com
  • 6 edits in branches/safari-601.1-branch/Source/WebKit/win

Merge r188005. rdar://problem/22059707

4:41 PM Changeset in webkit [188093] by Brent Fulgham
  • 2 edits in trunk/Websites/webkit.org

Correct a typo in the explanatory text.

  • demos/backdrop-filter/index.html:
4:40 PM Changeset in webkit [188092] by rniwa@webkit.org
  • 15 edits
    1 copy
    1 delete in trunk/Tools

http_server_driver and benchmark_builder should not be in run-benchmark's plan files
https://bugs.webkit.org/show_bug.cgi?id=147752

Reviewed by Chris Dumez.

Removed BenchmarkBuilderFactory since we have exactly one subclass of BenchmarkBuilder.

Also made HTTPServerDriverFactory instantiate the appropriate HTTP server based on the platform name instead of HTTP server name.
This allows us to remove --http-server-driver option from run-benchmark, which was added to support the HTTP server for iOS.

  • Scripts/webkitpy/benchmark_runner/benchmark_builder: Removed.
  • Scripts/webkitpy/benchmark_runner/benchmark_builder.py: Moved from benchmark_runner/benchmark_builder/generic_benchmark_builder.py.
  • Scripts/webkitpy/benchmark_runner/benchmark_builder/init.py: Removed.
  • Scripts/webkitpy/benchmark_runner/benchmark_builder/benchmark_builder_factory.py: Removed.
  • Scripts/webkitpy/benchmark_runner/benchmark_builder/generic_benchmark_builder.py: Moved to benchmark_runner/benchmark_builder.py.
  • Scripts/webkitpy/benchmark_runner/benchmark_runner.py:

(BenchmarkRunner.init): No longer takes http_server_driver_override as an argument since this is not handled by
HTTPServerDriverFactory taking the platform name as an argument.
(BenchmarkRunner.execute): Directly instantiate BenchmarkBuilder.

  • Scripts/webkitpy/benchmark_runner/data/plans/dromaeo-cssquery.plan: Removed http_server_driver and benchmark_builder.
  • Scripts/webkitpy/benchmark_runner/data/plans/dromaeo-dom.plan: Ditto.
  • Scripts/webkitpy/benchmark_runner/data/plans/dromaeo-jslib.plan: Ditto.
  • Scripts/webkitpy/benchmark_runner/data/plans/jetstream.plan: Ditto.
  • Scripts/webkitpy/benchmark_runner/data/plans/jsbench.plan: Ditto.
  • Scripts/webkitpy/benchmark_runner/data/plans/kraken.plan: Ditto.
  • Scripts/webkitpy/benchmark_runner/data/plans/octane.plan: Ditto.
  • Scripts/webkitpy/benchmark_runner/data/plans/speedometer.plan: Ditto.
  • Scripts/webkitpy/benchmark_runner/data/plans/sunspider.plan: Ditto.
  • Scripts/webkitpy/benchmark_runner/http_server_driver/init.py:

(http_server_driver_loader): Register http server drivers via supported platform names instead of http server names.

  • Scripts/webkitpy/benchmark_runner/http_server_driver/http_server_driver.py:

(HTTPServerDriver): Replaced name by platforms.

  • Scripts/webkitpy/benchmark_runner/http_server_driver/simple_http_server_driver.py:

(SimpleHTTPServerDriver): Ditto.

  • Scripts/webkitpy/benchmark_runner/run_benchmark.py:

(parse_args): Removed --http-server-driver option.
(start): Ditto.

4:35 PM Changeset in webkit [188091] by dburkart@apple.com
  • 15 edits
    1 add in branches/safari-601.1-branch

Merge r187962. rdar://problem/21827815

4:35 PM Changeset in webkit [188090] by dburkart@apple.com
  • 7 edits in branches/safari-601.1-branch/Source/WebKit2

Merge r187764. rdar://problem/22077836

4:35 PM Changeset in webkit [188089] by andersca@apple.com
  • 8 edits
    2 moves in trunk/Source/WebCore

Rename SQLStatementBackend to SQLStatement
https://bugs.webkit.org/show_bug.cgi?id=147755

Reviewed by Geoffrey Garen.

  • CMakeLists.txt:
  • Modules/webdatabase/SQLStatement.h: Renamed from Source/WebCore/Modules/webdatabase/SQLStatementBackend.h.

(WebCore::SQLStatement::hasStatementCallback):
(WebCore::SQLStatement::hasStatementErrorCallback):

  • Modules/webdatabase/SQLStatementBackend.cpp: Removed.

(WebCore::SQLStatementBackend::SQLStatementBackend): Deleted.
(WebCore::SQLStatementBackend::~SQLStatementBackend): Deleted.
(WebCore::SQLStatementBackend::sqlError): Deleted.
(WebCore::SQLStatementBackend::sqlResultSet): Deleted.
(WebCore::SQLStatementBackend::execute): Deleted.
(WebCore::SQLStatementBackend::performCallback): Deleted.
(WebCore::SQLStatementBackend::setDatabaseDeletedError): Deleted.
(WebCore::SQLStatementBackend::setVersionMismatchedError): Deleted.
(WebCore::SQLStatementBackend::setFailureDueToQuota): Deleted.
(WebCore::SQLStatementBackend::clearFailureDueToQuota): Deleted.
(WebCore::SQLStatementBackend::lastExecutionFailedDueToQuota): Deleted.

  • Modules/webdatabase/SQLStatementBackend.h:

(WebCore::SQLStatementBackend::hasStatementCallback): Deleted.
(WebCore::SQLStatementBackend::hasStatementErrorCallback): Deleted.

  • Modules/webdatabase/SQLTransaction.cpp:

(WebCore::SQLTransaction::deliverStatementCallback):
(WebCore::SQLTransaction::executeSQL):

  • Modules/webdatabase/SQLTransactionBackend.cpp:

(WebCore::SQLTransactionBackend::currentStatement):
(WebCore::SQLTransactionBackend::enqueueStatementBackend):
(WebCore::SQLTransactionBackend::executeSQL):

  • Modules/webdatabase/SQLTransactionBackend.h:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
4:31 PM Changeset in webkit [188088] by mmaxfield@apple.com
  • 5 edits in trunk/Source/WebCore

Make FontDescriptionKey sensitive to FontFeatureSettings
https://bugs.webkit.org/show_bug.cgi?id=147751

Reviewed by Anders Carlsson.

Just like how FontDescription hashes should be sensitive to locale, they should
also be sensitive to font features.

This patch also fixes operator== for FontDescriptionKey, which was previously
comparing hashes for equality instead of the underlying data. Comparing hashes
for equality is useless inside hashmaps.

This is in preparation for implementing font-feature-settings.

No new tests because there is no behavior change.

  • platform/graphics/FontCache.cpp:

(WebCore::FontPlatformDataCacheKey::FontPlatformDataCacheKey):
(WebCore::FontPlatformDataCacheKey::isHashTableDeletedValue):
(WebCore::FontPlatformDataCacheKey::hashTableDeletedSize): Deleted.

  • platform/graphics/FontCache.h:

(WebCore::FontDescriptionKey::FontDescriptionKey):
(WebCore::FontDescriptionKey::operator==):
(WebCore::FontDescriptionKey::operator!=):
(WebCore::FontDescriptionKey::isHashTableDeletedValue):
(WebCore::FontDescriptionKey::computeHash):

  • platform/graphics/FontFeatureSettings.cpp:

(WebCore::FontFeature::hash):
(WebCore::FontFeatureSettings::hash):

  • platform/graphics/FontFeatureSettings.h:
4:31 PM Changeset in webkit [188087] by Brent Fulgham
  • 1 edit
    7 adds in trunk/Websites/webkit.org

Add an example of backdrop-filter.

  • demos/backdrop-filter: Added.
  • demos/backdrop-filter/dynamic_poster.jpg: Added.
  • demos/backdrop-filter/dynamic_source.m4v: Added.
  • demos/backdrop-filter/index.html: Added.
  • demos/backdrop-filter/inverted_color.jpg: Added.
  • demos/backdrop-filter/multiple.jpg: Added.
  • demos/backdrop-filter/simple_blur.jpg: Added.
4:25 PM Changeset in webkit [188086] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

The typedArrayLength function in FTLLowerDFGToLLVM is dead code.
https://bugs.webkit.org/show_bug.cgi?id=147749

Patch by Keith Miller <keith_miller@apple.com> on 2015-08-06
Reviewed by Filip Pizlo.

Removed dead code elimination. the TypedArray length is compiled in compileGetArrayLength()
thus no one calls this code.

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::DFG::LowerDFGToLLVM::typedArrayLength): Deleted.

4:23 PM Changeset in webkit [188085] by commit-queue@webkit.org
  • 3 edits
    3 adds in trunk

Source/JavaScriptCore:
The JSONP parser incorrectly parsers -0 as +0.
https://bugs.webkit.org/show_bug.cgi?id=147590

Patch by Keith Miller <keith_miller@apple.com> on 2015-08-06
Reviewed by Michael Saboff.

In the LiteralParser we should use a double to store the accumulator for numerical tokens
rather than an int. Using an int means that -0 is, incorrectly, parsed as +0.

  • runtime/LiteralParser.cpp:

(JSC::LiteralParser<CharType>::Lexer::lexNumber):

LayoutTests:
The JSONP parser incorrectly parses -0 as +0.
https://bugs.webkit.org/show_bug.cgi?id=147590

Patch by Keith Miller <keith_miller@apple.com> on 2015-08-06
Reviewed by Michael Saboff.

A simple test that attempts loads a JSONP that sets a variable to 0.

  • js/regress/JSONP-negative-0-expected.txt: Added.
  • js/regress/JSONP-negative-0.html: Added.
  • js/regress/script-tests/JSONP-negative-0.js: Added.
4:22 PM Changeset in webkit [188084] by dburkart@apple.com
  • 3 edits in branches/safari-601.1-branch/LayoutTests

Merge r187964. rdar://problem/21870332

4:22 PM Changeset in webkit [188083] by dburkart@apple.com
  • 3 edits
    3 adds in branches/safari-601.1-branch

Merge r187935. rdar://problem/22097682

4:22 PM Changeset in webkit [188082] by dburkart@apple.com
  • 3 edits
    3 adds in branches/safari-601.1-branch

Merge r187930. rdar://problem/21870332

4:21 PM Changeset in webkit [188081] by andersca@apple.com
  • 13 edits
    2 deletes in trunk/Source/WebCore

Merge SQLStatement into SQLStatementBackend
https://bugs.webkit.org/show_bug.cgi?id=147754

Reviewed by Geoffrey Garen.

  • CMakeLists.txt:
  • Modules/webdatabase/Database.h:
  • Modules/webdatabase/SQLStatement.cpp: Removed.

(WebCore::SQLStatement::SQLStatement): Deleted.
(WebCore::SQLStatement::setBackend): Deleted.
(WebCore::SQLStatement::hasCallback): Deleted.
(WebCore::SQLStatement::hasErrorCallback): Deleted.
(WebCore::SQLStatement::performCallback): Deleted.

  • Modules/webdatabase/SQLStatement.h: Removed.
  • Modules/webdatabase/SQLStatementBackend.cpp:

(WebCore::SQLStatementBackend::SQLStatementBackend):
(WebCore::SQLStatementBackend::performCallback):
(WebCore::SQLStatementBackend::frontend): Deleted.

  • Modules/webdatabase/SQLStatementBackend.h:

(WebCore::SQLStatementBackend::hasStatementCallback):
(WebCore::SQLStatementBackend::hasStatementErrorCallback):

  • Modules/webdatabase/SQLTransaction.cpp:

(WebCore::SQLTransaction::deliverStatementCallback):
(WebCore::SQLTransaction::executeSQL):

  • Modules/webdatabase/SQLTransaction.h:
  • Modules/webdatabase/SQLTransactionBackend.cpp:

(WebCore::SQLTransactionBackend::currentStatement):
(WebCore::SQLTransactionBackend::executeSQL):

  • Modules/webdatabase/SQLTransactionBackend.h:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSSQLTransactionCustom.cpp:
4:15 PM Changeset in webkit [188080] by Brent Fulgham
  • 1 edit
    1 add in trunk/Websites/webkit.org

Add a poster image for the video.

  • blog-files/backdrop-filters/dynamic_poster.jpg: Added.
4:09 PM Changeset in webkit [188079] by dburkart@apple.com
  • 2 edits in branches/safari-601.1-branch/Source/WebKit/mac

Merge r187910. rdar://problem/15779101

4:09 PM Changeset in webkit [188078] by dburkart@apple.com
  • 2 edits in branches/safari-601.1-branch/Source/WebKit/win

Merge r187894. rdar://problem/15779101

4:09 PM Changeset in webkit [188077] by dburkart@apple.com
  • 4 edits in branches/safari-601.1-branch/Source/WebCore

Merge r187892. rdar://problem/21932187

4:09 PM Changeset in webkit [188076] by dburkart@apple.com
  • 44 edits
    5 adds in branches/safari-601.1-branch

Merge r187886. rdar://problem/15779101

4:08 PM Changeset in webkit [188075] by dburkart@apple.com
  • 2 edits in branches/safari-601.1-branch/Source/WebCore

Merge r187693. rdar://problem/22047626

4:08 PM Changeset in webkit [188074] by dburkart@apple.com
  • 3 edits in branches/safari-601.1-branch

Merge r187622. rdar://problem/15779101

4:08 PM Changeset in webkit [188073] by dburkart@apple.com
  • 9 edits
    3 adds in branches/safari-601.1-branch

Merge r187620. rdar://problem/15779101

3:45 PM Changeset in webkit [188072] by msaboff@apple.com
  • 3 edits in branches/jsc-tailcall/Source/JavaScriptCore

jsc-tailcall: Stop saving and restoring all callee saves on vmEntry / exit for platforms with per function callee saves handling
https://bugs.webkit.org/show_bug.cgi?id=147747

Reviewed by Basile Clement.

Removed saving of callee save registers and materialization of special tag registers for
64 bit platforms.

  • llint/LowLevelInterpreter.asm:
  • llint/LowLevelInterpreter64.asm:
3:41 PM Changeset in webkit [188071] by msaboff@apple.com
  • 22 edits in branches/jsc-tailcall/Source/JavaScriptCore

jsc-tailcall: Exceptions should properly restore callee save register contents during unwinding
https://bugs.webkit.org/show_bug.cgi?id=147639

Reviewed by Basile Clement.

Added handling of callee save register restoration to exception handling.
The basic flow is when an exception is thrown or one is recognized to have been
generated in C++ code, we save the current state of all callee save registers to
VM::calleeSaveRegistersBuffer. As we unwind looking for the corresponding catch,
we copy the callee saves from call frames to the same VM::calleeSaveRegistersBuffer.
This is done for all call frames on the stack up to but not including the call
frame that has the corresponding catch block. When we process the catch, we
restore the callee save registers with the contents of VM::calleeSaveRegistersBuffer.
If there isn't a catch, then handleUncaughtException will restore callee saves
before it returns back to the calling C++.

As part of this change, restructured callee save handling in OSR exit handlers so
that we always use the current values of the tag registers for boxing. Also
eliminated the writing out of undefined for the baseline's callee saves slots.

Eliminated callee saves registers as possible locals for various thunk generation
as the callee saves may not have been saved by the function calling the thunk.

Cleaned up the static RegisterSet's including added one for LLInt callee saves and
one to be used to allocate local registers not including the callee saves or other
special registers.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::CodeBlock): Set the initial callee saves to what the LLInt needs.

  • dfg/DFGJITCompiler.cpp:

(JSC::DFG::JITCompiler::compileExceptionHandlers):

  • interpreter/Interpreter.cpp:

(JSC::UnwindFunctor::operator()):
(JSC::UnwindFunctor::copyCalleeSavesToVMCalleeSavesBuffer):

  • jit/AssemblyHelpers.h:

(JSC::AssemblyHelpers::emitRestoreCalleeSaves):

  • jit/JIT.cpp:

(JSC::JIT::emitEnterOptimizationCheck):
(JSC::JIT::privateCompileExceptionHandlers):

  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_throw):

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::emit_op_throw):

  • jit/Repatch.cpp:

(JSC::generateByIdStub):

  • jit/ThunkGenerators.cpp:

(JSC::throwExceptionFromCallSlowPathGenerator):
(JSC::nativeForGenerator):

  • llint/LowLevelInterpreter32.asm:

(_llint_throw_from_slow_path_trampoline):

  • llint/LowLevelInterpreter64.asm:

(_llint_throw_from_slow_path_trampoline):

  • llint/LowLevelInterpreter.asm:

(copyCalleeSavesToVMCalleeSavesBuffer):
Copy callee saves register contents to VM::calleeSaveRegistersBuffer.

  • jit/AssemblyHelpers.h:

(JSC::AssemblyHelpers::restoreCalleeSavesFromVMCalleeSavesBuffer):

  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_catch):

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::emit_op_catch):

  • llint/LowLevelInterpreter32.asm:

(_handleUncaughtException):
(_llint_op_catch):

  • llint/LowLevelInterpreter64.asm:

(_handleUncaughtException):
(_llint_op_catch):

  • llint/LowLevelInterpreter.asm:

(restoreCalleeSavesFromVMCalleeSavesBuffer):
Restore callee saves register contents from VM::calleeSaveRegistersBuffer.

  • dfg/DFGOSRExitCompiler32_64.cpp:

(JSC::DFG::OSRExitCompiler::compileExit):

  • dfg/DFGOSRExitCompiler64.cpp:

(JSC::DFG::OSRExitCompiler::compileExit):

  • dfg/DFGOSRExitCompilerCommon.cpp:

Restore callee saves from the DFG and save the appropriate ones for the baseline JIT.
Materialize the tag registers on 64 bit platforms.

(JSC::DFG::adjustAndJumpToTarget):

  • jit/AssemblyHelpers.h:

(JSC::AssemblyHelpers::copyCalleeSavesToVMCalleeSavesBuffer):
(JSC::AssemblyHelpers::copyCalleeSavesFromFrameToVMCalleeSavesBuffer):
(JSC::AssemblyHelpers::copyCalleeSavesFromFrameOrRegisterToVMCalleeSavesBuffer):

  • jit/CCallHelpers.h:

(JSC::CCallHelpers::jumpToExceptionHandler):
(JSC::CCallHelpers::prepareForTailCallSlow):

  • jit/JITOpcodes.cpp:

(JSC::JIT::emitSlow_op_loop_hint):

  • jit/JITPropertyAccess.cpp:

(JSC::JIT::emit_op_get_by_id):
(JSC::JIT::emit_op_put_by_id):

  • jit/JITPropertyAccess32_64.cpp:

(JSC::JIT::emit_op_get_by_id):
(JSC::JIT::emit_op_put_by_id):

  • jit/RegisterSet.cpp:

(JSC::RegisterSet::specialRegisters):
(JSC::RegisterSet::nonTempRegisters):
(JSC::RegisterSet::calleeSaveRegisters):
(JSC::RegisterSet::llintCalleeSaveRegisters):
(JSC::RegisterSet::baselineCalleeSaveRegisters):
(JSC::RegisterSet::dfgCalleeSaveRegisters):
(JSC::RegisterSet::allVMCalleeSaveRegisters):
(JSC::RegisterSet::allGPRs):

  • jit/RegisterSet.h:

Added LLInt callee saves register set.
Updated the register set of used registers to include callee saves.

  • jit/GPRInfo.h:
  • llint/LowLevelInterpreter.asm:

(preserveCalleeSavesUsedByLLInt):
(restoreCalleeSavesUsedByLLInt):
Fixed numberOfLLIntBaselineCalleeSaveRegisters for X86-64 Windows.

  • llint/LowLevelInterpreter.asm:

(prologue): Moved callee save preservation to before we overwrite the PC callee save.

3:40 PM Changeset in webkit [188070] by bshafiei@apple.com
  • 3 edits in branches/safari-601.1.46-branch/Source/WebCore

Merged r188062. rdar://problem/22028179

3:38 PM Changeset in webkit [188069] by bshafiei@apple.com
  • 2 edits in branches/safari-601.1.46-branch/Source/WebCore

Merged r188051. rdar://problem/22028179

3:37 PM Changeset in webkit [188068] by Chris Dumez
  • 19 edits
    4 adds in trunk

Toggle GPS state based on page visibility to save battery
https://bugs.webkit.org/show_bug.cgi?id=147685

Reviewed by Benjamin Poulain.

Source/WebCore:

Toggle GPS state based on page visibility to save battery. Previously,
if the site you were viewing was watching your position and you
switched tab, the GPS would stay on. This was bad for battery life.

Tests: fast/dom/Geolocation/startUpdatingOnlyWhenPageVisible.html

fast/dom/Geolocation/stopUpdatingForHiddenPage.html

  • Modules/geolocation/GeolocationController.cpp:

(WebCore::GeolocationController::addObserver):
(WebCore::GeolocationController::viewStateDidChange):

Tools:

Add testRunner.isGeolocationProviderActive() test support function.

  • DumpRenderTree/TestRunner.cpp:

(isGeolocationProviderActiveCallback):
(TestRunner::staticFunctions):

  • DumpRenderTree/TestRunner.h:
  • DumpRenderTree/mac/MockGeolocationProvider.h:
  • DumpRenderTree/mac/MockGeolocationProvider.mm:

(-[MockGeolocationProvider isActive]):

  • DumpRenderTree/mac/TestRunnerMac.mm:

(TestRunner::isGeolocationProviderActive):

  • DumpRenderTree/win/TestRunnerWin.cpp:

(TestRunner::isGeolocationProviderActive):

  • WebKitTestRunner/GeolocationProviderMock.h:

(WTR::GeolocationProviderMock::isActive):

  • WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
  • WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:

(WTR::InjectedBundle::isGeolocationProviderActive):

  • WebKitTestRunner/InjectedBundle/InjectedBundle.h:
  • WebKitTestRunner/InjectedBundle/TestRunner.cpp:

(WTR::TestRunner::isGeolocationProviderActive):

  • WebKitTestRunner/InjectedBundle/TestRunner.h:
  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::isGeolocationProviderActive):

  • WebKitTestRunner/TestController.h:
  • WebKitTestRunner/TestInvocation.cpp:

(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):

LayoutTests:

Add layout tests to check that the GeolocationClient starts and stops
updating when page visibility changes.

  • fast/dom/Geolocation/startUpdatingOnlyWhenPageVisible-expected.txt: Added.
  • fast/dom/Geolocation/startUpdatingOnlyWhenPageVisible.html: Added.
  • fast/dom/Geolocation/stopUpdatingForHiddenPage-expected.txt: Added.
  • fast/dom/Geolocation/stopUpdatingForHiddenPage.html: Added.
3:36 PM Changeset in webkit [188067] by fpizlo@apple.com
  • 4 edits in trunk/Source/JavaScriptCore

Structures used for tryGetConstantProperty() should be registered first
https://bugs.webkit.org/show_bug.cgi?id=147750

Reviewed by Saam Barati and Michael Saboff.

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::tryGetConstantProperty): Add an assertion to that effect. This should catch the bug sooner.

  • dfg/DFGGraph.h:

(JSC::DFG::Graph::addStructureSet): Register structures when we make a structure set. That ensures that we won't call tryGetConstantProperty() on a structure that hasn't been registered yet.

  • dfg/DFGStructureRegistrationPhase.cpp:

(JSC::DFG::StructureRegistrationPhase::run): Don't register structure sets here anymore. Registering them before we get here means there is no chance of the code being DCE'd before the structures get registered. It also enables the tryGetConstantProperty() assertion, since that code runs before StructureRegisterationPhase.
(JSC::DFG::StructureRegistrationPhase::registerStructures):
(JSC::DFG::StructureRegistrationPhase::registerStructure):
(JSC::DFG::StructureRegistrationPhase::assertAreRegistered):
(JSC::DFG::StructureRegistrationPhase::assertIsRegistered):
(JSC::DFG::performStructureRegistration):

3:32 PM Changeset in webkit [188066] by andersca@apple.com
  • 5 edits in trunk/Source/WebCore

SQLStatementBackend doesn't need to be refcounted
https://bugs.webkit.org/show_bug.cgi?id=147748

Reviewed by Geoffrey Garen.

There's no shared ownership of SQLStatementBackend so we can just use std::unique_ptr.

  • Modules/webdatabase/SQLStatementBackend.cpp:

(WebCore::SQLStatementBackend::create): Deleted.

  • Modules/webdatabase/SQLStatementBackend.h:
  • Modules/webdatabase/SQLTransactionBackend.cpp:

(WebCore::SQLTransactionBackend::enqueueStatementBackend):
(WebCore::SQLTransactionBackend::executeSQL):

  • Modules/webdatabase/SQLTransactionBackend.h:
3:23 PM Changeset in webkit [188065] by rniwa@webkit.org
  • 8 edits
    2 adds in trunk/Tools

Automate JSBench with run-benchmark
https://bugs.webkit.org/show_bug.cgi?id=147716

Reviewed by Chris Dumez.

Added JSBench plan to run-benchmark.

  • Scripts/webkitpy/benchmark_runner/benchmark_builder/generic_benchmark_builder.py:

(GenericBenchmarkBuilder.prepare): Pass in the archive type to _fetch_remote_archive.
(GenericBenchmarkBuilder._fetch_remote_archive): Added the support for extracting files from tar.gz in addition to zip.

  • Scripts/webkitpy/benchmark_runner/data/patches/Dromaeo.patch: Fixed the coding style.
  • Scripts/webkitpy/benchmark_runner/data/patches/JSBench.patch: Added.
  • Scripts/webkitpy/benchmark_runner/data/patches/JetStream.patch: Fixed the coding style.
  • Scripts/webkitpy/benchmark_runner/data/patches/Kraken.patch: Ditto.
  • Scripts/webkitpy/benchmark_runner/data/patches/Octane.patch: Ditto.
  • Scripts/webkitpy/benchmark_runner/data/patches/SunSpider.patch: Ditto.
  • Scripts/webkitpy/benchmark_runner/data/plans/dromaeo-cssquery.plan: Specified the archive type.
  • Scripts/webkitpy/benchmark_runner/data/plans/dromaeo-dom.plan: Specified the archive type.
  • Scripts/webkitpy/benchmark_runner/data/plans/dromaeo-jslib.plan: Ditto.
  • Scripts/webkitpy/benchmark_runner/data/plans/jetstream.plan: Fixed the coding style.
  • Scripts/webkitpy/benchmark_runner/data/plans/jsbench.plan: Added.
  • Scripts/webkitpy/benchmark_runner/data/plans/kraken.plan: Specified the archive type.
  • Scripts/webkitpy/benchmark_runner/data/plans/octane.plan: Ditto.
3:16 PM Changeset in webkit [188064] by Brent Fulgham
  • 1 edit
    3 adds in trunk/Websites/webkit.org

Add more media control examples.

  • blog-files/backdrop-filters/dynamic_backdrop.m4v: Added.
  • blog-files/backdrop-filters/Media_Controls_Complete_2x.jpg: Added.
  • blog-files/backdrop-filters/Media_Controls_Complete_2x.jpg: Added.
2:38 PM Changeset in webkit [188063] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit/mac

Crashes when calling swizzled setNeedsDisplayInRect: on heartbeat thread
https://bugs.webkit.org/show_bug.cgi?id=147746
rdar://problem/18698271

Reviewed by Dan Bernstein.

Back off if someone is calling our swizzled setNeedsDisplayInRect on a non-main thread.

  • WebView/WebHTMLView.mm:

(setNeedsDisplayInRect):

2:36 PM Changeset in webkit [188062] by eric.carlson@apple.com
  • 3 edits in trunk/Source/WebCore

Do not enforce "content-disposition: attachment" sandbox restrictions on a MediaDocument
https://bugs.webkit.org/show_bug.cgi?id=147734
rdar://problem/22028179

Reviewed by Andy Estes.

Test to follow, see https://bugs.webkit.org/show_bug.cgi?id=147735

  • dom/Document.cpp:

(WebCore::Document::initSecurityContext): Use applyContentDispositionAttachmentSandbox

instead of setting sandbox flags directly.

(WebCore::Document::shouldEnforceContentDispositionAttachmentSandbox): Don't special

case MediaDocument.

(WebCore::Document::applyContentDispositionAttachmentSandbox): Apply sandbox flags

according to document type.

  • dom/Document.h:
2:23 PM Changeset in webkit [188061] by andersca@apple.com
  • 10 edits
    2 deletes in trunk/Source/WebCore

Get rid of DatabaseBackendBase
https://bugs.webkit.org/show_bug.cgi?id=147733

Reviewed by Geoffrey Garen.

  • CMakeLists.txt:
  • Modules/webdatabase/Database.cpp:

(WebCore::Database::Database):
(WebCore::DoneCreatingDatabaseOnExitCaller::DoneCreatingDatabaseOnExitCaller):
(WebCore::DoneCreatingDatabaseOnExitCaller::~DoneCreatingDatabaseOnExitCaller):

  • Modules/webdatabase/Database.h:
  • Modules/webdatabase/DatabaseBackendBase.cpp: Removed.

(WebCore::DatabaseBackendBase::DatabaseBackendBase): Deleted.
(WebCore::DatabaseBackendBase::~DatabaseBackendBase): Deleted.

  • Modules/webdatabase/DatabaseBackendBase.h: Removed.
  • Modules/webdatabase/DatabaseManager.cpp:
  • Modules/webdatabase/DatabaseManager.h:
  • Modules/webdatabase/DatabaseTracker.cpp:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
2:23 PM Changeset in webkit [188060] by bshafiei@apple.com
  • 2 edits in branches/safari-601.1.46-branch/Source/WebKit2

Merged r188058. rdar://problem/22128839

2:17 PM Changeset in webkit [188059] by commit-queue@webkit.org
  • 139 edits
    10 copies
    1 move
    5 adds
    1 delete in trunk/LayoutTests

Web Inspector: move http/tests/inspector-protocol/ contents to http/tests/inspector/
https://bugs.webkit.org/show_bug.cgi?id=147739

Patch by Brian Burg <BJ Burg> on 2015-08-06
Reviewed by Timothy Hatcher.

Start merging inspector-protocol/ directory into inspector/, starting with http tests.

This patch puts the few http tests into their own domain directories. Files related
to the test harness have been moved to the appropriate resources/ directory.
Update all inspector tests to the new paths.

Lastly, rename InspectorTest.js and protocol-test.html to ProtocolTestStub, to make
it obvious that these files are only used by the protocol test harness.

  • http/tests/inspector/console/access-inspected-object-expected.txt: Renamed from LayoutTests/http/tests/inspector-protocol/access-inspected-object-expected.txt.
  • http/tests/inspector/console/access-inspected-object.html: Renamed from LayoutTests/http/tests/inspector-protocol/access-inspected-object.html.
  • http/tests/inspector/css/bad-mime-type.html:
  • http/tests/inspector/dom/resources/InspectorDOMListener.js: Renamed from LayoutTests/http/tests/inspector-protocol/resources/InspectorDOMListener.js.
  • http/tests/inspector/page/loading-iframe-document-node-expected.txt: Renamed from LayoutTests/http/tests/inspector-protocol/loading-iframe-document-node-expected.txt.
  • http/tests/inspector/page/loading-iframe-document-node.html: Renamed from LayoutTests/http/tests/inspector-protocol/loading-iframe-document-node.html.
  • http/tests/inspector/page/resources/slow-test-page.html: Renamed from LayoutTests/http/tests/inspector-protocol/resources/slow-test-page.html.
  • http/tests/inspector/page/resources/test-page.html: Renamed from LayoutTests/http/tests/inspector-protocol/resources/test-page.html.
  • http/tests/inspector/replay/document-last-modified-fallback-value.html:
  • http/tests/inspector/resources/ProtocolTestStub.html: Renamed from LayoutTests/http/tests/inspector-protocol/resources/protocol-test.html.
  • http/tests/inspector/resources/ProtocolTestStub.js: Renamed from LayoutTests/http/tests/inspector-protocol/resources/InspectorTest.js.
  • http/tests/inspector/resources/inspector-test.js: Renamed from LayoutTests/http/tests/inspector/inspector-test.js.
  • http/tests/inspector/resources/protocol-test.js: Renamed from LayoutTests/http/tests/inspector-protocol/resources/protocol-test.js.
  • inspector-protocol/async-test-suite.html:
  • inspector-protocol/console/console-message.html:
  • inspector-protocol/console/css-source-locations.html: Fix references to console helpers.
  • inspector-protocol/console/js-source-locations.html:
  • inspector-protocol/console/x-frame-options-message.html:
  • inspector-protocol/css/getSupportedCSSProperties.html:
  • inspector-protocol/debugger/breakpoint-action-detach.html:
  • inspector-protocol/debugger/breakpoint-action-with-exception.html:
  • inspector-protocol/debugger/breakpoint-condition-detach.html:
  • inspector-protocol/debugger/breakpoint-condition-with-bad-script.html:
  • inspector-protocol/debugger/breakpoint-condition-with-exception.html:
  • inspector-protocol/debugger/breakpoint-eval-with-exception.html:
  • inspector-protocol/debugger/breakpoint-inside-conditons-and-actions.html:
  • inspector-protocol/debugger/call-frame-function-name.html:
  • inspector-protocol/debugger/call-frame-this-host.html:
  • inspector-protocol/debugger/call-frame-this-nonstrict.html:
  • inspector-protocol/debugger/call-frame-this-strict.html:
  • inspector-protocol/debugger/debugger-statement.html:
  • inspector-protocol/debugger/didSampleProbe-multiple-probes.html:
  • inspector-protocol/debugger/hit-breakpoint-from-console.html:
  • inspector-protocol/debugger/nested-inspectors.html:
  • inspector-protocol/debugger/pause-dedicated-worker.html:
  • inspector-protocol/debugger/pause-on-assert.html:
  • inspector-protocol/debugger/regress-133182.html:
  • inspector-protocol/debugger/removeBreakpoint.html:
  • inspector-protocol/debugger/searchInContent-linebreaks.html:
  • inspector-protocol/debugger/setBreakpoint-actions.html:
  • inspector-protocol/debugger/setBreakpoint-autoContinue.html:
  • inspector-protocol/debugger/setBreakpoint-column.html:
  • inspector-protocol/debugger/setBreakpoint-condition.html:
  • inspector-protocol/debugger/setBreakpoint-dfg-and-modify-local.html:
  • inspector-protocol/debugger/setBreakpoint-dfg-callee-and-examine-dfg-local.html:
  • inspector-protocol/debugger/setBreakpoint-dfg.html:
  • inspector-protocol/debugger/setBreakpoint-options-exception.html:
  • inspector-protocol/debugger/setBreakpoint.html:
  • inspector-protocol/debugger/setBreakpointByUrl-sourceURL.html:
  • inspector-protocol/debugger/setPauseOnExceptions-all.html:
  • inspector-protocol/debugger/setPauseOnExceptions-none.html:
  • inspector-protocol/debugger/setPauseOnExceptions-uncaught.html:
  • inspector-protocol/debugger/setVariableValue.html:
  • inspector-protocol/debugger/terminate-dedicated-worker-while-paused.html:
  • inspector-protocol/dom-debugger/node-removed.html:
  • inspector-protocol/dom/dom-remove-events.html:
  • inspector-protocol/dom/dom-search-crash.html:
  • inspector-protocol/dom/dom-search-with-context.html:
  • inspector-protocol/dom/dom-search.html:
  • inspector-protocol/dom/focus.html:
  • inspector-protocol/dom/getAccessibilityPropertiesForNode.html:
  • inspector-protocol/dom/getAccessibilityPropertiesForNode_liveRegion.html:
  • inspector-protocol/dom/getAccessibilityPropertiesForNode_mouseEventNodeId.html:
  • inspector-protocol/dom/highlight-flow-with-no-region.html:
  • inspector-protocol/dom/remove-multiple-nodes.html:
  • inspector-protocol/dom/request-child-nodes-depth.html:
  • inspector-protocol/layers/layers-anonymous.html:
  • inspector-protocol/layers/layers-blending-compositing-reasons.html:
  • inspector-protocol/layers/layers-compositing-reasons.html:
  • inspector-protocol/layers/layers-for-node.html:
  • inspector-protocol/layers/layers-generated-content.html:
  • inspector-protocol/layers/layers-reflected-content.html:
  • inspector-protocol/page/archive.html:
  • inspector-protocol/page/frameScheduledNavigation.html:
  • inspector-protocol/page/frameStartedLoading.html:
  • inspector-protocol/page/javascriptDialogEvents.html:
  • inspector-protocol/page/setEmulatedMedia.html:
  • inspector-protocol/runtime/getProperties.html:
  • inspector-protocol/sync-test-suite.html:
  • inspector/console/command-line-api.html:
  • inspector/console/console-api.html:
  • inspector/console/console-table.html:
  • inspector/css/get-system-fonts.html:
  • inspector/css/matched-style-properties.html:
  • inspector/css/modify-rule-selector.html:
  • inspector/css/pseudo-element-matches-for-pseudo-element-node.html:
  • inspector/css/pseudo-element-matches.html:
  • inspector/css/selector-dynamic-specificity.html:
  • inspector/css/selector-specificity.html:
  • inspector/css/stylesheet-with-mutations.html:
  • inspector/debugger/break-on-exception-catch.html:
  • inspector/debugger/break-on-exception-finally.html:
  • inspector/debugger/break-on-exception-native.html:
  • inspector/debugger/break-on-exception-throw-in-promise-rethrow-in-catch.html:
  • inspector/debugger/break-on-exception-throw-in-promise-then-with-catch.html:
  • inspector/debugger/break-on-exception-throw-in-promise-then.html:
  • inspector/debugger/break-on-exception-throw-in-promise-with-catch.html:
  • inspector/debugger/break-on-exception-throw-in-promise.html:
  • inspector/debugger/break-on-exception-window-onerror.html:
  • inspector/debugger/break-on-exception.html:
  • inspector/debugger/break-on-uncaught-exception-catch.html:
  • inspector/debugger/break-on-uncaught-exception-finally.html:
  • inspector/debugger/break-on-uncaught-exception-native.html:
  • inspector/debugger/break-on-uncaught-exception-throw-in-promise-rethrow-in-catch.html:
  • inspector/debugger/break-on-uncaught-exception-throw-in-promise-then-with-catch.html:
  • inspector/debugger/break-on-uncaught-exception-throw-in-promise-then.html:
  • inspector/debugger/break-on-uncaught-exception-throw-in-promise-with-catch.html:
  • inspector/debugger/break-on-uncaught-exception-throw-in-promise.html:
  • inspector/debugger/break-on-uncaught-exception-window-onerror.html:
  • inspector/debugger/break-on-uncaught-exception.html:
  • inspector/debugger/breakpoint-action-eval.html:
  • inspector/debugger/breakpoint-columns.html:
  • inspector/debugger/breakpoint-scope.html:
  • inspector/debugger/command-line-api-exception-nested-catch.html:
  • inspector/debugger/command-line-api-exception.html:
  • inspector/debugger/js-stacktrace.html:
  • inspector/debugger/pause-reason.html:
  • inspector/debugger/probe-manager-add-remove-actions.html:
  • inspector/debugger/search-scripts-expected.txt:
  • inspector/debugger/search-scripts.html:
  • inspector/dom/content-flow-content-nodes.html:
  • inspector/dom/content-flow-content-removal.html:
  • inspector/dom/content-flow-list.html:
  • inspector/dom/content-node-region-info.html:
  • inspector/dom/highlight-shape-outside-margin.html:
  • inspector/dom/highlight-shape-outside.html:
  • inspector/dom/highlightSelector.html:
  • inspector/dom/pseudo-element-dynamic.html:
  • inspector/dom/pseudo-element-static.html:
  • inspector/dom/template-content.html:
  • inspector/event-listener-set.html:
  • inspector/event-listener.html:
  • inspector/model/parse-script-syntax-tree.html:
  • inspector/model/remote-object-get-properties.html:
  • inspector/model/remote-object-weak-collection.html:
  • inspector/model/remote-object.html:
  • inspector/page/main-frame-resource.html:
  • inspector/protocol-promise-result.html:
  • inspector/replay/javascript-date-now.html:
  • inspector/replay/javascript-random-seed.html:
  • inspector/replay/window-navigator-plugins-memoized.html:
  • inspector/test-harness-trivially-works.html:
  • inspector/timeline/debugger-paused-while-recording.html:
  • inspector/timeline/exception-in-injected-script-while-recording.html:
  • inspector/timeline/recording-start-stop-timestamps.html:
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/ios-simulator-wk1/TestExpectations:
  • platform/ios-simulator-wk2/TestExpectations:
2:03 PM Changeset in webkit [188058] by enrica@apple.com
  • 2 edits in trunk/Source/WebKit2

Build fix for iOS after http://trac.webkit.org/changeset/188053.

Unreviewed.

  • UIProcess/ios/WKContentViewInteraction.mm:

(-[WKContentView _registerPreview]):

1:53 PM Changeset in webkit [188057] by mmaxfield@apple.com
  • 2 edits in trunk/Source/WebCore

Add comment to CSSParserString
https://bugs.webkit.org/show_bug.cgi?id=147724

Reviewed by Dean Jackson.

No new tests because there is no behavior change.

  • css/CSSParserValues.h:
1:45 PM Changeset in webkit [188056] by mmaxfield@apple.com
  • 8 edits in trunk

Font feature settings comparisons are order-dependent and case-dependent
https://bugs.webkit.org/show_bug.cgi?id=147719

Reviewed by Benjamin Poulain.

Source/WebCore:

We should make our settings vector order-independent and case-independent.

Test: css3/font-feature-settings-parsing.html

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseFontFeatureTag):

  • css/StyleBuilderConverter.h:

(WebCore::StyleBuilderConverter::convertFontFeatureSettings):

  • platform/graphics/FontFeatureSettings.cpp:

(WebCore::FontFeature::FontFeature):
(WebCore::FontFeature::operator==):
(WebCore::FontFeatureSettings::FontFeatureSettings):

  • platform/graphics/FontFeatureSettings.h:

(WebCore::FontFeature::FontFeature):
(WebCore::FontFeature::operator==):
(WebCore::FontFeature::operator<):
(WebCore::FontFeatureSettings::insert):
(WebCore::FontFeatureSettings::FontFeatureSettings):
(WebCore::FontFeatureSettings::append): Deleted.

LayoutTests:

Make the test insensitive to order and case.

  • css3/font-feature-settings-parsing-expected.txt:
  • css3/font-feature-settings-parsing.html:
1:40 PM Changeset in webkit [188055] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

AX: AXLoadComplete that comes before AX API access won't fire
https://bugs.webkit.org/show_bug.cgi?id=147737

Patch by Doug Russell <d_russell@apple.com> on 2015-08-06
Reviewed by Chris Fleizach.

Treat setEnhancedUserInterfaceAccessibility() as AX API access and if true,
enableAccessibility().

Source/WebCore:

Test: accessibility/mac/loaded-notification.html

  • accessibility/AXObjectCache.cpp:

(WebCore::AXObjectCache::setEnhancedUserInterfaceAccessibility):

LayoutTests:

  • accessibility/mac/loaded-notification-expected.txt: Added.
  • accessibility/mac/loaded-notification.html: Added.
1:33 PM Changeset in webkit [188054] by bshafiei@apple.com
  • 3 edits in branches/safari-601.1.46-branch/Source/WebKit2

Merged r188053. rdar://problem/22128839

1:14 PM Changeset in webkit [188053] by enrica@apple.com
  • 3 edits in trunk/Source/WebKit2

Allow long press to cancel link preview.
https://bugs.webkit.org/show_bug.cgi?id=147743
rdar://problem/22128839

Reviewed by Tim Horton.

We should be able to show the context menu at the beginnig of link preview.

  • UIProcess/ios/WKContentViewInteraction.h:
  • UIProcess/ios/WKContentViewInteraction.mm:

(-[WKContentView _removeDefaultGestureRecognizers]):
(-[WKContentView _addDefaultGestureRecognizers]):
(-[WKContentView gestureRecognizer:shouldRecognizeSimultaneouslyWithGestureRecognizer:]):
(-[WKContentView _longPressRecognized:]):
(-[WKContentView _singleTapRecognized:]):
(-[WKContentView _registerPreview]):
(-[WKContentView _unregisterPreview]):

12:48 PM Changeset in webkit [188052] by bshafiei@apple.com
  • 2 edits in branches/safari-601.1.46-branch/Source/WebCore

Merged r187693. rdar://problem/22047626

11:45 AM Changeset in webkit [188051] by eric.carlson@apple.com
  • 2 edits in trunk/Source/WebCore

Do not enforce "content-disposition: attachment" sandbox restrictions on a MediaDocument
https://bugs.webkit.org/show_bug.cgi?id=147734
rdar://problem/22028179

Reviewed by Dean Jackson.

Test to follow, see https://bugs.webkit.org/show_bug.cgi?id=147735

  • dom/Document.cpp:

(WebCore::Document::shouldEnforceContentDispositionAttachmentSandbox): Return

early if the Document is a MediaDocument.

11:35 AM Changeset in webkit [188050] by Yusuke Suzuki
  • 2 edits in trunk/Tools

Pass-through the undefined options in run-jsc
https://bugs.webkit.org/show_bug.cgi?id=147717

Undefined options in run-jsc is just passed to the actual jsc shell.
We can execute Tools/Scripts/run-jsc -d.

Reviewed by Csaba Osztrogonác.

  • Scripts/run-jsc:
11:30 AM Changeset in webkit [188049] by mrajca@apple.com
  • 2 edits in trunk/Source/WebCore

Media Session: remove media elements from the ID <-> element map on destruction
https://bugs.webkit.org/show_bug.cgi?id=147707

Reviewed by Eric Carlson.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::~HTMLMediaElement):

11:21 AM Changeset in webkit [188048] by mrajca@apple.com
  • 5 edits in trunk/Source/WebKit2

Media Session: rename isFocusedContentMediaElementPaused and get rid of callback
https://bugs.webkit.org/show_bug.cgi?id=147726

Reviewed by Simon Fraser.

  • isFocusedContentMediaElementPaused should be renamed to isFocusedContentMediaElementPlaying to match recent refactoring work.
  • isFocusedContentMediaElementPlaying itself does not need a callback anymore because the value can be returned directly.
  • UIProcess/API/C/WKMediaSessionFocusManager.cpp:

(WKMediaSessionFocusManagerIsFocusedContentMediaElementPlaying): Removed callback and renamed from...
(WKMediaSessionFocusManagerIsFocusedContentMediaElementPaused): Deleted.

  • UIProcess/API/C/WKMediaSessionFocusManager.h:
  • UIProcess/WebMediaSessionFocusManager.cpp:

(WebKit::WebMediaSessionFocusManager::isFocusedContentMediaElementPlaying): Removed callback and renamed from...
(WebKit::WebMediaSessionFocusManager::isFocusedContentMediaElementPaused): Deleted.

  • UIProcess/WebMediaSessionFocusManager.h:
11:16 AM Changeset in webkit [188047] by Brent Fulgham
  • 1 edit
    2 adds in trunk/Websites/webkit.org

Add two more files for a future blog post.

  • blog-files/backdrop-filters/Media_Controls_1x.jpg: Added.
  • blog-files/backdrop-filters/Media_Controls_2x.jpg: Added.
10:58 AM Changeset in webkit [188046] by Gyuyoung Kim
  • 3 edits in trunk/Source/WebCore

[CoordinatedGraphics] Remove unused functions in Coordinated TiledBackingStore
https://bugs.webkit.org/show_bug.cgi?id=147621

Reviewed by Csaba Osztrogonác.

  • platform/graphics/texmap/coordinated/TiledBackingStore.cpp: Remove setTileSize() and tileSize().

(WebCore::TiledBackingStore::setTileSize):

10:55 AM Changeset in webkit [188045] by andersca@apple.com
  • 5 edits in trunk/Source/WebCore

Move the last remnants of DatabaseBackendBase to Database
https://bugs.webkit.org/show_bug.cgi?id=147730

Reviewed by Tim Horton.

  • Modules/webdatabase/Database.cpp:

(WebCore::Database::Database):
(WebCore::Database::performOpenAndVerify):

  • Modules/webdatabase/Database.h:
  • Modules/webdatabase/DatabaseBackendBase.cpp:

(WebCore::DatabaseBackendBase::DatabaseBackendBase):

  • Modules/webdatabase/DatabaseBackendBase.h:

(WebCore::DatabaseBackendBase::databaseContext): Deleted.
(WebCore::DatabaseBackendBase::setFrontend): Deleted.

10:44 AM Changeset in webkit [188044] by beidson@apple.com
  • 1 edit
    5 adds in branches/safari-600.8-branch/LayoutTests

Re-baseline test for WK1 on this branch

Collaboration of Brady and Alexey.

  • platform/mac-wk1/http: Added.
  • platform/mac-wk1/http/tests: Added.
  • platform/mac-wk1/http/tests/misc: Added.
  • platform/mac-wk1/http/tests/misc/authentication-redirect-3: Added.
  • platform/mac-wk1/http/tests/misc/authentication-redirect-3/authentication-sent-to-redirect-same-origin-with-location-credentials-expected.txt: Added.
10:30 AM Changeset in webkit [188043] by bshafiei@apple.com
  • 7 edits in branches/safari-601.1.46-branch/Source/WebKit2

Merged r186849. rdar://problem/22045047

9:52 AM Changeset in webkit [188042] by bshafiei@apple.com
  • 5 edits in branches/safari-601.1.46-branch/Source

Versioning.

9:36 AM Changeset in webkit [188041] by achristensen@apple.com
  • 4 edits in trunk/Source/WebCore

Fix build without ENABLE(VIDEO) after r188030.

  • dom/Document.h:
  • html/HTMLMediaElement.cpp:
  • html/HTMLMediaElement.h:

Move definition of HTMLMediaElementInvalidID to Document.h so it can be used outside of ENABLE(VIDEO) macros.

9:24 AM Changeset in webkit [188040] by commit-queue@webkit.org
  • 6 edits in trunk/Source/JavaScriptCore

Remove UnspecifiedBoolType from JSC
https://bugs.webkit.org/show_bug.cgi?id=147597

Patch by Keith Miller <keith_miller@apple.com> on 2015-08-06
Reviewed by Mark Lam.

We were using the safe bool pattern in the code base for implicit casting to booleans.
With C++11 this is no longer necessary and we can instead create an operator bool.

  • API/JSRetainPtr.h:

(JSRetainPtr::operator bool):
(JSRetainPtr::operator UnspecifiedBoolType): Deleted.

  • dfg/DFGEdge.h:

(JSC::DFG::Edge::operator bool):
(JSC::DFG::Edge::operator UnspecifiedBoolType*): Deleted.

  • dfg/DFGIntegerRangeOptimizationPhase.cpp:
  • heap/Weak.h:
  • heap/WeakInlines.h:

(JSC::bool):
(JSC::UnspecifiedBoolType): Deleted.

5:31 AM Changeset in webkit [188039] by Carlos Garcia Campos
  • 2 edits in trunk/Tools

Unreviewed. Skip GTK+ test /webkit2/WebKitWebView/submit-form.

It's flaky.

  • Scripts/run-gtk-tests:

(TestRunner):

4:10 AM Changeset in webkit [188038] by Csaba Osztrogonác
  • 4 edits in trunk

[EFL] Bump EFL version to 1.15.0
https://bugs.webkit.org/show_bug.cgi?id=147450

Reviewed by Gyuyoung Kim.

Source/WebKit2:

  • PlatformEfl.cmake:

Tools:

  • efl/jhbuild.modules:
3:12 AM Changeset in webkit [188037] by Carlos Garcia Campos
  • 1 copy in releases/WebKitGTK/webkit-2.8.5

WebKitGTK+ 2.8.5

3:11 AM Changeset in webkit [188036] by Carlos Garcia Campos
  • 4 edits in releases/WebKitGTK/webkit-2.8

Unreviewed. Update OptionsGTK.cmake and NEWS for 2.8.5 release.

.:

  • Source/cmake/OptionsGTK.cmake: Bump version numbers.

Source/WebKit2:

  • gtk/NEWS: Add release notes for 2.8.5.
3:10 AM Changeset in webkit [188035] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.8/Source/WebCore

Unreviewed. Fix the build with RESOURCE_TIMING disabled.

  • loader/ThreadableLoader.h:
1:50 AM Changeset in webkit [188034] by Carlos Garcia Campos
  • 3 edits in releases/WebKitGTK/webkit-2.8/Source/WebKit2

Merge r188031 - [GTK] Crash closing a page when a context menu is open
https://bugs.webkit.org/show_bug.cgi?id=147682

Reviewed by Sergio Villar Senin.

Implement WebContextMenuProxy::cancelTracking() to clear the
internal menu when the web page is closed.

  • UIProcess/gtk/WebContextMenuProxyGtk.cpp:

(WebKit::WebContextMenuProxyGtk::cancelTracking):
(WebKit::WebContextMenuProxyGtk::~WebContextMenuProxyGtk): Deleted.

  • UIProcess/gtk/WebContextMenuProxyGtk.h:
1:47 AM Changeset in webkit [188033] by Carlos Garcia Campos
  • 3 edits
    2 adds in releases/WebKitGTK/webkit-2.8

Merge r188014 - Crash when removing children of a MathMLSelectElement
https://bugs.webkit.org/show_bug.cgi?id=147704
<rdar://problem/21940321>

Reviewed by Ryosuke Niwa.

Source/WebCore:

When MathMLSelectElement::childrenChanged() is called after its
children have been removed, MathMLSelectElement calls
updateSelectedChild() which accesses m_selectedChild. However,
in this case, m_selectedChild is the previously selected child
and it may be destroyed as this point if it was removed. To avoid
this problem, MathMLSelectElement now keep a strong ref to the
currently selected element.

Test: mathml/maction-removeChild.html

  • mathml/MathMLSelectElement.h:

LayoutTests:

Add layout test that reproduces the crash under guardmalloc.

  • mathml/maction-removeChild-expected.txt: Added.
  • mathml/maction-removeChild.html: Added.
1:19 AM Changeset in webkit [188032] by Carlos Garcia Campos
  • 2 edits in trunk/Tools

Unreviewed. Unksip TestContextMenu GTK+ API test.

This has been skipped for a long time, and it's very
unconvenient. It has never failed for me locally, so let's try
again to see if it works in the bots. I'll skip it again if it
keeps failing.

  • Scripts/run-gtk-tests:

(TestRunner):

1:14 AM Changeset in webkit [188031] by Carlos Garcia Campos
  • 3 edits in trunk/Source/WebKit2

[GTK] Crash closing a page when a context menu is open
https://bugs.webkit.org/show_bug.cgi?id=147682

Reviewed by Sergio Villar Senin.

Implement WebContextMenuProxy::cancelTracking() to clear the
internal menu when the web page is closed.

  • UIProcess/gtk/WebContextMenuProxyGtk.cpp:

(WebKit::WebContextMenuProxyGtk::cancelTracking):
(WebKit::WebContextMenuProxyGtk::~WebContextMenuProxyGtk): Deleted.

  • UIProcess/gtk/WebContextMenuProxyGtk.h:
12:13 AM Changeset in webkit [188030] by mrajca@apple.com
  • 20 edits in trunk/Source

Media Session: push paused state to the media session focus manager instead of polling
https://bugs.webkit.org/show_bug.cgi?id=147633

Reviewed by Simon Fraser.

WebCore:

  • dom/Document.cpp:

(WebCore::Document::updateIsPlayingMedia): If a valid source element ID is passed in, set the 'IsSourcePlaying'

flag accordingly.

  • dom/Document.h:
  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::elementWithID):
(WebCore::HTMLMediaElement::setMuted): Pass along the element ID.
(WebCore::HTMLMediaElement::mediaPlayerCharacteristicChanged): Ditto.
(WebCore::HTMLMediaElement::setPlaying): Ditto.

  • html/HTMLMediaElement.h:
  • page/ChromeClient.h:
  • page/MediaProducer.h:
  • page/Page.cpp:

(WebCore::Page::updateIsPlayingMedia): Pass along the source element ID.
(WebCore::Page::isMediaElementPaused): Deleted. We now push media playback state changes instead of polling.

  • page/Page.h:

WebKit2:

  • UIProcess/WebMediaSessionFocusManager.cpp:

(WebKit::WebMediaSessionFocusManager::isFocusedContentMediaElementPaused): Report whether the focused media

element is currently playing. The callback is no longer necessary and will be removed in a future patch in
favor of returning a value directly.

(WebKit::WebMediaSessionFocusManager::mediaElementIsPlayingDidChange): Keep track of whether the focused media

element is currently playing.

  • UIProcess/WebMediaSessionFocusManager.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::isPlayingMediaDidChange): If the focused media element begins/ends playing, keep track

of its playing state.

(WebKit::WebPageProxy::isMediaElementPaused): Deleted. We now push media playback state changes instead of

polling.

  • UIProcess/WebPageProxy.h: isPlayingMediaDidChange is now passed the ID of the media element that triggered the 'playing' state change. This can be used in conjunction with the IsSourcePlaying media flag to identify whether the source element begin/ended playing.
  • UIProcess/WebPageProxy.messages.in: Ditto.
  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::setPluginIsPlayingAudio): Since a media element did not trigger this, pass in 0 for the

source media element.

  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::isPlayingMediaDidChange): isPlayingMediaDidChange is now passed the ID of the media

element that triggered the 'playing' state change.

  • WebProcess/WebCoreSupport/WebChromeClient.h: Ditto.
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::isMediaElementPaused): Deleted. We now push media playback state changes instead of polling.

  • WebProcess/WebPage/WebPage.h: Ditto.
  • WebProcess/WebPage/WebPage.messages.in: Ditto.

Aug 5, 2015:

11:24 PM Changeset in webkit [188029] by Devin Rousso
  • 7 edits
    1 delete in trunk/Source/WebInspectorUI

Web Inspector: Move the Metrics style sidebar panel into Computed
https://bugs.webkit.org/show_bug.cgi?id=147715

Reviewed by Timothy Hatcher.

Deleted the Metrics sidebar panel and moved its contents into the Computed sidebar panel.
In addition, not hovering over the Metrics section will display the colors of each box.

  • UserInterface/Main.html:
  • UserInterface/Views/BoxModelDetailsSectionRow.css:

(.details-section .row.box-model :matches(.position, .margin, .border, .padding, .content)):
(.details-section .row.box-model .position):
(.details-section .row.box-model .margin):
(.details-section .row.box-model .border):
(.details-section .row.box-model .padding):
(.details-section .row.box-model :matches(.content span, .top, .right, .bottom, .left)):
(.details-section .row.box-model :matches(.right, .left)):
(.details-section .row.box-model .content): Deleted.
(.details-section .row.box-model .content span): Deleted.
(.details-section .row.box-model .left): Deleted.
(.details-section .row.box-model .right): Deleted.
(.details-section .row.box-model .top): Deleted.
(.details-section .row.box-model .bottom): Deleted.

  • UserInterface/Views/BoxModelDetailsSectionRow.js:

(WebInspector.BoxModelDetailsSectionRow.prototype._highlightDOMNode):
If no metric box is hovered, apply a class to the entire section.

  • UserInterface/Views/CSSStyleDetailsSidebarPanel.js:

(WebInspector.CSSStyleDetailsSidebarPanel):
Removed the usage of MetricsStyleDetailsPanel.

  • UserInterface/Views/ComputedStyleDetailsPanel.css:

(.details-section.style-box-model:not(.collapsed) > :matches(.header, .content)):
Give the metrics section in the Computed panel a white background.

  • UserInterface/Views/ComputedStyleDetailsPanel.js:

(WebInspector.ComputedStyleDetailsPanel):
(WebInspector.ComputedStyleDetailsPanel.prototype.refresh):
Don't refresh the content unless the change is significant (without this, you cannot edit
metrics values using the arrow keys).

  • UserInterface/Views/MetricsStyleDetailsPanel.js: Removed.
11:17 PM Changeset in webkit [188028] by Devin Rousso
  • 12 edits
    1 copy
    4 adds
    1 delete in trunk/Source/WebInspectorUI

Web Inspector: Bezier curve visual editor
https://bugs.webkit.org/show_bug.cgi?id=134501

Reviewed by Timothy Hatcher.

Added a visual Cubic Bezier curve editor that is usable in both
the CSS sidebar and the resources panel.

  • Localizations/en.lproj/localizedStrings.js:
  • UserInterface/Base/DOMUtilities.js:

(createSVGElement):

  • UserInterface/Controllers/CodeMirrorBezierEditingController.js:

(WebInspector.CodeMirrorBezierEditingController):
(WebInspector.CodeMirrorBezierEditingController.prototype.get initialValue):
(WebInspector.CodeMirrorBezierEditingController.prototype.get cssClassName):
(WebInspector.CodeMirrorBezierEditingController.prototype.popoverWillPresent):
(WebInspector.CodeMirrorBezierEditingController.prototype.popoverDidPresent):
(WebInspector.CodeMirrorBezierEditingController.prototype._bezierEditorBezierChanged):

  • UserInterface/Images/CubicBezier.svg: Added.
  • UserInterface/Main.html:
  • UserInterface/Models/Geometry.js:

(WebInspector.Point.prototype.distance):
(WebInspector.Point):
(WebInspector.CubicBezier):
(WebInspector.CubicBezier.fromPoints):
(WebInspector.CubicBezier.fromString):
(WebInspector.CubicBezier.prototype.get inPoint):
(WebInspector.CubicBezier.prototype.get outPoint):
(WebInspector.CubicBezier.prototype.copy):
(WebInspector.CubicBezier.prototype.toString):
(WebInspector.CubicBezier.prototype.solve):
(WebInspector.CubicBezier.prototype._sampleCurveX):
(WebInspector.CubicBezier.prototype._sampleCurveY):
(WebInspector.CubicBezier.prototype._sampleCurveDerivativeX):
(WebInspector.CubicBezier.prototype._solveCurveX):

  • UserInterface/Models/TextMarker.js:
  • UserInterface/Models/UnitBezier.js: Removed.
  • UserInterface/Views/BezierEditor.css: Added.

(.bezier-editor):
(.bezier-editor > .bezier-preview):
(.bezier-editor > .bezier-preview > div):
(.bezier-editor > .bezier-preview-timing):
(.bezier-editor > .bezier-preview-timing.animate):
(.bezier-editor > .bezier-container):
(@keyframes bezierPreview):
(.bezier-editor > .bezier-container):
(.bezier-editor > .bezier-container .linear-curve):
(.bezier-editor > .bezier-container .bezier-curve):
(.bezier-editor > .bezier-container .control-line):
(.bezier-editor > .bezier-container .control-handle):

  • UserInterface/Views/BezierEditor.js: Added.

(WebInspector.BezierEditor.createControl):
(WebInspector.BezierEditor):
(WebInspector.BezierEditor.prototype.get element):
(WebInspector.BezierEditor.prototype.set bezier):
(WebInspector.BezierEditor.prototype.get bezier):
(WebInspector.BezierEditor.prototype.handleEvent):
(WebInspector.BezierEditor.prototype._handleMousedown):
(WebInspector.BezierEditor.prototype._handleMousemove):
(WebInspector.BezierEditor.prototype._handleMouseup):
(WebInspector.BezierEditor.prototype._updateControlPointsForMouseEvent):
(WebInspector.BezierEditor.prototype._updateValue.round):
(WebInspector.BezierEditor.prototype._updateValue):
(WebInspector.BezierEditor.prototype._updateBezier):
(WebInspector.BezierEditor.prototype._updateControl):
(WebInspector.BezierEditor.prototype._triggerPreviewAnimation):
(WebInspector.BezierEditor.prototype._resetPreviewAnimation):

  • UserInterface/Views/CSSStyleDeclarationTextEditor.css:

(.css-style-text-editor > .CodeMirror .CodeMirror-lines .cubic-bezier-marker):
(.css-style-text-editor > .CodeMirror .CodeMirror-lines .cubic-bezier-marker:hover):
(.css-style-text-editor > .CodeMirror .CodeMirror-lines .cubic-bezier-marker:active):

  • UserInterface/Views/CSSStyleDeclarationTextEditor.js:

(WebInspector.CSSStyleDeclarationTextEditor.prototype.didDismissPopover):
(WebInspector.CSSStyleDeclarationTextEditor.prototype._contentChanged):
(WebInspector.CSSStyleDeclarationTextEditor.prototype._updateTextMarkers.update):
(WebInspector.CSSStyleDeclarationTextEditor.prototype._updateTextMarkers):
(WebInspector.CSSStyleDeclarationTextEditor.prototype._createColorSwatches.update):
(WebInspector.CSSStyleDeclarationTextEditor.prototype._createColorSwatches):
(WebInspector.CSSStyleDeclarationTextEditor.prototype._createBezierEditors.update):
(WebInspector.CSSStyleDeclarationTextEditor.prototype._createBezierEditors):
(WebInspector.CSSStyleDeclarationTextEditor.prototype._commentProperty.update):
(WebInspector.CSSStyleDeclarationTextEditor.prototype._commentProperty):
(WebInspector.CSSStyleDeclarationTextEditor.prototype._uncommentRange.update):
(WebInspector.CSSStyleDeclarationTextEditor.prototype._uncommentRange):
(WebInspector.CSSStyleDeclarationTextEditor.prototype._cubicBezierMarkerClicked.updateCodeMirror.update):
(WebInspector.CSSStyleDeclarationTextEditor.prototype._cubicBezierMarkerClicked.updateCodeMirror):
(WebInspector.CSSStyleDeclarationTextEditor.prototype._cubicBezierMarkerClicked):
(WebInspector.CSSStyleDeclarationTextEditor.prototype._resetContent.update):
(WebInspector.CSSStyleDeclarationTextEditor.prototype._resetContent):

  • UserInterface/Views/CodeMirrorAdditions.js:
  • UserInterface/Views/CodeMirrorTextMarkers.js: Added.

(createCodeMirrorTextMarkers):
(createCodeMirrorColorTextMarkers):
(createCodeMirrorGradientTextMarkers):
(createCodeMirrorCubicBezierTextMarkers):

  • UserInterface/Views/Popover.js:

(WebInspector.Popover.prototype._animateFrame):

  • UserInterface/Views/SourceCodeTextEditor.js:

(WebInspector.SourceCodeTextEditor.prototype._updateEditableMarkers):
(WebInspector.SourceCodeTextEditor.prototype._tokenTrackingControllerHighlightedMarkedExpression):

  • UserInterface/Views/TextEditor.js:

(WebInspector.TextEditor.prototype.createColorMarkers):
(WebInspector.TextEditor.prototype.createGradientMarkers):
(WebInspector.TextEditor.prototype.createCubicBezierMarkers):
(WebInspector.TextEditor.prototype.editingControllerForMarker):

11:07 PM Changeset in webkit [188027] by ap@apple.com
  • 3 edits in trunk/LayoutTests

Fix TestExpectations lint warnings.

  • platform/mac-wk2/TestExpectations: Remove duplicate entries.
  • platform/win/TestExpectations: Update for the big platform move of 2015. One of

these tests no longer asserts, so it doesn't need to be skipped.

10:38 PM Changeset in webkit [188026] by Simon Fraser
  • 2 edits in trunk/LayoutTests

Fix paths to ruby-expansion tests, and make them ImageOnlyFailure rather than Skip.

  • platform/mac-mavericks/TestExpectations:
10:16 PM Changeset in webkit [188025] by mmaxfield@apple.com
  • 2 edits in trunk/Source/WebCore

CharacterFallbackMapKey should be locale-specific
https://bugs.webkit.org/show_bug.cgi?id=147532

Reviewed by Dean Jackson.

This is in preparation for locale-specific font fallback.

No new tests because there is no behavior change.

  • platform/graphics/Font.cpp:

(WebCore::CharacterFallbackMapKey::CharacterFallbackMapKey):
(WebCore::CharacterFallbackMapKey::operator==):
(WebCore::CharacterFallbackMapKeyHash::hash):
(WebCore::Font::systemFallbackFontForCharacter):

10:13 PM Changeset in webkit [188024] by mmaxfield@apple.com
  • 2 edits in trunk/Source/WebCore

Expand CharacterFallbackMapKey to a struct
https://bugs.webkit.org/show_bug.cgi?id=147530

Reviewed by Dean Jackson.

This is in prepraration for making this struct locale-specific.

No new tests because there is no behavior change.

  • platform/graphics/Font.cpp:

(WebCore::CharacterFallbackMapKey::CharacterFallbackMapKey):
(WebCore::CharacterFallbackMapKey::isHashTableDeletedValue):
(WebCore::CharacterFallbackMapKey::operator==):
(WebCore::CharacterFallbackMapKeyHash::hash):
(WebCore::CharacterFallbackMapKeyHash::equal):
(WebCore::Font::systemFallbackFontForCharacter):

9:50 PM Changeset in webkit [188023] by Simon Fraser
  • 2 edits
    16 moves in trunk/LayoutTests

Move /mac/fast/text reference tests into fast/text. Some may need to be skipped on other platforms.

  • fast/text/arabic-zwj-and-zwnj-expected.html: Renamed from LayoutTests/platform/mac/fast/text/arabic-zwj-and-zwnj-expected.html.
  • fast/text/arabic-zwj-and-zwnj.html: Renamed from LayoutTests/platform/mac/fast/text/arabic-zwj-and-zwnj.html.
  • fast/text/combining-character-sequence-vertical-expected.html: Renamed from LayoutTests/platform/mac/fast/text/combining-character-sequence-vertical-expected.html.
  • fast/text/combining-character-sequence-vertical.html: Renamed from LayoutTests/platform/mac/fast/text/combining-character-sequence-vertical.html.
  • fast/text/combining-mark-paint-expected.html: Renamed from LayoutTests/platform/mac/fast/text/combining-mark-paint-expected.html.
  • fast/text/combining-mark-paint.html: Renamed from LayoutTests/platform/mac/fast/text/combining-mark-paint.html.
  • fast/text/font-cursive-italic-cjk-expected.html: Renamed from LayoutTests/platform/mac/fast/text/font-cursive-italic-cjk-expected.html.
  • fast/text/font-cursive-italic-cjk.html: Renamed from LayoutTests/platform/mac/fast/text/font-cursive-italic-cjk.html.
  • fast/text/kerning-with-TextLayout-expected.html: Renamed from LayoutTests/platform/mac/fast/text/kerning-with-TextLayout-expected.html.
  • fast/text/kerning-with-TextLayout.html: Renamed from LayoutTests/platform/mac/fast/text/kerning-with-TextLayout.html.
  • fast/text/multiple-codeunit-vertical-upright-expected.html: Renamed from LayoutTests/platform/mac/fast/text/multiple-codeunit-vertical-upright-expected.html.
  • fast/text/multiple-codeunit-vertical-upright.html: Renamed from LayoutTests/platform/mac/fast/text/multiple-codeunit-vertical-upright.html.
  • fast/text/synthetic-bold-transformed-expected.html: Renamed from LayoutTests/platform/mac/fast/text/synthetic-bold-transformed-expected.html.
  • fast/text/synthetic-bold-transformed.html: Renamed from LayoutTests/platform/mac/fast/text/synthetic-bold-transformed.html.
  • fast/text/trailing-word-expected.html: Renamed from LayoutTests/platform/mac/fast/text/trailing-word-expected.html.
  • fast/text/trailing-word.html: Renamed from LayoutTests/platform/mac/fast/text/trailing-word.html.
  • platform/mac/TestExpectations:
9:49 PM Changeset in webkit [188022] by Simon Fraser
  • 2 edits
    12 moves
    1 add in trunk/LayoutTests

Make ruby-expansion tests cross-platform. They may have to be skipped on other platforms.

  • fast/ruby/resources/green.png: Renamed from LayoutTests/platform/mac/fast/ruby/resources/green.png.
  • fast/ruby/resources/ruby-expansion.svg: Renamed from LayoutTests/platform/mac/fast/ruby/resources/ruby-expansion.svg.
  • fast/ruby/ruby-expansion-cjk-2-expected.html: Renamed from LayoutTests/platform/mac/fast/ruby/ruby-expansion-cjk-2-expected.html.
  • fast/ruby/ruby-expansion-cjk-2.html: Renamed from LayoutTests/platform/mac/fast/ruby/ruby-expansion-cjk-2.html.
  • fast/ruby/ruby-expansion-cjk-3-expected.html: Renamed from LayoutTests/platform/mac/fast/ruby/ruby-expansion-cjk-3-expected.html.
  • fast/ruby/ruby-expansion-cjk-3.html: Renamed from LayoutTests/platform/mac/fast/ruby/ruby-expansion-cjk-3.html.
  • fast/ruby/ruby-expansion-cjk-4-expected.html: Renamed from LayoutTests/platform/mac/fast/ruby/ruby-expansion-cjk-4-expected.html.
  • fast/ruby/ruby-expansion-cjk-4.html: Renamed from LayoutTests/platform/mac/fast/ruby/ruby-expansion-cjk-4.html.
  • fast/ruby/ruby-expansion-cjk-5-expected.html: Renamed from LayoutTests/platform/mac/fast/ruby/ruby-expansion-cjk-5-expected.html.
  • fast/ruby/ruby-expansion-cjk-5.html: Renamed from LayoutTests/platform/mac/fast/ruby/ruby-expansion-cjk-5.html.
  • fast/ruby/ruby-expansion-cjk-expected.html: Renamed from LayoutTests/platform/mac/fast/ruby/ruby-expansion-cjk-expected.html.
  • fast/ruby/ruby-expansion-cjk.html: Renamed from LayoutTests/platform/mac/fast/ruby/ruby-expansion-cjk.html.
  • platform/mac-wk1/TestExpectations:
9:49 PM Changeset in webkit [188021] by Simon Fraser
  • 1 edit
    4 deletes in trunk/LayoutTests

Remove the XBM image test. Mac doesn't suport XBM images any more.

  • platform/mac/fast/canvas/canvas-draw-xbm-image-expected.png: Removed.
  • platform/mac/fast/canvas/canvas-draw-xbm-image-expected.txt: Removed.
  • platform/mac/fast/canvas/canvas-draw-xbm-image.html: Removed.
  • platform/mac/fast/canvas/resources/smile.xbm: Removed.
9:49 PM Changeset in webkit [188020] by Simon Fraser
  • 1 edit
    1 move
    2 adds in trunk/LayoutTests

Make platform/mac/compositing/canvas/accelerated-canvas-compositing.html a cross-platform test.

  • compositing/canvas/accelerated-canvas-compositing-expected.txt: Added.
  • compositing/canvas/accelerated-canvas-compositing.html: Renamed from LayoutTests/platform/mac/compositing/canvas/accelerated-canvas-compositing.html.
9:36 PM Changeset in webkit [188019] by commit-queue@webkit.org
  • 7 edits
    3 adds
    3 deletes in trunk/LayoutTests

Web Inspector: rewrite protocol test for console messages from X-Frame-Options
https://bugs.webkit.org/show_bug.cgi?id=147714

Patch by Brian Burg <BJ Burg> on 2015-08-05
Reviewed by Joseph Pecoraro.

Rewrite deny-X-FrameOption.html to use AsyncTestSuite, and hopefully address
the flakiness of the test. It is now in the inspector-protocol/console/ directory.

Extract the addConsoleTestCase helper to a shared file. Clean up console test
helpers and use a less awkward namespace for these helpers.

  • TestExpectations: Unskip the deleted test, the new test should be less flaky.
  • inspector-protocol/console/console-message.html:
  • inspector-protocol/console/css-source-locations.html:
  • inspector-protocol/console/js-source-locations.html:
  • inspector-protocol/console/x-frame-options-message-expected.txt: Added.
  • inspector-protocol/console/x-frame-options-message.html: Added.
  • inspector-protocol/debugger/setBreakpoint-actions.html:
  • inspector-protocol/debugger/setBreakpoint-options-exception.html:
  • inspector-protocol/page/deny-X-FrameOption-expected.txt: Removed.
  • inspector-protocol/page/deny-X-FrameOption.html: Removed.
  • inspector-protocol/resources/console-helper.js: Removed.
  • inspector-protocol/resources/console-test.js: Added.

(InspectorTest.Console.sanitizeConsoleMessage):
(InspectorTest.Console.addTestCase):

9:01 PM Changeset in webkit [188018] by rniwa@webkit.org
  • 5 edits
    3 adds in trunk

[ES6] Class parser does not allow methods named set and get.
https://bugs.webkit.org/show_bug.cgi?id=147150

Reviewed by Oliver Hunt.

Source/JavaScriptCore:

The bug was caused by parseClass assuming identifiers "get" and "set" could only appear
as the leading token for getter and setter methods. Fixed the bug by generalizing the code
so that we only treat them as such when it's followed by another token that could be a method name.

  • parser/Parser.cpp:

(JSC::Parser<LexerType>::parseClass):

LayoutTests:

Added a regression test and rebaselined a test.

  • js/class-syntax-method-names-expected.txt: Added.
  • js/class-syntax-method-names.html: Added.
  • js/class-syntax-semicolon-expected.txt: Rebaselined as the error message got improved.
  • js/script-tests/class-syntax-method-names.js: Added.
  • js/script-tests/class-syntax-semicolon.js:
8:58 PM Changeset in webkit [188017] by Nikita Vasilyev
  • 11 edits
    3 copies
    3 adds in trunk

Web Inspector: Logging error objects should have a better UI
https://bugs.webkit.org/show_bug.cgi?id=143853

Source/WebInspectorUI:

Previously, an error object looked like any other object, which wasn't very useful.
Source links couldn't be clicked and stacktraces were unreadable.

Unify console.trace, caught and uncaught exceptions. The following examples use
the same StaceTraceView:

  • ({}).x.y
  • try { ({}).x.y } catch (e) { console.log(e); }
  • console.trace()

Reviewed by Brian Burg.

  • UserInterface/Main.html:
  • UserInterface/Models/CallFrame.js:

(WebInspector.CallFrame.fromPayload):
(WebInspector.CallFrame):

  • UserInterface/Protocol/RemoteObject.js:

(WebInspector.RemoteObject.prototype.getOwnPropertyDescriptorsAsObject):

  • UserInterface/Test.html:
  • UserInterface/Views/CallFrameView.css:

(.call-frame .separator):
(.call-frame .subtitle .source-link): Deleted.
(.call-frame:focus .subtitle .source-link): Deleted.
(.call-frame .subtitle:empty): Deleted.
(.call-frame .subtitle): Deleted.

  • UserInterface/Views/CallFrameView.js:

(WebInspector.CallFrameView):

  • Start usind CallFrameView in stacktraces.
  • Introduce showFunctionName optional argument. In stacktraces anonymous functions

are shown as "(anonymous function)" but in console message location
links (the ones on the right side of a console message) we omit them.

  • Dash was a pseudo-element and it couldn't be copied to the clipboard.

Make it an actual HTML element.

  • UserInterface/Views/ConsoleMessageView.css:

(.console-message-location.call-frame):
(.console-message-location.call-frame > .title):
(.console-message-location.call-frame > .subtitle > .source-link):
Since .call-frame rules are now used in stacktraces, move console message
specific rules from CallFrameView.css to ConsoleMessageView.css.

  • UserInterface/Views/ConsoleMessageView.js:

(WebInspector.ConsoleMessageView.prototype._appendLocationLink):
(WebInspector.ConsoleMessageView.prototype._appendStackTrace):
(WebInspector.ConsoleMessageView.prototype._formatParameter):
(WebInspector.ConsoleMessageView.prototype._formatParameterAsError): Added.
Format errors differently from other objects.

  • UserInterface/Views/ErrorObjectView.css: Added.

(.error-object::before):
(.error-object.expanded::before):
(.error-object-link-container):
(.error-object.expanded > .formatted-error > .error-object-link-container):
(.error-object:not(.expanded) .error-object-outline):
(.error-object-outline):

  • UserInterface/Views/ErrorObjectView.js: Added.

(WebInspector.ErrorObjectView):
(WebInspector.ErrorObjectView.parseStackTrace):
(WebInspector.ErrorObjectView.makeSourceLinkWithPrefix):
(WebInspector.ErrorObjectView.prototype.get object):
(WebInspector.ErrorObjectView.prototype.get element):
(WebInspector.ErrorObjectView.prototype.get treeOutline):
(WebInspector.ErrorObjectView.prototype.get expanded):
(WebInspector.ErrorObjectView.prototype.update):
(WebInspector.ErrorObjectView.prototype.expand):
(WebInspector.ErrorObjectView.prototype.collapse):
(WebInspector.ErrorObjectView.prototype._handlePreviewOrTitleElementClick):
(WebInspector.ErrorObjectView.prototype._buildStackTrace):
ErrorObjectView is used to log caught exceptions, e.g.:
try { i.dont.exist++ } catch (e) { console.log(e) }

  • UserInterface/Views/FormattedValue.js:

(WebInspector.FormattedValue.createElementForError): Added.
Create error preview.

(WebInspector.FormattedValue.createElementForTypesAndValue):
Fix typo.

(WebInspector.FormattedValue.createObjectPreviewOrFormattedValueForRemoteObject):
Format errors differently from other objects.

LayoutTests:

Add tests for stack trace format in case it changes.

Reviewed by Brian Burg.

  • inspector/debugger/js-stacktrace-expected.txt: Added.
  • inspector/debugger/js-stacktrace.html: Added.
8:38 PM Changeset in webkit [188016] by Alan Bujtas
  • 1 edit
    4 adds in trunk/LayoutTests

Add missing test case (r187994).

Unreviewed.

  • fast/frames/flattening/crash-when-sibling-iframe-is-destroyed-with-subtree-layoutroot-expected.txt: Added.
  • fast/frames/flattening/crash-when-sibling-iframe-is-destroyed-with-subtree-layoutroot.html: Added.
  • fast/frames/flattening/resources/childframe1.html: Added.
  • fast/frames/flattening/resources/childframe2.html: Added.
6:25 PM Changeset in webkit [188015] by Matt Baker
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: REGRESSION (r187634): Script time is missing from the frames timeline
https://bugs.webkit.org/show_bug.cgi?id=147654

Reviewed by Brian Burg.

Use the current stack entry's parent record when pushing a new stack entry, if no
TimelineRecord was generated from the parent record payload.

  • UserInterface/Controllers/TimelineManager.js:

(WebInspector.TimelineManager.prototype.eventRecorded):
Don't create a stack entry when record payload children array is empty.

6:25 PM Changeset in webkit [188014] by Chris Dumez
  • 3 edits
    2 adds in trunk

Crash when removing children of a MathMLSelectElement
https://bugs.webkit.org/show_bug.cgi?id=147704
<rdar://problem/21940321>

Reviewed by Ryosuke Niwa.

Source/WebCore:

When MathMLSelectElement::childrenChanged() is called after its
children have been removed, MathMLSelectElement calls
updateSelectedChild() which accesses m_selectedChild. However,
in this case, m_selectedChild is the previously selected child
and it may be destroyed as this point if it was removed. To avoid
this problem, MathMLSelectElement now keep a strong ref to the
currently selected element.

Test: mathml/maction-removeChild.html

  • mathml/MathMLSelectElement.h:

LayoutTests:

Add layout test that reproduces the crash under guardmalloc.

  • mathml/maction-removeChild-expected.txt: Added.
  • mathml/maction-removeChild.html: Added.
6:14 PM Changeset in webkit [188013] by mmaxfield@apple.com
  • 2 edits in trunk/Source/WebCore

Migrate FontCascade.cpp to NeverDestroyed
https://bugs.webkit.org/show_bug.cgi?id=147533

Reviewed by Simon Fraser.

No new tests because there is no behavior change.

  • platform/graphics/FontCascade.cpp:

(WebCore::fontCascadeCache):

6:10 PM Changeset in webkit [188012] by bshafiei@apple.com
  • 1 copy in tags/Safari-601.1.46.3

New tag.

6:06 PM Changeset in webkit [188011] by timothy_horton@apple.com
  • 11 edits in trunk/Source/WebKit2

PDFPlugins are clipped in link previews (and remain so when opened)
https://bugs.webkit.org/show_bug.cgi?id=147708
<rdar://problem/22055130>

Reviewed by Simon Fraser.

  • UIProcess/API/mac/WKView.mm:

(-[WKView initWithFrame:processPool:configuration:webView:]):
(-[WKView _supportsArbitraryLayoutModes]):
(-[WKView _didCommitLoadForMainFrame]):
(-[WKView _setLayoutMode:]):
(-[WKView _setViewScale:]):
Avoid using any layout mode other than "ViewSize" for main frame PluginDocuments,
because they will often end up behaving incorrectly (especially with PDFPlugin,
which is even more special in that it takes over application of page scale).

Save any incoming changes to the viewScale and layoutMode, and re-apply
them once we load something in the main frame that is *not* a PluginDocument.

  • UIProcess/API/mac/WKViewInternal.h:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::scalePage):
Make sure to reset WebCore's page scale if the main frame contains a
PluginDocument that takes care of page scale itself.

(WebKit::WebPage::didCommitLoad):
Do the same thing as what we do in WKView _didCommitLoadForMainFrame,
but without the UI process round-trip, to avoid an ugly flash.

  • UIProcess/WebFrameProxy.cpp:

(WebKit::WebFrameProxy::didCommitLoad):

  • UIProcess/WebFrameProxy.h:

(WebKit::WebFrameProxy::containsPluginDocument):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::didCommitLoadForFrame):

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/mac/PageClientImpl.mm:

(WebKit::PageClientImpl::didCommitLoadForMainFrame):

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::dispatchDidCommitLoad):
Plumb and keep track of whether the main frame contains a PluginDocument or not.

5:26 PM Changeset in webkit [188010] by timothy_horton@apple.com
  • 5 edits in trunk/Source

Try to fix the build

  • WebIconDatabase.h:
  • Modules/webdatabase/Database.cpp:

(WebCore::Database::performOpenAndVerify):

  • Modules/webdatabase/Database.h:
5:02 PM Changeset in webkit [188009] by mmaxfield@apple.com
  • 2 edits in trunk/Source/WebCore

Delete duplicate forward-declaration
https://bugs.webkit.org/show_bug.cgi?id=147701

Reviewed by Simon Fraser.

No new tests because there is no behavior change.

  • platform/spi/cocoa/CoreTextSPI.h:
4:58 PM Changeset in webkit [188008] by bshafiei@apple.com
  • 1 copy in tags/Safari-600.1.4.17.9

New tag.

4:56 PM Changeset in webkit [188007] by Matt Baker
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: REGRESSION (r187900): Breakpoint context menu is broken in Debugger tab
https://bugs.webkit.org/show_bug.cgi?id=147699

Reviewed by Timothy Hatcher.

  • UserInterface/Views/SourceCodeTextEditor.js:

Skip only the separator and "Reveal in Debugger tab" menu items.

4:55 PM Changeset in webkit [188006] by commit-queue@webkit.org
  • 8 edits in trunk/Source/WebInspectorUI

Web Inspector: use super calls in more places
https://bugs.webkit.org/show_bug.cgi?id=147696

Patch by Brian Burg <BJ Burg> on 2015-08-05
Reviewed by Timothy Hatcher.

A few opportunities for super calls were overlooked when converting to classes.

  • UserInterface/Views/BreakpointTreeElement.js:

(WebInspector.BreakpointTreeElement.prototype.onattach):
(WebInspector.BreakpointTreeElement.prototype.ondetach):

  • UserInterface/Views/CallFrameTreeElement.js:

(WebInspector.CallFrameTreeElement.prototype.onattach):
(WebInspector.CallFrameTreeElement):

  • UserInterface/Views/DebuggerTabContentView.js:

(WebInspector.DebuggerTabContentView.prototype.showDetailsSidebarPanels):

  • UserInterface/Views/ProfileNodeTreeElement.js:

(WebInspector.ProfileNodeTreeElement.prototype.onattach):

  • UserInterface/Views/SourceCodeTextEditor.js:

(WebInspector.SourceCodeTextEditor.prototype.shown):
(WebInspector.SourceCodeTextEditor.prototype.hidden):
(WebInspector.SourceCodeTextEditor.prototype.canBeFormatted):

  • UserInterface/Views/SourceCodeTreeElement.js:

(WebInspector.SourceCodeTreeElement.prototype.onattach):

  • UserInterface/Views/TimelineRecordTreeElement.js:

(WebInspector.TimelineRecordTreeElement.prototype.onattach):
(WebInspector.TimelineRecordTreeElement):

4:50 PM Changeset in webkit [188005] by Brent Fulgham
  • 6 edits in trunk/Source/WebKit/win

[Win] Allow display of mixed content on Windows by default
https://bugs.webkit.org/show_bug.cgi?id=147693
<rdar://problem/22059707>

Reviewed by Alex Christensen.

  • Interfaces/IWebPreferencesPrivate.idl: Add preference accessor

to allow getting/setting use of insecure content.

  • WebPreferenceKeysPrivate.h: Add new key for preference.
  • WebPreferences.cpp: Implement preference accessor.
  • WebPreferences.h:
  • WebView.cpp: Set WebCore settings to match prefernces for

loading mixed content.

4:50 PM Changeset in webkit [188004] by andersca@apple.com
  • 7 edits in trunk/Source/WebCore

Move the last DatabaseBackendBase functions over to Database
https://bugs.webkit.org/show_bug.cgi?id=147706

Reviewed by Tim Horton.

  • Modules/webdatabase/Database.cpp:

(WebCore::Database::~Database):
(WebCore::Database::setExpectedVersion):
(WebCore::Database::getActualVersionForTransaction):
(WebCore::Database::version):
(WebCore::Database::stringIdentifier):
(WebCore::Database::displayName):
(WebCore::Database::estimatedSize):
(WebCore::Database::fileName):
(WebCore::Database::details):
(WebCore::Database::maximumSize):
(WebCore::Database::databaseDebugName):

  • Modules/webdatabase/Database.h:
  • Modules/webdatabase/DatabaseBackendBase.cpp:

(WebCore::DatabaseBackendBase::databaseDebugName): Deleted.
(WebCore::DatabaseBackendBase::~DatabaseBackendBase): Deleted.
(WebCore::DatabaseBackendBase::version): Deleted.
(WebCore::DatabaseBackendBase::securityOrigin): Deleted.
(WebCore::DatabaseBackendBase::stringIdentifier): Deleted.
(WebCore::DatabaseBackendBase::displayName): Deleted.
(WebCore::DatabaseBackendBase::estimatedSize): Deleted.
(WebCore::DatabaseBackendBase::fileName): Deleted.
(WebCore::DatabaseBackendBase::details): Deleted.
(WebCore::DatabaseBackendBase::setExpectedVersion): Deleted.
(WebCore::DatabaseBackendBase::getActualVersionForTransaction): Deleted.
(WebCore::DatabaseBackendBase::maximumSize): Deleted.

  • Modules/webdatabase/DatabaseBackendBase.h:

(WebCore::DatabaseBackendBase::opened): Deleted.
(WebCore::DatabaseBackendBase::isNew): Deleted.
(WebCore::DatabaseBackendBase::sqliteDatabase): Deleted.
(WebCore::DatabaseBackendBase::expectedVersion): Deleted.

  • Modules/webdatabase/SQLTransactionClient.cpp:

(WebCore::SQLTransactionClient::didCommitWriteTransaction):
(WebCore::SQLTransactionClient::didExceedQuota):

  • Modules/webdatabase/SQLTransactionClient.h:
4:49 PM Changeset in webkit [188003] by bshafiei@apple.com
  • 12 edits
    1 delete in branches/safari-600.1.4.17-branch

Roll out r186982. rdar://problem/21709404

4:42 PM Changeset in webkit [188002] by fpizlo@apple.com
  • 129 edits in trunk

Unreviewed, roll out http://trac.webkit.org/changeset/187972.

Source/JavaScriptCore:

  • bytecode/SamplingTool.cpp:

(JSC::SamplingTool::doRun):
(JSC::SamplingTool::notifyOfScope):

  • bytecode/SamplingTool.h:
  • dfg/DFGThreadData.h:
  • dfg/DFGWorklist.cpp:

(JSC::DFG::Worklist::~Worklist):
(JSC::DFG::Worklist::isActiveForVM):
(JSC::DFG::Worklist::enqueue):
(JSC::DFG::Worklist::compilationState):
(JSC::DFG::Worklist::waitUntilAllPlansForVMAreReady):
(JSC::DFG::Worklist::removeAllReadyPlansForVM):
(JSC::DFG::Worklist::completeAllReadyPlansForVM):
(JSC::DFG::Worklist::visitWeakReferences):
(JSC::DFG::Worklist::removeDeadPlans):
(JSC::DFG::Worklist::queueLength):
(JSC::DFG::Worklist::dump):
(JSC::DFG::Worklist::runThread):

  • dfg/DFGWorklist.h:
  • disassembler/Disassembler.cpp:
  • heap/CopiedSpace.cpp:

(JSC::CopiedSpace::doneFillingBlock):
(JSC::CopiedSpace::doneCopying):

  • heap/CopiedSpace.h:
  • heap/CopiedSpaceInlines.h:

(JSC::CopiedSpace::recycleBorrowedBlock):
(JSC::CopiedSpace::allocateBlockForCopyingPhase):

  • heap/HeapTimer.h:
  • heap/MachineStackMarker.cpp:

(JSC::ActiveMachineThreadsManager::Locker::Locker):
(JSC::ActiveMachineThreadsManager::add):
(JSC::ActiveMachineThreadsManager::remove):
(JSC::ActiveMachineThreadsManager::ActiveMachineThreadsManager):
(JSC::MachineThreads::~MachineThreads):
(JSC::MachineThreads::addCurrentThread):
(JSC::MachineThreads::removeThreadIfFound):
(JSC::MachineThreads::tryCopyOtherThreadStack):
(JSC::MachineThreads::tryCopyOtherThreadStacks):
(JSC::MachineThreads::gatherConservativeRoots):

  • heap/MachineStackMarker.h:
  • interpreter/JSStack.cpp:

(JSC::stackStatisticsMutex):
(JSC::JSStack::addToCommittedByteCount):
(JSC::JSStack::committedByteCount):

  • jit/JITThunks.h:
  • profiler/ProfilerDatabase.h:

Source/WebCore:

  • Modules/webaudio/AsyncAudioDecoder.cpp:

(WebCore::AsyncAudioDecoder::AsyncAudioDecoder):
(WebCore::AsyncAudioDecoder::runLoop):

  • Modules/webaudio/AsyncAudioDecoder.h:
  • Modules/webaudio/AudioContext.h:
  • Modules/webaudio/MediaStreamAudioSource.cpp:

(WebCore::MediaStreamAudioSource::addAudioConsumer):
(WebCore::MediaStreamAudioSource::removeAudioConsumer):
(WebCore::MediaStreamAudioSource::setAudioFormat):
(WebCore::MediaStreamAudioSource::consumeAudio):

  • Modules/webaudio/MediaStreamAudioSource.h:
  • Modules/webdatabase/Database.cpp:

(WebCore::Database::close):
(WebCore::Database::runTransaction):
(WebCore::Database::inProgressTransactionCompleted):
(WebCore::Database::hasPendingTransaction):

  • Modules/webdatabase/DatabaseTask.h:
  • Modules/webdatabase/DatabaseThread.cpp:

(WebCore::DatabaseThread::start):
(WebCore::DatabaseThread::databaseThread):

  • Modules/webdatabase/DatabaseThread.h:
  • Modules/webdatabase/DatabaseTracker.cpp:

(WebCore::DatabaseTracker::setDatabaseDirectoryPath):
(WebCore::DatabaseTracker::canEstablishDatabase):
(WebCore::DatabaseTracker::retryCanEstablishDatabase):
(WebCore::DatabaseTracker::hasEntryForOrigin):
(WebCore::DatabaseTracker::getMaxSizeForDatabase):
(WebCore::DatabaseTracker::closeAllDatabases):
(WebCore::DatabaseTracker::fullPathForDatabase):
(WebCore::DatabaseTracker::origins):
(WebCore::DatabaseTracker::databaseNamesForOrigin):
(WebCore::DatabaseTracker::detailsForNameAndOrigin):
(WebCore::DatabaseTracker::setDatabaseDetails):
(WebCore::DatabaseTracker::doneCreatingDatabase):
(WebCore::DatabaseTracker::addOpenDatabase):
(WebCore::DatabaseTracker::removeOpenDatabase):
(WebCore::DatabaseTracker::getOpenDatabases):
(WebCore::DatabaseTracker::originLockFor):
(WebCore::DatabaseTracker::quotaForOrigin):
(WebCore::DatabaseTracker::setQuota):
(WebCore::DatabaseTracker::deleteOrigin):
(WebCore::DatabaseTracker::deleteDatabase):
(WebCore::DatabaseTracker::deleteDatabaseFile):
(WebCore::DatabaseTracker::removeDeletedOpenedDatabases):
(WebCore::DatabaseTracker::deleteDatabaseFileIfEmpty):
(WebCore::DatabaseTracker::openDatabaseMutex):
(WebCore::DatabaseTracker::setClient):
(WebCore::notificationMutex):
(WebCore::DatabaseTracker::scheduleNotifyDatabaseChanged):
(WebCore::DatabaseTracker::notifyDatabasesChanged):

  • Modules/webdatabase/DatabaseTracker.h:
  • Modules/webdatabase/OriginLock.h:
  • Modules/webdatabase/SQLCallbackWrapper.h:

(WebCore::SQLCallbackWrapper::clear):
(WebCore::SQLCallbackWrapper::unwrap):
(WebCore::SQLCallbackWrapper::hasCallback):

  • Modules/webdatabase/SQLTransactionBackend.cpp:

(WebCore::SQLTransactionBackend::doCleanup):
(WebCore::SQLTransactionBackend::enqueueStatementBackend):
(WebCore::SQLTransactionBackend::getNextStatement):

  • Modules/webdatabase/SQLTransactionBackend.h:
  • bindings/js/WorkerScriptController.cpp:

(WebCore::WorkerScriptController::scheduleExecutionTermination):
(WebCore::WorkerScriptController::isExecutionTerminating):

  • bindings/js/WorkerScriptController.h:
  • dom/default/PlatformMessagePortChannel.cpp:

(WebCore::MessagePortChannel::postMessageToRemote):
(WebCore::MessagePortChannel::tryGetMessageFromRemote):
(WebCore::MessagePortChannel::isConnectedTo):
(WebCore::MessagePortChannel::hasPendingActivity):
(WebCore::MessagePortChannel::locallyEntangledPort):
(WebCore::PlatformMessagePortChannel::setRemotePort):
(WebCore::PlatformMessagePortChannel::entangledChannel):
(WebCore::PlatformMessagePortChannel::closeInternal):

  • dom/default/PlatformMessagePortChannel.h:
  • loader/icon/IconDatabase.cpp:

(WebCore::IconDatabase::removeAllIcons):
(WebCore::IconDatabase::synchronousIconForPageURL):
(WebCore::IconDatabase::synchronousNativeIconForPageURL):
(WebCore::IconDatabase::synchronousIconURLForPageURL):
(WebCore::IconDatabase::retainIconForPageURL):
(WebCore::IconDatabase::performRetainIconForPageURL):
(WebCore::IconDatabase::releaseIconForPageURL):
(WebCore::IconDatabase::performReleaseIconForPageURL):
(WebCore::IconDatabase::setIconDataForIconURL):
(WebCore::IconDatabase::setIconURLForPageURL):
(WebCore::IconDatabase::synchronousLoadDecisionForIconURL):
(WebCore::IconDatabase::synchronousIconDataKnownForIconURL):
(WebCore::IconDatabase::pageURLMappingCount):
(WebCore::IconDatabase::retainedPageURLCount):
(WebCore::IconDatabase::iconRecordCount):
(WebCore::IconDatabase::iconRecordCountWithData):
(WebCore::IconDatabase::wakeSyncThread):
(WebCore::IconDatabase::isOpenBesidesMainThreadCallbacks):
(WebCore::IconDatabase::databasePath):
(WebCore::IconDatabase::getOrCreatePageURLRecord):
(WebCore::IconDatabase::iconDatabaseSyncThread):
(WebCore::IconDatabase::performOpenInitialization):
(WebCore::IconDatabase::performURLImport):
(WebCore::IconDatabase::syncThreadMainLoop):
(WebCore::IconDatabase::performPendingRetainAndReleaseOperations):
(WebCore::IconDatabase::readFromDatabase):
(WebCore::IconDatabase::writeToDatabase):
(WebCore::IconDatabase::pruneUnretainedIcons):
(WebCore::IconDatabase::cleanupSyncThread):

  • loader/icon/IconDatabase.h:
  • page/scrolling/ScrollingTree.cpp:

(WebCore::ScrollingTree::shouldHandleWheelEventSynchronously):
(WebCore::ScrollingTree::commitNewTreeState):
(WebCore::ScrollingTree::setMainFramePinState):
(WebCore::ScrollingTree::mainFrameScrollPosition):
(WebCore::ScrollingTree::setMainFrameScrollPosition):
(WebCore::ScrollingTree::isPointInNonFastScrollableRegion):
(WebCore::ScrollingTree::isRubberBandInProgress):
(WebCore::ScrollingTree::setMainFrameIsRubberBanding):
(WebCore::ScrollingTree::isScrollSnapInProgress):
(WebCore::ScrollingTree::setMainFrameIsScrollSnapping):
(WebCore::ScrollingTree::setCanRubberBandState):
(WebCore::ScrollingTree::rubberBandsAtLeft):
(WebCore::ScrollingTree::rubberBandsAtRight):
(WebCore::ScrollingTree::rubberBandsAtBottom):
(WebCore::ScrollingTree::rubberBandsAtTop):
(WebCore::ScrollingTree::setScrollPinningBehavior):
(WebCore::ScrollingTree::scrollPinningBehavior):
(WebCore::ScrollingTree::willWheelEventStartSwipeGesture):
(WebCore::ScrollingTree::latchedNode):
(WebCore::ScrollingTree::setLatchedNode):
(WebCore::ScrollingTree::clearLatchedNode):

  • page/scrolling/ScrollingTree.h:
  • platform/MemoryPressureHandler.h:
  • platform/audio/HRTFDatabaseLoader.cpp:

(WebCore::HRTFDatabaseLoader::loadAsynchronously):
(WebCore::HRTFDatabaseLoader::waitForLoaderThreadCompletion):

  • platform/audio/HRTFDatabaseLoader.h:
  • platform/cocoa/MemoryPressureHandlerCocoa.mm:

(WebCore::MemoryPressureHandler::setReceivedMemoryPressure):
(WebCore::MemoryPressureHandler::clearMemoryPressure):
(WebCore::MemoryPressureHandler::shouldWaitForMemoryClearMessage):
(WebCore::MemoryPressureHandler::respondToMemoryPressureIfNeeded):

  • platform/graphics/DisplayRefreshMonitor.cpp:

(WebCore::DisplayRefreshMonitor::displayDidRefresh):

  • platform/graphics/DisplayRefreshMonitor.h:

(WebCore::DisplayRefreshMonitor::setMonotonicAnimationStartTime):
(WebCore::DisplayRefreshMonitor::mutex):

  • platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:

(WebCore::MediaPlayerPrivateAVFoundation::setDelayCallbacks):
(WebCore::MediaPlayerPrivateAVFoundation::clearMainThreadPendingFlag):
(WebCore::MediaPlayerPrivateAVFoundation::dispatchNotification):

  • platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
  • platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:

(WebCore::AVFWrapper::callbackContext):
(WebCore::AVFWrapper::~AVFWrapper):
(WebCore::AVFWrapper::mapLock):
(WebCore::AVFWrapper::addToMap):
(WebCore::AVFWrapper::removeFromMap):
(WebCore::AVFWrapper::periodicTimeObserverCallback):
(WebCore::AVFWrapper::processNotification):
(WebCore::AVFWrapper::loadPlayableCompletionCallback):
(WebCore::AVFWrapper::loadMetadataCompletionCallback):
(WebCore::AVFWrapper::seekCompletedCallback):
(WebCore::AVFWrapper::processCue):
(WebCore::AVFWrapper::legibleOutputCallback):
(WebCore::AVFWrapper::processShouldWaitForLoadingOfResource):
(WebCore::AVFWrapper::resourceLoaderShouldWaitForLoadingOfRequestedResource):

  • platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.cpp:

(WebCore::InbandTextTrackPrivateGStreamer::handleSample):
(WebCore::InbandTextTrackPrivateGStreamer::notifyTrackOfSample):

  • platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.h:
  • platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp:

(WebCore::TrackPrivateBaseGStreamer::tagsChanged):
(WebCore::TrackPrivateBaseGStreamer::notifyTrackOfTagsChanged):

  • platform/graphics/gstreamer/TrackPrivateBaseGStreamer.h:
  • platform/graphics/mac/DisplayRefreshMonitorMac.cpp:

(WebCore::DisplayRefreshMonitorMac::requestRefreshCallback):
(WebCore::DisplayRefreshMonitorMac::displayLinkFired):

  • platform/graphics/win/MediaPlayerPrivateMediaFoundation.cpp:

(WebCore::MediaPlayerPrivateMediaFoundation::addListener):
(WebCore::MediaPlayerPrivateMediaFoundation::removeListener):
(WebCore::MediaPlayerPrivateMediaFoundation::notifyDeleted):
(WebCore::MediaPlayerPrivateMediaFoundation::AsyncCallback::Invoke):
(WebCore::MediaPlayerPrivateMediaFoundation::AsyncCallback::onMediaPlayerDeleted):

  • platform/graphics/win/MediaPlayerPrivateMediaFoundation.h:
  • platform/ios/LegacyTileCache.h:
  • platform/ios/LegacyTileCache.mm:

(WebCore::LegacyTileCache::setTilesOpaque):
(WebCore::LegacyTileCache::doLayoutTiles):
(WebCore::LegacyTileCache::setCurrentScale):
(WebCore::LegacyTileCache::commitScaleChange):
(WebCore::LegacyTileCache::layoutTilesNow):
(WebCore::LegacyTileCache::layoutTilesNowForRect):
(WebCore::LegacyTileCache::removeAllNonVisibleTiles):
(WebCore::LegacyTileCache::removeAllTiles):
(WebCore::LegacyTileCache::removeForegroundTiles):
(WebCore::LegacyTileCache::setContentReplacementImage):
(WebCore::LegacyTileCache::contentReplacementImage):
(WebCore::LegacyTileCache::tileCreationTimerFired):
(WebCore::LegacyTileCache::setNeedsDisplayInRect):
(WebCore::LegacyTileCache::updateTilingMode):
(WebCore::LegacyTileCache::setTilingMode):
(WebCore::LegacyTileCache::doPendingRepaints):
(WebCore::LegacyTileCache::flushSavedDisplayRects):
(WebCore::LegacyTileCache::prepareToDraw):

  • platform/ios/LegacyTileLayerPool.h:
  • platform/ios/LegacyTileLayerPool.mm:

(WebCore::LegacyTileLayerPool::addLayer):
(WebCore::LegacyTileLayerPool::takeLayerWithSize):
(WebCore::LegacyTileLayerPool::setCapacity):
(WebCore::LegacyTileLayerPool::prune):
(WebCore::LegacyTileLayerPool::drain):

  • platform/network/curl/CurlDownload.cpp:

(WebCore::CurlDownloadManager::add):
(WebCore::CurlDownloadManager::remove):
(WebCore::CurlDownloadManager::getActiveDownloadCount):
(WebCore::CurlDownloadManager::getPendingDownloadCount):
(WebCore::CurlDownloadManager::stopThreadIfIdle):
(WebCore::CurlDownloadManager::updateHandleList):
(WebCore::CurlDownload::~CurlDownload):
(WebCore::CurlDownload::init):
(WebCore::CurlDownload::getTempPath):
(WebCore::CurlDownload::getUrl):
(WebCore::CurlDownload::getResponse):
(WebCore::CurlDownload::closeFile):
(WebCore::CurlDownload::didReceiveHeader):
(WebCore::CurlDownload::didReceiveData):
(WebCore::CurlDownload::didFail):

  • platform/network/curl/CurlDownload.h:
  • platform/network/curl/ResourceHandleManager.cpp:

(WebCore::cookieJarPath):
(WebCore::sharedResourceMutex):
(WebCore::curl_lock_callback):
(WebCore::curl_unlock_callback):

  • platform/network/ios/QuickLook.mm:

(WebCore::QLDirectoryAttributes):
(qlPreviewConverterDictionaryMutex):
(WebCore::addQLPreviewConverterWithFileForURL):
(WebCore::qlPreviewConverterUTIForURL):
(WebCore::removeQLPreviewConverterForURL):
(WebCore::safeQLURLForDocumentURLAndResourceURL):

  • platform/sql/SQLiteDatabase.cpp:

(WebCore::SQLiteDatabase::close):
(WebCore::SQLiteDatabase::maximumSize):
(WebCore::SQLiteDatabase::setMaximumSize):
(WebCore::SQLiteDatabase::pageSize):
(WebCore::SQLiteDatabase::freeSpaceSize):
(WebCore::SQLiteDatabase::totalSize):
(WebCore::SQLiteDatabase::runIncrementalVacuumCommand):
(WebCore::SQLiteDatabase::setAuthorizer):

  • platform/sql/SQLiteDatabase.h:

(WebCore::SQLiteDatabase::databaseMutex):

  • platform/sql/SQLiteStatement.cpp:

(WebCore::SQLiteStatement::prepare):
(WebCore::SQLiteStatement::step):

  • workers/WorkerThread.cpp:

(WebCore::WorkerThread::start):
(WebCore::WorkerThread::workerThread):
(WebCore::WorkerThread::stop):

  • workers/WorkerThread.h:

Source/WebKit:

  • Storage/StorageAreaSync.cpp:

(WebCore::StorageAreaSync::syncTimerFired):
(WebCore::StorageAreaSync::markImported):
(WebCore::StorageAreaSync::blockUntilImportComplete):
(WebCore::StorageAreaSync::performSync):

  • Storage/StorageAreaSync.h:
  • Storage/StorageTracker.cpp:

(WebCore::StorageTracker::setDatabaseDirectoryPath):
(WebCore::StorageTracker::finishedImportingOriginIdentifiers):
(WebCore::StorageTracker::syncImportOriginIdentifiers):
(WebCore::StorageTracker::syncFileSystemAndTrackerDatabase):
(WebCore::StorageTracker::setOriginDetails):
(WebCore::StorageTracker::syncSetOriginDetails):
(WebCore::StorageTracker::origins):
(WebCore::StorageTracker::deleteAllOrigins):
(WebCore::StorageTracker::syncDeleteAllOrigins):
(WebCore::StorageTracker::deleteOrigin):
(WebCore::StorageTracker::syncDeleteOrigin):
(WebCore::StorageTracker::canDeleteOrigin):
(WebCore::StorageTracker::cancelDeletingOrigin):
(WebCore::StorageTracker::diskUsageForOrigin):

  • Storage/StorageTracker.h:

Source/WebKit/ios:

  • WebCoreSupport/WebFixedPositionContent.mm:

(WebFixedPositionContentDataLock):
(-[WebFixedPositionContent scrollOrZoomChanged:]):
(-[WebFixedPositionContent overflowScrollPositionForLayer:changedTo:]):
(-[WebFixedPositionContent setViewportConstrainedLayers:stickyContainerMap:]):
(-[WebFixedPositionContent hasFixedOrStickyPositionLayers]):
(-[WebFixedPositionContent minimumOffsetFromFixedPositionLayersToAnchorEdge:ofRect:inLayer:]):

Source/WebKit/mac:

  • Storage/WebDatabaseManager.mm:

(transactionBackgroundTaskIdentifierLock):
(+[WebDatabaseManager startBackgroundTask]):
(+[WebDatabaseManager endBackgroundTask]):

  • WebView/WebView.mm:

(-[WebView _synchronizeCustomFixedPositionLayoutRect]):
(-[WebView _setCustomFixedPositionLayoutRectInWebThread:synchronize:]):
(-[WebView _setCustomFixedPositionLayoutRect:]):
(-[WebView _fetchCustomFixedPositionLayoutRect:]):

  • WebView/WebViewData.h:

Source/WebKit/win:

  • Plugins/PluginMainThreadScheduler.cpp:

(WebCore::PluginMainThreadScheduler::scheduleCall):
(WebCore::PluginMainThreadScheduler::registerPlugin):
(WebCore::PluginMainThreadScheduler::unregisterPlugin):
(WebCore::PluginMainThreadScheduler::dispatchCallsForPlugin):

  • Plugins/PluginMainThreadScheduler.h:
  • WebIconDatabase.cpp:

(WebIconDatabase::didRemoveAllIcons):
(WebIconDatabase::didImportIconURLForPageURL):
(WebIconDatabase::deliverNotifications):

  • WebLocalizableStrings.cpp:

(mainBundleLocStrings):
(frameworkLocStringsMutex):
(findCachedString):
(cacheString):

Source/WebKit2:

  • DatabaseProcess/DatabaseProcess.cpp:

(WebKit::DatabaseProcess::postDatabaseTask):
(WebKit::DatabaseProcess::performNextDatabaseTask):

  • DatabaseProcess/DatabaseProcess.h:
  • DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:

(WebKit::UniqueIDBDatabase::shutdown):
(WebKit::UniqueIDBDatabase::postMainThreadTask):
(WebKit::UniqueIDBDatabase::performNextMainThreadTask):
(WebKit::UniqueIDBDatabase::postDatabaseTask):
(WebKit::UniqueIDBDatabase::performNextDatabaseTask):

  • DatabaseProcess/IndexedDB/UniqueIDBDatabase.h:
  • Platform/IPC/Connection.cpp:

(IPC::Connection::sendSyncMessage):
(IPC::Connection::sendSyncMessageFromSecondaryThread):
(IPC::Connection::waitForSyncReply):
(IPC::Connection::processIncomingSyncReply):
(IPC::Connection::connectionDidClose):

  • Platform/IPC/Connection.h:
  • Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp:

(WebKit::CoordinatedGraphicsScene::appendUpdate):

  • Shared/CoordinatedGraphics/CoordinatedGraphicsScene.h:
  • Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp:

(WebKit::ThreadedCompositor::createCompositingThread):
(WebKit::ThreadedCompositor::runCompositingThread):
(WebKit::ThreadedCompositor::terminateCompositingThread):

  • Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.h:
  • Shared/Network/CustomProtocols/Cocoa/CustomProtocolManagerCocoa.mm:

(WebKit::CustomProtocolManager::addCustomProtocol):
(WebKit::CustomProtocolManager::removeCustomProtocol):
(WebKit::CustomProtocolManager::registerScheme):
(WebKit::CustomProtocolManager::unregisterScheme):
(WebKit::CustomProtocolManager::supportsScheme):
(WebKit::CustomProtocolManager::protocolForID):

  • Shared/Network/CustomProtocols/CustomProtocolManager.h:
  • Shared/linux/SeccompFilters/SeccompBroker.cpp:
  • WebProcess/Plugins/PluginProcessConnectionManager.cpp:

(WebKit::PluginProcessConnectionManager::getPluginProcessConnection):
(WebKit::PluginProcessConnectionManager::removePluginProcessConnection):
(WebKit::PluginProcessConnectionManager::pluginProcessCrashed):

  • WebProcess/Plugins/PluginProcessConnectionManager.h:
  • WebProcess/WebPage/EventDispatcher.cpp:

(WebKit::EventDispatcher::addScrollingTreeForPage):
(WebKit::EventDispatcher::removeScrollingTreeForPage):
(WebKit::EventDispatcher::wheelEvent):

  • WebProcess/WebPage/EventDispatcher.h:
  • WebProcess/soup/WebKitSoupRequestInputStream.cpp:

(webkitSoupRequestInputStreamReadAsync):
(webkitSoupRequestInputStreamAddData):

Source/WTF:

  • wtf/Atomics.cpp:

(WTF::getSwapLock):
(WTF::atomicStep):

  • wtf/MessageQueue.h:

(WTF::MessageQueue::infiniteTime):
(WTF::MessageQueue<DataType>::append):
(WTF::MessageQueue<DataType>::appendAndKill):
(WTF::MessageQueue<DataType>::appendAndCheckEmpty):
(WTF::MessageQueue<DataType>::prepend):
(WTF::MessageQueue<DataType>::removeIf):
(WTF::MessageQueue<DataType>::isEmpty):
(WTF::MessageQueue<DataType>::kill):
(WTF::MessageQueue<DataType>::killed):

  • wtf/ParallelJobsGeneric.cpp:

(WTF::ParallelEnvironment::ThreadPrivate::execute):
(WTF::ParallelEnvironment::ThreadPrivate::waitForFinish):
(WTF::ParallelEnvironment::ThreadPrivate::workerThread):

  • wtf/ParallelJobsGeneric.h:
  • wtf/RunLoop.cpp:

(WTF::RunLoop::performWork):
(WTF::RunLoop::dispatch):

  • wtf/RunLoop.h:
  • wtf/ThreadSpecificWin.cpp:

(WTF::destructorsList):
(WTF::destructorsMutex):
(WTF::threadSpecificKeyCreate):
(WTF::threadSpecificKeyDelete):
(WTF::ThreadSpecificThreadExit):

  • wtf/Threading.cpp:

(WTF::threadEntryPoint):
(WTF::createThread):

  • wtf/ThreadingPrimitives.h:
  • wtf/ThreadingPthreads.cpp:

(WTF::threadMapMutex):
(WTF::initializeThreading):
(WTF::identifierByPthreadHandle):
(WTF::establishIdentifierForPthreadHandle):
(WTF::changeThreadPriority):
(WTF::waitForThreadCompletion):
(WTF::detachThread):
(WTF::threadDidExit):
(WTF::currentThread):
(WTF::Mutex::Mutex):
(WTF::Mutex::~Mutex):
(WTF::Mutex::lock):
(WTF::Mutex::tryLock):
(WTF::Mutex::unlock):
(WTF::ThreadCondition::~ThreadCondition):
(WTF::ThreadCondition::wait):
(WTF::ThreadCondition::timedWait):
(WTF::DeprecatedMutex::DeprecatedMutex): Deleted.
(WTF::DeprecatedMutex::~DeprecatedMutex): Deleted.
(WTF::DeprecatedMutex::lock): Deleted.
(WTF::DeprecatedMutex::tryLock): Deleted.
(WTF::DeprecatedMutex::unlock): Deleted.

  • wtf/ThreadingWin.cpp:

(WTF::initializeCurrentThreadInternal):
(WTF::threadMapMutex):
(WTF::initializeThreading):
(WTF::storeThreadHandleByIdentifier):
(WTF::threadHandleForIdentifier):
(WTF::clearThreadHandleForIdentifier):
(WTF::currentThread):
(WTF::Mutex::Mutex):
(WTF::Mutex::~Mutex):
(WTF::Mutex::lock):
(WTF::Mutex::tryLock):
(WTF::Mutex::unlock):
(WTF::ThreadCondition::~ThreadCondition):
(WTF::ThreadCondition::wait):
(WTF::ThreadCondition::timedWait):
(WTF::DeprecatedMutex::DeprecatedMutex): Deleted.
(WTF::DeprecatedMutex::~DeprecatedMutex): Deleted.
(WTF::DeprecatedMutex::lock): Deleted.
(WTF::DeprecatedMutex::tryLock): Deleted.
(WTF::DeprecatedMutex::unlock): Deleted.

  • wtf/WorkQueue.h:
  • wtf/dtoa.cpp:
  • wtf/dtoa.h:
  • wtf/efl/DispatchQueueEfl.cpp:

(DispatchQueue::dispatch):
(DispatchQueue::performWork):
(DispatchQueue::performTimerWork):
(DispatchQueue::insertTimerWorkItem):
(DispatchQueue::wakeUpThread):
(DispatchQueue::getNextTimeOut):

  • wtf/efl/DispatchQueueEfl.h:
  • wtf/efl/RunLoopEfl.cpp:

(WTF::RunLoop::wakeUpEvent):
(WTF::RunLoop::wakeUp):

  • wtf/threads/BinarySemaphore.cpp:

(WTF::BinarySemaphore::signal):
(WTF::BinarySemaphore::wait):

  • wtf/threads/BinarySemaphore.h:
  • wtf/win/WorkQueueWin.cpp:

(WTF::WorkQueue::handleCallback):
(WTF::WorkQueue::platformInvalidate):
(WTF::WorkQueue::dispatch):
(WTF::WorkQueue::timerCallback):
(WTF::WorkQueue::dispatchAfter):

Tools:

  • DumpRenderTree/JavaScriptThreading.cpp:

(javaScriptThreadsMutex):
(runJavaScriptThread):
(startJavaScriptThreads):
(stopJavaScriptThreads):

  • TestWebKitAPI/Tests/WTF/WorkQueue.cpp:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WTF/glib/WorkQueueGLib.cpp:

(TestWebKitAPI::TEST):

4:41 PM Changeset in webkit [188001] by bshafiei@apple.com
  • 3 edits in branches/safari-600.1.4.17-branch/LayoutTests

Roll out r186988. rdar://problem/21709404

4:40 PM Changeset in webkit [188000] by bshafiei@apple.com
  • 1 edit in branches/safari-600.1.4.17-branch/Tools/WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp

Roll out r187040. rdar://problem/21709404

4:23 PM Changeset in webkit [187999] by andersca@apple.com
  • 5 edits in trunk/Source/WebCore

Move more functions from DatabaseBackendBase to Database
https://bugs.webkit.org/show_bug.cgi?id=147705

Reviewed by Tim Horton.

  • Modules/webdatabase/Database.cpp:

(WebCore::guidMutex):
(WebCore::guidToVersionMap):
(WebCore::updateGuidVersionMap):
(WebCore::guidToDatabaseMap):
(WebCore::guidForOriginAndName):
(WebCore::Database::Database):
(WebCore::DoneCreatingDatabaseOnExitCaller::DoneCreatingDatabaseOnExitCaller):
(WebCore::DoneCreatingDatabaseOnExitCaller::~DoneCreatingDatabaseOnExitCaller):
(WebCore::DoneCreatingDatabaseOnExitCaller::setOpenSucceeded):
(WebCore::Database::performOpenAndVerify):
(WebCore::Database::closeDatabase):
(WebCore::Database::getCachedVersion):
(WebCore::Database::setCachedVersion):

  • Modules/webdatabase/Database.h:
  • Modules/webdatabase/DatabaseBackendBase.cpp:

(WebCore::DatabaseBackendBase::version):
(WebCore::formatErrorMessage): Deleted.
(WebCore::guidMutex): Deleted.
(WebCore::guidToVersionMap): Deleted.
(WebCore::updateGuidVersionMap): Deleted.
(WebCore::guidToDatabaseMap): Deleted.
(WebCore::guidForOriginAndName): Deleted.
(WebCore::DatabaseBackendBase::DatabaseBackendBase): Deleted.
(WebCore::DatabaseBackendBase::closeDatabase): Deleted.
(WebCore::DoneCreatingDatabaseOnExitCaller::DoneCreatingDatabaseOnExitCaller): Deleted.
(WebCore::DoneCreatingDatabaseOnExitCaller::~DoneCreatingDatabaseOnExitCaller): Deleted.
(WebCore::DoneCreatingDatabaseOnExitCaller::setOpenSucceeded): Deleted.
(WebCore::DatabaseBackendBase::performOpenAndVerify): Deleted.
(WebCore::DatabaseBackendBase::getCachedVersion): Deleted.
(WebCore::DatabaseBackendBase::setCachedVersion): Deleted.

  • Modules/webdatabase/DatabaseBackendBase.h:
4:17 PM Changeset in webkit [187998] by andersca@apple.com
  • 5 edits in trunk/Source/WebCore

Move more functions from DatabaseBackendBase to Database
https://bugs.webkit.org/show_bug.cgi?id=147703

Reviewed by Tim Horton.

  • Modules/webdatabase/Database.cpp:

(WebCore::fullyQualifiedInfoTableName):
(WebCore::setTextValueInDatabase):
(WebCore::retrieveTextResultFromDatabase):
(WebCore::Database::getVersionFromDatabase):
(WebCore::Database::setVersionInDatabase):
(WebCore::Database::performGetTableNames):

  • Modules/webdatabase/Database.h:
  • Modules/webdatabase/DatabaseBackendBase.cpp:

(WebCore::DatabaseBackendBase::performOpenAndVerify):
(WebCore::DatabaseBackendBase::getActualVersionForTransaction):
(WebCore::DatabaseBackendBase::databaseInfoTableName): Deleted.
(WebCore::fullyQualifiedInfoTableName): Deleted.
(WebCore::retrieveTextResultFromDatabase): Deleted.
(WebCore::setTextValueInDatabase): Deleted.
(WebCore::DatabaseBackendBase::getVersionFromDatabase): Deleted.
(WebCore::DatabaseBackendBase::setVersionInDatabase): Deleted.

  • Modules/webdatabase/DatabaseBackendBase.h:
4:02 PM Changeset in webkit [187997] by achristensen@apple.com
  • 13 edits in trunk

Build DumpRenderTree with CMake.
https://bugs.webkit.org/show_bug.cgi?id=147519

Reviewed by Brent Fulgham.

Source/WebCore:

  • CMakeLists.txt:

WebCoreTestSupport is a static library and should not be linked with WebCore.

Source/WebKit:

  • CMakeLists.txt:
  • PlatformMac.cmake:
  • PlatformWin.cmake:

Make the libraries WebKit links with private, which means that CMake will not make everything
that links with WebKit link with everything WebKit links with.

Source/WebKit/win:

  • WebView.cpp:

Include JSScriptProfile.h to export toJS(ExecState*, JSDomGlobalObject*, JSC::Profile*) from WebKit.dll.

Tools:

  • CMakeLists.txt:

Build the DumpRenderTree directory now that it builds successfully.

  • DumpRenderTree/CMakeLists.txt:

Added missing source file and don't link with WebCore.lib.

  • DumpRenderTree/PlatformWin.cmake:

Added sources to DumpRenderTreeLib and made DumpRenderTree only build DLLLauncherMain.cpp.

  • WinLauncher/CMakeLists.txt:

We need libcmt now that we are not linking with WebCore.lib.

3:58 PM Changeset in webkit [187996] by andersca@apple.com
  • 5 edits in trunk/Source/WebCore

Move some more DatabaseBackendBase functions to Database
https://bugs.webkit.org/show_bug.cgi?id=147702

Reviewed by Tim Horton.

  • Modules/webdatabase/Database.cpp:

(WebCore::formatErrorMessage):
(WebCore::Database::disableAuthorizer):
(WebCore::Database::enableAuthorizer):
(WebCore::Database::setAuthorizerPermissions):
(WebCore::Database::lastActionChangedDatabase):
(WebCore::Database::lastActionWasInsert):
(WebCore::Database::resetDeletes):
(WebCore::Database::hadDeletes):
(WebCore::Database::resetAuthorizer):
(WebCore::Database::incrementalVacuumIfNeeded):

  • Modules/webdatabase/Database.h:
  • Modules/webdatabase/DatabaseBackendBase.cpp:

(WebCore::DatabaseBackendBase::disableAuthorizer): Deleted.
(WebCore::DatabaseBackendBase::enableAuthorizer): Deleted.
(WebCore::DatabaseBackendBase::setAuthorizerPermissions): Deleted.
(WebCore::DatabaseBackendBase::lastActionChangedDatabase): Deleted.
(WebCore::DatabaseBackendBase::lastActionWasInsert): Deleted.
(WebCore::DatabaseBackendBase::resetDeletes): Deleted.
(WebCore::DatabaseBackendBase::hadDeletes): Deleted.
(WebCore::DatabaseBackendBase::resetAuthorizer): Deleted.
(WebCore::DatabaseBackendBase::incrementalVacuumIfNeeded): Deleted.

  • Modules/webdatabase/DatabaseBackendBase.h:
3:57 PM Changeset in webkit [187995] by mmaxfield@apple.com
  • 1 edit
    2 adds in trunk/PerformanceTests

Add a second font-fallback performance test
https://bugs.webkit.org/show_bug.cgi?id=147692

Reviewed by Ryosuke Niwa.

This test is smaller, but has more realistic content. Also, it uses the "lang" attribute.

  • Layout/font-fallback-2.html: Added.
  • Layout/resources/font-fallback-2.html: Added.
3:39 PM Changeset in webkit [187994] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore

[Frame flattening] Return early when child RenderView is not available.
https://bugs.webkit.org/show_bug.cgi?id=147697

Reviewed by Simon Fraser.

No change in functionality.

  • rendering/RenderFrameBase.cpp:

(WebCore::RenderFrameBase::peformLayoutWithFlattening):

3:33 PM Changeset in webkit [187993] by andersca@apple.com
  • 9 edits in trunk/Source/WebCore

Remove more dead database code
https://bugs.webkit.org/show_bug.cgi?id=147698

Reviewed by Tim Horton.

  • Modules/webdatabase/DatabaseBackendBase.cpp:

(WebCore::DatabaseBackendBase::interrupt): Deleted.
(WebCore::DatabaseBackendBase::isInterrupted): Deleted.

  • Modules/webdatabase/DatabaseBackendBase.h:
  • Modules/webdatabase/SQLStatementBackend.cpp:

(WebCore::SQLStatementBackend::execute):

  • Modules/webdatabase/SQLTransaction.cpp:

(WebCore::SQLTransaction::computeNextStateAndCleanupIfNeeded):

  • Modules/webdatabase/SQLTransactionBackend.cpp:

(WebCore::SQLTransactionBackend::computeNextStateAndCleanupIfNeeded):

  • platform/sql/SQLiteDatabase.cpp:

(WebCore::SQLiteDatabase::setFullsync):
(WebCore::SQLiteDatabase::SQLiteDatabase): Deleted.
(WebCore::SQLiteDatabase::interrupt): Deleted.
(WebCore::SQLiteDatabase::isInterrupted): Deleted.

  • platform/sql/SQLiteDatabase.h:
  • platform/sql/SQLiteStatement.cpp:

(WebCore::SQLiteStatement::prepare): Deleted.
(WebCore::SQLiteStatement::step): Deleted.

3:20 PM Changeset in webkit [187992] by Simon Fraser
  • 2 edits in trunk/Source/WebKit/win

Fix Windows build.

  • WebIconDatabase.h:
2:45 PM Changeset in webkit [187991] by saambarati1@gmail.com
  • 3 edits in trunk/Source/JavaScriptCore

Bytecodegenerator emits crappy code for returns in a lexical scope.
https://bugs.webkit.org/show_bug.cgi?id=147688

Reviewed by Mark Lam.

When returning, we only need to emit complex pop scopes if we're in
a finally block. Otherwise, we can just return like normal. This saves
us from inefficiently emitting unnecessary pop scopes.

  • bytecompiler/BytecodeGenerator.h:

(JSC::BytecodeGenerator::isInFinallyBlock):
(JSC::BytecodeGenerator::hasFinaliser): Deleted.

  • bytecompiler/NodesCodegen.cpp:

(JSC::ReturnNode::emitBytecode):

2:45 PM Changeset in webkit [187990] by Simon Fraser
  • 6 edits
    32 moves
    5 adds
    1 delete in trunk/LayoutTests

Move platform/ios-simulator/ios/fast/events/touch tests to fast/events/touch

  • fast/events/touch/document-create-touch-list-ios-expected.txt: Renamed from LayoutTests/platform/ios-simulator/ios/fast/events/touch/document-create-touch-list-ios-expected.txt.
  • fast/events/touch/document-create-touch-list-ios.html: Renamed from LayoutTests/platform/ios-simulator/ios/fast/events/touch/document-create-touch-list-ios.html.
  • fast/events/touch/gesture-event-basic-expected.txt: Renamed from LayoutTests/platform/ios-simulator/ios/fast/events/touch/gesture-event-basic-expected.txt.
  • fast/events/touch/gesture-event-basic.html: Renamed from LayoutTests/platform/ios-simulator/ios/fast/events/touch/gesture-event-basic.html.
  • fast/events/touch/input-touch-target.html: Renamed from LayoutTests/platform/ios-simulator/ios/fast/events/touch/input-touch-target.html.
  • fast/events/touch/inserted-fragment-touch-target-expected.txt: Renamed from LayoutTests/platform/ios-simulator/ios/fast/events/touch/inserted-fragment-touch-target-expected.txt.
  • fast/events/touch/inserted-fragment-touch-target.html: Renamed from LayoutTests/platform/ios-simulator/ios/fast/events/touch/inserted-fragment-touch-target.html.
  • fast/events/touch/moved-touch-target-expected.txt: Renamed from LayoutTests/platform/ios-simulator/ios/fast/events/touch/moved-touch-target-expected.txt.
  • fast/events/touch/moved-touch-target.html: Renamed from LayoutTests/platform/ios-simulator/ios/fast/events/touch/moved-touch-target.html.
  • fast/events/touch/multi-touch-some-without-handlers.html: Renamed from LayoutTests/platform/ios-simulator/ios/fast/events/touch/multi-touch-some-without-handlers.html.
  • fast/events/touch/ontouchstart-active-selector.html: Renamed from LayoutTests/platform/ios-simulator/ios/fast/events/touch/ontouchstart-active-selector.html.
  • fast/events/touch/removed-fragment-touch-target-expected.txt: Renamed from LayoutTests/platform/ios-simulator/ios/fast/events/touch/removed-fragment-touch-target-expected.txt.
  • fast/events/touch/removed-fragment-touch-target.html: Renamed from LayoutTests/platform/ios-simulator/ios/fast/events/touch/removed-fragment-touch-target.html.
  • fast/events/touch/removed-touch-target-expected.txt: Renamed from LayoutTests/platform/ios-simulator/ios/fast/events/touch/removed-touch-target-expected.txt.
  • fast/events/touch/removed-touch-target.html: Renamed from LayoutTests/platform/ios-simulator/ios/fast/events/touch/removed-touch-target.html.
  • fast/events/touch/resources/misc-touch-helpers.js: Renamed from LayoutTests/platform/ios-sim-deprecated/iphone/fast/events/touch/misc-touch-helpers.js.
  • fast/events/touch/script-tests/document-create-touch-list-ios.js: Renamed from LayoutTests/platform/ios-simulator/ios/fast/events/touch/script-tests/document-create-touch-list-ios.js.
  • fast/events/touch/script-tests/input-touch-target.js: Renamed from LayoutTests/platform/ios-simulator/ios/fast/events/touch/script-tests/input-touch-target.js.
  • fast/events/touch/script-tests/multi-touch-some-without-handlers.js: Renamed from LayoutTests/platform/ios-simulator/ios/fast/events/touch/script-tests/multi-touch-some-without-handlers.js.
  • fast/events/touch/script-tests/text-node-touch-target.js: Renamed from LayoutTests/platform/ios-simulator/ios/fast/events/touch/script-tests/text-node-touch-target.js.
  • fast/events/touch/script-tests/textarea-touch-target.js: Renamed from LayoutTests/platform/ios-simulator/ios/fast/events/touch/script-tests/textarea-touch-target.js.
  • fast/events/touch/script-tests/touch-event-frames.js: Renamed from LayoutTests/platform/ios-simulator/ios/fast/events/touch/script-tests/touch-event-frames.js.
  • fast/events/touch/script-tests/touch-event-pageXY.js: Renamed from LayoutTests/platform/ios-simulator/ios/fast/events/touch/script-tests/touch-event-pageXY.js.
  • fast/events/touch/script-tests/zoomed-touch-event-pageXY.js: Renamed from LayoutTests/platform/ios-simulator/ios/fast/events/touch/script-tests/zoomed-touch-event-pageXY.js.
  • fast/events/touch/text-node-touch-target.html: Renamed from LayoutTests/platform/ios-simulator/ios/fast/events/touch/text-node-touch-target.html.
  • fast/events/touch/textarea-touch-target.html: Renamed from LayoutTests/platform/ios-simulator/ios/fast/events/touch/textarea-touch-target.html.
  • fast/events/touch/touch-event-frames-expected.txt: Renamed from LayoutTests/platform/ios-simulator/ios/fast/events/touch/touch-event-frames-expected.txt.
  • fast/events/touch/touch-event-frames.html: Renamed from LayoutTests/platform/ios-simulator/ios/fast/events/touch/touch-event-frames.html.
  • fast/events/touch/touch-event-pageXY-expected.txt: Renamed from LayoutTests/platform/ios-simulator/ios/fast/events/touch/touch-event-pageXY-expected.txt.
  • fast/events/touch/touch-event-pageXY.html: Renamed from LayoutTests/platform/ios-simulator/ios/fast/events/touch/touch-event-pageXY.html.
  • fast/events/touch/touch-scaled-scrolled.html:
  • fast/events/touch/zoomed-touch-event-pageXY-expected.txt: Renamed from LayoutTests/platform/ios-simulator/ios/fast/events/touch/zoomed-touch-event-pageXY-expected.txt.
  • fast/events/touch/zoomed-touch-event-pageXY.html: Renamed from LayoutTests/platform/ios-simulator/ios/fast/events/touch/zoomed-touch-event-pageXY.html.
  • platform/ios-simulator-wk1/TestExpectations:
  • platform/ios-simulator-wk2/TestExpectations:
  • platform/ios-simulator/TestExpectations:
  • platform/ios-simulator/ios/fast/events/touch/script-tests/TEMPLATE.html: Removed.
  • platform/mac/TestExpectations:
2:44 PM Changeset in webkit [187989] by Simon Fraser
  • 3 edits in trunk/LayoutTests

Remove non-existant tests from iOS TestExpectations files.

  • platform/ios-simulator-wk2/TestExpectations:
  • platform/ios-simulator/TestExpectations:
2:42 PM Changeset in webkit [187988] by fpizlo@apple.com
  • 2 edits in trunk/Source/WTF

Unreviewed, fix Windows.

  • wtf/ThreadSpecificWin.cpp:

(WTF::destructorsList):
(WTF::destructorsMutex):
(WTF::threadSpecificKeyCreate):
(WTF::threadSpecificKeyDelete):
(WTF::ThreadSpecificThreadExit):

2:38 PM Changeset in webkit [187987] by andersca@apple.com
  • 3 edits in trunk/Source/WebCore

Fix build.

  • platform/cf/CoreMediaSoftLink.cpp:
  • platform/cf/CoreMediaSoftLink.h:
2:17 PM Changeset in webkit [187986] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: remove unused Object.deprecatedAddConstructorFunctions
https://bugs.webkit.org/show_bug.cgi?id=147690

Patch by Brian Burg <BJ Burg> on 2015-08-05
Reviewed by Timothy Hatcher.

This is no longer used following the conversion to ES6 classes.

  • UserInterface/Base/Object.js:

(WebInspector.Object.deprecatedAddConstructorFunctions): Deleted.

1:44 PM Changeset in webkit [187985] by andersca@apple.com
  • 2 edits in trunk/Source/WebCore

Fix build.

  • platform/graphics/mac/FontCacheMac.mm:

(WebCore::lookupCTFont):

1:34 PM Changeset in webkit [187984] by andersca@apple.com
  • 8 edits in trunk/Source/WebCore

Change openDatabase to return a Database instead of a DatabaseBackendBase
https://bugs.webkit.org/show_bug.cgi?id=147691

Reviewed by Tim Horton.

  • Modules/webdatabase/AbstractDatabaseServer.h:
  • Modules/webdatabase/Database.cpp:

(WebCore::Database::create): Deleted.

  • Modules/webdatabase/Database.h:
  • Modules/webdatabase/DatabaseManager.cpp:

(WebCore::DatabaseManager::openDatabaseBackend):
(WebCore::DatabaseManager::openDatabase):

  • Modules/webdatabase/DatabaseManager.h:
  • Modules/webdatabase/DatabaseServer.cpp:

(WebCore::DatabaseServer::openDatabase):
(WebCore::DatabaseServer::createDatabase):

  • Modules/webdatabase/DatabaseServer.h:
1:23 PM Changeset in webkit [187983] by matthew_hanson@apple.com
  • 1 edit in branches/safari-601.1.46-branch/Source/WebKit2/WebProcess/WebCoreSupport/SessionStateConversion.cpp

Follow-up fix to the merge of r187962. rdar://problem/21827815

1:07 PM Changeset in webkit [187982] by mmaxfield@apple.com
  • 6 edits in trunk/Source/WebCore

[OS X] Migrate to CTFontCreateForCharactersWithLanguage from [NSFont findFontLike:forString:withRange:inLanguage]
https://bugs.webkit.org/show_bug.cgi?id=147483

Reviewed by Dean Jackson.

[NSFont findFontLike:forString:withRange:inLanguage] doesn't properly handle its last argument. In
addition, we want to be moving away from NSFont in the first place and on to Core Text. This new
CoreText function correctly handles its language argument, which is required for language-specific
font fallback.

This patch rolls r187707 back in which was rolled out in r187802 due to test flakiness. This patch
fixes the flakiness.

No new tests because there is no behavior change.

  • platform/graphics/FontCache.cpp:

(WebCore::FontCache::purgeInactiveFontData):

  • platform/graphics/FontCache.h:

(WebCore::FontCache::platformPurgeInactiveFontData):

  • platform/graphics/mac/FontCacheMac.mm:

(WebCore::fallbackDedupSet):
(WebCore::FontCache::platformPurgeInactiveFontData):
(WebCore::lookupCTFont):
(WebCore::FontCache::systemFallbackForCharacters):

  • platform/spi/cocoa/CoreTextSPI.h:
  • platform/spi/mac/NSFontSPI.h:
1:04 PM Changeset in webkit [187981] by benjamin@webkit.org
  • 2 edits in trunk/Websites/webkit.org

Fix the twitter links on the status page

  • status.html:
12:57 PM Changeset in webkit [187980] by matthew_hanson@apple.com
  • 15 edits
    1 add in branches/safari-601.1.46-branch

Merge r187962. rdar://problem/21827815

12:57 PM Changeset in webkit [187979] by matthew_hanson@apple.com
  • 7 edits in branches/safari-601.1.46-branch/Source/WebKit2

Merge r187764. rdar://problem/22077836

12:57 PM Changeset in webkit [187978] by matthew_hanson@apple.com
  • 2 edits in branches/safari-601.1.46-branch/Source/WebCore

Merge r187864. rdar://problem/22081036

12:57 PM Changeset in webkit [187977] by benjamin@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Add the Intl API to the status page

  • features.json:

Andy VanWagoner landed the skeleton of the API and it is
enabled by default.

12:57 PM Changeset in webkit [187976] by matthew_hanson@apple.com
  • 2 edits in branches/safari-601.1.46-branch/Source/WebKit2

Merge r187756. rdar://problem/22119648

12:54 PM Changeset in webkit [187975] by ap@apple.com
  • 7 edits in trunk/Tools

AppScale: Use https URLs for subresources and links
https://bugs.webkit.org/show_bug.cgi?id=147686

Reviewed by Ryosuke Niwa.

  • QueueStatusServer/filters/webkit_extras.py:
  • TestResultServer/static-dashboards/dashboard_base.js:
  • TestResultServer/static-dashboards/flakiness_dashboard.js:
  • TestResultServer/static-dashboards/flakiness_dashboard_unittests.js:
  • TestResultServer/static-dashboards/treemap.js:
  • TestResultServer/static-dashboards/ui.js:
12:31 PM Changeset in webkit [187974] by andersca@apple.com
  • 15 edits
    2 deletes in trunk/Source/WebCore

Get rid of DatabaseBackend as another step towards merging Database and DatabaseBackendBase
https://bugs.webkit.org/show_bug.cgi?id=147687

Reviewed by Tim Horton.

  • CMakeLists.txt:
  • Modules/webdatabase/ChangeVersionWrapper.cpp:

(WebCore::ChangeVersionWrapper::performPreflight):
(WebCore::ChangeVersionWrapper::performPostflight):

  • Modules/webdatabase/Database.cpp:

(WebCore::Database::Database):
(WebCore::Database::close):
(WebCore::Database::from): Deleted.
(WebCore::Database::backend): Deleted.

  • Modules/webdatabase/Database.h:
  • Modules/webdatabase/DatabaseBackend.cpp: Removed.

(WebCore::DatabaseBackend::DatabaseBackend): Deleted.

  • Modules/webdatabase/DatabaseBackend.h: Removed.
  • Modules/webdatabase/DatabaseManager.cpp:
  • Modules/webdatabase/DatabaseServer.cpp:
  • Modules/webdatabase/DatabaseTask.cpp:

(WebCore::DatabaseTask::DatabaseTask):
(WebCore::DatabaseOpenTask::DatabaseOpenTask):
(WebCore::DatabaseOpenTask::doPerformTask):
(WebCore::DatabaseOpenTask::debugTaskName):
(WebCore::DatabaseCloseTask::DatabaseCloseTask):
(WebCore::DatabaseCloseTask::doPerformTask):
(WebCore::DatabaseCloseTask::debugTaskName):
(WebCore::DatabaseTransactionTask::DatabaseTransactionTask):
(WebCore::DatabaseTransactionTask::~DatabaseTransactionTask):
(WebCore::DatabaseTransactionTask::doPerformTask):
(WebCore::DatabaseTransactionTask::debugTaskName):
(WebCore::DatabaseTableNamesTask::DatabaseTableNamesTask):
(WebCore::DatabaseTableNamesTask::doPerformTask):
(WebCore::DatabaseTableNamesTask::debugTaskName):
(WebCore::DatabaseBackend::DatabaseOpenTask::DatabaseOpenTask): Deleted.
(WebCore::DatabaseBackend::DatabaseOpenTask::doPerformTask): Deleted.
(WebCore::DatabaseBackend::DatabaseOpenTask::debugTaskName): Deleted.
(WebCore::DatabaseBackend::DatabaseCloseTask::DatabaseCloseTask): Deleted.
(WebCore::DatabaseBackend::DatabaseCloseTask::doPerformTask): Deleted.
(WebCore::DatabaseBackend::DatabaseCloseTask::debugTaskName): Deleted.
(WebCore::DatabaseBackend::DatabaseTransactionTask::DatabaseTransactionTask): Deleted.
(WebCore::DatabaseBackend::DatabaseTransactionTask::~DatabaseTransactionTask): Deleted.
(WebCore::DatabaseBackend::DatabaseTransactionTask::doPerformTask): Deleted.
(WebCore::DatabaseBackend::DatabaseTransactionTask::debugTaskName): Deleted.
(WebCore::DatabaseBackend::DatabaseTableNamesTask::DatabaseTableNamesTask): Deleted.
(WebCore::DatabaseBackend::DatabaseTableNamesTask::doPerformTask): Deleted.
(WebCore::DatabaseBackend::DatabaseTableNamesTask::debugTaskName): Deleted.

  • Modules/webdatabase/DatabaseTask.h:

(WebCore::DatabaseTask::database):

  • Modules/webdatabase/SQLStatementBackend.cpp:

(WebCore::SQLStatementBackend::execute):

  • Modules/webdatabase/SQLStatementBackend.h:
  • Modules/webdatabase/SQLTransactionBackend.cpp:

(WebCore::SQLTransactionBackend::executeSQL):
(WebCore::SQLTransactionBackend::openTransactionAndPreflight):

  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
12:21 PM Changeset in webkit [187973] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebKit2

WebInspectorProxy should make WKWebView first responder
https://bugs.webkit.org/show_bug.cgi?id=147676

Reviewed by Timothy Hatcher.

Revert r181927 now that WKWebView forwards the first responder role to WKView as needed.

  • UIProcess/mac/WebInspectorProxyMac.mm:

(WebKit::WebInspectorProxy::platformBringToFront):
(WebKit::WebInspectorProxy::platformAttach):

12:20 PM Changeset in webkit [187972] by fpizlo@apple.com
  • 130 edits in trunk

Rename Mutex to DeprecatedMutex
https://bugs.webkit.org/show_bug.cgi?id=147675

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

  • bytecode/SamplingTool.cpp:

(JSC::SamplingTool::doRun):
(JSC::SamplingTool::notifyOfScope):

  • bytecode/SamplingTool.h:
  • dfg/DFGThreadData.h:
  • dfg/DFGWorklist.cpp:

(JSC::DFG::Worklist::~Worklist):
(JSC::DFG::Worklist::isActiveForVM):
(JSC::DFG::Worklist::enqueue):
(JSC::DFG::Worklist::compilationState):
(JSC::DFG::Worklist::waitUntilAllPlansForVMAreReady):
(JSC::DFG::Worklist::removeAllReadyPlansForVM):
(JSC::DFG::Worklist::completeAllReadyPlansForVM):
(JSC::DFG::Worklist::visitWeakReferences):
(JSC::DFG::Worklist::removeDeadPlans):
(JSC::DFG::Worklist::queueLength):
(JSC::DFG::Worklist::dump):
(JSC::DFG::Worklist::runThread):

  • dfg/DFGWorklist.h:
  • disassembler/Disassembler.cpp:
  • heap/CopiedSpace.cpp:

(JSC::CopiedSpace::doneFillingBlock):
(JSC::CopiedSpace::doneCopying):

  • heap/CopiedSpace.h:
  • heap/CopiedSpaceInlines.h:

(JSC::CopiedSpace::recycleBorrowedBlock):
(JSC::CopiedSpace::allocateBlockForCopyingPhase):

  • heap/HeapTimer.h:
  • heap/MachineStackMarker.cpp:

(JSC::ActiveMachineThreadsManager::Locker::Locker):
(JSC::ActiveMachineThreadsManager::add):
(JSC::ActiveMachineThreadsManager::remove):
(JSC::ActiveMachineThreadsManager::ActiveMachineThreadsManager):
(JSC::MachineThreads::~MachineThreads):
(JSC::MachineThreads::addCurrentThread):
(JSC::MachineThreads::removeThreadIfFound):
(JSC::MachineThreads::tryCopyOtherThreadStack):
(JSC::MachineThreads::tryCopyOtherThreadStacks):
(JSC::MachineThreads::gatherConservativeRoots):

  • heap/MachineStackMarker.h:
  • interpreter/JSStack.cpp:

(JSC::stackStatisticsMutex):
(JSC::JSStack::addToCommittedByteCount):
(JSC::JSStack::committedByteCount):

  • jit/JITThunks.h:
  • profiler/ProfilerDatabase.h:

Source/WebCore:

No new tests because this is just a renaming.

  • Modules/webaudio/AsyncAudioDecoder.cpp:

(WebCore::AsyncAudioDecoder::AsyncAudioDecoder):
(WebCore::AsyncAudioDecoder::runLoop):

  • Modules/webaudio/AsyncAudioDecoder.h:
  • Modules/webaudio/AudioContext.h:
  • Modules/webaudio/MediaStreamAudioSource.cpp:

(WebCore::MediaStreamAudioSource::addAudioConsumer):
(WebCore::MediaStreamAudioSource::removeAudioConsumer):
(WebCore::MediaStreamAudioSource::setAudioFormat):
(WebCore::MediaStreamAudioSource::consumeAudio):

  • Modules/webaudio/MediaStreamAudioSource.h:
  • Modules/webdatabase/Database.cpp:

(WebCore::Database::close):
(WebCore::Database::runTransaction):
(WebCore::Database::inProgressTransactionCompleted):
(WebCore::Database::hasPendingTransaction):

  • Modules/webdatabase/DatabaseBackend.h:
  • Modules/webdatabase/DatabaseBackendBase.cpp:

(WebCore::DatabaseBackendBase::performOpenAndVerify):
(WebCore::DatabaseBackendBase::isInterrupted):

  • Modules/webdatabase/DatabaseContext.cpp:

(WebCore::DatabaseContext::databaseThread):
(WebCore::DatabaseContext::setPaused):

  • Modules/webdatabase/DatabaseContext.h:
  • Modules/webdatabase/DatabaseTask.h:
  • Modules/webdatabase/DatabaseThread.cpp:

(WebCore::DatabaseThread::start):
(WebCore::DatabaseThread::setPaused):
(WebCore::DatabaseThread::handlePausedQueue):
(WebCore::DatabaseThread::databaseThread):

  • Modules/webdatabase/DatabaseThread.h:
  • Modules/webdatabase/DatabaseTracker.cpp:

(WebCore::DatabaseTracker::setDatabaseDirectoryPath):
(WebCore::DatabaseTracker::canEstablishDatabase):
(WebCore::DatabaseTracker::retryCanEstablishDatabase):
(WebCore::DatabaseTracker::hasEntryForOrigin):
(WebCore::DatabaseTracker::getMaxSizeForDatabase):
(WebCore::DatabaseTracker::closeAllDatabases):
(WebCore::DatabaseTracker::interruptAllDatabasesForContext):
(WebCore::DatabaseTracker::fullPathForDatabase):
(WebCore::DatabaseTracker::origins):
(WebCore::DatabaseTracker::databaseNamesForOrigin):
(WebCore::DatabaseTracker::detailsForNameAndOrigin):
(WebCore::DatabaseTracker::setDatabaseDetails):
(WebCore::DatabaseTracker::doneCreatingDatabase):
(WebCore::DatabaseTracker::addOpenDatabase):
(WebCore::DatabaseTracker::removeOpenDatabase):
(WebCore::DatabaseTracker::getOpenDatabases):
(WebCore::DatabaseTracker::originLockFor):
(WebCore::DatabaseTracker::quotaForOrigin):
(WebCore::DatabaseTracker::setQuota):
(WebCore::DatabaseTracker::deleteOrigin):
(WebCore::DatabaseTracker::deleteDatabase):
(WebCore::DatabaseTracker::deleteDatabaseFile):
(WebCore::DatabaseTracker::removeDeletedOpenedDatabases):
(WebCore::DatabaseTracker::deleteDatabaseFileIfEmpty):
(WebCore::DatabaseTracker::openDatabaseMutex):
(WebCore::DatabaseTracker::setDatabasesPaused):
(WebCore::DatabaseTracker::setClient):
(WebCore::notificationMutex):
(WebCore::DatabaseTracker::scheduleNotifyDatabaseChanged):
(WebCore::DatabaseTracker::notifyDatabasesChanged):

  • Modules/webdatabase/DatabaseTracker.h:
  • Modules/webdatabase/OriginLock.h:
  • Modules/webdatabase/SQLCallbackWrapper.h:

(WebCore::SQLCallbackWrapper::clear):
(WebCore::SQLCallbackWrapper::unwrap):
(WebCore::SQLCallbackWrapper::hasCallback):

  • Modules/webdatabase/SQLTransactionBackend.cpp:

(WebCore::SQLTransactionBackend::doCleanup):
(WebCore::SQLTransactionBackend::enqueueStatementBackend):
(WebCore::SQLTransactionBackend::getNextStatement):

  • Modules/webdatabase/SQLTransactionBackend.h:
  • bindings/js/WorkerScriptController.cpp:

(WebCore::WorkerScriptController::scheduleExecutionTermination):
(WebCore::WorkerScriptController::isExecutionTerminating):

  • bindings/js/WorkerScriptController.h:
  • dom/default/PlatformMessagePortChannel.cpp:

(WebCore::MessagePortChannel::postMessageToRemote):
(WebCore::MessagePortChannel::tryGetMessageFromRemote):
(WebCore::MessagePortChannel::isConnectedTo):
(WebCore::MessagePortChannel::hasPendingActivity):
(WebCore::MessagePortChannel::locallyEntangledPort):
(WebCore::PlatformMessagePortChannel::setRemotePort):
(WebCore::PlatformMessagePortChannel::entangledChannel):
(WebCore::PlatformMessagePortChannel::closeInternal):

  • dom/default/PlatformMessagePortChannel.h:
  • loader/icon/IconDatabase.cpp:

(WebCore::IconDatabase::removeAllIcons):
(WebCore::IconDatabase::synchronousIconForPageURL):
(WebCore::IconDatabase::synchronousNativeIconForPageURL):
(WebCore::IconDatabase::synchronousIconURLForPageURL):
(WebCore::IconDatabase::retainIconForPageURL):
(WebCore::IconDatabase::performRetainIconForPageURL):
(WebCore::IconDatabase::releaseIconForPageURL):
(WebCore::IconDatabase::performReleaseIconForPageURL):
(WebCore::IconDatabase::setIconDataForIconURL):
(WebCore::IconDatabase::setIconURLForPageURL):
(WebCore::IconDatabase::synchronousLoadDecisionForIconURL):
(WebCore::IconDatabase::synchronousIconDataKnownForIconURL):
(WebCore::IconDatabase::pageURLMappingCount):
(WebCore::IconDatabase::retainedPageURLCount):
(WebCore::IconDatabase::iconRecordCount):
(WebCore::IconDatabase::iconRecordCountWithData):
(WebCore::IconDatabase::wakeSyncThread):
(WebCore::IconDatabase::isOpenBesidesMainThreadCallbacks):
(WebCore::IconDatabase::databasePath):
(WebCore::IconDatabase::getOrCreatePageURLRecord):
(WebCore::IconDatabase::iconDatabaseSyncThread):
(WebCore::IconDatabase::performOpenInitialization):
(WebCore::IconDatabase::performURLImport):
(WebCore::IconDatabase::syncThreadMainLoop):
(WebCore::IconDatabase::performPendingRetainAndReleaseOperations):
(WebCore::IconDatabase::readFromDatabase):
(WebCore::IconDatabase::writeToDatabase):
(WebCore::IconDatabase::pruneUnretainedIcons):
(WebCore::IconDatabase::cleanupSyncThread):

  • loader/icon/IconDatabase.h:
  • page/scrolling/ScrollingTree.cpp:

(WebCore::ScrollingTree::shouldHandleWheelEventSynchronously):
(WebCore::ScrollingTree::commitNewTreeState):
(WebCore::ScrollingTree::setMainFramePinState):
(WebCore::ScrollingTree::mainFrameScrollPosition):
(WebCore::ScrollingTree::setMainFrameScrollPosition):
(WebCore::ScrollingTree::isPointInNonFastScrollableRegion):
(WebCore::ScrollingTree::isRubberBandInProgress):
(WebCore::ScrollingTree::setMainFrameIsRubberBanding):
(WebCore::ScrollingTree::isScrollSnapInProgress):
(WebCore::ScrollingTree::setMainFrameIsScrollSnapping):
(WebCore::ScrollingTree::setCanRubberBandState):
(WebCore::ScrollingTree::rubberBandsAtLeft):
(WebCore::ScrollingTree::rubberBandsAtRight):
(WebCore::ScrollingTree::rubberBandsAtBottom):
(WebCore::ScrollingTree::rubberBandsAtTop):
(WebCore::ScrollingTree::setScrollPinningBehavior):
(WebCore::ScrollingTree::scrollPinningBehavior):
(WebCore::ScrollingTree::willWheelEventStartSwipeGesture):
(WebCore::ScrollingTree::latchedNode):
(WebCore::ScrollingTree::setLatchedNode):
(WebCore::ScrollingTree::clearLatchedNode):

  • page/scrolling/ScrollingTree.h:
  • platform/MemoryPressureHandler.h:
  • platform/audio/HRTFDatabaseLoader.cpp:

(WebCore::HRTFDatabaseLoader::loadAsynchronously):
(WebCore::HRTFDatabaseLoader::waitForLoaderThreadCompletion):

  • platform/audio/HRTFDatabaseLoader.h:
  • platform/cocoa/MemoryPressureHandlerCocoa.mm:

(WebCore::MemoryPressureHandler::setReceivedMemoryPressure):
(WebCore::MemoryPressureHandler::clearMemoryPressure):
(WebCore::MemoryPressureHandler::shouldWaitForMemoryClearMessage):
(WebCore::MemoryPressureHandler::respondToMemoryPressureIfNeeded):

  • platform/graphics/DisplayRefreshMonitor.cpp:

(WebCore::DisplayRefreshMonitor::displayDidRefresh):

  • platform/graphics/DisplayRefreshMonitor.h:

(WebCore::DisplayRefreshMonitor::setMonotonicAnimationStartTime):
(WebCore::DisplayRefreshMonitor::mutex):

  • platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:

(WebCore::MediaPlayerPrivateAVFoundation::setDelayCallbacks):
(WebCore::MediaPlayerPrivateAVFoundation::clearMainThreadPendingFlag):
(WebCore::MediaPlayerPrivateAVFoundation::dispatchNotification):

  • platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
  • platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:

(WebCore::AVFWrapper::callbackContext):
(WebCore::AVFWrapper::~AVFWrapper):
(WebCore::AVFWrapper::mapLock):
(WebCore::AVFWrapper::addToMap):
(WebCore::AVFWrapper::removeFromMap):
(WebCore::AVFWrapper::periodicTimeObserverCallback):
(WebCore::AVFWrapper::processNotification):
(WebCore::AVFWrapper::loadPlayableCompletionCallback):
(WebCore::AVFWrapper::loadMetadataCompletionCallback):
(WebCore::AVFWrapper::seekCompletedCallback):
(WebCore::AVFWrapper::processCue):
(WebCore::AVFWrapper::legibleOutputCallback):
(WebCore::AVFWrapper::processShouldWaitForLoadingOfResource):
(WebCore::AVFWrapper::resourceLoaderShouldWaitForLoadingOfRequestedResource):

  • platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.cpp:

(WebCore::InbandTextTrackPrivateGStreamer::handleSample):
(WebCore::InbandTextTrackPrivateGStreamer::notifyTrackOfSample):

  • platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.h:
  • platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp:

(WebCore::TrackPrivateBaseGStreamer::tagsChanged):
(WebCore::TrackPrivateBaseGStreamer::notifyTrackOfTagsChanged):

  • platform/graphics/gstreamer/TrackPrivateBaseGStreamer.h:
  • platform/graphics/mac/DisplayRefreshMonitorMac.cpp:

(WebCore::DisplayRefreshMonitorMac::requestRefreshCallback):
(WebCore::DisplayRefreshMonitorMac::displayLinkFired):

  • platform/graphics/win/MediaPlayerPrivateMediaFoundation.cpp:

(WebCore::MediaPlayerPrivateMediaFoundation::addListener):
(WebCore::MediaPlayerPrivateMediaFoundation::removeListener):
(WebCore::MediaPlayerPrivateMediaFoundation::notifyDeleted):
(WebCore::MediaPlayerPrivateMediaFoundation::AsyncCallback::Invoke):
(WebCore::MediaPlayerPrivateMediaFoundation::AsyncCallback::onMediaPlayerDeleted):

  • platform/graphics/win/MediaPlayerPrivateMediaFoundation.h:
  • platform/ios/LegacyTileCache.h:
  • platform/ios/LegacyTileCache.mm:

(WebCore::LegacyTileCache::setTilesOpaque):
(WebCore::LegacyTileCache::doLayoutTiles):
(WebCore::LegacyTileCache::setCurrentScale):
(WebCore::LegacyTileCache::commitScaleChange):
(WebCore::LegacyTileCache::layoutTilesNow):
(WebCore::LegacyTileCache::layoutTilesNowForRect):
(WebCore::LegacyTileCache::removeAllNonVisibleTiles):
(WebCore::LegacyTileCache::removeAllTiles):
(WebCore::LegacyTileCache::removeForegroundTiles):
(WebCore::LegacyTileCache::setContentReplacementImage):
(WebCore::LegacyTileCache::contentReplacementImage):
(WebCore::LegacyTileCache::tileCreationTimerFired):
(WebCore::LegacyTileCache::setNeedsDisplayInRect):
(WebCore::LegacyTileCache::updateTilingMode):
(WebCore::LegacyTileCache::setTilingMode):
(WebCore::LegacyTileCache::doPendingRepaints):
(WebCore::LegacyTileCache::flushSavedDisplayRects):
(WebCore::LegacyTileCache::prepareToDraw):

  • platform/ios/LegacyTileLayerPool.h:
  • platform/ios/LegacyTileLayerPool.mm:

(WebCore::LegacyTileLayerPool::addLayer):
(WebCore::LegacyTileLayerPool::takeLayerWithSize):
(WebCore::LegacyTileLayerPool::setCapacity):
(WebCore::LegacyTileLayerPool::prune):
(WebCore::LegacyTileLayerPool::drain):

  • platform/network/curl/CurlDownload.cpp:

(WebCore::CurlDownloadManager::add):
(WebCore::CurlDownloadManager::remove):
(WebCore::CurlDownloadManager::getActiveDownloadCount):
(WebCore::CurlDownloadManager::getPendingDownloadCount):
(WebCore::CurlDownloadManager::stopThreadIfIdle):
(WebCore::CurlDownloadManager::updateHandleList):
(WebCore::CurlDownload::~CurlDownload):
(WebCore::CurlDownload::init):
(WebCore::CurlDownload::getTempPath):
(WebCore::CurlDownload::getUrl):
(WebCore::CurlDownload::getResponse):
(WebCore::CurlDownload::closeFile):
(WebCore::CurlDownload::didReceiveHeader):
(WebCore::CurlDownload::didReceiveData):
(WebCore::CurlDownload::didFail):

  • platform/network/curl/CurlDownload.h:
  • platform/network/curl/ResourceHandleManager.cpp:

(WebCore::cookieJarPath):
(WebCore::sharedResourceMutex):
(WebCore::curl_lock_callback):
(WebCore::curl_unlock_callback):

  • platform/network/ios/QuickLook.mm:

(WebCore::QLDirectoryAttributes):
(qlPreviewConverterDictionaryMutex):
(WebCore::addQLPreviewConverterWithFileForURL):
(WebCore::qlPreviewConverterUTIForURL):
(WebCore::removeQLPreviewConverterForURL):
(WebCore::safeQLURLForDocumentURLAndResourceURL):

  • platform/sql/SQLiteDatabase.cpp:

(WebCore::SQLiteDatabase::close):
(WebCore::SQLiteDatabase::interrupt):
(WebCore::SQLiteDatabase::maximumSize):
(WebCore::SQLiteDatabase::setMaximumSize):
(WebCore::SQLiteDatabase::pageSize):
(WebCore::SQLiteDatabase::freeSpaceSize):
(WebCore::SQLiteDatabase::totalSize):
(WebCore::SQLiteDatabase::runIncrementalVacuumCommand):
(WebCore::SQLiteDatabase::setAuthorizer):

  • platform/sql/SQLiteDatabase.h:

(WebCore::SQLiteDatabase::databaseMutex):

  • platform/sql/SQLiteStatement.cpp:

(WebCore::SQLiteStatement::prepare):
(WebCore::SQLiteStatement::step):

  • workers/WorkerThread.cpp:

(WebCore::WorkerThread::start):
(WebCore::WorkerThread::workerThread):
(WebCore::WorkerThread::stop):

  • workers/WorkerThread.h:

Source/WebKit:

  • Storage/StorageAreaSync.cpp:

(WebCore::StorageAreaSync::syncTimerFired):
(WebCore::StorageAreaSync::markImported):
(WebCore::StorageAreaSync::blockUntilImportComplete):
(WebCore::StorageAreaSync::performSync):

  • Storage/StorageAreaSync.h:
  • Storage/StorageTracker.cpp:

(WebCore::StorageTracker::setDatabaseDirectoryPath):
(WebCore::StorageTracker::finishedImportingOriginIdentifiers):
(WebCore::StorageTracker::syncImportOriginIdentifiers):
(WebCore::StorageTracker::syncFileSystemAndTrackerDatabase):
(WebCore::StorageTracker::setOriginDetails):
(WebCore::StorageTracker::syncSetOriginDetails):
(WebCore::StorageTracker::origins):
(WebCore::StorageTracker::deleteAllOrigins):
(WebCore::StorageTracker::syncDeleteAllOrigins):
(WebCore::StorageTracker::deleteOrigin):
(WebCore::StorageTracker::syncDeleteOrigin):
(WebCore::StorageTracker::canDeleteOrigin):
(WebCore::StorageTracker::cancelDeletingOrigin):
(WebCore::StorageTracker::diskUsageForOrigin):

  • Storage/StorageTracker.h:

Source/WebKit/ios:

  • WebCoreSupport/WebFixedPositionContent.mm:

(WebFixedPositionContentDataLock):
(-[WebFixedPositionContent scrollOrZoomChanged:]):
(-[WebFixedPositionContent overflowScrollPositionForLayer:changedTo:]):
(-[WebFixedPositionContent setViewportConstrainedLayers:stickyContainerMap:]):
(-[WebFixedPositionContent hasFixedOrStickyPositionLayers]):
(-[WebFixedPositionContent minimumOffsetFromFixedPositionLayersToAnchorEdge:ofRect:inLayer:]):

Source/WebKit/mac:

  • Storage/WebDatabaseManager.mm:

(transactionBackgroundTaskIdentifierLock):
(+[WebDatabaseManager startBackgroundTask]):
(+[WebDatabaseManager endBackgroundTask]):

  • WebView/WebView.mm:

(-[WebView _synchronizeCustomFixedPositionLayoutRect]):
(-[WebView _setCustomFixedPositionLayoutRectInWebThread:synchronize:]):
(-[WebView _setCustomFixedPositionLayoutRect:]):
(-[WebView _fetchCustomFixedPositionLayoutRect:]):

  • WebView/WebViewData.h:

Source/WebKit/win:

  • Plugins/PluginMainThreadScheduler.cpp:

(WebCore::PluginMainThreadScheduler::scheduleCall):
(WebCore::PluginMainThreadScheduler::registerPlugin):
(WebCore::PluginMainThreadScheduler::unregisterPlugin):
(WebCore::PluginMainThreadScheduler::dispatchCallsForPlugin):

  • Plugins/PluginMainThreadScheduler.h:
  • WebIconDatabase.cpp:

(WebIconDatabase::didRemoveAllIcons):
(WebIconDatabase::didImportIconURLForPageURL):
(WebIconDatabase::deliverNotifications):

  • WebLocalizableStrings.cpp:

(mainBundleLocStrings):
(frameworkLocStringsMutex):
(findCachedString):
(cacheString):

Source/WebKit2:

  • DatabaseProcess/DatabaseProcess.cpp:

(WebKit::DatabaseProcess::postDatabaseTask):
(WebKit::DatabaseProcess::performNextDatabaseTask):

  • DatabaseProcess/DatabaseProcess.h:
  • DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:

(WebKit::UniqueIDBDatabase::shutdown):
(WebKit::UniqueIDBDatabase::postMainThreadTask):
(WebKit::UniqueIDBDatabase::performNextMainThreadTask):
(WebKit::UniqueIDBDatabase::postDatabaseTask):
(WebKit::UniqueIDBDatabase::performNextDatabaseTask):

  • DatabaseProcess/IndexedDB/UniqueIDBDatabase.h:
  • Platform/IPC/Connection.cpp:

(IPC::Connection::sendSyncMessage):
(IPC::Connection::sendSyncMessageFromSecondaryThread):
(IPC::Connection::waitForSyncReply):
(IPC::Connection::processIncomingSyncReply):
(IPC::Connection::connectionDidClose):

  • Platform/IPC/Connection.h:
  • Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp:

(WebKit::CoordinatedGraphicsScene::appendUpdate):

  • Shared/CoordinatedGraphics/CoordinatedGraphicsScene.h:
  • Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp:

(WebKit::ThreadedCompositor::createCompositingThread):
(WebKit::ThreadedCompositor::runCompositingThread):
(WebKit::ThreadedCompositor::terminateCompositingThread):

  • Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.h:
  • Shared/Network/CustomProtocols/Cocoa/CustomProtocolManagerCocoa.mm:

(WebKit::CustomProtocolManager::addCustomProtocol):
(WebKit::CustomProtocolManager::removeCustomProtocol):
(WebKit::CustomProtocolManager::registerScheme):
(WebKit::CustomProtocolManager::unregisterScheme):
(WebKit::CustomProtocolManager::supportsScheme):
(WebKit::CustomProtocolManager::protocolForID):

  • Shared/Network/CustomProtocols/CustomProtocolManager.h:
  • Shared/linux/SeccompFilters/SeccompBroker.cpp:
  • WebProcess/Plugins/PluginProcessConnectionManager.cpp:

(WebKit::PluginProcessConnectionManager::getPluginProcessConnection):
(WebKit::PluginProcessConnectionManager::removePluginProcessConnection):
(WebKit::PluginProcessConnectionManager::pluginProcessCrashed):

  • WebProcess/Plugins/PluginProcessConnectionManager.h:
  • WebProcess/WebPage/EventDispatcher.cpp:

(WebKit::EventDispatcher::addScrollingTreeForPage):
(WebKit::EventDispatcher::removeScrollingTreeForPage):
(WebKit::EventDispatcher::wheelEvent):

  • WebProcess/WebPage/EventDispatcher.h:
  • WebProcess/soup/WebKitSoupRequestInputStream.cpp:

(webkitSoupRequestInputStreamReadAsync):
(webkitSoupRequestInputStreamAddData):

Source/WTF:

  • wtf/Atomics.cpp:

(WTF::getSwapLock):
(WTF::atomicStep):

  • wtf/MessageQueue.h:

(WTF::MessageQueue::infiniteTime):
(WTF::MessageQueue<DataType>::append):
(WTF::MessageQueue<DataType>::appendAndKill):
(WTF::MessageQueue<DataType>::appendAndCheckEmpty):
(WTF::MessageQueue<DataType>::prepend):
(WTF::MessageQueue<DataType>::removeIf):
(WTF::MessageQueue<DataType>::isEmpty):
(WTF::MessageQueue<DataType>::kill):
(WTF::MessageQueue<DataType>::killed):

  • wtf/ParallelJobsGeneric.cpp:

(WTF::ParallelEnvironment::ThreadPrivate::execute):
(WTF::ParallelEnvironment::ThreadPrivate::waitForFinish):
(WTF::ParallelEnvironment::ThreadPrivate::workerThread):

  • wtf/ParallelJobsGeneric.h:
  • wtf/RunLoop.cpp:

(WTF::RunLoop::performWork):
(WTF::RunLoop::dispatch):

  • wtf/RunLoop.h:
  • wtf/Threading.cpp:

(WTF::threadEntryPoint):
(WTF::createThread):

  • wtf/ThreadingPrimitives.h:
  • wtf/ThreadingPthreads.cpp:

(WTF::threadMapMutex):
(WTF::initializeThreading):
(WTF::identifierByPthreadHandle):
(WTF::establishIdentifierForPthreadHandle):
(WTF::changeThreadPriority):
(WTF::waitForThreadCompletion):
(WTF::detachThread):
(WTF::threadDidExit):
(WTF::currentThread):
(WTF::DeprecatedMutex::DeprecatedMutex):
(WTF::DeprecatedMutex::~DeprecatedMutex):
(WTF::DeprecatedMutex::lock):
(WTF::DeprecatedMutex::tryLock):
(WTF::DeprecatedMutex::unlock):
(WTF::ThreadCondition::~ThreadCondition):
(WTF::ThreadCondition::wait):
(WTF::ThreadCondition::timedWait):
(WTF::Mutex::Mutex): Deleted.
(WTF::Mutex::~Mutex): Deleted.
(WTF::Mutex::lock): Deleted.
(WTF::Mutex::tryLock): Deleted.
(WTF::Mutex::unlock): Deleted.

  • wtf/ThreadingWin.cpp:

(WTF::initializeCurrentThreadInternal):
(WTF::threadMapMutex):
(WTF::initializeThreading):
(WTF::storeThreadHandleByIdentifier):
(WTF::threadHandleForIdentifier):
(WTF::clearThreadHandleForIdentifier):
(WTF::currentThread):
(WTF::DeprecatedMutex::DeprecatedMutex):
(WTF::DeprecatedMutex::~DeprecatedMutex):
(WTF::DeprecatedMutex::lock):
(WTF::DeprecatedMutex::tryLock):
(WTF::DeprecatedMutex::unlock):
(WTF::ThreadCondition::~ThreadCondition):
(WTF::ThreadCondition::wait):
(WTF::ThreadCondition::timedWait):
(WTF::Mutex::Mutex): Deleted.
(WTF::Mutex::~Mutex): Deleted.
(WTF::Mutex::lock): Deleted.
(WTF::Mutex::tryLock): Deleted.
(WTF::Mutex::unlock): Deleted.

  • wtf/WorkQueue.h:
  • wtf/dtoa.cpp:
  • wtf/dtoa.h:
  • wtf/efl/DispatchQueueEfl.cpp:

(DispatchQueue::dispatch):
(DispatchQueue::performWork):
(DispatchQueue::performTimerWork):
(DispatchQueue::insertTimerWorkItem):
(DispatchQueue::wakeUpThread):
(DispatchQueue::getNextTimeOut):

  • wtf/efl/DispatchQueueEfl.h:
  • wtf/efl/RunLoopEfl.cpp:

(WTF::RunLoop::wakeUpEvent):
(WTF::RunLoop::wakeUp):

  • wtf/threads/BinarySemaphore.cpp:

(WTF::BinarySemaphore::signal):
(WTF::BinarySemaphore::wait):

  • wtf/threads/BinarySemaphore.h:
  • wtf/win/WorkQueueWin.cpp:

(WTF::WorkQueue::handleCallback):
(WTF::WorkQueue::platformInvalidate):
(WTF::WorkQueue::dispatch):
(WTF::WorkQueue::timerCallback):
(WTF::WorkQueue::dispatchAfter):

Tools:

  • DumpRenderTree/JavaScriptThreading.cpp:

(javaScriptThreadsMutex):
(runJavaScriptThread):
(startJavaScriptThreads):
(stopJavaScriptThreads):

  • TestWebKitAPI/Tests/WTF/WorkQueue.cpp:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WTF/glib/WorkQueueGLib.cpp:

(TestWebKitAPI::TEST):

11:40 AM Changeset in webkit [187971] by mdaiter@apple.com
  • 3 edits in trunk/Source/WebCore

Adding in MediaPrivateMediaStreamEngine to default compile
https://bugs.webkit.org/show_bug.cgi?id=146790
<rdar://problem/21747289>

Reviewed by Eric Carlson.

  • WebCore.xcodeproj/project.pbxproj:
  • platform/mediastream/MediaStreamPrivate.h:

(WebCore::MediaStreamPrivate::MediaStreamPrivate):

11:35 AM Changeset in webkit [187970] by mdaiter@apple.com
  • 3 edits in trunk/Source/WebCore

Remove m_synchronizer from MediaPlayerPrivateMediaStream
https://bugs.webkit.org/show_bug.cgi?id=147637

Reviewed by Eric Carlson.

  • platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.h:
  • platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm:

(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::playInternal): Deleted.

11:29 AM Changeset in webkit [187969] by saambarati1@gmail.com
  • 34 edits
    4 deletes in trunk/Source/JavaScriptCore

Replace JSFunctionNameScope with JSLexicalEnvironment for the function name scope.
https://bugs.webkit.org/show_bug.cgi?id=147657

Reviewed by Mark Lam.

This kills the last of the name scope objects. Function name scopes are
now built on top of the scoping mechanisms introduced with ES6 block scoping.
A name scope is now just a JSLexicalEnvironment. We treat assignments to the
function name scoped variable carefully depending on if the function is in
strict mode. If we're in strict mode, then we treat the variable exactly
like a "const" variable. If we're not in strict mode, we can't treat
this variable like like ES6 "const" because that would cause the bytecode
generator to throw an exception when it shouldn't.

  • CMakeLists.txt:
  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj.filters:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • bytecode/BytecodeList.json:
  • bytecode/BytecodeUseDef.h:

(JSC::computeUsesForBytecodeOffset):
(JSC::computeDefsForBytecodeOffset):

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::dumpBytecode):

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::BytecodeGenerator):
(JSC::BytecodeGenerator::initializeDefaultParameterValuesAndSetupFunctionScopeStack):
(JSC::BytecodeGenerator::pushLexicalScope):
(JSC::BytecodeGenerator::pushLexicalScopeInternal):
(JSC::BytecodeGenerator::variable):
(JSC::BytecodeGenerator::resolveType):
(JSC::BytecodeGenerator::emitThrowTypeError):
(JSC::BytecodeGenerator::emitPushFunctionNameScope):
(JSC::BytecodeGenerator::pushScopedControlFlowContext):
(JSC::BytecodeGenerator::emitPushCatchScope):

  • bytecompiler/BytecodeGenerator.h:
  • bytecompiler/NodesCodegen.cpp:
  • debugger/DebuggerScope.cpp:
  • dfg/DFGOperations.cpp:
  • interpreter/Interpreter.cpp:
  • jit/JIT.cpp:

(JSC::JIT::privateCompileMainPass):

  • jit/JIT.h:
  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_to_string):
(JSC::JIT::emit_op_catch):
(JSC::JIT::emit_op_push_name_scope): Deleted.

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::emitSlow_op_to_string):
(JSC::JIT::emit_op_catch):
(JSC::JIT::emit_op_push_name_scope): Deleted.

  • jit/JITOperations.cpp:

(JSC::pushNameScope): Deleted.

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::LLINT_SLOW_PATH_DECL):

  • llint/LLIntSlowPaths.h:
  • llint/LowLevelInterpreter.asm:
  • parser/Nodes.cpp:
  • runtime/CommonSlowPaths.cpp:
  • runtime/Executable.cpp:

(JSC::ScriptExecutable::newCodeBlockFor):

  • runtime/JSFunctionNameScope.cpp: Removed.
  • runtime/JSFunctionNameScope.h: Removed.
  • runtime/JSGlobalObject.cpp:

(JSC::JSGlobalObject::init):
(JSC::JSGlobalObject::visitChildren):

  • runtime/JSGlobalObject.h:

(JSC::JSGlobalObject::withScopeStructure):
(JSC::JSGlobalObject::strictEvalActivationStructure):
(JSC::JSGlobalObject::activationStructure):
(JSC::JSGlobalObject::directArgumentsStructure):
(JSC::JSGlobalObject::scopedArgumentsStructure):
(JSC::JSGlobalObject::outOfBandArgumentsStructure):
(JSC::JSGlobalObject::functionNameScopeStructure): Deleted.

  • runtime/JSNameScope.cpp: Removed.
  • runtime/JSNameScope.h: Removed.
  • runtime/JSObject.cpp:

(JSC::JSObject::toThis):
(JSC::JSObject::seal):
(JSC::JSObject::isFunctionNameScopeObject): Deleted.

  • runtime/JSObject.h:
  • runtime/JSScope.cpp:

(JSC::JSScope::isCatchScope):
(JSC::JSScope::isFunctionNameScopeObject):
(JSC::resolveModeName):

  • runtime/JSScope.h:
  • runtime/JSSymbolTableObject.cpp:
  • runtime/SymbolTable.h:
  • runtime/VM.cpp:
11:24 AM Changeset in webkit [187968] by Brian Burg
  • 13 edits in trunk/Source/WebInspectorUI

Web Inspector: Convert miscellaneous view widgets to use ES6 classes
https://bugs.webkit.org/show_bug.cgi?id=147658

Reviewed by Joseph Pecoraro.

Along the way, inline a few style class names.

Elided mechanical changes from the Changelog.

  • UserInterface/Base/Test.js:
  • UserInterface/Views/CSSStyleDeclarationSection.js:
  • UserInterface/Views/ConsolePrompt.js:
  • UserInterface/Views/ContentBrowser.js:
  • UserInterface/Views/ContentViewContainer.js:
  • UserInterface/Views/DOMTreeDataGridNode.js:
  • UserInterface/Views/IndeterminateProgressSpinner.js:
  • UserInterface/Views/NavigationBar.js:
  • UserInterface/Views/ProbeSetDataGridNode.js:
  • UserInterface/Views/QuickConsoleNavigationBar.js:
  • UserInterface/Views/Toolbar.js:
11:12 AM Changeset in webkit [187967] by Brian Burg
  • 35 edits in trunk/Source/WebInspectorUI

Web Inspector: Convert remaining ContentViews to use ES6 classes
https://bugs.webkit.org/show_bug.cgi?id=147534

Reviewed by Joseph Pecoraro.

Along the way, inline a few style class names.

Elided mechanical changes from the Changelog.

  • UserInterface/Views/ApplicationCacheFrameContentView.js:
  • UserInterface/Views/ClusterContentView.js:
  • UserInterface/Views/ConsoleTabContentView.js:
  • UserInterface/Views/ContentBrowserTabContentView.js: Rearrange initialization

of the tab's content browser to comply with TDZ rules for using this.

  • UserInterface/Views/ContentFlowDOMTreeContentView.js:
  • UserInterface/Views/ContentView.js:
  • UserInterface/Views/ContentViewContainer.js:
  • UserInterface/Views/CookieStorageContentView.js:
  • UserInterface/Views/DOMStorageContentView.js:
  • UserInterface/Views/DOMTreeContentView.js:
  • UserInterface/Views/DatabaseContentView.js:
  • UserInterface/Views/DatabaseTableContentView.js:
  • UserInterface/Views/DebuggerTabContentView.js:
  • UserInterface/Views/ElementsTabContentView.js:
  • UserInterface/Views/FontResourceContentView.js:
  • UserInterface/Views/FrameDOMTreeContentView.js:
  • UserInterface/Views/GenericResourceContentView.js:
  • UserInterface/Views/ImageResourceContentView.js:
  • UserInterface/Views/IndexedDatabaseObjectStoreContentView.js:
  • UserInterface/Views/LogContentView.js:
  • UserInterface/Views/NetworkGridContentView.js:
  • UserInterface/Views/NetworkTabContentView.js:
  • UserInterface/Views/NewTabContentView.js:
  • UserInterface/Views/ResourceClusterContentView.js:
  • UserInterface/Views/ResourceContentView.js:
  • UserInterface/Views/ResourcesTabContentView.js:
  • UserInterface/Views/ScriptContentView.js:
  • UserInterface/Views/SearchTabContentView.js:
  • UserInterface/Views/SettingsTabContentView.js:
  • UserInterface/Views/StorageTabContentView.js:
  • UserInterface/Views/TabContentView.js:
  • UserInterface/Views/TextContentView.js:
  • UserInterface/Views/TextResourceContentView.js:
  • UserInterface/Views/TimelineRecordingContentView.js:
11:09 AM Changeset in webkit [187966] by Brent Fulgham
  • 2 edits in trunk/LayoutTests

Mark failing scrolling test.

  • platform/mac/TestExpectations:
10:30 AM Changeset in webkit [187965] by timothy@apple.com
  • 2 edits in trunk/Tools

Update the WebKit nightly icon
https://bugs.webkit.org/show_bug.cgi?id=147684

Reviewed by Sam Weinig.

  • WebKitLauncher/webkit.icns: Replaced.
9:16 AM Changeset in webkit [187964] by Brent Fulgham
  • 3 edits in trunk/LayoutTests

Unreviewed test gardening.

Skip new latched scrolling test on WK1 due to timeout. Check in some minor clean-ups in
the test based on feedback from Antti and others:

  • platform/mac/TestExpectations:
  • platform/mac/fast/scrolling/scroll-div-with-nested-nonscrollable-iframe.html:
9:15 AM Changeset in webkit [187963] by Wenson Hsieh
  • 2 edits in trunk/Source/WebCore

Build fix after 187961

  • platform/mac/ThemeMac.mm:

(WebCore::ThemeMac::drawCellOrFocusRingWithViewIntoContext):

9:05 AM Changeset in webkit [187962] by dbates@webkit.org
  • 15 edits
    1 add in trunk

REGRESSION (r185111): Clicking phone numbers doesn't prompt to call sometimes
https://bugs.webkit.org/show_bug.cgi?id=147678
<rdar://problem/21827815>

Reviewed by Brady Eidson.

Source/WebCore:

Fixes an issue where a non-user-initiated navigation of the main frame to a phone link (tel URL)
may be ignored. The navigation is ignored if the page was reloaded as a result of a web content
process crash, its lifetime exceeded the back-forward cache expiration interval, or a person
quits and opens Safari again, among other scenarios.

  • history/HistoryItem.cpp:

(WebCore::HistoryItem::setShouldOpenExternalURLsPolicy): Added.
(WebCore::HistoryItem::shouldOpenExternalURLsPolicy): Added.

  • history/HistoryItem.h:
  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::loadDifferentDocumentItem): Apply the "should open external URLs" policy
from the history item, if applicable. Also, be more explicit when instantiating a NavigationAction
so as to help make it straightforward to reduce the number of NavigationAction constructors we have
in the future.

  • loader/HistoryController.cpp:

(WebCore::HistoryController::saveDocumentState): Save the "should open external URLs" policy to
the history item.
(WebCore::HistoryController::restoreDocumentState): Apply the "should open external URLs" policy
from the history item to the document loader.
(WebCore::HistoryController::initializeItem): Update the "should open external URLs" policy of
the history item to reflect the policy of the document loader associated with the current frame.

Source/WebKit2:

Teach WebKit to save and restore the "should open external URLs" policy.

  • Shared/SessionState.cpp:

(WebKit::isValidEnum): Added.
(WebKit::PageState::encode): Modified to encode the "should open external URLs" policy.
(WebKit::PageState::decode): Modified to decode the "should open external URLs" policy.

  • Shared/SessionState.h: Added ShouldOpenExternalURLsPolicy to PageState (defaults to WebCore::ShouldOpenExternalURLsPolicy::ShouldNotAllow).
  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _killWebContentProcessAndResetState]): Added; used in the unit test TestWebKitAPI/Tests/WebKit2Cocoa/ShouldOpenExternalURLsInNewWindowActions.mm.

  • UIProcess/API/Cocoa/WKWebViewPrivate.h: Declare -[WKWebView _killWebContentProcessAndResetState].
  • UIProcess/mac/LegacySessionStateCoding.cpp: Defined constant sessionHistoryEntryShouldOpenExternalURLsPolicyKey.

(WebKit::encodeSessionHistory): Modified to encode the "should open external URLs" policy.
(WebKit::decodeSessionHistoryEntry): Modified to decode the "should open external URLs" policy.

  • WebProcess/WebCoreSupport/SessionStateConversion.cpp:

(WebKit::toPageState): Copy "should open external URLs" policy from specified history item.
(WebKit::toHistoryItem): Apply "should open external URLs" policy from PageState to HistoryItem.

Tools:

Add a test to ensure that we restore the "should open external URLs" policy on
page reload after the web content process crashes.

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WebKit2/should-open-external-schemes.html: Added.
  • TestWebKitAPI/Tests/WebKit2Cocoa/ShouldOpenExternalURLsInNewWindowActions.mm:

(TEST):

9:03 AM Changeset in webkit [187961] by Wenson Hsieh
  • 3 edits in trunk/Source/WebCore

Checkboxes and radio buttons should scale when zooming or pinching to zoom
https://bugs.webkit.org/show_bug.cgi?id=147405

Reviewed by Dean Jackson.

Refactors paintButton and paintToggleButton to use a temporary buffer when rendering
if the controls are zoomed. This affects checkboxes, radio buttons, and normal (push)
buttons.

  • platform/mac/ThemeMac.h:
  • platform/mac/ThemeMac.mm:

(WebCore::paintToggleButton): Refactored to use drawCellOrFocusRingWithViewIntoContext.
(WebCore::paintButton): Refactored to use drawCellOrFocusRingWithViewIntoContext.
(WebCore::ThemeMac::drawCellOrFocusRingWithViewIntoContext): Draws a given button cell

and/or its focus ring into the given context, optionally using an offscreen buffer.
This is a static function in ThemeMac so it can be accessed later on by
RenderThemeMac when painting search fields that scale with zoom.

(WebCore::ThemeMac::paint):
(WebCore::buttonFocusRectOutlineWidth): Deleted. Made this value into a const float.

7:07 AM Changeset in webkit [187960] by Devin Rousso
  • 5 edits in trunk/Source/WebInspectorUI

Web Inspector: Allow users to duplicate rules in the Rules sidebar panel
https://bugs.webkit.org/show_bug.cgi?id=147361

Reviewed by Timothy Hatcher.

Adds context menu option to non-inherited rules that, when clicked, creates
a new rule with the same selector and no properties, and then focuses it.

  • Localizations/en.lproj/localizedStrings.js:
  • UserInterface/Models/DOMNodeStyles.js:

(WebInspector.DOMNodeStyles.prototype.addRuleWithSelector.addedRule):
(WebInspector.DOMNodeStyles.prototype.addRuleWithSelector):

  • UserInterface/Views/CSSStyleDeclarationSection.js:

(WebInspector.CSSStyleDeclarationSection.prototype.get _currentSelectorText):
(WebInspector.CSSStyleDeclarationSection.prototype._handleContextMenuEvent):

  • UserInterface/Views/RulesStyleDetailsPanel.js:

(WebInspector.RulesStyleDetailsPanel.prototype.cssStyleDeclarationSectionFocusNextNewInspectorRule):

7:04 AM Changeset in webkit [187959] by commit-queue@webkit.org
  • 6 edits in trunk

Web Inspector: Improve Support for PropertyName Iterator (Reflect.enumerate) in Inspector
https://bugs.webkit.org/show_bug.cgi?id=147679

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2015-08-05
Reviewed by Timothy Hatcher.

Source/JavaScriptCore:

Improve native iterator support for the PropertyName Iterator by
allowing inspection of the internal object within the iterator
and peeking of the next upcoming values of the iterator.

  • inspector/JSInjectedScriptHost.cpp:

(Inspector::JSInjectedScriptHost::subtype):
(Inspector::JSInjectedScriptHost::getInternalProperties):
(Inspector::JSInjectedScriptHost::iteratorEntries):

  • runtime/JSPropertyNameIterator.h:

(JSC::JSPropertyNameIterator::iteratedValue):

LayoutTests:

  • inspector/model/remote-object-expected.txt:
  • inspector/model/remote-object.html:
3:27 AM WebKitGTK/2.8.x edited by Carlos Garcia Campos
(diff)
3:27 AM Changeset in webkit [187958] by Antti Koivisto
  • 3 edits in trunk/Source/WebKit2

Network cache fetches should have timeout
https://bugs.webkit.org/show_bug.cgi?id=147631

Reviewed by Andreas Kling.

System might be under heavy I/O pressure. If it takes long time to get data from disk we should load from network instead.

This patch introduces 1.5s timeout for disk reads. If the last dispatched cache read takes longer than that we cancel all
active and pending reads and just load those resources from network.

  • NetworkProcess/cache/NetworkCacheStorage.cpp:

(WebKit::NetworkCache::Storage::ReadOperation::ReadOperation):
(WebKit::NetworkCache::Storage::ReadOperation::cancel):
(WebKit::NetworkCache::Storage::ReadOperation::finish):

Factor to functions.

(WebKit::NetworkCache::Storage::Storage):
(WebKit::NetworkCache::Storage::updateFileModificationTime):
(WebKit::NetworkCache::Storage::dispatchReadOperation):
(WebKit::NetworkCache::Storage::finishReadOperation):
(WebKit::NetworkCache::Storage::cancelAllReadOperations):
(WebKit::NetworkCache::Storage::dispatchPendingReadOperations):
(WebKit::NetworkCache::Storage::dispatchPendingWriteOperations):

Also make dispatch functions transfer the operation ownership.

(WebKit::NetworkCache::shouldStoreBodyAsBlob):
(WebKit::NetworkCache::Storage::dispatchWriteOperation):

  • NetworkProcess/cache/NetworkCacheStorage.h:
3:25 AM Changeset in webkit [187957] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.8

Merge r187854 - [GTK] Accelerated 2D Canvas enabled when cairo-gl is not available
https://bugs.webkit.org/show_bug.cgi?id=147625

Reviewed by Martin Robinson.

Do not set the CAIRO_<COMPONENT>_* CMake variables for cairo-gl
components unless they were actually found, not to accidentally
enable Accelerated 2D canvas, which would cause the build to fail.

  • Source/cmake/FindCairoGL.cmake: Set this variables only when

pkg_check_modules() had actually found the relevant component.

3:21 AM Changeset in webkit [187956] by Carlos Garcia Campos
  • 3 edits in releases/WebKitGTK/webkit-2.8

Merge r184063 - CMake defines CAIROGL_FOUND, not CAIRO_GL_FOUND
https://bugs.webkit.org/show_bug.cgi?id=144846

Patch by Philip Chimento <philip.chimento@gmail.com> on 2015-05-10
Reviewed by Martin Robinson.

  • Source/cmake/FindCairoGL.cmake: Use CAIROGL_* instead of

CAIRO_GL_* throughout, because find_package will define
CAIROGL_FOUND.

  • Source/cmake/OptionsGTK.cmake: Ditto.
3:10 AM Changeset in webkit [187955] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.8/Source/WebCore

Merge r187740 - Crash when signing into twitter calling WebCore::DocumentLoader::responseReceived(WebCore::CachedResource*, WebCore::ResourceResponse const&).
<rdar://problem/22098457> and https://bugs.webkit.org/show_bug.cgi?id=147560

Reviewed by Alexey Proskuryakov.

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::willSendRequest): Only grab identifierForLoadWithoutResourceLoader() if there's no ResourceLoader.

3:09 AM Changeset in webkit [187954] by Carlos Garcia Campos
  • 6 edits in releases/WebKitGTK/webkit-2.8

Merge r187733 - Investigate HashTable::HashTable(const HashTable&) and HashTable::operator=(const HashTable&) performance for hash-based static analyses
https://bugs.webkit.org/show_bug.cgi?id=118455

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

Source/JavaScriptCore:

LivenessAnalysisPhase lights up like a christmas tree in profiles.

This patch cuts its cost by 4.
About half of the gains come from removing many rehash() when copying
the HashSet.
The last quarter is achieved by having a special add() function for initializing
a HashSet.

This makes benchmarks progress by 1-2% here and there. Nothing massive.

  • dfg/DFGLivenessAnalysisPhase.cpp:

(JSC::DFG::LivenessAnalysisPhase::process):
The m_live HashSet is only useful per block. When we are done with it,
we can transfer it to liveAtHead to avoid a copy.

Source/WTF:

Previously, when copying a HashTable, we would start from scratch
with an empty table and insert elements one by one, growing-rehashing
the table as needed.

With this patch, we have 2 improvements to remove most of the cost.

First, we compute a good size from the start. This removes all the
reallocations and rehashs.
This is where the biggest gain comes from.

The second part is a simpler version of add() when we know that
we cannot find a bucket with the same key and there cannot
be any deleted bucket.
This removes most branches from the hot loop, cutting another 25%
of the time.

  • wtf/HashTable.h:

(WTF::KeyTraits>::addUniqueForInitialization):
(WTF::KeyTraits>::HashTable):

Tools:

  • TestWebKitAPI/Tests/WTF/HashSet.cpp:

(TestWebKitAPI::TEST):

2:37 AM Changeset in webkit [187953] by Carlos Garcia Campos
  • 5 edits in releases/WebKitGTK/webkit-2.8/Source/WebCore

Merge r187640 - [GTK] Have DataObjectGtk::unknownTypes() return a reference to the HashMap object
https://bugs.webkit.org/show_bug.cgi?id=147401

Reviewed by Carlos Garcia Campos.

Don't copy the DataObjectGtk::m_unknownTypes HashMap on every retrieval through
DataObjectGtk::unknownTypes(). The range-based for-loops that iterate over the
map in PasteboardGtk.cpp and PasteboardHelper.cpp are also cleaned up.

  • platform/gtk/DataObjectGtk.cpp:

(WebCore::DataObjectGtk::unknownTypes):

  • platform/gtk/DataObjectGtk.h:
  • platform/gtk/PasteboardGtk.cpp:

(WebCore::Pasteboard::writePasteboard):
(WebCore::Pasteboard::types):

  • platform/gtk/PasteboardHelper.cpp:

(WebCore::PasteboardHelper::fillSelectionData):

2:04 AM Changeset in webkit [187952] by Carlos Garcia Campos
  • 3 edits in releases/WebKitGTK/webkit-2.8/Source/WebCore

Merge r187586 - [GTK] Crashes when SoupSession is destroyed in exit handler
https://bugs.webkit.org/show_bug.cgi?id=145347

Reviewed by Carlos Garcia Campos.

Leak the default SoupSession with NeverDestroyed to avoid races at program exit.

  • platform/network/soup/SoupNetworkSession.cpp:

(WebCore::SoupNetworkSession::defaultSession):

  • platform/network/soup/SoupNetworkSession.h:
1:58 AM Changeset in webkit [187951] by Carlos Garcia Campos
  • 3 edits in releases/WebKitGTK/webkit-2.8/Source/WebCore

Merge r187557 - Crash in WebCore::DocumentLoader::stopLoadingForPolicyChange.
<rdar://problem/21412186> and https://bugs.webkit.org/show_bug.cgi?id=147418

Reviewed by Chris Dumez.

No new tests (No known reproducibility)

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::responseReceived): When setting to m_waitingForContentPolicy true, make sure we have a FrameLoader.
(WebCore::DocumentLoader::detachFromFrame): Always explicitly call cancelPolicyCheckIfNeeded().
(WebCore::DocumentLoader::cancelPolicyCheckIfNeeded): Cancel the policy check if there is one.
(WebCore::DocumentLoader::cancelMainResourceLoad): Use cancelPolicyCheckIfNeeded().

  • loader/DocumentLoader.h:

RELEASE_ASSERT followup to: Crash in WebCore::DocumentLoader::stopLoadingForPolicyChange.
https://bugs.webkit.org/show_bug.cgi?id=147418

Reviewed by Chris Dumez.

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::cancelPolicyCheckIfNeeded): RELEASE_ASSERT we have a FrameLoader here.

We want to know if we ever get here without one.

Review feedback followup to: Crash in WebCore::DocumentLoader::stopLoadingForPolicyChange.
https://bugs.webkit.org/show_bug.cgi?id=147418

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::cancelPolicyCheckIfNeeded):

1:51 AM Changeset in webkit [187950] by Carlos Garcia Campos
  • 5 edits
    2 adds in releases/WebKitGTK/webkit-2.8

Merge r187535 - Animations sometimes fail to start
https://bugs.webkit.org/show_bug.cgi?id=147394
rdar://problem/21852603

Reviewed by Dean Jackson.
Source/WebCore:

When an accelerated animation or transition was started at the same time as
a non-accelerated one, and then the node for the former was removed, we could
never kick off the non-accelerated animation.

AnimationControllerPrivate has logic to synchronize the two types of animation
when they start in the same animation update, which involves setting the
m_waitingForAsyncStartNotification flag, and waiting for a notifyAnimationStarted()
to come in from the graphics system.

However, it failed to handle the case where the accelerated animation was removed
before the callback was received, which left the m_waitingForAsyncStartNotification flag
set to true, preventing the non-accelerated animation from running.

Test: animations/remove-syncing-animation.html

  • page/animation/AnimationBase.h:

(WebCore::AnimationBase::isAccelerated): Make this public.

  • page/animation/AnimationController.cpp:

(WebCore::AnimationControllerPrivate::clear): Add logging.
(WebCore::AnimationControllerPrivate::receivedStartTimeResponse): Add logging.
(WebCore::AnimationControllerPrivate::animationWillBeRemoved): Add logging.
After removing animations from the maps, check to see if we expect any of the
remaining animations are waiting for a notifyAnimationStarted(). If not, clear
the m_waitingForAsyncStartNotification flag.
(WebCore::AnimationController::notifyAnimationStarted): Log the renderer.
(WebCore::AnimationControllerPrivate::AnimationControllerPrivate): Remove unneeded
initializations of HashMaps.

  • page/animation/CompositeAnimation.cpp:

(WebCore::CompositeAnimation::updateTransitions): Log renderers.
(WebCore::CompositeAnimation::updateKeyframeAnimations): Ditto.

LayoutTests:

Test that starts an accelerated and non-accelerated animation, then removes
the node for the accelerated one.

  • animations/remove-syncing-animation-expected.txt: Added.
  • animations/remove-syncing-animation.html: Added.
1:34 AM Changeset in webkit [187949] by Carlos Garcia Campos
  • 7 edits
    5 adds in releases/WebKitGTK/webkit-2.8

Merge r187527 - [Freetype] Always allow font matching for strong aliases
https://bugs.webkit.org/show_bug.cgi?id=147057

Reviewed by Martin Robinson.

Source/WebCore:

Tests: platform/gtk/fonts/font-family-fallback-ignores-weak-aliases.html

platform/gtk/fonts/font-family-fallback-respects-strong-aliases.html

Treat fonts that are strongly-aliased to each other as if they were identical for the
purposes of CSS font fallback. This improves the layout of many web pages by allowing
fontconfig to replace fonts with metric-compatible equivalents (e.g. Arial -> Liberation
Sans) instead of rejecting the metric-compatible font as unsuitable.

  • platform/graphics/cairo/RefPtrCairo.cpp:

(WTF::refIfNotNull):
(WTF::derefIfNotNull):

  • platform/graphics/cairo/RefPtrCairo.h:
  • platform/graphics/freetype/FcUniquePtr.h: Added.

(WebCore::FcPtrDeleter<FcFontSet>::operator()):
(WebCore::FcPtrDeleter<FcLangSet>::operator()):
(WebCore::FcPtrDeleter<FcObjectSet>::operator()):

  • platform/graphics/freetype/FontCacheFreeType.cpp:

(WebCore::strengthOfFirstAlias):
(WebCore::strongAliasesForFamily):
(WebCore::areStronglyAliased):
(WebCore::FontCache::createFontPlatformData):

Tools:

Create family aliases needed for the new layout tests.

  • WebKitTestRunner/gtk/fonts/fonts.conf:

LayoutTests:

  • platform/gtk/fonts/font-family-fallback-ignores-weak-aliases-expected.html: Added.
  • platform/gtk/fonts/font-family-fallback-ignores-weak-aliases.html: Added.
  • platform/gtk/fonts/font-family-fallback-respects-strong-aliases-expected.html: Added.
  • platform/gtk/fonts/font-family-fallback-respects-strong-aliases.html: Added.
1:10 AM Changeset in webkit [187948] by Carlos Garcia Campos
  • 4 edits
    2 adds in releases/WebKitGTK/webkit-2.8

Merge r187504 - Crash happens when calling removeEventListener for an SVG element which has an instance inside a <defs> element of shadow tree
https://bugs.webkit.org/show_bug.cgi?id=147290

Reviewed by Daniel Bates.

Source/WebCore:

When the shadow tree is built for a <use> element, all the SVG elements
are allowed to be cloned in the shadow tree but later some of the elements
are disallowed and removed. Make sure, when disallowing an element in the
shadow tree, to reset the correspondingElement relationship between all
the disallowed descendant SVG elements and all their original elements.

Test: svg/custom/remove-event-listener-shadow-disallowed-element.svg

*svg/SVGElement.cpp:
(WebCore::SVGElement::setCorrespondingElement)

  • svg/SVGUseElement.cpp:

(WebCore::removeDisallowedElementsFromSubtree):

LayoutTests:

Make sure we do not crash when when calling removeEventListener() for an
element which is cloned under a disallowed parent inside the shadow tree
of another <use> element.

  • svg/custom/remove-event-listener-shadow-disallowed-element-expected.txt: Added.
  • svg/custom/remove-event-listener-shadow-disallowed-element.svg: Added.
1:08 AM Changeset in webkit [187947] by Carlos Garcia Campos
  • 4 edits
    2 adds in releases/WebKitGTK/webkit-2.8

Merge r187502 - ASSERTION FAILED: !currBox->needsLayout() loading bing maps (and apple.com/music and nytimes)
https://bugs.webkit.org/show_bug.cgi?id=93891

Reviewed by Simon Fraser.

Source/WebCore:

Added new tests in fast/dynamic.

Change tracking of positioned objects to always insert objects that need a layout in the
end of the ListHashMap for RenderViews. This ensures that dependencies between nested
positioned objects that both need a layout by the RenderView are resolved in the correct order.

Don't cache the end object when walking the ListHashMap to do layouts of positioned objects,
since that list is getting updated dynamically as earlier objects can mark and insert new
objects into the list during their layouts.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::layoutPositionedObject):
(WebCore::RenderBlock::layoutPositionedObjects):
(WebCore::RenderBlock::insertIntoTrackedRendererMaps):
(WebCore::RenderBlock::insertPositionedObject):
(WebCore::RenderBlock::removePositionedObject):

  • rendering/RenderBlock.h:

LayoutTests:

  • fast/dynamic/position-fixed-to-absolute-with-positioned-child-crash-expected.txt: Added.
  • fast/dynamic/position-fixed-to-absolute-with-positioned-child-crash.html: Added.
12:51 AM Changeset in webkit [187946] by Carlos Garcia Campos
  • 10 edits in releases/WebKitGTK/webkit-2.8/Source

Merge r187485 - [GTK] Use fastMalloc instead of g_slice
https://bugs.webkit.org/show_bug.cgi?id=147357

Reviewed by Sergio Villar Senin.

The use of g_slice is no longer encouraged by glib developers.

Source/WebCore:

  • platform/graphics/gstreamer/GStreamerUtilities.cpp:

(WebCore::mapGstBuffer):
(WebCore::unmapGstBuffer):

Source/WebKit2:

  • UIProcess/API/gtk/WebKitCredential.cpp:

(webkitCredentialCreate):
(webkit_credential_free):

  • UIProcess/API/gtk/WebKitJavascriptResult.cpp:

(webkitJavascriptResultCreate):
(webkit_javascript_result_unref):

  • UIProcess/API/gtk/WebKitMimeInfo.cpp:

(webkitMimeInfoCreate):
(webkit_mime_info_unref):

  • UIProcess/API/gtk/WebKitNavigationAction.cpp:

(webkitNavigationActionCreate):
(webkit_navigation_action_copy):
(webkit_navigation_action_free):

  • UIProcess/API/gtk/WebKitPrivate.h:
  • UIProcess/API/gtk/WebKitScriptDialog.cpp:

(webkitScriptDialogCopy):
(webkitScriptDialogFree):

  • UIProcess/API/gtk/WebKitUserContent.cpp:

(webkit_user_style_sheet_unref):
(webkit_user_style_sheet_new):
(webkit_user_script_unref):
(webkit_user_script_new):

12:33 AM Changeset in webkit [187945] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.8/Source/WebKit2

Merge r187471 - First in-window viewStateChange synchronously blocks despite not previously being in-window
https://bugs.webkit.org/show_bug.cgi?id=147344
<rdar://problem/22021772>

Reviewed by Simon Fraser.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::updateViewState):
(WebKit::WebPageProxy::dispatchViewStateChange):
The whole point of m_viewWasEverInWindow was so that we would not
synchronously wait when a view was added to a window for the first time,
only all subsequent times.

However, since m_viewWasEverInWindow was being set *before* being
checked in dispatchViewStateChange, we were always blocking. This is
a huge waste of main-thread time, because there's no reason to wait
for the first paint if you've never seen the view before (and shouldn't
expect it to have content).

Instead, set the flag after dispatching a view state change, so it becomes
"have we ever sent a view state with IsInWindow set" instead.

12:28 AM Changeset in webkit [187944] by Carlos Garcia Campos
  • 4 edits in releases/WebKitGTK/webkit-2.8/Source/WebCore

Merge r187466 - Crash in WebCore::DocumentLoader::willSendRequest() with ContentFilter and AppCache.
<rdar://problem/21960398> and https://bugs.webkit.org/show_bug.cgi?id=147339

Reviewed by Alexey Proskuryakov.

No new tests (Not yet proven to be possible to test this).

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::willSendRequest): Grab the identifier from the CachedResource directly, not from the null ResourceLoader.
(WebCore::DocumentLoader::continueAfterNavigationPolicy): Null check the ResourceLoader, as it can definitely be gone by this point.

  • loader/cache/CachedResource.cpp:

(WebCore::CachedResource::clearLoader): Save off the identifier for later use.

  • loader/cache/CachedResource.h:

(WebCore::CachedResource::identifierForLoadWithoutResourceLoader): Expose the identifier that the ResourceLoader had when it went away.

12:19 AM Changeset in webkit [187943] by matthew_hanson@apple.com
  • 4 edits in branches/safari-601.1-branch/Source

Merge r187805. rdar://problem/21838271

12:19 AM Changeset in webkit [187942] by matthew_hanson@apple.com
  • 2 edits in branches/safari-601.1-branch/Source/WebCore

Merge r187807. rdar://problem/21838271

12:17 AM Changeset in webkit [187941] by Carlos Garcia Campos
  • 7 edits in releases/WebKitGTK/webkit-2.8/Source

Merge r187432 - [GTK] Pass a GstInstallPluginsContext to gst_install_plugins_async
https://bugs.webkit.org/show_bug.cgi?id=147103

Reviewed by Philippe Normand.

Source/WebCore:

  • platform/graphics/gstreamer/GUniquePtrGStreamer.h: Allow to use

GUniquePtr with GstInstallPluginsContext.

Source/WebKit2:

This allows PackageKit to properly position the window and make it
transient to the web view window.

  • UIProcess/API/gtk/PageClientImpl.cpp:

(WebKit::PageClientImpl::setCursor): Disambiguate Cursor now that
we include gtkx.h.
(WebKit::PageClientImpl::createGstInstallPluginsContext): Create a
new GstInstallPluginsContext and set the web view window XID when
running on X11.

  • UIProcess/API/gtk/PageClientImpl.h:
  • UIProcess/PageClient.h:
  • UIProcess/efl/WebViewEfl.h:
  • UIProcess/gstreamer/WebPageProxyGStreamer.cpp:

(WebKit::WebPageProxy::requestInstallMissingMediaPlugins): Use
PageClient::createGstInstallPluginsContext() to create a new
GstInstallPluginsContext and pass it to gst_install_plugins_async().

Note: See TracTimeline for information about the timeline view.