Timeline
Oct 28, 2012:
- 10:13 PM Changeset in webkit [132761] by
-
- 3 edits in trunk/Source/WebKit2
[WK2] Fix the incorrect use of preprocessor statement in API header.
https://bugs.webkit.org/show_bug.cgi?id=100610
Patch by Byungwoo Lee <bw80.lee@samsung.com> on 2012-10-28
Reviewed by Timothy Hatcher.
Remove the preprocessor statement to check 'ENABLE_INSPECTOR' feature
from the WKPage.h.
- UIProcess/API/C/WKPage.cpp:
(WKPageGetInspector):
- UIProcess/API/C/WKPage.h:
- 9:08 PM Changeset in webkit [132760] by
-
- 13 edits12 adds2 deletes in trunk
The shadow element is not reprojected to a nested ShadowRoot.
https://bugs.webkit.org/show_bug.cgi?id=99228
Reviewed by Dimitri Glazkov.
Source/WebCore:
We support shadow reprojection; elements distributed to <shadow> element can be reprojected to <content> now.
First, we have a distribution vector for each InsertionPoint, even if InsertionPoint is a shadow insertion point.
And we update a node-distribution map. Basically We're creating a map from node to InsertionPoint in ElementShadow.
If a node can be distributed to several InsertionPoint (e.g. in case reprojection happens),
the InsertionPoint in older ShadowDOM is chosen.
We also fix ComposedShadowTreeWalker to consider shadow reprojection.
Tests: fast/dom/shadow/composed-shadow-tree-walker-shadow-reprojection.html
fast/dom/shadow/shadow-reprojection-click.html
fast/dom/shadow/shadow-reprojection-dynamic.html
fast/dom/shadow/shadow-reprojection-fallback.html
fast/dom/shadow/shadow-reprojection.html
fast/dom/shadow/shadow-reprojection2.html
- css/StyleResolver.cpp:
(WebCore::shouldResetStyleInheritance): Now context.insertionPoint() returns the final insertion point where
a node is distributed. So we don't have to trace shadow insertion point anymore here.
(WebCore::StyleResolver::styleForElement): Since a direct child of ShadowRoot can be distributed now. In that case,
we don't have any parentElement. The parent node is a ShadowRoot in that case.
- dom/ComposedShadowTreeWalker.cpp:
(WebCore::nodeCanBeDistributed): If a node can be distributed, returns true.
(WebCore):
(WebCore::resolveReprojection): Resolves content-reprojection and shadow-reprojection both.
(WebCore::ComposedShadowTreeWalker::traverseSiblingOrBackToInsertionPoint):
(WebCore::ComposedShadowTreeWalker::traverseParent):
(WebCore::ComposedShadowTreeWalker::traverseParentBackToYoungerShadowRootOrHost): A case ShadowRoot is assigned
to some InsertionPoint should be handled with in traverseSiblingOrBackToInsertionPoint. So we remove it.
(WebCore::AncestorChainWalker::parent): Now we have a case that a direct child of ShadowRoot can be distributed.
In that case, we should not update m_distributedNode.
- dom/ElementShadow.cpp:
(WebCore::ElementShadow::insertionPointFor): Since we have a distribution vector for each InsertionPoint,
we don't have a special case that a ShadowRoot is assigned to some InsertionPoint. Actually the existing code
is not correct now due to shadow reprojection.
- html/shadow/ContentDistributor.cpp:
(WebCore::ContentDistributor::populate): Populate a POOL. If a node is InsertionPoint, we fill it with the
distributed nodes.
(WebCore):
(WebCore::ContentDistributor::distribute): Since we want to make a distribution vector for each InsertionPoint,
we have to resolve a shadow InsertionPoint
(WebCore::ContentDistributor::distributeNodeChildrenTo):
- html/shadow/ContentDistributor.h:
(ContentDistributor):
- html/shadow/HTMLShadowElement.h:
(WebCore::toHTMLShadowElement):
(WebCore):
- html/shadow/InsertionPoint.h:
(WebCore::parentNodeForDistribution):
(WebCore::parentElementForDistribution):
(WebCore):
LayoutTests:
- fast/dom/shadow/composed-shadow-tree-walker-shadow-reprojection-expected.txt: Added.
- fast/dom/shadow/composed-shadow-tree-walker-shadow-reprojection.html: Added. A walker test case for elements distributed
to shadow element are reprojected.
- fast/dom/shadow/composed-shadow-tree-walker.html:
- fast/dom/shadow/content-reprojection-complex.html:
- fast/dom/shadow/content-reprojection-fallback-expected.html:
- fast/dom/shadow/content-reprojection-fallback-reprojection-expected.html:
- fast/dom/shadow/shadow-reprojection-click-expected.txt: Added.
- fast/dom/shadow/shadow-reprojection-click.html: Added. Does some interactive with a shadow-reprojected node.
- fast/dom/shadow/shadow-reprojection-dynamic-expected.html: Added.
- fast/dom/shadow/shadow-reprojection-dynamic.html: Added. Adds dynamically elements shadow-reprojected.
- fast/dom/shadow/shadow-reprojection-expected.html: Added.
- fast/dom/shadow/shadow-reprojection-fallback-expected.html: Added.
- fast/dom/shadow/shadow-reprojection-fallback.html: Added. A test case for fallback elements of a shadow element
are reprojected.
- fast/dom/shadow/shadow-reprojection-prohibited-expected.html: Removed.
- fast/dom/shadow/shadow-reprojection-prohibited.html: Removed.
- fast/dom/shadow/shadow-reprojection.html: Added. A basic test case.
- fast/dom/shadow/shadow-reprojection2-expected.html: Added.
- fast/dom/shadow/shadow-reprojection2.html: Added. Another basic test case.
- 9:02 PM Changeset in webkit [132759] by
-
- 20 edits in trunk/Source/JavaScriptCore
DFG should be able to emit effectful structure checks
https://bugs.webkit.org/show_bug.cgi?id=99260
Reviewed by Oliver Hunt.
This change allows us to find out if an array access that has gone polymorphic
is operating over known structures - i.e. the primordial array structures of the
global object that the code block containing the array access belongs to. We
term this state "OriginalArray" for short. The fact that the access has gone
polymorphic means that the array profile will not be able to report the set of
structures it had seen - but if it can tell us that all of the structures were
primordial then it just so happens that we can deduce what the structure set
would have been by just querying the code block's global object. This allows us
to emit an ArrayifyToStructure instead of an Arrayify if we find that we need to
do conversions. The fast path of an ArrayifyToStructure is exactly like the fast
path of a CheckStructure and is mostly subject to the same optimizations. It
also burns one fewer registers.
Essentially the notion of OriginalArray is a super cheap way of getting the
array profile to tell us a structure set instead of a singleton structure.
Currently, the array profile can only tell us the structure seen at an array
access if there was exactly one structure. If there were multiple structures, it
won't tell us anything other than the array modes and other auxiliary profiling
data (whether there were stores to holes, for example). With OriginalArray, we
cheaply get a structure set if all of the structures were primordial for the
code block's global object, since in that case the array mode set (ArrayModes)
can directly tell us the structure set. In the future, we might consider adding
complete structure sets to the array profiles, but I suspect that we would hit
diminishing returns if we did so - it would only help if we have array accesses
that are both polymorphic and are cross-global-object accesses (rare) or if the
arrays had named properties or other structure transitions that are unrelated to
indexing type (also rare).
This also does away with Arrayify (and the new ArrayifyToStructure) returning
the butterfly pointer. This turns out to be faster and easier to CSE.
And, this also changes constant folding to be able to eliminate CheckStructure,
ForwardCheckStructure, and ArrayifyToStructure in addition to being able to
transform them into structure transition watchpoints. This is great for
ArrayifyToStructure because then CSE and CFA know that there is no side effect.
Converting CheckStructure and ForwardCheckStructure to also behave this way is
just a matter of elegance.
This has no performance impact right now. It's intended to alleviate some of the
regressions seen in the early implementation of
https://bugs.webkit.org/show_bug.cgi?id=98606.
- bytecode/ArrayProfile.cpp:
(JSC::ArrayProfile::computeUpdatedPrediction):
- bytecode/ArrayProfile.h:
(JSC):
(JSC::ArrayProfile::ArrayProfile):
(ArrayProfile):
(JSC::ArrayProfile::usesOriginalArrayStructures):
- bytecode/CodeBlock.cpp:
(JSC::CodeBlock::updateAllPredictionsAndCountLiveness):
- dfg/DFGAbstractState.cpp:
(JSC::DFG::AbstractState::execute):
- dfg/DFGArrayMode.cpp:
(JSC::DFG::ArrayMode::fromObserved):
(JSC::DFG::ArrayMode::alreadyChecked):
(JSC::DFG::arrayClassToString):
- dfg/DFGArrayMode.h:
(JSC::DFG::ArrayMode::withProfile):
(JSC::DFG::ArrayMode::isJSArray):
(ArrayMode):
(JSC::DFG::ArrayMode::isJSArrayWithOriginalStructure):
(JSC::DFG::ArrayMode::supportsLength):
(JSC::DFG::ArrayMode::arrayModesWithIndexingShape):
- dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::getArrayMode):
(JSC::DFG::ByteCodeParser::getArrayModeAndEmitChecks):
(JSC::DFG::ByteCodeParser::handleGetByOffset):
- dfg/DFGCSEPhase.cpp:
(JSC::DFG::CSEPhase::checkStructureElimination):
(JSC::DFG::CSEPhase::structureTransitionWatchpointElimination):
(JSC::DFG::CSEPhase::getPropertyStorageLoadElimination):
(JSC::DFG::CSEPhase::checkArrayElimination):
(JSC::DFG::CSEPhase::getScopeRegistersLoadElimination):
- dfg/DFGConstantFoldingPhase.cpp:
(JSC::DFG::ConstantFoldingPhase::foldConstants):
- dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
(JSC::DFG::FixupPhase::checkArray):
- dfg/DFGNode.h:
(JSC::DFG::Node::hasStructure):
(JSC::DFG::Node::hasArrayMode):
(JSC::DFG::Node::arrayMode):
- dfg/DFGNodeType.h:
(DFG):
- dfg/DFGPredictionPropagationPhase.cpp:
(JSC::DFG::PredictionPropagationPhase::propagate):
- dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::jumpSlowForUnwantedArrayMode):
(JSC::DFG::SpeculativeJIT::arrayify):
- dfg/DFGSpeculativeJIT.h:
(SpeculativeJIT):
- dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
- dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
- runtime/JSGlobalObject.h:
(JSC::JSGlobalObject::isOriginalArrayStructure):
- runtime/Structure.cpp:
(JSC::Structure::nonPropertyTransition):
- 7:50 PM Changeset in webkit [132758] by
-
- 6 edits in trunk
Webkit adds a boundary to the Content-Type: text/plain POST header
https://bugs.webkit.org/show_bug.cgi?id=100445
Patch by Kunihiko Sakamoto <ksakamoto@chromium.org> on 2012-10-28
Reviewed by Kent Tamura.
Source/WebCore:
Fixed a bug where an empty boundary parameter was added to Content-Type
header when POSTing forms with enctype=text/plain.
Test: http/tests/misc/form-post-textplain.html
- loader/FormSubmission.cpp:
(WebCore::FormSubmission::populateFrameLoadRequest): Add boundary parameter to
Content-Type only when a boundary string is generated.
LayoutTests:
Fixed test failure and added a test case for Content-Type header.
- http/tests/misc/form-post-textplain-expected.txt:
- http/tests/misc/form-post-textplain.html:
- http/tests/misc/resources/form-post-textplain.php:
Added a test case for testing Content-Type POST header.
Also fixed existing test case that attempted to test newline in the input value.
LF in the input value is replaced with CRLF durling the construction of the form data set.
- 7:16 PM Changeset in webkit [132757] by
-
- 4 edits in trunk/Source/JavaScriptCore
There should not be blind spots in array length array profiling
https://bugs.webkit.org/show_bug.cgi?id=100620
Reviewed by Oliver Hunt.
I don't think this has any performance impact. But it's good to not have random
programs occasionally emit a GetById for array length accesses.
- jit/JITPropertyAccess.cpp:
(JSC::JIT::compileGetByIdHotPath):
(JSC::JIT::privateCompilePatchGetArrayLength):
- jit/JITPropertyAccess32_64.cpp:
(JSC::JIT::compileGetByIdHotPath):
(JSC::JIT::privateCompilePatchGetArrayLength):
- 4:39 PM Changeset in webkit [132756] by
-
- 6 edits in trunk/LayoutTests
[Chromium] Test expectation update
Rebaseline for http://trac.webkit.org/changeset/132753
- platform/chromium-linux/fast/forms/week-multiple-fields/week-multiple-fields-appearance-pseudo-elements-expected.png:
- platform/chromium-mac-lion/fast/forms/week-multiple-fields/week-multiple-fields-appearance-pseudo-elements-expected.png:
- platform/chromium-mac-snowleopard/fast/forms/week-multiple-fields/week-multiple-fields-appearance-pseudo-elements-expected.png:
- platform/chromium-mac/fast/forms/week-multiple-fields/week-multiple-fields-appearance-pseudo-elements-expected.png:
- platform/chromium-win/fast/forms/week-multiple-fields/week-multiple-fields-appearance-pseudo-elements-expected.png:
- 4:32 PM Changeset in webkit [132755] by
-
- 4 edits in trunk/Source/WebCore
Cache calcMode() value for SVG animations.
https://bugs.webkit.org/show_bug.cgi?id=99694
Reviewed by Eric Seidel.
This patch refactors SVGAnimationElement::calcMode() to return a cached value instead
of recalculating its value on every call. On a simple test of 100 rectangles with 100
animations each, calls to calcMode() account for 3% of the total animation. After this
patch, calcMode() no longer appears in animation profiles at all.
No new tests as this functionality is covered by existing tests.
- svg/SVGAnimateMotionElement.cpp:
(WebCore::SVGAnimateMotionElement::SVGAnimateMotionElement):
The default calcMode for all animation types is linear except AnimateMotion,
which defaults to CalcModePaced.
See: http://www.w3.org/TR/SVG/single-page.html#animate-CalcModeAttribute
- svg/SVGAnimationElement.cpp:
(WebCore::SVGAnimationElement::SVGAnimationElement):
(WebCore::SVGAnimationElement::isSupportedAttribute):
(WebCore::SVGAnimationElement::parseAttribute):
(WebCore::SVGAnimationElement::setCalcMode):
- svg/SVGAnimationElement.h:
(WebCore::SVGAnimationElement::calcMode):
(WebCore::SVGAnimationElement::setCalcMode):
(SVGAnimationElement):
- 3:35 PM Changeset in webkit [132754] by
-
- 5 edits in trunk/Source/WebCore
Get rid of StyleResolver state related to unknown pseudo-elements.
https://bugs.webkit.org/show_bug.cgi?id=100582
Reviewed by Eric Seidel.
All of the state, related to unknown pseudo-elements is already understood at the time of collecting rules.
We can just get rid of most of this code in StyleResolver.
At the time of matching rules, we know for certain that only rules that contain unknown pseudo-elements,
or are UA rules, or are explicitly invited by a TreeScope will match. So we can just return early in many cases.
No change in behavior, covered by existing tests.
- css/SelectorChecker.cpp:
(WebCore::SelectorChecker::checkSelector): Removed now-unnecessary param.
(WebCore::SelectorChecker::checkOneSelector): Ditto.
- css/SelectorChecker.h:
(SelectorChecker): Ditto.
- css/StyleResolver.cpp:
(WebCore::StyleResolver::StyleResolver): Ditto.
(MatchingUARulesScope): Moved class definition here, since we now use it in a different place.
(WebCore::StyleResolver::collectMatchingRules): Changed the logic to stop matching rules that definitely won't match in a different scope.
(WebCore::StyleResolver::collectMatchingRulesForList): Removed code that's now unnecesssary.
(WebCore::StyleResolver::checkSelector): Removed now-unnecessary param.
(WebCore::StyleResolver::checkRegionSelector): Removed weird dead code.
- css/StyleResolver.h:
(StyleResolver): Removed now-unnecessary member.
- 2:42 PM Changeset in webkit [132753] by
-
- 12 edits21 adds6 deletes in trunk
Unreviewed, rolling out r132696.
http://trac.webkit.org/changeset/132696
https://bugs.webkit.org/show_bug.cgi?id=100609
Needs a bit more clean-up on Chrome Web UI side. (Requested by
dglazkov on #webkit).
Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-10-28
Source/WebCore:
- rendering/RenderBlock.cpp:
(WebCore::RenderBlock::updateFirstLetter):
- rendering/RenderListBox.h:
- rendering/RenderObjectChildList.cpp:
(WebCore::RenderObjectChildList::updateBeforeAfterContent):
LayoutTests:
- fast/forms/date-multiple-fields/date-multiple-fields-appearance-pseudo-elements-expected.html: Removed.
- fast/forms/date-multiple-fields/date-multiple-fields-appearance-pseudo-elements-expected.txt: Added.
- fast/forms/date-multiple-fields/date-multiple-fields-appearance-pseudo-elements.html:
- fast/forms/month-multiple-fields/month-multiple-fields-appearance-pseudo-elements-expected.html: Removed.
- fast/forms/month-multiple-fields/month-multiple-fields-appearance-pseudo-elements-expected.txt: Added.
- fast/forms/month-multiple-fields/month-multiple-fields-appearance-pseudo-elements.html:
- fast/forms/pseudo-elements-expected.html: Removed.
- fast/forms/pseudo-elements.html: Removed.
- fast/forms/time-multiple-fields/time-multiple-fields-appearance-pseudo-elements-expected.html: Removed.
- fast/forms/time-multiple-fields/time-multiple-fields-appearance-pseudo-elements-expected.txt: Added.
- fast/forms/time-multiple-fields/time-multiple-fields-appearance-pseudo-elements.html:
- fast/forms/week-multiple-fields/week-multiple-fields-appearance-pseudo-elements-expected.html: Removed.
- fast/forms/week-multiple-fields/week-multiple-fields-appearance-pseudo-elements-expected.txt: Added.
- fast/forms/week-multiple-fields/week-multiple-fields-appearance-pseudo-elements.html:
- platform/chromium-linux/fast/forms/date-multiple-fields/date-multiple-fields-appearance-pseudo-elements-expected.png: Added.
- platform/chromium-linux/fast/forms/month-multiple-fields/month-multiple-fields-appearance-pseudo-elements-expected.png: Added.
- platform/chromium-linux/fast/forms/time-multiple-fields/time-multiple-fields-appearance-pseudo-elements-expected.png: Added.
- platform/chromium-linux/fast/forms/week-multiple-fields/week-multiple-fields-appearance-pseudo-elements-expected.png: Added.
- platform/chromium-mac-lion/fast/forms/date-multiple-fields/date-multiple-fields-appearance-pseudo-elements-expected.png:
- platform/chromium-mac-lion/fast/forms/month-multiple-fields/month-multiple-fields-appearance-pseudo-elements-expected.png: Added.
- platform/chromium-mac-lion/fast/forms/time-multiple-fields/time-multiple-fields-appearance-pseudo-elements-expected.png:
- platform/chromium-mac-lion/fast/forms/week-multiple-fields/week-multiple-fields-appearance-pseudo-elements-expected.png:
- platform/chromium-mac-snowleopard/fast/forms/date-multiple-fields/date-multiple-fields-appearance-pseudo-elements-expected.png: Added.
- platform/chromium-mac-snowleopard/fast/forms/month-multiple-fields/month-multiple-fields-appearance-pseudo-elements-expected.png: Added.
- platform/chromium-mac-snowleopard/fast/forms/time-multiple-fields/time-multiple-fields-appearance-pseudo-elements-expected.png: Added.
- platform/chromium-mac-snowleopard/fast/forms/week-multiple-fields/week-multiple-fields-appearance-pseudo-elements-expected.png: Added.
- platform/chromium-mac/fast/forms/date-multiple-fields/date-multiple-fields-appearance-pseudo-elements-expected.png: Added.
- platform/chromium-mac/fast/forms/month-multiple-fields/month-multiple-fields-appearance-pseudo-elements-expected.png: Added.
- platform/chromium-mac/fast/forms/time-multiple-fields/time-multiple-fields-appearance-pseudo-elements-expected.png: Added.
- platform/chromium-mac/fast/forms/week-multiple-fields/week-multiple-fields-appearance-pseudo-elements-expected.png: Added.
- platform/chromium-win/fast/forms/date-multiple-fields/date-multiple-fields-appearance-pseudo-elements-expected.png: Added.
- platform/chromium-win/fast/forms/month-multiple-fields/month-multiple-fields-appearance-pseudo-elements-expected.png: Added.
- platform/chromium-win/fast/forms/time-multiple-fields/time-multiple-fields-appearance-pseudo-elements-expected.png: Added.
- platform/chromium-win/fast/forms/week-multiple-fields/week-multiple-fields-appearance-pseudo-elements-expected.png: Added.
- 2:36 PM Changeset in webkit [132752] by
-
- 4 edits in trunk/Source/JavaScriptCore
Unreviewed, make always-true enum-to-int comparisons use casts.
- dfg/DFGFPRInfo.h:
(JSC::DFG::FPRInfo::debugName):
- dfg/DFGGPRInfo.h:
(JSC::DFG::JSValueSource::tagGPR):
(JSC::DFG::GPRInfo::toIndex):
(JSC::DFG::GPRInfo::debugName):
- runtime/JSTypeInfo.h:
(JSC::TypeInfo::TypeInfo):
- 5:31 AM Changeset in webkit [132751] by
-
- 2 edits in trunk/Source/WebKit2
[EFL][WK2][AC] Viewport size does not change when the window size changes
https://bugs.webkit.org/show_bug.cgi?id=100573
Patch by Yael Aharon <yael.aharon@intel.com> on 2012-10-28
Reviewed by Kenneth Rohde Christiansen.
The viewport size is set when we create the window the first time
and does not change automatically afterwards. When we change the window size,
we need to explicitly change the viewport size as well.
- UIProcess/API/efl/EwkViewImpl.cpp:
(EwkViewImpl::createGLSurface):
- 5:17 AM Changeset in webkit [132750] by
-
- 17 edits in trunk/LayoutTests
[Chromium] Test expectation update
https://bugs.webkit.org/show_bug.cgi?id=100128
Rebaseline for http://trac.webkit.org/changeset/132718 and crrev.com/164515.
- platform/chromium-linux/fast/forms/week-multiple-fields/week-multiple-fields-appearance-basic-expected.png:
- platform/chromium-linux/fast/forms/week-multiple-fields/week-multiple-fields-appearance-pseudo-classes-expected.png:
- platform/chromium-linux/fast/forms/week-multiple-fields/week-multiple-fields-appearance-style-expected.png:
- platform/chromium-mac-lion/fast/forms/week-multiple-fields/week-multiple-fields-appearance-basic-expected.png:
- platform/chromium-mac-lion/fast/forms/week-multiple-fields/week-multiple-fields-appearance-pseudo-classes-expected.png:
- platform/chromium-mac-lion/fast/forms/week-multiple-fields/week-multiple-fields-appearance-style-expected.png:
- platform/chromium-mac-snowleopard/fast/forms/week-multiple-fields/week-multiple-fields-appearance-basic-expected.png:
- platform/chromium-mac-snowleopard/fast/forms/week-multiple-fields/week-multiple-fields-appearance-pseudo-classes-expected.png:
- platform/chromium-mac-snowleopard/fast/forms/week-multiple-fields/week-multiple-fields-appearance-style-expected.png:
- platform/chromium-mac/fast/forms/week-multiple-fields/week-multiple-fields-appearance-basic-expected.png:
- platform/chromium-mac/fast/forms/week-multiple-fields/week-multiple-fields-appearance-pseudo-classes-expected.png:
- platform/chromium-mac/fast/forms/week-multiple-fields/week-multiple-fields-appearance-style-expected.png:
- platform/chromium-win/fast/forms/week-multiple-fields/week-multiple-fields-appearance-basic-expected.png:
- platform/chromium-win/fast/forms/week-multiple-fields/week-multiple-fields-appearance-pseudo-classes-expected.png:
- platform/chromium-win/fast/forms/week-multiple-fields/week-multiple-fields-appearance-style-expected.png:
- platform/chromium/TestExpectations:
- 1:20 AM Changeset in webkit [132749] by
-
- 4 edits in trunk/Source/JavaScriptCore
OSR exit compilation should defend against argument recoveries from code blocks that are no longer on the inline stack
https://bugs.webkit.org/show_bug.cgi?id=100601
Reviewed by Oliver Hunt.
This happened to me while I was fixing bugs for https://bugs.webkit.org/show_bug.cgi?id=100599.
I'm not sure how to reproduce this.
- dfg/DFGAssemblyHelpers.h:
(JSC::DFG::AssemblyHelpers::baselineCodeBlockFor):
(AssemblyHelpers):
- dfg/DFGOSRExitCompiler32_64.cpp:
(JSC::DFG::OSRExitCompiler::compileExit):
- dfg/DFGOSRExitCompiler64.cpp:
(JSC::DFG::OSRExitCompiler::compileExit):
- 12:06 AM Changeset in webkit [132748] by
-
- 2 edits7 adds in trunk/LayoutTests
[Qt] Unreviewed weekend gardening, skip a failing test, update expected files.
- platform/qt-5.0-wk2/TestExpectations:
- platform/qt-5.0-wk2/compositing/tiling/crash-reparent-tiled-layer-expected.txt: Added.
- platform/qt-5.0-wk2/compositing/tiling/huge-layer-add-remove-child-expected.txt: Added.
- platform/qt-5.0-wk2/compositing/tiling/huge-layer-with-layer-children-expected.txt: Added.
- platform/qt-5.0-wk2/compositing/tiling/huge-layer-with-layer-children-resize-expected.txt: Added.
- platform/qt-5.0-wk2/http/tests/navigation/postredirect-basic-expected.txt: Added.
- platform/qt-5.0-wk2/http/tests/navigation/postredirect-goback1-expected.txt: Added.
Oct 27, 2012:
- 11:47 PM Changeset in webkit [132747] by
-
- 2 edits in trunk/Source/WebKit2
Unreviewed build fix for breakage to minimal bot caused by r132742.
Patch by Noam Rosenthal <noam.rosenthal@nokia.com> on 2012-10-27
- WebProcess/WebPage/LayerTreeHost.h:
(LayerTreeHost):
Added appropriate ENABLE(REQUEST_ANIMATION_FRAME) flag.
- 11:27 PM Changeset in webkit [132746] by
-
- 3 edits1 add in trunk/Source/WebKit/chromium
[Chromium] Find-in-page reports matches in hidden iframes
https://bugs.webkit.org/show_bug.cgi?id=100604
Reviewed by Eric Seidel.
This is actually a regression caused by
http://trac.webkit.org/changeset/128784. This patch adds back some code
removed in WebFrameImpl::shouldScopeMatches in r128784.
This patch also introduces a test so that we don't make this mistake
again.
- src/WebFrameImpl.cpp:
(WebKit::WebFrameImpl::shouldScopeMatches):
- tests/WebFrameTest.cpp:
- tests/data/find_in_hidden_frame.html: Added.
- 11:13 PM Changeset in webkit [132745] by
-
- 16 edits in trunk/Source/JavaScriptCore
DFG::Array::Mode needs to be cleaned up
https://bugs.webkit.org/show_bug.cgi?id=100599
Reviewed by Oliver Hunt.
Turn the previous massive Array::Mode enum into a class that contains four
fields, the type, whether it's a JSArray, the level of speculation, and the
kind of conversion to perform.
No performance or behavioral change.
- dfg/DFGAbstractState.cpp:
(JSC::DFG::AbstractState::execute):
- dfg/DFGArgumentsSimplificationPhase.cpp:
(JSC::DFG::ArgumentsSimplificationPhase::run):
- dfg/DFGArrayMode.cpp:
(JSC::DFG::ArrayMode::fromObserved):
(JSC::DFG::ArrayMode::refine):
(JSC::DFG::ArrayMode::alreadyChecked):
(JSC::DFG::arrayTypeToString):
(JSC::DFG::arrayClassToString):
(DFG):
(JSC::DFG::arraySpeculationToString):
(JSC::DFG::arrayConversionToString):
(JSC::DFG::ArrayMode::toString):
- dfg/DFGArrayMode.h:
(DFG):
(ArrayMode):
(JSC::DFG::ArrayMode::ArrayMode):
(JSC::DFG::ArrayMode::type):
(JSC::DFG::ArrayMode::arrayClass):
(JSC::DFG::ArrayMode::speculation):
(JSC::DFG::ArrayMode::conversion):
(JSC::DFG::ArrayMode::asWord):
(JSC::DFG::ArrayMode::fromWord):
(JSC::DFG::ArrayMode::withSpeculation):
(JSC::DFG::ArrayMode::usesButterfly):
(JSC::DFG::ArrayMode::isJSArray):
(JSC::DFG::ArrayMode::isInBounds):
(JSC::DFG::ArrayMode::mayStoreToHole):
(JSC::DFG::ArrayMode::isOutOfBounds):
(JSC::DFG::ArrayMode::isSlowPut):
(JSC::DFG::ArrayMode::canCSEStorage):
(JSC::DFG::ArrayMode::lengthNeedsStorage):
(JSC::DFG::ArrayMode::modeForPut):
(JSC::DFG::ArrayMode::isSpecific):
(JSC::DFG::ArrayMode::supportsLength):
(JSC::DFG::ArrayMode::benefitsFromStructureCheck):
(JSC::DFG::ArrayMode::doesConversion):
(JSC::DFG::ArrayMode::arrayModesThatPassFiltering):
(JSC::DFG::ArrayMode::operator==):
(JSC::DFG::ArrayMode::operator!=):
(JSC::DFG::ArrayMode::arrayModesWithIndexingShape):
(JSC::DFG::canCSEStorage):
(JSC::DFG::lengthNeedsStorage):
- dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::getArrayMode):
(JSC::DFG::ByteCodeParser::getArrayModeAndEmitChecks):
(JSC::DFG::ByteCodeParser::handleIntrinsic):
(JSC::DFG::ByteCodeParser::parseBlock):
- dfg/DFGCSEPhase.cpp:
(JSC::DFG::CSEPhase::getArrayLengthElimination):
(JSC::DFG::CSEPhase::checkArrayElimination):
(JSC::DFG::CSEPhase::getIndexedPropertyStorageLoadElimination):
(JSC::DFG::CSEPhase::performNodeCSE):
- dfg/DFGConstantFoldingPhase.cpp:
(JSC::DFG::ConstantFoldingPhase::foldConstants):
- dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
(JSC::DFG::FixupPhase::checkArray):
(JSC::DFG::FixupPhase::blessArrayOperation):
- dfg/DFGGraph.cpp:
(JSC::DFG::Graph::dump):
- dfg/DFGGraph.h:
(JSC::DFG::Graph::byValIsPure):
- dfg/DFGNode.h:
(JSC::DFG::Node::arrayMode):
(JSC::DFG::Node::setArrayMode):
- dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::typedArrayDescriptor):
(JSC::DFG::SpeculativeJIT::jumpSlowForUnwantedArrayMode):
(JSC::DFG::SpeculativeJIT::checkArray):
(JSC::DFG::SpeculativeJIT::arrayify):
(JSC::DFG::SpeculativeJIT::compileGetByValOnString):
(JSC::DFG::SpeculativeJIT::compileGetByValOnIntTypedArray):
(JSC::DFG::SpeculativeJIT::compileGetByValOnFloatTypedArray):
(JSC::DFG::SpeculativeJIT::compilePutByValForFloatTypedArray):
(JSC::DFG::SpeculativeJIT::compileGetIndexedPropertyStorage):
(JSC::DFG::SpeculativeJIT::compileGetByValOnArguments):
(JSC::DFG::SpeculativeJIT::compileGetArgumentsLength):
(JSC::DFG::SpeculativeJIT::compileGetArrayLength):
(JSC::DFG::SpeculativeJIT::temporaryRegisterForPutByVal):
- dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::putByValWillNeedExtraRegister):
(SpeculativeJIT):
- dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
- dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
- 11:10 PM Changeset in webkit [132744] by
-
- 4 edits in trunk/Source
All tests crash in WebKit1 mode
https://bugs.webkit.org/show_bug.cgi?id=100602
Reviewed by Sam Weinig.
- WebView/WebView.mm: (+[WebView _setLoadResourcesSerially:]): Resource load scheduler is created via a strategy, so strategies need to be initialized before using it.
- 10:49 PM Changeset in webkit [132743] by
-
- 12 edits in trunk/Source/WebKit2
Unreviewed, rolling out r132740.
http://trac.webkit.org/changeset/132740
https://bugs.webkit.org/show_bug.cgi?id=100603
"Causing many crashes" (Requested by weinig on #webkit).
Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-10-27
- UIProcess/Downloads/DownloadProxy.cpp:
(WebKit::DownloadProxy::DownloadProxy):
(WebKit::DownloadProxy::invalidate):
(WebKit):
- UIProcess/Downloads/DownloadProxy.h:
(DownloadProxy):
- UIProcess/WebContext.cpp:
(WebKit::WebContext::createDownloadProxy):
(WebKit::WebContext::downloadFinished):
(WebKit::WebContext::didReceiveMessage):
(WebKit::WebContext::didReceiveSyncMessage):
- UIProcess/WebContext.h:
(WebKit):
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::~WebPageProxy):
(WebKit::WebPageProxy::didReceiveMessage):
(WebKit::WebPageProxy::didReceiveSyncMessage):
- UIProcess/WebPageProxy.h:
(CoreIPC):
(WebPageProxy):
- UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::didReceiveMessage):
(WebKit::WebProcessProxy::didReceiveSyncMessage):
- UIProcess/WebProcessProxy.h:
(WebProcessProxy):
- WebProcess/WebPage/WebPageGroupProxy.cpp:
(WebKit::WebPageGroupProxy::~WebPageGroupProxy):
(WebKit):
(WebKit::WebPageGroupProxy::didReceiveMessage):
(WebKit::WebPageGroupProxy::WebPageGroupProxy):
- WebProcess/WebPage/WebPageGroupProxy.h:
(CoreIPC):
(WebPageGroupProxy):
- WebProcess/WebProcess.cpp:
(WebKit::WebProcess::didReceiveSyncMessage):
(WebKit::WebProcess::didReceiveMessage):
- 6:32 PM Changeset in webkit [132742] by
-
- 10 edits3 adds in trunk
Coordinated Graphics: Animation jerkiness when rAF is enabled
https://bugs.webkit.org/show_bug.cgi?id=100536
Reviewed by Kenneth Rohde Christiansen.
Source/WebKit2:
The jerkiness comes from the fact that we schedule animations excessively; That's because
the previous patch broke requestAnimationFrame behavior during CSS animations, since the
frame returns right away instead of waiting till the previous frame is actually rendered.
This patch makes sure that when animations are scheduled, they're only serviced after the
UI process has actually painted the previous frame. We do so by sending a
RequestAnimationFrame message to the UI process, which responds with AnimationFrameReady
after the UI process paints.
New test: fast/animations/request-animation-frame-too-rapid.html
Tests that we don't receive an unreasonably high number of callbacks from
requestAnimationFrame (> 1000FPS).
- UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:
(WebKit):
(WebKit::LayerTreeCoordinatorProxy::requestAnimationFrame):
(WebKit::LayerTreeCoordinatorProxy::animationFrameReady):
- UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h:
(LayerTreeCoordinatorProxy):
- UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in:
- UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
(WebKit::LayerTreeRenderer::LayerTreeRenderer):
(WebKit::LayerTreeRenderer::paintToCurrentGLContext):
(WebKit):
(WebKit::LayerTreeRenderer::animationFrameReady):
(WebKit::LayerTreeRenderer::requestAnimationFrame):
- UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
(LayerTreeRenderer):
- WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
(WebKit):
(WebKit::LayerTreeCoordinator::scheduleAnimation):
(WebKit::LayerTreeCoordinator::animationFrameReady):
- WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
(LayerTreeCoordinator):
- WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.messages.in:
LayoutTests:
Added a test to make sure we don't respond too eagerly to requestAnimationFrame.
- fast/animation/request-animation-frame-too-rapid-expected.txt: Added.
- fast/animation/request-animation-frame-too-rapid.html: Added.
- fast/animation/script-tests/request-animation-frame-too-rapid.js: Added.
- 6:31 PM Changeset in webkit [132741] by
-
- 2 edits in trunk/Source/WebCore
Fix AVFoundation build.
- platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::MediaPlayerPrivateAVFoundationObjC::addKey):
- 1:48 PM Changeset in webkit [132740] by
-
- 12 edits in trunk/Source/WebKit2
Yet more MessageReceivering
https://bugs.webkit.org/show_bug.cgi?id=100325
Reviewed by Anders Carlsson.
Make DownloadProxy, WebPageProxy, and WebPageGroupProxy MessageReceivers.
- UIProcess/Downloads/DownloadProxy.cpp:
(WebKit::DownloadProxy::DownloadProxy):
(WebKit::DownloadProxy::invalidate):
(WebKit::DownloadProxy::didReceiveMessage):
(WebKit::DownloadProxy::didReceiveSyncMessage):
- UIProcess/Downloads/DownloadProxy.h:
(DownloadProxy):
Make a MessageReceiver.
- UIProcess/WebContext.cpp:
(WebKit::WebContext::WebContext):
(WebKit::WebContext::addMessageReceiver):
(WebKit::WebContext::removeMessageReceiver):
(WebKit::WebContext::didReceiveMessage):
(WebKit::WebContext::didReceiveSyncMessage):
- UIProcess/WebContext.h:
Add additional MessageReceiverMap forwards, and stop dealing with DownloadProxy explicitly.
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::~WebPageProxy):
(WebKit::WebPageProxy::didReceiveMessage):
(WebKit::WebPageProxy::didReceiveSyncMessage):
- UIProcess/WebPageProxy.h:
Make a MessageReceiver, but keep sub objects using didReceiveMessage for now (like WebPage).
- UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::addMessageReceiver):
(WebKit::WebProcessProxy::removeMessageReceiver):
(WebKit::WebProcessProxy::didReceiveMessage):
(WebKit::WebProcessProxy::didReceiveSyncMessage):
- UIProcess/WebProcessProxy.h:
Give WebProcessProxy a MessageReceiverMap and all the appropriate forwarding methods.
- WebProcess/WebPage/WebPageGroupProxy.cpp:
(WebKit::WebPageGroupProxy::WebPageGroupProxy):
(WebKit::WebPageGroupProxy::~WebPageGroupProxy):
(WebKit::WebPageGroupProxy::didReceiveMessage):
- WebProcess/WebPage/WebPageGroupProxy.h:
(WebKit::WebPageGroupProxy::isVisibleToHistoryClient):
(WebPageGroupProxy):
Make a MessageReceiver and register/unregister with the WebProcess.
- WebProcess/WebProcess.cpp:
(WebKit::WebProcess::didReceiveSyncMessage):
Remove extraneous return statement.
(WebKit::WebProcess::didReceiveMessage):
Stop handling WebPageGroupProxy special.
- 1:33 PM Changeset in webkit [132739] by
-
- 4 edits in trunk/Source/WTF
Try to create AtomicString as 8 bit where possible
https://bugs.webkit.org/show_bug.cgi?id=100575
Reviewed by Oliver Hunt.
Added StringImpl::create8BitIfPossible() that first tries to create an 8 bit string. If it finds a 16 bit character
during processing, it calls the standard create() method. The assumption is that this will be used on mostly 8 bit
strings and ones that are shorter (in the tens of characters). Changed AtomicString to use the new creation method
for UChar based construction.
- wtf/text/AtomicString.cpp:
(WTF::UCharBufferTranslator::translate):
- wtf/text/StringImpl.cpp:
(WTF::StringImpl::create8BitIfPossible):
- wtf/text/StringImpl.h:
(WTF::StringImpl::create8BitIfPossible):
- 1:31 PM Changeset in webkit [132738] by
-
- 8 edits in trunk/Source/WebKit2
Completely roll out https://bugs.webkit.org/show_bug.cgi?id=99251 (r131686)
It has caused too many crashes.
- UIProcess/API/mac/PageClientImpl.mm:
- UIProcess/API/mac/WKView.mm:
- UIProcess/API/mac/WKViewInternal.h:
- UIProcess/API/mac/WKViewPrivate.h:
- UIProcess/mac/CorrectionPanel.mm:
- UIProcess/mac/WKFullScreenWindowController.mm:
- UIProcess/mac/WebFullScreenManagerProxyMac.mm:
- 11:27 AM Changeset in webkit [132737] by
-
- 2 edits in trunk/Source/WebCore
ASSERTION FAILED: m_next in LayoutState.cpp
https://bugs.webkit.org/show_bug.cgi?id=99796
Reviewed by Eric Seidel.
Before RenderMathMLBlock::computeChildrenPreferredLogicalHeights calls child->layoutIfNeeded(),
it must ensure a layoutState exists. We disable it in any case, since we are just calculating
metrics here, and the final layout may well happen again.
No new tests. I don't know how to create an automated test for this. The crashes users are
seeing are flaky.
- rendering/mathml/RenderMathMLBlock.cpp:
(WebCore::RenderMathMLBlock::computeChildrenPreferredLogicalHeights):
- 11:25 AM Changeset in webkit [132736] by
-
- 2 edits in trunk/Source/WTF
String::fromUTF8() should take advantage of the ASCII check in convertUTF8ToUTF16()
https://bugs.webkit.org/show_bug.cgi?id=100577
Reviewed by Oliver Hunt.
Passed is ASCII flag to convertUTF8ToUTF16() and if try, create an 8 bit string from the original arguments.
- wtf/text/WTFString.cpp:
(WTF::String::fromUTF8):
- 11:18 AM Changeset in webkit [132735] by
-
- 5 edits2 adds in trunk
[MathML] Improve some addChild methods
https://bugs.webkit.org/show_bug.cgi?id=98791
Reviewed by Eric Seidel.
Source/WebCore:
MathML addChild methods need to handle any anonymous renderers correctly. Actually, most MathML elements have a fixed
number of children, so conformant javascript won't be doing arbitrary addChild and removeChild calls. However, we don't
want any assertions to fail, and we do want addChild to work correctly when beforeChild == 0, to build up the original
renderer, and then replaceChild at least should work correctly after that. We therefore clean up these routines before
giving them to the chromium fuzzers.
It's best to build the anonymous wrappers just once initially if possible, so empty wrappers aren't left in the render
tree after later removeChild calls.
Test: mathml/presentation/dynamic.html added for mfrac and msqrt. There are already tests for dynamically changing
msub/sup elements, in mathml/presentation/m*-changed.xhtml.
- rendering/mathml/RenderMathMLFraction.cpp:
(WebCore::RenderMathMLFraction::addChild):
- The two wrappers are built initially. Also, the old RenderMathMLBlock::addChild(row, beforeChild); doesn't really work because beforeChild is buried inside a wrapper. This new routine allows the numerator and denominator to be added initially, and then later replaced with replaceChild. It's not clear whether e.g. a plain removeChild of a numerator should move the remaining child from the denominator to the numerator or not, so we ignore that for now.
- rendering/mathml/RenderMathMLRoot.cpp:
(WebCore::RenderMathMLRoot::addChild):
- A bit of bullet-proofing for the fuzzers.
- rendering/mathml/RenderMathMLSubSup.cpp:
(WebCore::RenderMathMLSubSup::addChild):
- Like RenderMathMLFraction::addChild, we create the wrappers once initially, and then fill them dynamically.
LayoutTests:
- mathml/presentation/dynamic-expected.html: Added.
- mathml/presentation/dynamic.html: Added.
- 11:17 AM Changeset in webkit [132734] by
-
- 2 edits in trunk/Source/WebKit2
buildHTTPHeaders() should use a StringBuilder instead of a Vector<UChar>
https://bugs.webkit.org/show_bug.cgi?id=100580
Reviewed by Oliver Hunt.
Replaced Vector<UChar> with StringBuilder in the HTTP header construction function buildHTTPHeaders.
This eliminates 8 -> 16 bit up conversion of the strings involved.
- WebProcess/Plugins/PluginView.cpp:
(WebKit::buildHTTPHeaders):
- 11:16 AM Changeset in webkit [132733] by
-
- 1 edit1 delete in trunk/LayoutTests
Unreviewed gardening.
Removing my garbage, now from svn.
- platform/qt-5.0-wk2/fast/images/png-suite/test-expected.png: Removed.
- 10:22 AM Changeset in webkit [132732] by
-
- 1 edit1 delete in trunk/LayoutTests
Unreviewed gardening.
Added one more png to a wrong path in my previous commit, removing it and hoping that
the directory will not stay in svn.
- platform/qt-5.0-wk2/fast/images/png-suite/test-expected.png/test-expected.png: Removed.
- 10:18 AM Changeset in webkit [132731] by
-
- 3 edits2 adds in trunk
Background images can incorrectly repeat with sub-pixel layout
https://bugs.webkit.org/show_bug.cgi?id=94622
Reviewed by Emil A Eklund.
Source/WebCore:
Attempting to better match author expectations when painting tiled background images. When under
the effects of zoom with sub-pixel layout enabled, the drawn size of a rendered element can
differ depending on its location. This change looks at the size of the scaled tiled background
image size, and either ceils or floors that value depending on if tiling that value will
result in us being one pixel or less short of covering the background size. This is a heuristic,
as sub-pixel/zooming isn't specced.
Test: fast/sub-pixel/scaled-background-image.html
- rendering/RenderBoxModelObject.cpp:
(WebCore::applySubPixelHeuristicForTileSize):
(WebCore):
(WebCore::RenderBoxModelObject::calculateFillTileSize):
LayoutTests:
- fast/sub-pixel/scaled-background-image-expected.html: Added.
- fast/sub-pixel/scaled-background-image.html: Added.
- 10:15 AM Changeset in webkit [132730] by
-
- 8 edits in trunk/Source/WebCore
Unreviewed, rolling out r132725.
http://trac.webkit.org/changeset/132725
https://bugs.webkit.org/show_bug.cgi?id=100596
it broke linking on chromium debug bots (Requested by loislo
on #webkit).
Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-10-27
- inspector/InspectorMemoryAgent.cpp:
(WebCore::addPlatformComponentsInfo):
(WebCore):
(WebCore::InspectorMemoryAgent::getProcessMemoryDistribution):
- platform/MemoryUsageSupport.cpp:
(WebCore::MemoryUsageSupport::memoryUsageByComponents):
- platform/MemoryUsageSupport.h:
(ComponentInfo):
(WebCore::MemoryUsageSupport::ComponentInfo::ComponentInfo):
(MemoryUsageSupport):
- platform/PlatformMemoryInstrumentation.cpp:
(WebCore):
- platform/PlatformMemoryInstrumentation.h:
(PlatformMemoryTypes):
- platform/chromium/MemoryUsageSupportChromium.cpp:
(WebCore::MemoryUsageSupport::memoryUsageByComponents):
- platform/qt/MemoryUsageSupportQt.cpp:
(WebCore::MemoryUsageSupport::memoryUsageByComponents):
- 9:14 AM Changeset in webkit [132729] by
-
- 49 edits in trunk
REAL_PLATFORM_NAME build setting is no longer needed
https://bugs.webkit.org/show_bug.cgi?id=100587
Reviewed by Mark Rowe.
Removed the definition of REAL_PLATFORM_NAME and replaced references to it with references
to PLATFORM_NAME.
Source/JavaScriptCore:
- Configurations/Base.xcconfig:
- Configurations/CompilerVersion.xcconfig:
- Configurations/DebugRelease.xcconfig:
- Configurations/FeatureDefines.xcconfig:
- Configurations/JSC.xcconfig:
- Configurations/JavaScriptCore.xcconfig:
- Configurations/ToolExecutable.xcconfig:
Source/ThirdParty:
- gtest/xcode/Config/CompilerVersion.xcconfig:
- gtest/xcode/Config/General.xcconfig:
Source/ThirdParty/ANGLE:
- Configurations/Base.xcconfig:
- Configurations/CompilerVersion.xcconfig:
Source/WebCore:
- Configurations/Base.xcconfig:
- Configurations/CompilerVersion.xcconfig:
- Configurations/DebugRelease.xcconfig:
- Configurations/FeatureDefines.xcconfig:
- Configurations/Version.xcconfig:
- Configurations/WebCore.xcconfig:
Source/WebKit/mac:
- Configurations/Base.xcconfig:
- Configurations/CompilerVersion.xcconfig:
- Configurations/DebugRelease.xcconfig:
- Configurations/FeatureDefines.xcconfig:
- Configurations/Version.xcconfig:
- Configurations/WebKit.xcconfig:
Source/WebKit2:
- Configurations/Base.xcconfig:
- Configurations/BaseTarget.xcconfig:
- Configurations/CompilerVersion.xcconfig:
- Configurations/FeatureDefines.xcconfig:
- Configurations/WebKit2.xcconfig:
Source/WTF:
- Configurations/Base.xcconfig:
- Configurations/CompilerVersion.xcconfig:
- Configurations/DebugRelease.xcconfig:
Tools:
- DumpRenderTree/mac/Configurations/Base.xcconfig:
- DumpRenderTree/mac/Configurations/CompilerVersion.xcconfig:
- DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
- MiniBrowser/Configurations/Base.xcconfig:
- MiniBrowser/Configurations/CompilerVersion.xcconfig:
- TestWebKitAPI/Configurations/Base.xcconfig:
- TestWebKitAPI/Configurations/CompilerVersion.xcconfig:
- WebKitTestRunner/Configurations/Base.xcconfig:
- WebKitTestRunner/Configurations/CompilerVersion.xcconfig:
- WebKitTestRunner/Configurations/DebugRelease.xcconfig:
- 9:07 AM Changeset in webkit [132728] by
-
- 1 edit27 adds in trunk/LayoutTests
Pixel tests need rebaseline https://bugs.webkit.org/show_bug.cgi?id=99323
Unreviewed gardening.
Reland Qt-WebKit2 new expectations part 2 with fixed paths.
- platform/qt-5.0-wk2/fullscreen/full-screen-iframe-zIndex-expected.png: Added.
- platform/qt-5.0-wk2/fullscreen/full-screen-remove-ancestor-after-expected.png: Added.
- platform/qt-5.0-wk2/fullscreen/full-screen-stacking-context-expected.png: Added.
- platform/qt-5.0-wk2/fullscreen/full-screen-zIndex-after-expected.png: Added.
- platform/qt-5.0-wk2/fullscreen/full-screen-zIndex-expected.png: Added.
- platform/qt-5.0-wk2/svg/dom/SVGLengthList-appendItem-expected.png: Added.
- platform/qt-5.0-wk2/svg/dom/SVGLengthList-basics-expected.png: Added.
- platform/qt-5.0-wk2/svg/dom/SVGLengthList-getItem-expected.png: Added.
- platform/qt-5.0-wk2/svg/dom/SVGLengthList-initialize-expected.png: Added.
- platform/qt-5.0-wk2/svg/dom/SVGLengthList-insertItemBefore-expected.png: Added.
- platform/qt-5.0-wk2/svg/dom/SVGLengthList-removeItem-expected.png: Added.
- platform/qt-5.0-wk2/svg/dom/SVGLengthList-replaceItem-expected.png: Added.
- platform/qt-5.0-wk2/svg/dom/SVGLengthList-xml-dom-modifications-expected.png: Added.
- platform/qt-5.0-wk2/svg/dom/SVGLocatable-getCTM-svg-root-expected.png: Added.
- platform/qt-5.0-wk2/svg/dom/SVGNumberList-basics-expected.png: Added.
- platform/qt-5.0-wk2/svg/dom/SVGPathSegList-appendItem-expected.png: Added.
- platform/qt-5.0-wk2/svg/dom/SVGPathSegList-clear-and-initialize-expected.png: Added.
- platform/qt-5.0-wk2/svg/dom/SVGPathSegList-insertItemBefore-expected.png: Added.
- platform/qt-5.0-wk2/svg/dom/SVGPathSegList-removeItem-expected.png: Added.
- platform/qt-5.0-wk2/svg/dom/SVGPathSegList-replaceItem-expected.png: Added.
- platform/qt-5.0-wk2/svg/dom/SVGPathSegList-xml-dom-synchronization-expected.png: Added.
- platform/qt-5.0-wk2/svg/dom/SVGPointList-basics-expected.png: Added.
- platform/qt-5.0-wk2/svg/dom/SVGStringList-basics-expected.png: Added.
- platform/qt-5.0-wk2/svg/dom/SVGTransformList-basics-expected.png: Added.
- platform/qt-5.0-wk2/svg/filters/feImage-animated-transform-on-target-rect-expected.png: Added.
- platform/qt-5.0-wk2/svg/repaint/image-href-change-expected.png: Added.
- platform/qt-5.0-wk2/svg/repaint/image-with-clip-path-expected.png: Added.
- 9:05 AM Changeset in webkit [132727] by
-
- 1 edit75 adds in trunk/LayoutTests
Pixel tests need rebaseline https://bugs.webkit.org/show_bug.cgi?id=99323
Unreviewed gardening.
Reland Qt-WebKit2 new expectations part 1 with fixed paths.
- platform/qt-5.0-wk2/css3/filters/filter-empty-element-crash-expected.png: Added.
- platform/qt-5.0-wk2/css3/filters/multiple-filters-invalidation-expected.png: Added.
- platform/qt-5.0-wk2/css3/flexbox/repaint-expected.png: Added.
- platform/qt-5.0-wk2/css3/flexbox/repaint-rtl-column-expected.png: Added.
- platform/qt-5.0-wk2/fast/borders/border-shadow-large-radius-expected.png: Added.
- platform/qt-5.0-wk2/fast/borders/outline-alpha-block-expected.png: Added.
- platform/qt-5.0-wk2/fast/borders/outline-alpha-inline-expected.png: Added.
- platform/qt-5.0-wk2/fast/box-shadow/box-shadow-clipped-slices-expected.png: Added.
- platform/qt-5.0-wk2/fast/box-shadow/no-blur-multiple-offsets-expected.png: Added.
- platform/qt-5.0-wk2/fast/canvas/canvas-composite-fill-repaint-expected.png: Added.
- platform/qt-5.0-wk2/fast/canvas/canvas-composite-transformclip-expected.png: Added.
- platform/qt-5.0-wk2/fast/canvas/canvas-empty-image-pattern-expected.png: Added.
- platform/qt-5.0-wk2/fast/canvas/canvas-imageSmoothingEnabled-patterns-expected.png: Added.
- platform/qt-5.0-wk2/fast/canvas/canvas-resize-after-paint-without-layout-expected.png: Added.
- platform/qt-5.0-wk2/fast/canvas/canvas-resize-reset-expected.png: Added.
- platform/qt-5.0-wk2/fast/canvas/canvas-transforms-during-path-expected.png: Added.
- platform/qt-5.0-wk2/fast/canvas/gradient-add-second-start-end-stop-expected.png: Added.
- platform/qt-5.0-wk2/fast/canvas/image-pattern-rotate-expected.png: Added.
- platform/qt-5.0-wk2/fast/canvas/toDataURL-alpha-expected.png: Added.
- platform/qt-5.0-wk2/fast/css/border-radius-non-negative-expected.png: Added.
- platform/qt-5.0-wk2/fast/css/linear-gradient-currentcolor-expected.png: Added.
- platform/qt-5.0-wk2/fast/forms/datalist/input-appearance-range-with-datalist-expected.png: Added.
- platform/qt-5.0-wk2/fast/forms/datalist/input-appearance-range-with-datalist-zoomed-expected.png: Added.
- platform/qt-5.0-wk2/fast/forms/datalist/input-appearance-range-with-padding-with-datalist-expected.png: Added.
- platform/qt-5.0-wk2/fast/forms/datalist/input-appearance-range-with-transform-expected.png: Added.
- platform/qt-5.0-wk2/fast/forms/file/file-input-pressed-state-expected.png: Added.
- platform/qt-5.0-wk2/fast/gradients/css3-color-stop-units-expected.png: Added.
- platform/qt-5.0-wk2/fast/gradients/css3-color-stops-expected.png: Added.
- platform/qt-5.0-wk2/fast/gradients/css3-linear-angle-gradients-expected.png: Added.
- platform/qt-5.0-wk2/fast/gradients/css3-linear-right-angle-gradients-expected.png: Added.
- platform/qt-5.0-wk2/fast/gradients/css3-radial-gradients-expected.png: Added.
- platform/qt-5.0-wk2/fast/gradients/css3-radial-gradients2-expected.png: Added.
- platform/qt-5.0-wk2/fast/gradients/css3-radial-gradients3-expected.png: Added.
- platform/qt-5.0-wk2/fast/gradients/css3-repeating-linear-gradients-expected.png: Added.
- platform/qt-5.0-wk2/fast/gradients/css3-repeating-linear-gradients2-expected.png: Added.
- platform/qt-5.0-wk2/fast/gradients/css3-repeating-radial-gradients-expected.png: Added.
- platform/qt-5.0-wk2/fast/gradients/gradient-after-transparent-border-expected.png: Added.
- platform/qt-5.0-wk2/fast/images/jpeg-with-color-profile-expected.png: Added.
- platform/qt-5.0-wk2/fast/images/paint-subrect-expected.png: Added.
- platform/qt-5.0-wk2/fast/images/paint-subrect-grid-expected.png: Added.
- platform/qt-5.0-wk2/fast/images/png-suite/test-expected.png/test-expected.png: Added.
- platform/qt-5.0-wk2/fast/images/png-with-color-profile-expected.png: Added.
- platform/qt-5.0-wk2/fast/images/rgb-jpeg-with-adobe-marker-only-expected.png: Added.
- platform/qt-5.0-wk2/fast/images/rgb-png-with-cmyk-color-profile-expected.png: Added.
- platform/qt-5.0-wk2/fast/images/ycbcr-with-cmyk-color-profile-expected.png: Added.
- platform/qt-5.0-wk2/fast/layers/scroll-with-transform-composited-layer-expected.png: Added.
- platform/qt-5.0-wk2/fast/layers/scroll-with-transform-layer-expected.png: Added.
- platform/qt-5.0-wk2/fast/repaint/absolute-position-changed-expected.png: Added.
- platform/qt-5.0-wk2/fast/repaint/fixed-and-absolute-position-scrolled-expected.png: Added.
- platform/qt-5.0-wk2/fast/repaint/fixed-position-transparency-with-overflow-expected.png: Added.
- platform/qt-5.0-wk2/fast/repaint/nested-iframe-scroll-inner-expected.png: Added.
- platform/qt-5.0-wk2/fast/repaint/nested-iframe-scroll-outer-expected.png: Added.
- platform/qt-5.0-wk2/fast/repaint/overflow-auto-in-overflow-auto-scrolled-expected.png: Added.
- platform/qt-5.0-wk2/fast/repaint/overflow-hide-expected.png: Added.
- platform/qt-5.0-wk2/fast/repaint/overflow-scroll-in-overflow-scroll-scrolled-expected.png: Added.
- platform/qt-5.0-wk2/fast/repaint/overflow-show-expected.png: Added.
- platform/qt-5.0-wk2/fast/repaint/scroll-absolute-layer-with-reflection-expected.png: Added.
- platform/qt-5.0-wk2/fast/repaint/scroll-fixed-layer-with-no-visible-content-expected.png: Added.
- platform/qt-5.0-wk2/fast/repaint/scroll-fixed-layer-with-reflection-expected.png: Added.
- platform/qt-5.0-wk2/fast/repaint/scroll-fixed-layer-with-transformed-parent-layer-expected.png: Added.
- platform/qt-5.0-wk2/fast/repaint/scroll-fixed-reflected-layer-expected.png: Added.
- platform/qt-5.0-wk2/fast/repaint/scroll-in-clipped-layer-expected.png: Added.
- platform/qt-5.0-wk2/fast/repaint/scroll-in-fixed-layer-expected.png: Added.
- platform/qt-5.0-wk2/fast/repaint/scroll-in-transformed-layer-expected.png: Added.
- platform/qt-5.0-wk2/fast/repaint/scroll-inside-table-cell-expected.png: Added.
- platform/qt-5.0-wk2/fast/repaint/scroll-relative-table-inside-table-cell-expected.png: Added.
- platform/qt-5.0-wk2/fast/repaint/scroll-with-transformed-parent-layer-expected.png: Added.
- platform/qt-5.0-wk2/fast/repaint/table-overflow-auto-in-overflow-auto-scrolled-expected.png: Added.
- platform/qt-5.0-wk2/fast/repaint/table-overflow-hidden-in-overflow-hidden-scrolled-expected.png: Added.
- platform/qt-5.0-wk2/fast/repaint/table-overflow-scroll-in-overflow-scroll-scrolled-expected.png: Added.
- platform/qt-5.0-wk2/fast/replaced/outline-replaced-elements-expected.png: Added.
- platform/qt-5.0-wk2/fast/scrolling/scrollbar-tickmarks-styled-expected.png: Added.
- platform/qt-5.0-wk2/fast/table/border-collapsing/collapsed-border-with-col-colgroup-span-expected.png: Added.
- platform/qt-5.0-wk2/fast/table/table-row-focus-ring-paint-expected.png: Added.
- 8:13 AM Changeset in webkit [132726] by
-
- 12 edits in trunk
Remove internals shouldDisplayTrackKind methods; these are also on internals.settings
https://bugs.webkit.org/show_bug.cgi?id=100564
Reviewed by Adam Barth.
Source/WebCore:
Remove duplicate methods from internals that was just forwarding on the call to internals.settings.
Also fix a bug where we didn't reset these settings properly.
No new tests, this is covered by existing media/track tests.
- testing/InternalSettings.cpp:
(WebCore::InternalSettings::Backup::Backup): Properly save display track settings.
(WebCore::InternalSettings::Backup::restoreTo): Restore display track settings.
- testing/InternalSettings.h:
- testing/InternalSettings.idl: Use [Conditional=VIDEO_TRACK].
- testing/Internals.cpp: Remove code.
- testing/Internals.h: Remove code.
- testing/Internals.idl: Remove code.
LayoutTests:
Update tests to use the internals.settings method.
- media/track/track-language-preference-expected.txt:
- media/track/track-language-preference.html:
- media/track/track-prefer-captions-expected.txt:
- media/track/track-prefer-captions.html:
- 8:11 AM Changeset in webkit [132725] by
-
- 8 edits in trunk/Source/WebCore
Web Inspector: instrument chromium GlyphCache. It keeps ~2mb.
https://bugs.webkit.org/show_bug.cgi?id=100515
Reviewed by Yury Semikhatsky.
I replaced old version with an abstract number with new one which precisely reports allocated SkGlyphCache objects and their sizes.
- inspector/InspectorMemoryAgent.cpp:
(WebCore::InspectorMemoryAgent::getProcessMemoryDistribution):
- platform/MemoryUsageSupport.cpp:
(WebCore::MemoryUsageSupport::reportMemoryUsage):
- platform/MemoryUsageSupport.h:
(MemoryUsageSupport):
- platform/PlatformMemoryInstrumentation.cpp:
(WebCore):
- platform/PlatformMemoryInstrumentation.h:
(PlatformMemoryTypes):
- platform/chromium/MemoryUsageSupportChromium.cpp:
(reportMemoryUsage):
(WebCore::reportGlyphCache):
(WebCore):
(WebCore::MemoryUsageSupport::reportMemoryUsage):
- platform/qt/MemoryUsageSupportQt.cpp:
(WebCore::MemoryUsageSupport::reportMemoryUsage):
- 12:01 AM Changeset in webkit [132724] by
-
- 5 edits2 adds in trunk
Prevent NaN offset values in ElementTimeControl.
https://bugs.webkit.org/show_bug.cgi?id=100322
Reviewed by Abhishek Arya.
Source/WebCore:
NaN values can cause ElementTimeControl to go back in time!
If a value of NaN is passed to ElementTimeControl::beginElementAt(offset),
subsequent sorting will cause an assert in SVGSMILElement::findInstanceTime
because NaN values are not properly sorted. NaN SMILTime values
should not be allowed at all, so this patch adds a check for them in
ElementTimeControl's setters.
This patch also adds preventative asserts to catch if SMILTime is ever
initialized with NaN, or if addEndTime/addBeginTime are ever called
with NaN values.
Test: svg/custom/elementTimeControl-nan-crash.html
- svg/SVGAnimationElement.cpp:
(WebCore::SVGAnimationElement::beginElementAt):
(WebCore::SVGAnimationElement::endElementAt):
- svg/animation/SMILTime.h:
(WebCore::SMILTime::SMILTime):
- svg/animation/SVGSMILElement.cpp:
(WebCore::SVGSMILElement::addBeginTime):
(WebCore::SVGSMILElement::addEndTime):
LayoutTests:
- svg/custom/elementTimeControl-nan-crash-expected.txt: Added.
- svg/custom/elementTimeControl-nan-crash.html: Added.