Timeline
Feb 13, 2015:
- 10:37 PM Changeset in webkit [180105] by
-
- 2 edits in trunk/LayoutTests
http/tests/xmlhttprequest/event-listener-gc.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=33342
Reviewed by Darin Adler.
Instead of using a zero delay timer, which can be legitimately delayed for dozens
of milliseconds, perform the collection in a second load event handler. GC code
has changed so much that I cannot confirm that the test still verifies the fix,
however we collect after returning for the function and unwinding the stack, so it should.
Also, clear the JS variable for a good measure.
- http/tests/xmlhttprequest/event-listener-gc.html:
- 10:20 PM Changeset in webkit [180104] by
-
- 3 edits in trunk/LayoutTests
Update fast/canvas/canvas-measureText-ideographicSpace.html after r177774
https://bugs.webkit.org/show_bug.cgi?id=141595
Reviewed by Zalan Bujtas.
- fast/canvas/canvas-measureText-ideographicSpace.html:
- platform/mac/TestExpectations:
- 9:16 PM Changeset in webkit [180103] by
-
- 2 edits in trunk/LayoutTests
Unreviewed, EFL gardening. Mark font & text tests to failure.
- platform/efl/TestExpectations:
- 9:16 PM Changeset in webkit [180102] by
-
- 3 edits in trunk/Source/JavaScriptCore
Attempt to fix 32bits build after r180098
Patch by Benjamin Poulain <bpoulain@apple.com> on 2015-02-13
- jit/JITOperations.cpp:
- jit/JITOperations.h:
I copied the attribute from the MathObject version of that function when I moved
it over. DFG has no version of a function call taking those attributes.
- 8:59 PM Changeset in webkit [180101] by
-
- 3 edits in trunk/Source/JavaScriptCore
JSContext Inspector: Do not stash console messages for non-debuggable JSContext
https://bugs.webkit.org/show_bug.cgi?id=141589
Patch by Joseph Pecoraro <Joseph Pecoraro> on 2015-02-13
Reviewed by Timothy Hatcher.
Consider developer extras disabled for JSContext inspection if the
RemoteInspector server is not enabled (typically a non-debuggable
process rejected by webinspectord) or if remote debugging on the
JSContext was explicitly disabled via SPI.
When developer extras are disabled, console message will not be stashed.
- inspector/JSGlobalObjectInspectorController.cpp:
(Inspector::JSGlobalObjectInspectorController::developerExtrasEnabled):
- inspector/JSGlobalObjectInspectorController.h:
- 8:53 PM Changeset in webkit [180100] by
-
- 2 edits in trunk/LayoutTests
Unreviewed, EFL gardening. 3 inspector tests are marked to failure.
- platform/efl/TestExpectations:
- 8:23 PM Changeset in webkit [180099] by
-
- 3 edits in branches/safari-600.1.4.15-branch/Source/WebCore
Merge r179768. rdar://problem/19733844.
- 8:20 PM Changeset in webkit [180098] by
-
- 25 edits4 adds in trunk/Source/JavaScriptCore
Add a DFG node for the Pow Intrinsics
https://bugs.webkit.org/show_bug.cgi?id=141540
Patch by Benjamin Poulain <bpoulain@apple.com> on 2015-02-13
Reviewed by Filip Pizlo.
Add a DFG Node for PowIntrinsic. This patch covers the basic cases
need to avoid massive regression. I will iterate over the node to cover
the missing types.
With this patch I get the following progressions on benchmarks:
-LongSpider's math-partial-sums: +5%.
-Kraken's imaging-darkroom: +17%
-AsmBench's cray.c: +6.6%
-CompressionBench: +2.2% globally.
- dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
Cover a couple of trivial cases:
-If the exponent is zero, the result is always one, regardless of the base.
-If both arguments are constants, compute the result at compile time.
- dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::handleIntrinsic):
- dfg/DFGClobberize.h:
(JSC::DFG::clobberize):
- dfg/DFGDoesGC.cpp:
(JSC::DFG::doesGC):
- dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
We only support 2 basic cases at this time:
-Math.pow(double, int)
-Math.pow(double, double).
I'll cover Math.pow(int, int) in a follow up.
- dfg/DFGNode.h:
(JSC::DFG::Node::convertToArithSqrt):
(JSC::DFG::Node::arithNodeFlags):
- dfg/DFGNodeType.h:
- dfg/DFGPredictionPropagationPhase.cpp:
(JSC::DFG::PredictionPropagationPhase::propagate):
(JSC::DFG::PredictionPropagationPhase::doDoubleVoting):
- dfg/DFGSafeToExecute.h:
(JSC::DFG::safeToExecute):
- dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::compileArithPowIntegerFastPath):
(JSC::DFG::SpeculativeJIT::compileArithPow):
- dfg/DFGSpeculativeJIT.h:
- dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
- dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
- dfg/DFGStrengthReductionPhase.cpp:
(JSC::DFG::StrengthReductionPhase::handleNode):
- dfg/DFGValidate.cpp:
(JSC::DFG::Validate::validate):
- ftl/FTLCapabilities.cpp:
(JSC::FTL::canCompile):
- ftl/FTLIntrinsicRepository.h:
- ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::compileNode):
(JSC::FTL::LowerDFGToLLVM::compileArithPow):
- ftl/FTLOutput.h:
(JSC::FTL::Output::doublePow):
(JSC::FTL::Output::doublePowi):
- jit/JITOperations.cpp:
- jit/JITOperations.h:
- runtime/MathObject.cpp:
(JSC::mathProtoFuncPow):
(JSC::isDenormal): Deleted.
(JSC::isEdgeCase): Deleted.
(JSC::mathPow): Deleted.
- tests/stress/math-pow-basics.js: Added.
- tests/stress/math-pow-integer-exponent-fastpath.js: Added.
- tests/stress/math-pow-nan-behaviors.js: Added.
- tests/stress/math-pow-with-constants.js: Added.
Start some basic testing of Math.pow().
Due to the various transform, the value change when the code tiers up,
I covered this by checking for approximate values.
- 8:16 PM Changeset in webkit [180097] by
-
- 12 edits8 copies in branches/safari-600.1.4.15-branch
Merged r174823. rdar://problem/19733844
- 8:00 PM Changeset in webkit [180096] by
-
- 20 edits5 copies in branches/safari-600.1.4.15-branch
Merged r174402. rdar://problem/19733844
- 7:55 PM Changeset in webkit [180095] by
-
- 7 edits2 adds in branches/safari-600.5-branch
Source/WebCore: Merge r173806. <rdar://problem/19830405>
2014-09-22 Mihnea Ovidenie <mihnea@adobe.com>
[CSS Regions] Assertion failure and null dereference crash when using animations and regions
https://bugs.webkit.org/show_bug.cgi?id=136918
Reviewed by Andrei Bucur.
In some situations, for instance when an image has an attached animation, the style change caused by the animation
triggers a geometry update for the backing store associated with the image's layer. This may occur before
the layout for the image has finished.
Moreover, if the image in such situation - having a composited layer - is displayed in a region,
sicne the layout did not finish yet, the mappings between the layers of the elements collected in the named flow
and the regions associated with the named flow are not updated and cannot be used.
Therefore in those situations, we have to bail out early and use these mappings only after the layout has finished.
This patch also changes RenderLayerBacking method updateAfterDescendents -> updateAfterDescendants.
Test: fast/regions/animated-image-in-region.html
- rendering/RenderFlowThread.cpp: (WebCore::RenderFlowThread::cachedRegionForCompositedLayer):
- rendering/RenderLayer.cpp: (WebCore::RenderLayer::calculateClipRects):
- rendering/RenderLayerBacking.cpp: (WebCore::RenderLayerBacking::updateAfterDescendants):
- rendering/RenderLayerBacking.h:
- rendering/RenderLayerCompositor.cpp: (WebCore::RenderLayerCompositor::rebuildCompositingLayerTree): (WebCore::RenderLayerCompositor::updateLayerTreeGeometry): (WebCore::RenderLayerCompositor::updateCompositingDescendantGeometry):
LayoutTests: Merge r173806. <rdar://problem/19830405>
2014-09-22 Mihnea Ovidenie <mihnea@adobe.com>
[CSS Regions] Assertion failure and null dereference crash when using animations and regions
https://bugs.webkit.org/show_bug.cgi?id=136918
Reviewed by Andrei Bucur.
- fast/regions/animated-image-in-region-expected.txt: Added.
- fast/regions/animated-image-in-region.html: Added.
- 5:25 PM Changeset in webkit [180094] by
-
- 8 edits in trunk/Source/WebKit2
Crash closing a tab when a context or popup menu is open
https://bugs.webkit.org/show_bug.cgi?id=141582
rdar://problem/17700475
Reviewed by Anders Carlsson.
If a context menu or a popup menu is open when a tab is programmatically closed,
then we'd crash because both the WebContextMenuProxyMac/WebPopupMenuProxyMac
and the WebPageProxy would be deleted while still in use, via messages
handled via the nested event tracking runloop.
Fix by protecting those things while showing the popup. Also programmatically
dismiss the popup when closing the WebPageProxy.
- UIProcess/WebContextMenuProxy.h:
(WebKit::WebContextMenuProxy::cancelTracking):
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::close):
(WebKit::WebPageProxy::showPopupMenu): Clean up some EFL-related confusion that we don't need.
Retaining |this| will also retain m_activePopupMenu.
(WebKit::WebPageProxy::hidePopupMenu):
(WebKit::WebPageProxy::showContextMenu):
(WebKit::WebPageProxy::resetState):
- UIProcess/WebPopupMenuProxy.h:
(WebKit::WebPopupMenuProxy::cancelTracking):
- UIProcess/mac/WebContextMenuProxyMac.h:
- UIProcess/mac/WebContextMenuProxyMac.mm:
(WebKit::WebContextMenuProxyMac::showContextMenu):
(WebKit::WebContextMenuProxyMac::cancelTracking):
- UIProcess/mac/WebPopupMenuProxyMac.h: For popups, we need to remember if we were
canceled to avoid trying to send events after closing.
- UIProcess/mac/WebPopupMenuProxyMac.mm:
(WebKit::WebPopupMenuProxyMac::WebPopupMenuProxyMac):
(WebKit::WebPopupMenuProxyMac::showPopupMenu):
(WebKit::WebPopupMenuProxyMac::cancelTracking):
- 5:20 PM Changeset in webkit [180093] by
-
- 3 edits in trunk/Source/WTF
[EFL] Enable bmalloc for EFL port
https://bugs.webkit.org/show_bug.cgi?id=141459
Reviewed by Csaba Osztrogonác.
- wtf/CMakeLists.txt: Remove TCSystemAlloc.cpp/h.
- wtf/FastMalloc.cpp: Enable BMALLOC for EFL port.
- 5:09 PM Changeset in webkit [180092] by
-
- 2 edits in trunk/Websites/perf.webkit.org
Unreviewed build fix after r179591.
- public/api/commits.php:
- 4:59 PM Changeset in webkit [180091] by
-
- 2 edits in trunk/Websites/perf.webkit.org
The status of a A/B testing request always eventually becomes "Failed"
https://bugs.webkit.org/show_bug.cgi?id=141523
Reviewed by Andreas Kling.
The bug was caused by /api/build-requests always setting the status of a build request to 'failed' when
'failedIfNotCompleted' was sent by the buildbot sync'er.
Fixed the bug by only setting the status to 'failed' if it wasn't set to 'completed'.
- public/api/build-requests.php:
(main):
- 4:37 PM Changeset in webkit [180090] by
-
- 3 edits2 adds in trunk
RenderListItem resets its marker's style on style change even if the diff is StyleDifferenceEqual
https://bugs.webkit.org/show_bug.cgi?id=141572
<rdar://problem/19759818>
Reviewed by Simon Fraser.
Source/WebCore:
Do not unnecessarily update the marker's style in RenderListItem::styleDidChange()
if the RenderStyle diff is StyleDifferenceEqual. Doing so can cause unnecessary
layouts.
This was causing high cpu usage on
http://www.nokogiri.org/tutorials/searching_a_xml_html_document.html because there
is an animation that changes the style every second (but the diff is equal) and the
RenderListItem keeps resetting its marker's margin, which triggers a layout and the
RenderListMarker re-computes its margin during layout and updates its style again.
With this change, CPU usage on the page goes from 150% to 20%. There is only a style
recalc happening every second, no more relayouts and repaints.
Test: fast/repaint/list-item-equal-style-change-no-repaint.html
- rendering/RenderListItem.cpp:
(WebCore::RenderListItem::styleDidChange):
LayoutTests:
Add a layout test to make sure that an animation causing a style change
with StyleDifferenceEqual diff does not cause a repaint.
- fast/repaint/list-item-equal-style-change-no-repaint-expected.txt: Added.
- fast/repaint/list-item-equal-style-change-no-repaint.html: Added.
- 4:15 PM Changeset in webkit [180089] by
-
- 3 edits in trunk/Source/WebKit2
Fix the iOS build.
- UIProcess/ios/ViewGestureControllerIOS.mm:
(WebKit::ViewGestureController::removeSwipeSnapshot):
- UIProcess/mac/ViewGestureController.h:
This code is never used on iOS.
- 4:06 PM Changeset in webkit [180088] by
-
- 14 edits in trunk/Source
Make WebCore::IOSurface have single ownership instead of refcounting
https://bugs.webkit.org/show_bug.cgi?id=141578
Reviewed by Anders Carlsson.
In the interests of making it harder to misuse and to make it more like
ImageBuffer, our IOSurface wrapper should have single ownership.
This will also allow future changes which depend on temporarily
consuming an IOSurface to more easily enforce correct usage.
- WebCore.exp.in:
- platform/graphics/cg/IOSurfacePool.cpp:
(WebCore::IOSurfacePool::takeSurface):
(WebCore::IOSurfacePool::addSurface):
(WebCore::IOSurfacePool::insertSurfaceIntoPool):
(WebCore::IOSurfacePool::tryEvictInUseSurface):
(WebCore::IOSurfacePool::tryEvictOldestCachedSurface):
(WebCore::IOSurfacePool::collectInUseSurfaces):
- platform/graphics/cg/IOSurfacePool.h:
- platform/graphics/cocoa/IOSurface.h:
- platform/graphics/cocoa/IOSurface.mm:
(IOSurface::create):
(IOSurface::createFromSendRight):
(IOSurface::createFromSurface):
(IOSurface::createFromImage):
Make IOSurface::create()s return a unique_ptr, and adjust everywhere.
- Shared/mac/RemoteLayerBackingStore.h:
- Shared/mac/RemoteLayerBackingStore.mm:
(WebKit::RemoteLayerBackingStore::Buffer::discard):
- UIProcess/API/mac/WKView.mm:
(-[WKView _takeViewSnapshot]):
- UIProcess/mac/ViewGestureController.h:
- UIProcess/mac/ViewGestureControllerMac.mm:
(WebKit::ViewGestureController::beginSwipeGesture):
(WebKit::ViewGestureController::removeSwipeSnapshot):
- UIProcess/mac/ViewSnapshotStore.h:
- UIProcess/mac/ViewSnapshotStore.mm:
(WebKit::ViewSnapshot::create):
(WebKit::ViewSnapshot::ViewSnapshot):
(WebKit::ViewSnapshot::hasImage):
Adjust to the single-ownership model.
- 3:44 PM Changeset in webkit [180087] by
-
- 6 edits in trunk
Additional emoji group support.
https://bugs.webkit.org/show_bug.cgi?id=141539
rdar://problem/19727527
Reviewed by Sam Weinig.
Source/WebCore:
Adding some new emoji ligatures.
Updated existing test to include the new sequences.
- platform/text/TextBreakIterator.cpp:
(WebCore::cursorMovementIterator):
- rendering/RenderText.cpp:
(WebCore::isEmojiGroupCandidate):
LayoutTests:
Updating test to reflect the new emoji ligatures supported.
- editing/deleting/delete-emoji-expected.txt:
- editing/deleting/delete-emoji.html:
- 3:27 PM Changeset in webkit [180086] by
-
- 3 edits in trunk/Source/WebKit2
[iOS] Unreviewed build fix after r180076.
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::creationParameters): We do not
want to do this on iOS.
- UIProcess/WebPageProxy.h: No need to expose function
on iOS (only Mac).
- 3:08 PM Changeset in webkit [180085] by
-
- 6 edits2 adds in trunk/Source/JavaScriptCore
ArithSqrt should not be conditional on supportsFloatingPointSqrt
https://bugs.webkit.org/show_bug.cgi?id=141546
Patch by Benjamin Poulain <bpoulain@apple.com> on 2015-02-13
Reviewed by Geoffrey Garen and Filip Pizlo.
Just fallback to the function call in the DFG codegen.
- dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::handleIntrinsic):
- dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileArithSqrt):
- dfg/DFGSpeculativeJIT.h:
- dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
- dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
- tests/stress/math-sqrt-basics.js: Added.
Basic coverage.
- tests/stress/math-sqrt-basics-disable-architecture-specific-optimizations.js: Added.
Same tests but forcing the function call.
- 2:57 PM Changeset in webkit [180084] by
-
- 7 edits4 copies2 deletes in branches/safari-600.1.4.15-branch
Merged r179933. rdar://problem/19812665
- 2:46 PM Changeset in webkit [180083] by
-
- 2 edits in trunk/Source/JavaScriptCore
REGRESSION(r180060) New js/regress-141098 test crashes when LLInt is disabled.
https://bugs.webkit.org/show_bug.cgi?id=141577
Reviewed by Benjamin Poulain.
Changed the prologue of the baseline JIT to check for stack space for all
types of code blocks. Previously, it was only checking Function. Now
it checks Program and Eval as well.
- jit/JIT.cpp:
(JSC::JIT::privateCompile):
- 2:40 PM Changeset in webkit [180082] by
-
- 2 edits1 add in trunk/Source/WebCore
Really stop using export files.
https://bugs.webkit.org/show_bug.cgi?id=141521
Reviewed by Mark Rowe.
- Configurations/WebCore.xcconfig:
Don't use exported symbols files.
- Configurations/WebCore.unexp:
Added list of symbols not to export (needed by Xcode 5.0.2).
- 2:18 PM Changeset in webkit [180081] by
-
- 2 edits in trunk/Source/WebCore
Simplify ASSERT in lastRubyRun().
https://bugs.webkit.org/show_bug.cgi?id=141574
Reviewed by Daniel Bates.
r180064 made some of the conditions in the ASSERT redundant.
Covered by existing tests.
- rendering/RenderRuby.cpp:
(WebCore::lastRubyRun):
- 2:17 PM Changeset in webkit [180080] by
-
- 5 edits in branches/safari-600.1.4.15-branch/Source
Versioning.
- 2:15 PM Changeset in webkit [180079] by
-
- 1 copy in tags/Safari-600.1.4.15.5
New tag.
- 2:11 PM Changeset in webkit [180078] by
-
- 2 edits in trunk/LayoutTests
[Win] Document some debug asserts in Accessibility (Windows) tests.
- platform/win/TestExpectations:
- 2:00 PM Changeset in webkit [180077] by
-
- 5 edits2 copies in branches/safari-600.1.4.15-branch
Merged r179772. rdar://problem/19719078
- 1:56 PM Changeset in webkit [180076] by
-
- 10 edits in trunk/Source
[Mac, iOS] Adjust pagination behavior for Mail.app printing use
https://bugs.webkit.org/show_bug.cgi?id=141569
<rdar://problem/14912763>
Reviewed by Anders Carlsson.
Source/WebCore:
- page/Settings.in: Add new pagination setting flag.
- rendering/RenderBlockFlow.cpp:
(WebCore::messageContainerName): Added.
(WebCore::needsPaginationQuirk): Added.
(WebCore::RenderBlockFlow::adjustLinePositionForPagination): Don't move the message content
div to a new page when using this special printing mode.
Source/WebKit2:
- Shared/WebPageCreationParameters.cpp:
(WebKit::WebPageCreationParameters::encode): Add new flag.
(WebKit::WebPageCreationParameters::decode): Ditto.
- Shared/WebPageCreationParameters.h: Ditto.
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::creationParameters): Set new page construction flag.
- UIProcess/WebPageProxy.h:
- UIProcess/mac/WebPageProxyMac.mm:
(WebKit::WebPageProxy::paginationQuirkEnabled): Ask for new pagination flag
when running as a Mail client.
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::WebPage): Set up pagination based on desired settings.
- 1:54 PM Changeset in webkit [180075] by
-
- 3 edits in trunk/Source/JavaScriptCore
Generate incq instead of addq when the immediate value is one
https://bugs.webkit.org/show_bug.cgi?id=141548
Patch by Benjamin Poulain <bpoulain@apple.com> on 2015-02-13
Reviewed by Gavin Barraclough.
JSC emits "addq #1 (rXX)" *a lot*.
This patch replace that by incq, which is one byte shorter
and is the adviced form.
Sunspider: +0.47%
Octane: +0.28%
Kraken: +0.44%
AsmBench, CompressionBench: neutral.
- assembler/MacroAssemblerX86_64.h:
(JSC::MacroAssemblerX86_64::add64):
- assembler/X86Assembler.h:
(JSC::X86Assembler::incq_m):
- 1:48 PM Changeset in webkit [180074] by
-
- 4 edits in trunk/Source/JavaScriptCore
Little clean up of Bytecode Generator's Label
https://bugs.webkit.org/show_bug.cgi?id=141557
Reviewed by Michael Saboff.
- bytecompiler/BytecodeGenerator.h:
- bytecompiler/BytecodeGenerator.cpp:
Label was a friend of BytecodeGenerator in order to access
m_instructions. There is no need for that, BytecodeGenerator
has a public getter.
- bytecompiler/Label.h:
(JSC::Label::Label):
(JSC::Label::setLocation):
(JSC::BytecodeGenerator::newLabel):
Make it explicit that the generator must exist.
- 1:35 PM Changeset in webkit [180073] by
-
- 5 edits in branches/safari-600.4-branch/Source
Versioning.
- 1:33 PM Changeset in webkit [180072] by
-
- 1 copy in tags/Safari-600.4.9
New tag.
- 1:25 PM Changeset in webkit [180071] by
-
- 3 edits in trunk/Source/WebCore
[iOS] DumpRenderTree.app fails to link due to undefined classes
<rdar://problem/19831228>
Following r179945, DumpRenderTree.app fails to link due to undefined symbols:
Undefined symbols for architecture x86_64:
"_OBJC_CLASS_$_WebEvent", referenced from:
objc-class-ref in libDumpRenderTree.a(EventSendingController.o)
"_OBJC_CLASS_$_WebUndefined", referenced from:
objc-class-ref in libDumpRenderTree.a(ObjCController.o)
We need to export the classes WebScriptObject and WebEvent.
- bindings/objc/WebScriptObject.h:
- platform/ios/WebEvent.h:
- 12:40 PM Changeset in webkit [180070] by
-
- 2 edits in branches/safari-600.1.4.15-branch/Source/WebCore
Merged r180053. rdar://problem/19812624
- 12:37 PM Changeset in webkit [180069] by
-
- 2 edits in branches/safari-600.1.4.15-branch/Source/WebCore
Merged r179737. rdar://problem/19812624
- 12:30 PM Changeset in webkit [180068] by
-
- 2 edits in trunk/Source/WebCore
CachedResource::clearLoader() should self-destruct if nothing else retains the CachedResource.
<https://webkit.org/b/141568>
<rdar://problem/19800310>
Reviewed by Antti Koivisto.
Anything that may cause CachedResource::canDelete() to return true must also make sure
to call CachedResource::deleteIfPossible(), or we risk leaking the CachedResource.
This is because CachedResource employs an extremely convoluted lifetime mechanism that
depends on its presence in a number of collections, as well as internal counters and
state.
This is a speculative fix for a potential CachedResource leak that I'm not sure exists
in practice, but let's be good citizens here.
- loader/cache/CachedResource.cpp:
(WebCore::CachedResource::clearLoader):
- 11:57 AM Changeset in webkit [180067] by
-
- 1 edit1 add in trunk/Source/WebInspectorUI
Web Inspector: support better git diff of localizedStrings.js
https://bugs.webkit.org/show_bug.cgi?id=137237
Reviewed by Joseph Pecoraro.
- .gitattributes: Added.
- 11:52 AM Changeset in webkit [180066] by
-
- 4 edits in trunk
Add a move constructor and move assignment operator to Deque
https://bugs.webkit.org/show_bug.cgi?id=141571
Reviewed by Andreas Kling.
Source/WTF:
- wtf/Deque.h:
(WTF::inlineCapacity>::Deque):
(WTF::=): Deleted.
Tools:
- TestWebKitAPI/Tests/WTF/Deque.cpp:
(TestWebKitAPI::TEST):
- 11:50 AM Changeset in webkit [180065] by
-
- 2 edits in trunk/Source/WebCore
[MSE][Mac] Crash at WebCore::SourceBufferPrivateAVFObjC::didParseStreamDataAsAsset + 2357
https://bugs.webkit.org/show_bug.cgi?id=141566
rdar://problem/19826075
Reviewed by Andreas Kling.
Null check m_mediaSource before dereferencing.
- platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:
(WebCore::SourceBufferPrivateAVFObjC::didParseStreamDataAsAsset):
- 11:28 AM Changeset in webkit [180064] by
-
- 3 edits2 adds in trunk
REGRESSION (r174761): Invalid cast in WebCore::lastRubyRun / WebCore::RenderRubyAsBlock::addChild
https://bugs.webkit.org/show_bug.cgi?id=137929
rdar://problem/18723492
Reviewed by Chris Dumez.
Ensure that the child renderer is a RenderRubyRun.
Source/WebCore:
Test: fast/ruby/crash-with-before-after-on-ruby.html
- rendering/RenderRuby.cpp:
(WebCore::lastRubyRun):
LayoutTests:
- fast/ruby/crash-with-before-after-on-ruby-expected.txt: Added.
- fast/ruby/crash-with-before-after-on-ruby.html: Added.
- 11:04 AM Changeset in webkit [180063] by
-
- 4 edits in trunk/Source/WebCore
Crashes under RenderLayer::hitTestLayer under determinePrimarySnapshottedPlugIn()
https://bugs.webkit.org/show_bug.cgi?id=141551
Reviewed by Zalan Bujtas.
It's possible for a layout to dirty the parent frame's state, via the calls to
ownerElement()->scheduleSetNeedsStyleRecalc() that RenderLayerCompositor does when
iframes toggle their compositing mode.
That could cause FrameView::updateLayoutAndStyleIfNeededRecursive() to fail to
leave all the frames in a clean state. Later on, we could enter hit testing,
which calls document().updateLayout() on each frame's document. Document::updateLayout()
does layout on all ancestor documents, so in the middle of hit testing, we could
layout a subframe (dirtying an ancestor frame), then layout another frame, which
would forcing that ancestor to be laid out while we're hit testing it, thus
corrupting the RenderLayer tree while it's being iterated over.
Fix by having FrameView::updateLayoutAndStyleIfNeededRecursive() do a second
layout after laying out subframes, which most of the time will be a no-op.
Also add a stronger assertion, that this frame and all subframes are clean
at the end of FrameView::updateLayoutAndStyleIfNeededRecursive() for the
main frame.
Various existing frames tests hit the new assertion if the code change is removed,
so this is covered by existing tests.
- page/FrameView.cpp:
(WebCore::FrameView::needsStyleRecalcOrLayout):
(WebCore::FrameView::updateLayoutAndStyleIfNeededRecursive):
- page/FrameView.h:
- rendering/RenderWidget.cpp:
(WebCore::RenderWidget::willBeDestroyed):
- 11:04 AM Changeset in webkit [180062] by
-
- 7 edits in trunk/Source
determinePrimarySnapshottedPlugIn() should only traverse visible Frames
https://bugs.webkit.org/show_bug.cgi?id=141547
Part of rdar://problem/18445733.
Reviewed by Anders Carlsson.
Source/WebCore:
There's an expectation from clients that FrameView::updateLayoutAndStyleIfNeededRecursive()
updates layout in all frames, but it uses the widget tree, so only hits frames
that are parented via renderers (i.e. not display:none frames or their descendants).
Moving towards a future where we remove Widgets, fix by adding a FrameTree
traversal function that only finds rendered frames (those with an ownerRenderer).
Not testable.
- page/FrameTree.cpp:
(WebCore::FrameTree::firstRenderedChild):
(WebCore::FrameTree::nextRenderedSibling):
(WebCore::FrameTree::traverseNextRendered):
(printFrames):
- page/FrameTree.h:
- page/FrameView.cpp:
(WebCore::FrameView::updateLayoutAndStyleIfNeededRecursive):
Source/WebKit2:
Use FrameTree::traverseNextRendered() to avoid doing things in unrendered frames
which are not guaranteed to have been laid out.
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::determinePrimarySnapshottedPlugIn):
- 11:01 AM Changeset in webkit [180061] by
-
- 2 edits in trunk/Tools
run-jsc-stress-tests --remote should skip profiler tests
https://bugs.webkit.org/show_bug.cgi?id=141470
Reviewed by Filip Pizlo.
- Scripts/run-jsc-stress-tests:
- 10:57 AM Changeset in webkit [180060] by
-
- 6 edits3 adds in trunk
Google doc spreadsheet reproducibly crashes when sorting
https://bugs.webkit.org/show_bug.cgi?id=141098
Reviewed by Oliver Hunt.
Source/JavaScriptCore:
Moved the stack check to before the callee registers are allocated in the
prologue() by movving it from the functionInitialization() macro. This
way we can check the stack before moving the stack pointer, avoiding a
crash during a "call" instruction. Before this change, we weren't even
checking the stack for program and eval execution.
Made a couple of supporting changes.
- llint/LLIntSlowPaths.cpp:
(JSC::LLInt::llint_stack_check): We can't just go up one frame as we
may be processing an exception to an entry frame.
- llint/LowLevelInterpreter.asm:
- llint/LowLevelInterpreter32_64.asm:
- llint/LowLevelInterpreter64.asm:
(llint_throw_from_slow_path_trampoline): Changed method to get the vm
from the code block to not use the codeBlock, since we may need to
continue from an exception in a native function.
LayoutTests:
New test.
- js/regress-141098-expected.txt: Added.
- js/regress-141098.html: Added.
- js/script-tests/regress-141098.js: Added.
(probeAndRecurse):
- 10:46 AM Changeset in webkit [180059] by
-
- 4 edits in trunk
Add an initializer list constructor to Deque
https://bugs.webkit.org/show_bug.cgi?id=141565
Reviewed by Andreas Kling.
Source/WTF:
- wtf/Deque.h:
(WTF::inlineCapacity>::Deque):
Tools:
- TestWebKitAPI/Tests/WTF/Deque.cpp:
(TestWebKitAPI::TEST):
- 10:28 AM Changeset in webkit [180058] by
-
- 2 edits in trunk/Source/WebCore
TimerBase::m_heapInsertionOrder calculation is racy
https://bugs.webkit.org/show_bug.cgi?id=141554
Reviewed by Anders Carlsson.
Use an atomic increment.
- platform/Timer.cpp: (WebCore::TimerBase::setNextFireTime):
- 10:08 AM Changeset in webkit [180057] by
-
- 2 edits in branches/safari-600.1.4.15-branch
Merge r179771. rdar://problem/19395131
- 10:08 AM Changeset in webkit [180056] by
-
- 7 edits2 adds in branches/safari-600.1.4.15-branch
Merge r179994. rdar://problem/19711488
- 10:05 AM Changeset in webkit [180055] by
-
- 2 edits in trunk/Source/WTF
Re-indent Deque.h
Rubber-stamped by Antti Koivisto.
- wtf/Deque.h:
- 9:50 AM Changeset in webkit [180054] by
-
- 20 edits in trunk/Source/WebKit2
WorkQueue should support concurrent queues
https://bugs.webkit.org/show_bug.cgi?id=141559
Reviewed by Anders Carlsson.
- DatabaseProcess/DatabaseProcess.cpp:
(WebKit::DatabaseProcess::DatabaseProcess):
- Platform/IPC/Connection.h:
- Platform/IPC/mac/ConnectionMac.mm:
(IPC::Connection::open):
- Platform/WorkQueue.cpp:
(WorkQueue::create):
Also make create return a Ref.
(WorkQueue::WorkQueue):
- Platform/WorkQueue.h:
Add queue type enum.
- Platform/efl/WorkQueueEfl.cpp:
(WorkQueue::platformInitialize):
- Platform/gtk/WorkQueueGtk.cpp:
(WorkQueue::platformInitialize):
- Platform/mac/WorkQueueMac.cpp:
(WorkQueue::platformInitialize):
- Shared/mac/SecItemShim.cpp:
(WebKit::SecItemShim::initializeConnection):
- Shared/mac/SecItemShim.h:
- UIProcess/Launcher/ProcessLauncher.cpp:
(WebKit::processLauncherWorkQueue):
- UIProcess/mac/SecItemShimProxy.cpp:
(WebKit::SecItemShimProxy::initializeConnection):
- UIProcess/mac/SecItemShimProxy.h:
- WebProcess/Plugins/PluginProcessConnectionManager.cpp:
(WebKit::PluginProcessConnectionManager::initializeConnection):
- WebProcess/Plugins/PluginProcessConnectionManager.h:
- WebProcess/WebPage/EventDispatcher.cpp:
(WebKit::EventDispatcher::EventDispatcher):
(WebKit::EventDispatcher::initializeConnection):
- WebProcess/WebPage/EventDispatcher.h:
- WebProcess/WebPage/ViewUpdateDispatcher.h:
- 9:38 AM Changeset in webkit [180053] by
-
- 2 edits in trunk/Source/WebCore
[iOS] Refine GC behavior in response to process suspension and memory pressure.
<https://webkit.org/b/141543>
<rdar://problem/19738024>
Reviewed by Geoffrey Garen.
Do an immediate full garbage collection when the web process is about to
be suspended (when another tab is moving to the foreground on iOS.)
This ensures that we make a best effort to reduce the process footprint
before we lose the ability to execute code.
When receiving a memory pressure warning, tell the garbage collector to
accelerate its next collection (by calling garbageCollectSoon().)
This gives us some confidence that a collection will happen within a
reasonable timeframe, but doesn't risk dooming us to a loop of endless
garbage collections.
- platform/cocoa/MemoryPressureHandlerCocoa.mm:
(WebCore::MemoryPressureHandler::platformReleaseMemory):
- 9:35 AM Changeset in webkit [180052] by
-
- 4 edits1 move in trunk/Source/WebKit2
Clean up the framework postprocessing phase
https://bugs.webkit.org/show_bug.cgi?id=141544
Reviewed by Dan Bernstein.
Rename WK_API_AVAILABILITY_ENABLED to WK_FRAMEWORK_HEADER_POSTPROCESSING_ENABLED to better match what
it is we're doing. Also, rename the associated script. Remove a couple of now unnecessary #defines, and
change everything we can to be feature-based instead of OS based.
- Configurations/WebKit.xcconfig:
- Shared/API/Cocoa/WKFoundation.h:
- WebKit2.xcodeproj/project.pbxproj:
- mac/postprocess-framework-headers.sh: Renamed from Source/WebKit2/mac/rewrite-availability-macros.sh.
- 9:32 AM Changeset in webkit [180051] by
-
- 3 edits in trunk/Source/WebCore
Add some RELEASE_ASSERTs to try to catch crashes in StyleResolver::loadPendingImages
https://bugs.webkit.org/show_bug.cgi?id=141561
Reviewed by Simon Fraser.
One possibility is that loads triggered by loadPendingImages end up synchronously destroying or re-entering
style resolver. Try to catch these in release builds.
- css/StyleResolver.cpp:
(WebCore::StyleResolver::~StyleResolver):
(WebCore::StyleResolver::styleForElement):
(WebCore::StyleResolver::styleForKeyframe):
(WebCore::StyleResolver::styleForPage):
(WebCore::StyleResolver::loadPendingImages):
- css/StyleResolver.h:
- 9:15 AM Changeset in webkit [180050] by
-
- 4 edits2 adds in trunk
Div having contentEditable and display:grid cannot be edited if it is empty.
https://bugs.webkit.org/show_bug.cgi?id=141465
Reviewed by Ryosuke Niwa.
Source/WebCore:
This bug is quite similar to webkit.org/b/141218. RenderGrid should be also treated as a candidate
for visible position as like RenderFlexibleBox. The only different situation between them is
that RenderGrid has a bug setting "0px" for logicalHeight when it is empty. RenderGrid should also have
a minimum height of a single line if it is editable as well as RenderFlexibleBox does.
Test: fast/events/key-events-in-editable-gridbox.html
- dom/Position.cpp:
(WebCore::Position::isCandidate):
(WebCore::Position::isRenderedCharacter):
- rendering/RenderGrid.cpp:
(WebCore::RenderGrid::layoutGridItems):
LayoutTests:
This tests if an editable grid box can be reedited after erasing all texts in it.
- fast/events/key-events-in-editable-gridbox-expected.txt: Added.
- fast/events/key-events-in-editable-gridbox.html: Added.
- 9:10 AM Changeset in webkit [180049] by
-
- 2 edits in trunk/LayoutTests
[Win] Skip accessibility tests failing due to debug assertions.
- platform/win/TestExpectations:
- 9:02 AM Changeset in webkit [180048] by
-
- 4 edits2 adds in branches/safari-600.1.4.15-branch
Merge r179771. rdar://problem/19395131
- 9:02 AM Changeset in webkit [180047] by
-
- 2 edits in branches/safari-600.1.4.15-branch/Source/WebCore
Merge r179750. rdar://problem/19719085
- 9:02 AM Changeset in webkit [180046] by
-
- 3 edits2 adds in branches/safari-600.1.4.15-branch
Merge r179706. rdar://problem/19719085
- 8:43 AM Changeset in webkit [180045] by
-
- 7 edits in branches/safari-600.1.4.15-branch/Source
Merge r179580. rdar://problem/19709200
- 8:15 AM Changeset in webkit [180044] by
-
- 5 edits in branches/safari-600.1.4.15-branch/Source/WebKit2
Merge r180031. rdar://problem/19432928
- 8:15 AM Changeset in webkit [180043] by
-
- 4 edits in branches/safari-600.1.4.15-branch/Source/WebKit2
Merge r179885. rdar://problem/19812617
- 8:15 AM Changeset in webkit [180042] by
-
- 2 edits in branches/safari-600.1.4.15-branch/Source/WebKit2
Merge r179847. rdar://problem/19711485
- 8:15 AM Changeset in webkit [180041] by
-
- 6 edits2 adds in branches/safari-600.1.4.15-branch
Merge r179691. rdar://problem/19719089
- 8:15 AM Changeset in webkit [180040] by
-
- 3 edits in branches/safari-600.1.4.15-branch/Source/WebKit/ios
Merge r174284. rdar://problem/19812620
- 6:37 AM Changeset in webkit [180039] by
-
- 2 edits in trunk/Tools
[buildbot] Remove buildJSCTool cruft from master.cfg
https://bugs.webkit.org/show_bug.cgi?id=141513
Reviewed by Alexey Proskuryakov.
- BuildSlaveSupport/build.webkit.org-config/master.cfg:
(RunJavaScriptCoreTests):
(RunJavaScriptCoreTests.start):
(RunWebKitTests):
(RunWebKitTests.start):
(TestFactory.init):
(TestLeaksFactory.init):
(RunJavaScriptCoreTests.init): Deleted.
(RunWebKitTests.init): Deleted.
- 4:48 AM Changeset in webkit [180038] by
-
- 7 edits2 adds in trunk
REGRESSION (r176262): Invalid cast in WebCore`WebCore::RootInlineBox::selectionTop
https://bugs.webkit.org/show_bug.cgi?id=138992
Reviewed by Dave Hyatt.
RenderRubyText requires the ancestor chain to be (RenderRubyAsInline | RenderRubyAsBlock) -> RenderRubyRun -> RenderRubyText.
This patch ensures that we create RenderRubyText for an <rt> element only when
the expected ancestor chain is guaranteed.
Source/WebCore:
Test: fast/ruby/crash-when-ruby-is-set-to-inline-block.html
- rendering/RenderElement.cpp:
(WebCore::RenderElement::createFor): treat inline-block <ruby> as block.
- rendering/RenderObject.h:
(WebCore::RenderObject::isRubyInline):
(WebCore::RenderObject::isRubyBlock):
(WebCore::RenderObject::isRuby): Deleted.
- rendering/RenderRuby.cpp:
(WebCore::isAnonymousRubyInlineBlock):
- rendering/RenderRuby.h: add support for is<RenderRubyAsBlock>(renderer) and for is<RenderRubyAsInline>(renderer)
The isRuby() method does not follow the is*() -> maps to one class pattern.
(WebCore::isRuby):
- rendering/RenderRubyRun.cpp:
(WebCore::RenderRubyRun::addChild):
(WebCore::RenderRubyRun::staticCreateRubyRun):
LayoutTests:
- fast/ruby/crash-when-ruby-is-set-to-inline-block-expected.txt: Added.
- fast/ruby/crash-when-ruby-is-set-to-inline-block.html: Added.
- 1:43 AM Changeset in webkit [180037] by
-
- 3 edits in trunk/Source/bmalloc
[BMalloc] Add a FIXME comment for memory alignas
https://bugs.webkit.org/show_bug.cgi?id=141556
Reviewed by Csaba Osztrogonác.
- bmalloc/Chunk.h: Add a FIXME comment.
- bmalloc/LargeChunk.h: ditto.
- 1:19 AM Changeset in webkit [180036] by
-
- 2 edits in trunk/Source/WebCore
Fix the gperf related build issue on the WinCairo bot
https://bugs.webkit.org/show_bug.cgi?id=141507
Reviewed by Alex Christensen.
- platform/ColorData.gperf: Modified property svn:eol-style.
- 1:15 AM Changeset in webkit [180035] by
-
- 6 edits92 deletes in trunk
Unreviewed, remove empty directories.
.:
- ManualTests/qt: Removed.
Source/WebCore:
- loader/icon/wince: Removed.
- platform/graphics/wince: Removed.
- storage/wince: Removed.
Tools:
- DumpRenderTree/gtk: Removed.
- DumpRenderTree/gtk/fonts: Removed.
- DumpRenderTree/unix: Removed.
- DumpRenderTree/unix/TestNetscapePlugin: Removed.
- GtkLauncher: Removed.
- TestWebKitAPI/Tests/WebKitGtk: Removed.
- TestWebKitAPI/Tests/WebKitGtk/resources: Removed.
- WebKitTestRunner/WebKitTestRunnerAppTests: Removed.
- WebKitTestRunner/WebKitTestRunnerAppTests/en.lproj: Removed.
Websites/perf.webkit.org:
- public/data: Removed.
Websites/webkit.org:
- blog/wp-includes/js/codepress: Removed.
LayoutTests:
- fast/forms/date-multiple-fields: Removed.
- fast/forms/datetimelocal-multiple-fields: Removed.
- fast/forms/month-multiple-fields: Removed.
- fast/forms/time-multiple-fields: Removed.
- fast/forms/week-multiple-fields: Removed.
- fast/js: Removed.
- http/tests/inspector-enabled: Removed.
- http/tests/inspector-enabled/resources: Removed.
- http/tests/inspector/appcache: Removed.
- http/tests/inspector/appcache/resources: Removed.
- http/tests/inspector/audits: Removed.
- http/tests/inspector/audits/resources: Removed.
- http/tests/inspector/indexeddb: Removed.
- http/tests/inspector/indexeddb/resources: Removed.
- http/tests/inspector/network: Removed.
- http/tests/inspector/network/resources: Removed.
- http/tests/inspector/resource-tree: Removed.
- http/tests/inspector/resource-tree/resources: Removed.
- http/tests/inspector/resources: Removed.
- http/tests/inspector/search: Removed.
- http/tests/inspector/search/resources: Removed.
- http/tests/inspector/stacktraces: Removed.
- http/tests/inspector/stacktraces/resources: Removed.
- http/tests/inspector/styles: Removed.
- http/tests/inspector/styles/resources: Removed.
- http/tests/inspector/websocket: Removed.
- http/tests/webgl/1.0.1: Removed.
- inspector-protocol/heap-profiler: Removed.
- inspector-protocol/heap-profiler/resources: Removed.
- inspector/console: Removed.
- inspector/console/resources: Removed.
- inspector/elements: Removed.
- inspector/elements/resources: Removed.
- inspector/profiler: Removed.
- inspector/runtime: Removed.
- inspector/styles: Removed.
- inspector/styles/resources: Removed.
- js/regress/resources: Removed.
- media/track/opera/track/webvtt/rendering/reftest/media: Removed.
- networkinformation: Removed.
- networkinformation/resources: Removed.
- networkinformation/script-tests: Removed.
- platform/efl-wk2/dom: Removed.
- platform/efl-wk2/dom/xhtml: Removed.
- platform/efl-wk2/inspector: Removed.
- platform/efl-wk2/tables: Removed.
- platform/efl-wk2/tables/mozilla: Removed.
- platform/gtk-wk1: Removed.
- platform/gtk-wk1/fast: Removed.
- platform/gtk-wk1/fast/css: Removed.
- platform/gtk-wk1/fast/loader: Removed.
- platform/gtk-wk1/fast/media: Removed.
- platform/gtk-wk1/fast/writing-mode: Removed.
- platform/gtk-wk1/http: Removed.
- platform/gtk-wk1/http/tests: Removed.
- platform/gtk-wk1/http/tests/cache: Removed.
- platform/gtk-wk1/http/tests/security: Removed.
- platform/gtk-wk1/http/tests/security/contentSecurityPolicy: Removed.
- platform/gtk-wk1/js: Removed.
- platform/gtk-wk1/js/dom: Removed.
- platform/gtk-wk1/loader: Removed.
- platform/gtk-wk1/scrollingcoordinator: Removed.
- platform/gtk-wk2/accessibility: Removed.
- platform/gtk-wk2/fast: Removed.
- platform/gtk-wk2/fast/events: Removed.
- platform/gtk-wk2/http: Removed.
- platform/gtk-wk2/http/tests: Removed.
- platform/gtk-wk2/http/tests/loading: Removed.
- platform/gtk-wk2/http/tests/misc: Removed.
- platform/gtk-wk2/http/tests/misc/authentication-redirect-1: Removed.
- platform/gtk-wk2/http/tests/misc/authentication-redirect-2: Removed.
- platform/gtk-wk2/http/tests/misc/authentication-redirect-4: Removed.
- platform/gtk-wk2/http/tests/security: Removed.
- platform/gtk-wk2/http/tests/security/401-logout: Removed.
- platform/gtk-wk2/http/tests/xmlhttprequest: Removed.
- platform/gtk-wk2/js: Removed.
- platform/gtk-wk2/js/dom: Removed.
- platform/gtk-wk2/plugins: Removed.
- platform/gtk-wk2/plugins/npruntime: Removed.
- platform/gtk/platform: Removed.
- platform/ios-simulator/editing/editability: Removed.
- platform/ios-simulator/editing/input: Removed.
- platform/ios-simulator/editing/secure-input: Removed.
- platform/ios-simulator/editing/shadow: Removed.
- platform/ios-simulator/editing/spelling: Removed.
- platform/ios-simulator/editing/text-iterator: Removed.
- platform/ios-simulator/editing/undo: Removed.
- platform/ios-simulator/editing/unsupported-content: Removed.
- platform/ios-simulator/fast/canvas/webgl: Removed.
- platform/ios-simulator/fast/css-grid-layout: Removed.
- platform/ios-simulator/fast/css/content: Removed.
- platform/ios-simulator/fast/css/image-orientation: Removed.
- platform/ios-simulator/fast/css/image-resolution: Removed.
- platform/ios-simulator/fast/css/style-scoped: Removed.
- platform/ios-simulator/fast/css3-text/css3-text-indent: Removed.
- platform/ios-simulator/fast/css3-text/css3-text-indent/getComputedStyle: Removed.
- platform/ios-simulator/fast/dom/Document: Removed.
- platform/ios-simulator/fast/dom/Document/CaretRangeFromPoint: Removed.
- platform/ios-simulator/fast/dom/Geolocation: Removed.
- platform/ios-simulator/fast/dom/HTMLAnchorElement: Removed.
- platform/ios-simulator/fast/dom/HTMLImageElement/sizes: Removed.
- platform/ios-simulator/fast/dom/MutationObserver: Removed.
- platform/ios-simulator/fast/dom/NavigatorContentUtils: Removed.
- platform/ios-simulator/fast/dom/Orientation: Removed.
- platform/ios-simulator/fast/dom/custom: Removed.
- platform/ios-simulator/fast/events/constructors: Removed.
- platform/ios-simulator/fast/events/scoped: Removed.
- platform/iphone-simulator: Removed.
- platform/iphone-simulator/fast: Removed.
- platform/iphone-simulator/fast/events: Removed.
- platform/mac-mavericks/fast/borders: Removed.
- platform/mac-wk2/fast/writing-mode: Removed.
- platform/mac-wk2/http/tests/plugins: Removed.
- platform/mac-wk2/js: Removed.
- platform/mac-wk2/js/dom: Removed.
- platform/mac-wk2/tiled-drawing/fixed: Removed.
- platform/mac-wk2/tiled-drawing/fixed-background: Removed.
- platform/mac-wk2/tiled-drawing/sticky: Removed.
- platform/mac/dom: Removed.
- platform/mac/dom/xhtml: Removed.
- platform/mac/fast/backgrounds/resources: Removed.
- platform/mac/media/W3C/audio: Removed.
- platform/mac/media/W3C/audio/canPlayType: Removed.
- platform/mac/platform/mac-wk2: Removed.
- platform/mac/platform/mac/editing/spelling: Removed.
- platform/mac/platform/mac/fast/forms: Removed.
- platform/win-wk2: Removed.
- platform/win-wk2/fast: Removed.
- platform/win-wk2/http: Removed.
- platform/win-wk2/platform: Removed.
- platform/win-wk2/svg: Removed.
- platform/win/canvas: Removed.
- platform/win/fast/xmlhttprequest: Removed.
- platform/win/loader: Removed.
- platform/wk2/tables: Removed.
- 12:48 AM Changeset in webkit [180034] by
-
- 2 edits in trunk/Tools
Remove Windows cruft from Tools/Scripts/build-webkittestrunner
https://bugs.webkit.org/show_bug.cgi?id=141519
Reviewed by Alexey Proskuryakov.
- Scripts/build-webkittestrunner:
Feb 12, 2015:
- 11:15 PM Changeset in webkit [180033] by
-
- 2 edits in branches/safari-600.5-branch/Source/WebCore
Merged r180028. rdar://problem/19180955
- 11:14 PM Changeset in webkit [180032] by
-
- 2 edits in branches/safari-600.4-branch/Source/WebCore
Merged r180028. rdar://problem/19180955
- 10:48 PM Changeset in webkit [180031] by
-
- 5 edits in trunk/Source/WebKit2
Crash removing RemoteLayerTreeDisplayRefreshMonitor from the drawing area's map
https://bugs.webkit.org/show_bug.cgi?id=141545
<rdar://problem/17712200>
Reviewed by Simon Fraser.
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::windowScreenDidChange):
- WebProcess/WebPage/WebPage.h:
- WebProcess/WebPage/WebPage.messages.in:
windowScreenDidChange should take uint32_t, since that's what PlatformDisplayID is.
- WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
(WebKit::RemoteLayerTreeDrawingArea::RemoteLayerTreeDrawingArea):
RemoteLayerTreeDisplayRefreshMonitor is driven by the page's
RemoteLayerTreeDrawingArea. Because of this, we cannot have the same
sharing of DisplayRefreshMonitors that other platforms use.
In order to ensure that we get a unique DisplayRefreshMonitor
per-DrawingArea, give each page a unique DisplayID derived
from WebPage's unique ID.
- 10:03 PM Changeset in webkit [180030] by
-
- 2 edits in trunk/LayoutTests
[Win] Mark some debug assertions.
- platform/win/TestExpectations: Mark several debug assertions so
we don't end testing early.
- 9:53 PM Changeset in webkit [180029] by
-
- 2 edits2 adds in trunk/LayoutTests
[Win] More media rebaselining.
- platform/win/TestExpectations:
- platform/win/fast/css/focus-ring-exists-for-search-field-expected.png: Added.
- platform/win/fast/css/focus-ring-exists-for-search-field-expected.txt: Added.
- 7:59 PM Changeset in webkit [180028] by
-
- 2 edits in trunk/Source/WebCore
Crashes under detectItemAroundHitTestResult when DataDetectors is not available
https://bugs.webkit.org/show_bug.cgi?id=141549
<rdar://problem/19180955>
Reviewed by Dan Bernstein.
- editing/mac/DataDetection.mm:
(WebCore::DataDetection::detectItemAroundHitTestResult):
Bail out from data detection if either of the relevant frameworks aren't loaded.
- 6:30 PM Changeset in webkit [180027] by
-
- 31 edits3 adds in trunk/LayoutTests
[EFL] Need to have new baseline for some tests of fast/ruby since r172874
https://bugs.webkit.org/show_bug.cgi?id=141462
Unreviewed, EFL gardening. Rebaseline after r172874
Patch by Hunseop Jeong <Hunseop Jeong> on 2015-02-12
- platform/efl/TestExpectations:
- platform/efl/fast/ruby/bopomofo-expected.png: Added.
- platform/efl/fast/ruby/bopomofo-expected.txt:
- platform/efl/fast/ruby/bopomofo-letter-spacing-expected.png: Added.
- platform/efl/fast/ruby/bopomofo-letter-spacing-expected.txt:
- platform/efl/fast/ruby/bopomofo-rl-expected.png: Added.
- platform/efl/fast/ruby/bopomofo-rl-expected.txt:
- platform/efl/fast/ruby/ruby-beforeafter-expected.png:
- platform/efl/fast/ruby/ruby-beforeafter-expected.txt:
- platform/efl/fast/ruby/ruby-length-expected.png:
- platform/efl/fast/ruby/ruby-length-expected.txt:
- platform/efl/fast/ruby/ruby-run-break-expected.png:
- platform/efl/fast/ruby/ruby-run-break-expected.txt:
- platform/efl/fast/ruby/ruby-runs-expected.png:
- platform/efl/fast/ruby/ruby-runs-expected.txt:
- platform/efl/fast/ruby/ruby-runs-spans-expected.png:
- platform/efl/fast/ruby/ruby-runs-spans-expected.txt:
- platform/efl/fast/ruby/ruby-trailing-expected.png:
- platform/efl/fast/ruby/ruby-trailing-expected.txt:
- platform/efl/fast/ruby/rubyDOM-insert-rt-expected.png:
- platform/efl/fast/ruby/rubyDOM-insert-rt-expected.txt:
- platform/efl/fast/ruby/rubyDOM-insert-text1-expected.png:
- platform/efl/fast/ruby/rubyDOM-insert-text1-expected.txt:
- platform/efl/fast/ruby/rubyDOM-insert-text2-expected.png:
- platform/efl/fast/ruby/rubyDOM-insert-text2-expected.txt:
- platform/efl/fast/ruby/rubyDOM-insert-text3-expected.png:
- platform/efl/fast/ruby/rubyDOM-insert-text3-expected.txt:
- platform/efl/fast/ruby/rubyDOM-remove-rt1-expected.png:
- platform/efl/fast/ruby/rubyDOM-remove-rt1-expected.txt:
- platform/efl/fast/ruby/rubyDOM-remove-rt2-expected.png:
- platform/efl/fast/ruby/rubyDOM-remove-rt2-expected.txt:
- platform/efl/fast/ruby/rubyDOM-remove-text1-expected.png:
- platform/efl/fast/ruby/rubyDOM-remove-text1-expected.txt:
- 5:23 PM Changeset in webkit [180026] by
-
- 5 edits in branches/safari-600.5-branch/Source
Versioning.
- 5:21 PM Changeset in webkit [180025] by
-
- 1 copy in tags/Safari-600.5.6
New tag.
- 5:04 PM Changeset in webkit [180024] by
-
- 3 edits in trunk/Source/WebCore
[iOS Media] Audio should hide timeline scrubber until playback starts
https://bugs.webkit.org/show_bug.cgi?id=141542
<rdar://problem/19820685>
Reviewed by Eric Carlson.
We regressed from the system behaviour in iOS 7, where the timeline
scrubber for an audio element is not shown until the user starts
playback.
- Modules/mediacontrols/mediaControlsiOS.css:
(video::-webkit-media-controls-panel): Fix the alignment of the flexbox.
(audio::-webkit-media-controls-status-display): Add the style for the status display.
- Modules/mediacontrols/mediaControlsiOS.js:
(ControllerIOS.prototype.configureInlineControls): Start hidden if we are an <audio>.
(ControllerIOS.prototype.configureFullScreenControls): Drive by comment change.
(ControllerIOS.prototype.setPlaying): Unhide the timeline.
- 5:00 PM Changeset in webkit [180023] by
-
- 2 edits in trunk/LayoutTests
[Win] Unreviewed updates to test expectations to reduce failures on Windows bots.
- platform/win/TestExpectations: Mark a number of time-outs for Media tests.
- 4:49 PM Changeset in webkit [180022] by
-
- 2 edits in trunk/Source/WebKit2
Crash under RemoteLayerTreeDrawingArea::flushLayers() when closing a tab
https://bugs.webkit.org/show_bug.cgi?id=141541
Reviewed by Benjamin Poulain.
- WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
(WebKit::RemoteLayerTreeDrawingArea::flushLayers):
The WebPage pointer can become stale between when it is retrieved
and dereferenced. Retrieve it by ID inside the dispatch_async block
instead of outside of it.
- 4:13 PM Changeset in webkit [180021] by
-
- 6 edits in trunk/LayoutTests
Re-baselines after http://trac.webkit.org/changeset/180018
- platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-div-latched-div-with-handler-expected.txt:
- platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-div-latched-mainframe-with-handler-expected.txt:
- platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-iframe-latched-mainframe-with-handler-expected.txt:
- platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-select-latched-mainframe-with-handler-expected.txt:
- platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-select-latched-select-with-handler-expected.txt:
- 3:23 PM Changeset in webkit [180020] by
-
- 11 edits in trunk
Drop the quirks-mode exception for CSS MIME types
https://bugs.webkit.org/show_bug.cgi?id=141501
Reviewed by Alexey Proskuryakov.
Source/WebCore:
Drop the quirks-mode exception for CSS MIME types.
This matches Firefox's behavior.
This patch is based on the following Blink revision:
http://src.chromium.org/viewvc/blink?view=revision&revision=189669
Tests:
- http/tests/misc/css-accept-any-type.html
- http/tests/security/cross-origin-css.html
- css/StyleSheetContents.cpp:
(WebCore::StyleSheetContents::parseAuthorStyleSheet):
- dom/ProcessingInstruction.cpp:
(WebCore::ProcessingInstruction::setCSSStyleSheet):
- inspector/InspectorPageAgent.cpp:
(WebCore::InspectorPageAgent::cachedResourceContent):
- loader/cache/CachedCSSStyleSheet.cpp:
(WebCore::CachedCSSStyleSheet::sheetText):
(WebCore::CachedCSSStyleSheet::canUseSheet):
- loader/cache/CachedCSSStyleSheet.h:
LayoutTests:
Update a couple of layout tests now that we dropped the quirks-mode
exception for CSS MIME types.
- http/tests/misc/css-accept-any-type-expected.txt:
- http/tests/misc/css-accept-any-type.html:
- http/tests/security/cross-origin-css-expected.txt:
- http/tests/security/cross-origin-css.html:
- 3:10 PM Changeset in webkit [180019] by
-
- 2 edits in branches/safari-600.5-branch/Tools
Merge r179996 to correct test system failures.
2015-02-12 Brent Fulgham <Brent Fulgham>
[Win] Test bot infrastructure should not try to find/use old Safari DLLs
https://bugs.webkit.org/show_bug.cgi?id=141517
Reviewed by Anders Carlsson.
We do not need to locate or use the DLL's that came with Safari, so stop
failing when we cannot find them. Also remove some old Qt cruft from this
script.
- BuildSlaveSupport/built-product-archive: (archiveBuiltProduct): (extractBuiltProduct):
- 3:09 PM Changeset in webkit [180018] by
-
- 3 edits2 adds in trunk
REGRESSION: Should not send wheel events with a delta of 0
https://bugs.webkit.org/show_bug.cgi?id=141537
-and corresponding-
rdar://problem/18903118
Reviewed by Simon Fraser.
Source/WebCore:
This code should not have been removed entirely to accommodate rubber-banding, it
just needs to return false instead of true in order to allow the MayBegin and
Ended phases to be handled by the ElasticityController.
- dom/Element.cpp:
(WebCore::Element::dispatchWheelEvent):
LayoutTests:
- platform/mac-wk2/tiled-drawing/scrolling/wheel-events-with-no-delta-expected.txt: Added.
- platform/mac-wk2/tiled-drawing/scrolling/wheel-events-with-no-delta.html: Added.
- 3:08 PM Changeset in webkit [180017] by
-
- 5 edits in branches/safari-600.1.17-branch/Source
Versioning.
- 3:07 PM Changeset in webkit [180016] by
-
- 1 copy in tags/Safari-600.1.17.9
New Tag.
- 3:07 PM Changeset in webkit [180015] by
-
- 4 edits in branches/safari-600.5-branch
[Win] Unreviewed branch build fix.
Source/WebKit:
- WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in: Fix
symbol export definition.
Tools:
- DumpRenderTree/AccessibilityUIElement.cpp:
(AccessibilityUIElement::setValue): This needs a default body.
- 2:24 PM Changeset in webkit [180014] by
-
- 1 edit1 add in branches/safari-600.5-branch/Source/JavaScriptCore
Correct merge error from r180011.
- JavaScriptCore.vcxproj/JavaScriptCoreDLL.cpp: Added.
(DllMain):
- 2:20 PM Changeset in webkit [180013] by
-
- 4 edits in trunk/Source/WebCore
[iOS Media] Implement 3-style media timeline (buffered, played, unavailable)
https://bugs.webkit.org/show_bug.cgi?id=141526
<rdar://problem/19603337>
Reviewed by Eric Carlson and Antoine Quint.
Implement a 3-style media scrubber for iOS. This draws white for
the region that has been played (before the playhead), black
for the region that is buffered, and is hollow for the rest.
- Modules/mediacontrols/mediaControlsApple.js:
(Controller.prototype.updateProgress): Update progress is now completely
shared between OS X and iOS. This calls the implementation specific
drawTimelineBackground.
(Controller.prototype.drawTimelineBackground): Move the OS X code to here.
- Modules/mediacontrols/mediaControlsiOS.css:
(audio::-webkit-media-controls-timeline): New styles for the timeline. Updated thumb image, etc.
(video::-webkit-media-controls-timeline::-webkit-slider-runnable-track):
(audio::-webkit-media-controls-timeline::-webkit-slider-thumb):
(audio::-webkit-media-controls-timeline::-webkit-slider-thumb:active):
(video::-webkit-media-controls-time-remaining-display):
- Modules/mediacontrols/mediaControlsiOS.js:
(ControllerIOS): Create a globally unique canvas context name in the constructor.
(ControllerIOS.prototype.createControls): Set the background of the timeline to a canvas.
(ControllerIOS.prototype.addRoundedRect): Helper function.
(ControllerIOS.prototype.drawTimelineBackground): Draw the 3-style content.
(ControllerIOS.prototype.updateProgress): Deleted.
- 2:20 PM Changeset in webkit [180012] by
-
- 5 edits in trunk/Source/JavaScriptCore
Simplify the initialization of BytecodeGenerator a bit
https://bugs.webkit.org/show_bug.cgi?id=141505
Reviewed by Anders Carlsson.
- bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::BytecodeGenerator):
- bytecompiler/BytecodeGenerator.h:
Setup the default initialization at the declaration level
instead of the constructor.
Also made m_scopeNode and m_codeType const to make it explicit
that they are invariant after construction.
- parser/Nodes.cpp:
- runtime/Executable.cpp:
Remove 2 useless #includes.
- 2:19 PM Changeset in webkit [180011] by
-
- 18 edits1 add in branches/safari-600.5-branch
Merge r179993. <rdar://problem/19813975>
2015-02-11 Brent Fulgham <Brent Fulgham>
[Win] [64-bit] Work around MSVC2013 Runtime Bug
https://bugs.webkit.org/show_bug.cgi?id=141498
<rdar://problem/19803642>
Reviewed by Anders Carlsson.
Disable FMA3 instruction use in the MSVC math library to
work around a VS2013 runtime crash. We can remove this
workaround when we switch to VS2015.
Source/JavaScriptCore:
- API/tests/testapi.c: Call _set_FMA3_enable(0) to disable FMA3 support.
- JavaScriptCore.vcxproj/JavaScriptCore.vcxproj: Add new files.
- JavaScriptCore.vcxproj/JavaScriptCore.vcxproj.filters: Ditto.
- JavaScriptCore.vcxproj/JavaScriptCoreDLL.cpp: Added.
- JavaScriptCore.vcxproj/jsc/DLLLauncherMain.cpp: Call _set_FMA3_enable(0) to disable FMA3 support.
- jsc.cpp: Ditto.
- testRegExp.cpp: Ditto.
Source/WebKit/win:
- WebKitDLL.cpp: Call _set_FMA3_enable(0) to disable FMA3 support.
Source/WTF:
- WTF.vcxproj/WTF.vcxproj: Add new files.
- WTF.vcxproj/WTF.vcxproj.filters: Ditto.
- wtf/win/WTFDLL.cpp: Added.
Tools:
- DumpRenderTree/cg/ImageDiffCG.cpp: Call _set_FMA3_enable(0) to disable FMA3 support.
- DumpRenderTree/win/DumpRenderTree.cpp: Ditto.
- DumpRenderTree/win/ImageDiffCairo.cpp: Ditto.
- DumpRenderTree/win/TestRunnerWin.cpp: Ditto.
- Scripts/webkitperl/httpd.pm: Ditto.
- TestWebKitAPI/win/main.cpp: Ditto.
- WinLauncher/Common.cpp: Ditto.
- win/DLLLauncher/DLLLauncherMain.cpp: Ditto.
- 2:18 PM Changeset in webkit [180010] by
-
- 5 edits in trunk/Source/JavaScriptCore
Move the generators for GetScope and SkipScope to the common core in DFGSpeculativeJIT
https://bugs.webkit.org/show_bug.cgi?id=141506
Reviewed by Michael Saboff.
The generators for the nodes GetScope and SkipScope were
completely identical between 32 and 64bits.
This patch moves the duplicated code to DFGSpeculativeJIT.
- dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileGetScope):
(JSC::DFG::SpeculativeJIT::compileSkipScope):
- dfg/DFGSpeculativeJIT.h:
- dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
- dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
- 1:33 PM Changeset in webkit [180009] by
-
- 2 edits in branches/safari-600.1.17-branch/Tools
Merge r179996.
2015-02-12 Brent Fulgham <Brent Fulgham>
[Win] Test bot infrastructure should not try to find/use old Safari DLLs
https://bugs.webkit.org/show_bug.cgi?id=141517
Reviewed by Anders Carlsson.
We do not need to locate or use the DLL's that came with Safari, so stop
failing when we cannot find them. Also remove some old Qt cruft from this
script.
- BuildSlaveSupport/built-product-archive: (archiveBuiltProduct): (extractBuiltProduct):
- 1:31 PM Changeset in webkit [180008] by
-
- 3 edits in trunk/Source/WebKit2
WebKit persistent cache uses a lot of threads
https://bugs.webkit.org/show_bug.cgi?id=141520
Reviewed by Andreas Kling.
Parallel retrieves are limited but stores are not. We may end up with lots of backround io
dispatch queue threads if they don't complete fast enough.
This patch adds pending state for write operations similar to what retrieves already have
and limits to number of active operations.
- NetworkProcess/cache/NetworkCacheStorage.h:
Combine StoreOperation and UpdateOperation and rename to WriteOperation.
Rename RetrieveOperation to ReadOperation.
The idea is to emphasize that these are disk operations.
- NetworkProcess/cache/NetworkCacheStorageCocoa.mm:
(WebKit::NetworkCacheStorage::dispatchReadOperation):
(WebKit::NetworkCacheStorage::dispatchPendingReadOperations):
(WebKit::retrieveFromMemory):
(WebKit::NetworkCacheStorage::retrieve):
(WebKit::NetworkCacheStorage::store):
(WebKit::NetworkCacheStorage::update):
(WebKit::NetworkCacheStorage::dispatchPendingWriteOperations):
Only allow 3 parallel writes.
(WebKit::NetworkCacheStorage::dispatchFullWriteOperation):
(WebKit::NetworkCacheStorage::dispatchHeaderWriteOperation):
More informative names.
(WebKit::NetworkCacheStorage::dispatchRetrieveOperation): Deleted.
(WebKit::NetworkCacheStorage::dispatchPendingRetrieveOperations): Deleted.
(WebKit::retrieveActive): Deleted.
- 1:18 PM Changeset in webkit [180007] by
-
- 4 edits in trunk/Source/WebCore
Fix some Mac linker warnings
https://bugs.webkit.org/show_bug.cgi?id=141522
Patch by Daniel Bates <dabates@apple.com> on 2015-02-12
Reviewed by Alex Christensen.
Following <https://trac.webkit.org/changeset/179945>, the linker warns about the following hidden WebCore symbols:
ld: warning: cannot export hidden symbol ZN7WebCore20LogNotYetImplementedE from /.../OpenSource/WebKitBuild/WebCore.build/Debug/WebCore.build/Objects-normal/x86_64/Logging.o
ld: warning: cannot export hidden symbol _wkCreateURLPasteboardFlavorTypeName from /.../OpenSource/WebKitBuild/WebCore.build/Debug/WebCore.build/Objects-normal/x86_64/WebCoreSystemInterface.o
ld: warning: cannot export hidden symbol _wkCreateURLNPasteboardFlavorTypeName from /.../OpenSource/WebKitBuild/WebCore.build/Debug/WebCore.build/Objects-normal/x86_64/WebCoreSystemInterface.o
- WebCore.exp.in: Remove symbols for functions wkCreateURLPasteboardFlavorTypeName and wkCreateURLNPasteboardFlavorTypeName.
- platform/Logging.h: Export WTFLogChannel for LogNotYetImplemented, which is referenced from
notImplementedLoggingChannel() in file NotImplemented.cpp. We make use of the associated
header, NotImplemented.h, in both WebKit and WebKit2.
- platform/mac/WebCoreSystemInterface.mm: Remove declarations for functions
wkCreateURLPasteboardFlavorTypeName and wkCreateURLNPasteboardFlavorTypeName that
were inadvertently not removed in r25494.
- 1:13 PM Changeset in webkit [180006] by
-
- 18 edits2 adds in branches/safari-600.1.17-branch
Merge r179993. <rdar://problem/19803642>
2015-02-11 Brent Fulgham <Brent Fulgham>
[Win] [64-bit] Work around MSVC2013 Runtime Bug
https://bugs.webkit.org/show_bug.cgi?id=141498
<rdar://problem/19803642>
Reviewed by Anders Carlsson.
Disable FMA3 instruction use in the MSVC math library to
work around a VS2013 runtime crash. We can remove this
workaround when we switch to VS2015.
Source/JavaScriptCore:
- API/tests/testapi.c: Call _set_FMA3_enable(0) to disable FMA3 support.
- JavaScriptCore.vcxproj/JavaScriptCore.vcxproj: Add new files.
- JavaScriptCore.vcxproj/JavaScriptCore.vcxproj.filters: Ditto.
- JavaScriptCore.vcxproj/JavaScriptCoreDLL.cpp: Added.
- JavaScriptCore.vcxproj/jsc/DLLLauncherMain.cpp: Call _set_FMA3_enable(0) to disable FMA3 support.
- jsc.cpp: Ditto.
- testRegExp.cpp: Ditto.
Source/WebKit/win:
- WebKitDLL.cpp: Call _set_FMA3_enable(0) to disable FMA3 support.
Source/WTF:
- WTF.vcxproj/WTF.vcxproj: Add new files.
- WTF.vcxproj/WTF.vcxproj.filters: Ditto.
- wtf/win/WTFDLL.cpp: Added.
Tools:
- DumpRenderTree/cg/ImageDiffCG.cpp: Call _set_FMA3_enable(0) to disable FMA3 support.
- DumpRenderTree/win/DumpRenderTree.cpp: Ditto.
- DumpRenderTree/win/ImageDiffCairo.cpp: Ditto.
- DumpRenderTree/win/TestRunnerWin.cpp: Ditto.
- TestWebKitAPI/win/main.cpp: Ditto.
- WinLauncher/Common.cpp: Ditto.
- win/DLLLauncher/DLLLauncherMain.cpp: Ditto.
- 12:47 PM Changeset in webkit [180005] by
-
- 6 edits2 adds in trunk
Web Inspector: Crash inspecting styles of element with mutated stylesheet
https://bugs.webkit.org/show_bug.cgi?id=141451
Patch by Joseph Pecoraro <Joseph Pecoraro> on 2015-02-12
Reviewed by Timothy Hatcher.
Source/WebCore:
Test: inspector/css/stylesheet-with-mutations.html
- css/CSSStyleSheet.h:
- css/CSSStyleSheet.cpp:
(WebCore::CSSStyleSheet::CSSStyleSheet):
(WebCore::CSSStyleSheet::didMutateRules):
Keep a flag on the CSSStyleSheet to know when it has had a rule
mutation from the contents.
- inspector/InspectorStyleSheet.h:
- inspector/InspectorStyleSheet.cpp:
(WebCore::InspectorStyleSheet::reparseStyleSheet):
When completely replacing the stylesheet's contents, we will have
destroyed any previous rules, so clear the has mutations flag.
(WebCore::selectorsFromSource):
Previously there was a mismatch between the rules the parsed
SourceData had, and the actual CSSSelectors we were iterating.
We use the SourceData so we can get the exact user authored
text instead of generated longhands from actualy selector objects.
Add an ASSERT and bail to catch and more gracefully handle
any possible mismatches in the future.
(WebCore::InspectorStyleSheet::styleSheetMutated):
(WebCore::InspectorStyleSheet::ensureParsedDataReady):
When a CSSStyleSheet has been mutated beyond the inspector's
knowledge right now, fall back to readonly generated selectors.
We should better handle this in the future:
<https://webkit.org/b/141450> Web Inspector: Better support for CSSOM StyleSheet mutations (insertRule/deleteRule)
LayoutTests:
- inspector/css/stylesheet-with-mutations-expected.txt: Added.
- inspector/css/stylesheet-with-mutations.html: Added.
Previously this test would crash, or in debug builds show one
of the two selectors in the rule.
- 12:30 PM Changeset in webkit [180004] by
-
- 3 edits in trunk/Source/WebInspectorUI
Web Inspector: add keyboard shortcut to enable/disable all breakpoints
https://bugs.webkit.org/show_bug.cgi?id=141527
Reviewed by Joseph Pecoraro.
- Localizations/en.lproj/localizedStrings.js:
- UserInterface/Views/DebuggerSidebarPanel.js:
(WebInspector.DebuggerSidebarPanel): Bind Command/Control + Y to toggle breakpoints button.
- 12:00 PM Changeset in webkit [180003] by
-
- 7 edits2 deletes in trunk
Unreviewed, rolling out r179987.
https://bugs.webkit.org/show_bug.cgi?id=141525
caused debug tests to fail (Requested by alexchristensen on
#webkit).
Reverted changeset:
"[CSS Grid Layout] Invalid initialization of track sizes with
non spanning grid items"
https://bugs.webkit.org/show_bug.cgi?id=140763
http://trac.webkit.org/changeset/179987
- 11:57 AM Changeset in webkit [180002] by
-
- 1 edit1 delete in trunk/Tools
Removed empty directory.
- WinCELauncher: Removed.
- 11:00 AM Changeset in webkit [180001] by
-
- 17 edits2 moves in trunk/Source/WebInspectorUI
Web Inspector: support adding and removing timelines to the timeline sidebar panel and overview
https://bugs.webkit.org/show_bug.cgi?id=138434
Reviewed by Timothy Hatcher.
A timeline recording's timelines should not be static. This patch adds relevant machinery to
dynamically add and remove timelines from the Timeline model object and its various views.
From the model side, this is a simple change that adds TimelineAdded and TimelineRemoved events.
The timeline views and timeline sidebar require more extensive changes to support this functionality.
Instead of keeping a fixed set of timeline tree elements, the sidebar view now adds and removes
tree elements to reflect the available timelines for the displayed timeline recording.
This change also includes several minor cleanups, such as appending 'Element' to view properties that
are DOM elements, and renaming TimelineContentView to TimelineRecordingContentView.
- UserInterface/Controllers/TimelineManager.js:
(WebInspector.TimelineManager.prototype._loadNewRecording):
Populate predefined network, layout, and script timelines here after constructing the recording.
- UserInterface/Main.html:
- UserInterface/Models/Timeline.js:
Move hardcoded class names and localized strings to these base class methods. This is not implemented
using overridden methods because not all timeline types have their own subclasses. Add a dummy
implementation of saveIdentityToCookie() to avoid warnings when saving sidebar panel selection state.
(WebInspector.Timeline.prototype.get type):
(WebInspector.Timeline.prototype.get displayName): Added.
(WebInspector.Timeline.prototype.get iconClassName): Added.
(WebInspector.Timeline.prototype.addRecord):
- UserInterface/Models/TimelineRecording.js:
(WebInspector.TimelineRecording):
(WebInspector.TimelineRecording.prototype.addTimeline.set timeline): Added.
(WebInspector.TimelineRecording.prototype.addTimeline): Added.
(WebInspector.TimelineRecording.prototype.removeTimeline.get this): Added.
(WebInspector.TimelineRecording.prototype.removeTimeline): Added.
- UserInterface/Views/ContentView.js:
(WebInspector.ContentView):
- UserInterface/Views/LayoutTimelineView.css:
(.sidebar > .panel.navigation.timeline.timeline-recording-content-view-showing .navigation-sidebar-panel-content-tree-outline.layout .item .subtitle):
(.sidebar > .panel.navigation.timeline.timeline-content-view-showing .navigation-sidebar-panel-content-tree-outline.layout .item .subtitle): Deleted.
- UserInterface/Views/LayoutTimelineView.js:
(WebInspector.LayoutTimelineView.prototype._treeElementSelected):
(WebInspector.LayoutTimelineView.prototype._closeStatusButtonClicked):
- UserInterface/Views/NavigationSidebarPanel.js:
(WebInspector.NavigationSidebarPanel.prototype.saveStateToCookie): Fix error message formatting.
(WebInspector.NavigationSidebarPanel.prototype._updateFilter):
- UserInterface/Views/NetworkTimelineView.css:
(.sidebar > .panel.navigation.timeline.timeline-recording-content-view-showing .navigation-sidebar-panel-content-tree-outline.network .item .subtitle):
(.sidebar > .panel.navigation.timeline.timeline-content-view-showing .navigation-sidebar-panel-content-tree-outline.network .item .subtitle): Deleted.
- UserInterface/Views/NetworkTimelineView.js:
(WebInspector.NetworkTimelineView.prototype._closeStatusButtonClicked):
- UserInterface/Views/ScriptTimelineView.css:
(.sidebar > .panel.navigation.timeline.timeline-recording-content-view-showing .navigation-sidebar-panel-content-tree-outline.script .item .subtitle):
(.sidebar > .panel.navigation.timeline.timeline-content-view-showing .navigation-sidebar-panel-content-tree-outline.script .item .subtitle): Deleted.
- UserInterface/Views/ScriptTimelineView.js:
(WebInspector.ScriptTimelineView.prototype._treeElementSelected):
(WebInspector.ScriptTimelineView.prototype._closeStatusButtonClicked):
- UserInterface/Views/TimelineOverview.js:
Convert this class to use the representedObject class pattern. It manages its own mapping from timelines
to overview graph views. Append 'Element' to some properties holding DOM elements.
(WebInspector.TimelineOverview):
(WebInspector.TimelineOverview.prototype.get visibleDuration):
(WebInspector.TimelineOverview.prototype.reset):
(WebInspector.TimelineOverview.prototype.updateLayout):
(WebInspector.TimelineOverview.prototype._handleScrollEvent):
(WebInspector.TimelineOverview.prototype._handleWheelEvent):
(WebInspector.TimelineOverview.prototype._timelineRemoved):
(WebInspector.TimelineOverview.prototype.updateLayoutIfNeeded):
(WebInspector.TimelineOverview.prototype._timeRangeSelectionChanged):
- UserInterface/Views/TimelineRecordingContentView.css: Renamed from Source/WebInspectorUI/UserInterface/Views/TimelineContentView.css.
Remove hard-coded top offsets and heights that need to be dynamically calculated.
(.content-view.timeline-recording > .timeline-overview):
(.content-view.timeline-recording > .view-container):
(.content-view.timeline-recording > .view-container > .timeline-view > .data-grid td):
(.content-view.timeline-recording > .view-container > .timeline-view > .data-grid table.data):
- UserInterface/Views/TimelineRecordingContentView.js: Renamed from Source/WebInspectorUI/UserInterface/Views/TimelineContentView.js.
Manage timeline views and path components dynamically. Adjust view heights as necessary. Append 'Element'
to some properties holding DOM elements.
(WebInspector.TimelineRecordingContentView):
(WebInspector.TimelineRecordingContentView.prototype.showOverviewTimelineView):
(WebInspector.TimelineRecordingContentView.prototype.showTimelineViewForTimeline):
(WebInspector.TimelineRecordingContentView.prototype.get allowedNavigationSidebarPanels):
(WebInspector.TimelineRecordingContentView.prototype.get supportsSplitContentBrowser):
(WebInspector.TimelineRecordingContentView.prototype.get navigationItems):
(WebInspector.TimelineRecordingContentView.prototype.get currentTimelineView):
(WebInspector.TimelineRecordingContentView.prototype.shown):
(WebInspector.TimelineRecordingContentView.prototype.hidden):
(WebInspector.TimelineRecordingContentView.prototype.filterDidChange):
(WebInspector.TimelineRecordingContentView.prototype.updateLayout):
(WebInspector.TimelineRecordingContentView.prototype.saveToCookie):
(WebInspector.TimelineRecordingContentView.prototype.restoreFromCookie):
(WebInspector.TimelineRecordingContentView.prototype.get matchTreeElementAgainstCustomFilters.checkTimeBounds):
(WebInspector.TimelineRecordingContentView.prototype.get matchTreeElementAgainstCustomFilters):
(WebInspector.TimelineRecordingContentView.prototype._pathComponentSelected):
(WebInspector.TimelineRecordingContentView.prototype._timelineViewSelectionPathComponentsDidChange):
(WebInspector.TimelineRecordingContentView.prototype._showTimelineView):
(WebInspector.TimelineRecordingContentView.prototype._update):
(WebInspector.TimelineRecordingContentView.prototype._updateTimes):
(WebInspector.TimelineRecordingContentView.prototype._startUpdatingCurrentTime):
(WebInspector.TimelineRecordingContentView.prototype._stopUpdatingCurrentTime):
(WebInspector.TimelineRecordingContentView.prototype._capturingStarted):
(WebInspector.TimelineRecordingContentView.prototype._capturingStopped):
(WebInspector.TimelineRecordingContentView.prototype._debuggerPaused):
(WebInspector.TimelineRecordingContentView.prototype._debuggerResumed):
Fix a minor regression where we make a useless call to stop updating the time.
(WebInspector.TimelineRecordingContentView.prototype._recordingTimesUpdated):
(WebInspector.TimelineRecordingContentView.prototype._clearTimeline):
(WebInspector.TimelineRecordingContentView.prototype._timelineRemoved):
(WebInspector.TimelineRecordingContentView.prototype._timelineCountChanged):
(WebInspector.TimelineRecordingContentView.prototype._recordingReset):
(WebInspector.TimelineRecordingContentView.prototype._recordingUnloaded):
(WebInspector.TimelineRecordingContentView.prototype._timeRangeSelectionChanged):
- UserInterface/Views/TimelineSidebarPanel.css:
(.sidebar > .panel.navigation.timeline.timeline-recording-content-view-showing > .content):
(.sidebar > .panel.navigation.timeline.timeline-content-view-showing > .content): Deleted.
- UserInterface/Views/TimelineSidebarPanel.js:
Manage timeline tree elements dynamically. Adjust view heights as necessary. Append 'Element'
to some properties holding DOM elements. Keep track of the displayed recording and view explicitly.
(WebInspector.TimelineSidebarPanel):
(WebInspector.TimelineSidebarPanel.prototype.shown):
(WebInspector.TimelineSidebarPanel.prototype.showDefaultContentView):
(WebInspector.TimelineSidebarPanel.prototype.treeElementForRepresentedObject.looselyCompareRepresentedObjects):
(WebInspector.TimelineSidebarPanel.prototype.showTimelineOverview):
(WebInspector.TimelineSidebarPanel.prototype.updateFilter):
(WebInspector.TimelineSidebarPanel.prototype.matchTreeElementAgainstCustomFilters):
(WebInspector.TimelineSidebarPanel.prototype.canShowDifferentContentView):
(WebInspector.TimelineSidebarPanel.prototype.saveStateToCookie):
(WebInspector.TimelineSidebarPanel.prototype.get if):
(WebInspector.TimelineSidebarPanel.prototype._contentBrowserCurrentContentViewDidChange):
(WebInspector.TimelineSidebarPanel.prototype._recordingCountChanged):
(WebInspector.TimelineSidebarPanel.prototype._recordingSelected):
(WebInspector.TimelineSidebarPanel.prototype._recordingLoaded):
(WebInspector.TimelineSidebarPanel.prototype._timelineRemoved):
(WebInspector.TimelineSidebarPanel.prototype._timelineCountChanged):
(WebInspector.TimelineSidebarPanel.createTimelineTreeElement): Deleted.
(WebInspector.TimelineSidebarPanel.prototype.restoreStateFromCookie):
- UserInterface/Views/TimelineView.css:
(.panel.navigation.timeline.timeline-recording-content-view-showing > .content > .navigation-sidebar-panel-content-tree-outline):
(.panel.navigation.timeline.timeline-content-view-showing > .content > .navigation-sidebar-panel-content-tree-outline): Deleted.
- 10:50 AM Changeset in webkit [180000] by
-
- 7 edits in trunk/Websites/perf.webkit.org
Perf dashboard should show the results of A/B testing
https://bugs.webkit.org/show_bug.cgi?id=141500
Reviewed by Chris Dumez.
Added the support for fetching test_runs for a specific test group in /api/runs/, and used it in the
analysis task page to fetch results for each test group.
Merged App.createChartData into App.Manifest.fetchRunsWithPlatformAndMetric so that App.BuildRequest
can use the formatter.
- public/api/runs.php:
(fetch_runs_for_config_and_test_group): Added.
(fetch_runs_for_config): Just return the fetched rows since main will format them with RunsGenerator.
(main): Use fetch_runs_for_config_and_test_group to fetch rows when a test group id is specified. Also
use RunsGenerator to format results.
(RunsGenerator): Added.
(RunsGenerator::construct): Added.
(RunsGenerator::add_runs): Added.
(RunsGenerator::format_run): Moved.
(RunsGenerator::parse_revisions_array): Moved.
- public/v2/analysis.js:
(App.TestGroup): Fixed a typo. The property on a test group that refers to an analysis task is "task".
(App.TestGroup._fetchChartData): Added. Fetches all A/B testing results for this group.
(App.BuildRequest.configLetter): Renamed from config since this returns a letter that identifies the
configuration associated with this build request such as "A" and "B".
(App.BuildRequest.statusLabel): Added the missing label for failed build requests.
(App.BuildRequest.url): Added. Returns the URL associated with this build request.
(App.BuildRequest._meanFetched): Added. Retrieve the mean and the build number for this request via
_fetchChartData.
- public/v2/app.js:
(App.Pane._fetch): Set chartData directly here.
(App.Pane._updateMovingAverageAndEnvelope): Renamed from _computeChartData. No longer sets chartData
now that it's done in App.Pane._fetch.
(App.AnalysisTaskController._fetchedRuns): Updated per createChartData merge.
- public/v2/data.js:
(Measurement.prototype.buildId): Added.
(TimeSeries.prototype.findPointByBuild): Added.
- public/v2/index.html: Fixed a bug that build status URL was broken. We can't use link-to helper since
url is not an Ember routed path.
- public/v2/manifest.js:
(App.Manifest.fetchRunsWithPlatformAndMetric): Takes testGroupId as the third argument. Merged
App.createChartData here so that App.BuildRequest can use the formatter
- 10:42 AM Changeset in webkit [179999] by
-
- 9 edits in trunk/Source/WebInspectorUI
Web Inspector: Large background image fails to load in inspector
https://bugs.webkit.org/show_bug.cgi?id=141405
Reviewed by Timothy Hatcher.
Convert base64-encoded resource data to binary data using Uint8Array and Blobs.
Use object URLs for blobs instead of data URLs when setting image 'src' attribute
and in @font-face urls. This conversion happens when the backend indicates that
resource content is base64-encoded.
Update image and font clients of resource-fetching functionality so that they use
object URLs correctly. Add some plumbing so that Blobs can be constructed with
the correct mime-type.
- UserInterface/Base/Utilities.js:
(decodeBase64ToBlob): Added.
- UserInterface/Models/CSSStyleSheet.js:
(WebInspector.CSSStyleSheet.prototype.get mimeType): Added.
- UserInterface/Models/Resource.js:
(WebInspector.Resource.prototype.createObjectURL): Added.
(WebInspector.Resource.prototype.getImageSize.imageDidLoad):
(WebInspector.Resource.prototype.getImageSize):
(WebInspector.Resource.prototype.get contentURL): Deleted.
- UserInterface/Models/Script.js:
(WebInspector.Script.prototype.get mimeType): Added.
- UserInterface/Models/SourceCode.js:
(WebInspector.SourceCode.prototype.get mimeType): Added.
(WebInspector.SourceCode.prototype._processContent):
(WebInspector.SourceCode.prototype.get contentIsBase64Encoded): Deleted.
- UserInterface/Models/SourceCodeRevision.js:
(WebInspector.SourceCodeRevision):
(WebInspector.SourceCodeRevision.prototype.copy):
(WebInspector.SourceCodeRevision.prototype.get contentIsBase64Encoded): Deleted.
(WebInspector.SourceCodeRevision.prototype.set contentIsBase64Encoded): Deleted.
- UserInterface/Views/FontResourceContentView.js:
(WebInspector.FontResourceContentView.prototype.hidden):
(WebInspector.FontResourceContentView.prototype.closed):
- UserInterface/Views/ImageResourceContentView.js:
(WebInspector.ImageResourceContentView.prototype.contentAvailable):
- 10:35 AM Changeset in webkit [179998] by
-
- 2 edits in trunk/Tools
run-jsc-stress-tests --remote should be able add the necessary libraries to the bundle on Linux
https://bugs.webkit.org/show_bug.cgi?id=141202
Reviewed by Darin Adler.
- Scripts/run-jsc-stress-tests:
- 10:21 AM Changeset in webkit [179997] by
-
- 2 edits in trunk/Source/WebCore
REGRESSION(r178060): empty arguments are passed when logging to system console
https://bugs.webkit.org/show_bug.cgi?id=141511
Reviewed by Timothy Hatcher.
- page/PageConsoleClient.cpp:
(WebCore::PageConsoleClient::messageWithTypeAndLevel): Change premature move to copyRef.
- 9:48 AM Changeset in webkit [179996] by
-
- 2 edits in trunk/Tools
[Win] Test bot infrastructure should not try to find/use old Safari DLLs
https://bugs.webkit.org/show_bug.cgi?id=141517
Reviewed by Anders Carlsson.
We do not need to locate or use the DLL's that came with Safari, so stop
failing when we cannot find them. Also remove some old Qt cruft from this
script.
- BuildSlaveSupport/built-product-archive:
(archiveBuiltProduct):
(extractBuiltProduct):
- 9:44 AM Changeset in webkit [179995] by
-
- 3 edits in branches/safari-600.5-branch/Source/WebCore
<rdar://problem/17889529> CrashTracer: [USER] com.apple.WebKit.WebContent at com.apple.WebCore: WebCore::SharedBuffer::createPurgeableBuffer const + 14
Reviewed by NOBODY (OOPS!).
Speculative fix for the above crash. The current theory is that a timer is being fired for a
CachedResource that has been freed. Add a marker field in CachedResource to do an early
return from CachedResource::makePurgeable() when this happens.
No new tests because I can't reproduce the crash.
- loader/cache/CachedResource.cpp:
(WebCore::CachedResource::CachedResource):
(WebCore::CachedResource::~CachedResource):
(WebCore::CachedResource::makePurgeable):
- loader/cache/CachedResource.h:
- 9:37 AM Changeset in webkit [179994] by
-
- 7 edits2 adds in branches/safari-600.5-branch
Merge r179883. rdar://problem/19790645
- 9:30 AM WebKitGTK/Eclipse edited by
- (diff)
- 9:20 AM Changeset in webkit [179993] by
-
- 19 edits2 adds in trunk
[Win] [64-bit] Work around MSVC2013 Runtime Bug
https://bugs.webkit.org/show_bug.cgi?id=141498
<rdar://problem/19803642>
Reviewed by Anders Carlsson.
Disable FMA3 instruction use in the MSVC math library to
work around a VS2013 runtime crash. We can remove this
workaround when we switch to VS2015.
Source/JavaScriptCore:
- API/tests/testapi.c: Call _set_FMA3_enable(0) to disable
FMA3 support.
- JavaScriptCore.vcxproj/JavaScriptCore.vcxproj: Add new files.
- JavaScriptCore.vcxproj/JavaScriptCore.vcxproj.filters: Ditto.
- JavaScriptCore.vcxproj/JavaScriptCoreDLL.cpp: Added.
- JavaScriptCore.vcxproj/jsc/DLLLauncherMain.cpp: Call _set_FMA3_enable(0)
to disable FMA3 support.
- jsc.cpp: Ditto.
- testRegExp.cpp: Ditto.
Source/WebKit/win:
- WebKitDLL.cpp: Call _set_FMA3_enable(0) to disable FMA3 support.
Source/WTF:
- WTF.vcxproj/WTF.vcxproj: Add new files.
- WTF.vcxproj/WTF.vcxproj.filters: Ditto.
- wtf/win/WTFDLL.cpp: Added.
Tools:
- DumpRenderTree/cg/ImageDiffCG.cpp: Call _set_FMA3_enable(0) to
disable FMA3 support.
- DumpRenderTree/win/DumpRenderTree.cpp: Ditto.
- DumpRenderTree/win/ImageDiffCairo.cpp: Ditto.
- DumpRenderTree/win/TestRunnerWin.cpp: Ditto.
- Scripts/webkitperl/httpd.pm: Ditto.
- TestWebKitAPI/win/main.cpp: Ditto.
- WinLauncher/Common.cpp: Ditto.
- win/DLLLauncher/DLLLauncherMain.cpp: Ditto.
- 9:12 AM Changeset in webkit [179992] by
-
- 2 edits in branches/safari-600.5-branch/Source/WebKit
Merge r178470. rdar://problem/19739095
- 9:12 AM WebKitGTK/Eclipse edited by
- (diff)
- 8:48 AM Changeset in webkit [179991] by
-
- 2 edits in trunk/Source/WebCore
[Win] Unreviewed debug build fix after r179980.
- svg/SVGSVGElement.cpp:
(WebCore::SVGSVGElement::currentViewportSize):
Explicitly call constructor.
- 8:35 AM Changeset in webkit [179990] by
-
- 2 edits in trunk/LayoutTests
Unreviewed, EFL gardening. Two tests have been failing since r148090.
- platform/efl/TestExpectations: Skip 2 failure tests.
- 8:32 AM Changeset in webkit [179989] by
-
- 2 edits in trunk/Websites/perf.webkit.org
v2 UI should adjust the number of ticks on dashboards based on screen size
https://bugs.webkit.org/show_bug.cgi?id=141502
Reviewed by Chris Dumez.
- public/v2/interactive-chart.js:
(App.InteractiveChartComponent._updateDimensionsIfNeeded): Compute the number of ticks based on the
content size.
- 8:25 AM Changeset in webkit [179988] by
-
- 2 edits in trunk/LayoutTests
Unreviewed, EFL gardening.
- platform/efl/TestExpectations: Mark two tests failing since r177664.
- 8:14 AM Changeset in webkit [179987] by
-
- 7 edits2 adds in trunk
[CSS Grid Layout] Invalid initialization of track sizes with non spanning grid items
https://bugs.webkit.org/show_bug.cgi?id=140763
Reviewed by Antti Koivisto.
Source/WebCore:
Content sized tracks with non-spanning grid items were not
properly sized because the growth limit was sometimes infinity
(-1) after calling resolveContentBasedTrackSizingFunctions() when
it should not. This patch adds an special initialization phase for
non-spanning grid items as the new track sizing algorithm
describes.
Granted, that was handled in the old algorithm in
distributeSpaceToTracks() as a special case. The problem is that
it regressed after the optimization added in r173868 because that
method is no longer called when the space to distribute is 0.
That's why we could fix this by allowing calls to
distributeSpaceToTracks() with spaceToDistribute>=0 but by fixing
it with an explicit initialization our implementation becomes
closer to the new algorithm and the initialization is now explicit
in the code instead of a side effect of calling
distributeSpaceToTracks() with no space to be distributed. It also
brings a slight performance improvement as we save sorts and hash
lookups.
I also took the change to add caching to several GridTrackSize
methods that were hot on the profiler (each one accounted for ~1%
of the total time, now they account for ~0.3% each).
Test: fast/css-grid-layout/grid-initialize-span-one-items.html
- rendering/RenderGrid.cpp:
(WebCore::GridItemWithSpan::span): New helper method for ASSERTs.
(WebCore::RenderGrid::resolveContentBasedTrackSizingFunctions):
Exclude non spanning grid items from the calls to
resolveContentBasedTrackSizingFunctionsForItems().
(WebCore::RenderGrid::resolveContentBasedTrackSizingFunctionsForNonSpanningItems):
New method to resolve track sizes only using non-spanning grid
items.
(WebCore::RenderGrid::resolveContentBasedTrackSizingFunctionsForItems):
Ensure that it isn't called for non-spanning grid items.
- rendering/RenderGrid.h:
- rendering/style/GridTrackSize.h:
(WebCore::GridTrackSize::GridTrackSize): Cache return values.
(WebCore::GridTrackSize::setLength): Ditto.
(WebCore::GridTrackSize::setMinMax): Ditto.
(WebCore::GridTrackSize::cacheMinMaxTrackBreadthTypes): New method
that caches the return values for hasXXXTrackBreadth() methods.
(WebCore::GridTrackSize::hasMinOrMaxContentMinTrackBreadth): Use
the cached return value.
(WebCore::GridTrackSize::hasMaxContentMaxTrackBreadth): Ditto.
(WebCore::GridTrackSize::hasMinContentMaxTrackBreadth): Ditto.
(WebCore::GridTrackSize::hasMinOrMaxContentMaxTrackBreadth): Ditto.
(WebCore::GridTrackSize::hasMaxContentMinTrackBreadth): Ditto.
(WebCore::GridTrackSize::hasMinContentMinTrackBreadth): Ditto.
(WebCore::GridTrackSize::hasMinContentMinTrackBreadthAndMinOrMaxContentMaxTrackBreadth):
Ditto.
(WebCore::GridTrackSize::hasMaxContentMinTrackBreadthAndMaxContentMaxTrackBreadth):
Ditto.
LayoutTests:
- fast/css-grid-layout/grid-content-sized-columns-resolution-expected.txt:
- fast/css-grid-layout/grid-content-sized-columns-resolution.html:
- fast/css-grid-layout/grid-initialize-span-one-items-expected.txt: Added.
- fast/css-grid-layout/grid-initialize-span-one-items.html: Added.
- 8:08 AM Changeset in webkit [179986] by
-
- 3 edits in trunk/Tools
run-jsc-stress-tests should accept remote host config from JSON file
https://bugs.webkit.org/show_bug.cgi?id=141509
Reviewed by Michael Saboff.
- Scripts/run-javascriptcore-tests:
(runJSCStressTests):
- Scripts/run-jsc-stress-tests:
- 8:04 AM HackingWebInspector edited by
- (diff)
- 6:25 AM Changeset in webkit [179985] by
-
- 2 edits in trunk/Source/WebCore
Remove the USE(ACCELERATED_COMPOSITING) guard from the
MediaPlayerPrivateGStreamerBase destructor.
The guard was removed in r163079. It was still defined through CMake
for the EFL and GTK ports when the guarded code was introduced in
r172828. In r171741 the macro was finally removed for the GTK and EFL
ports as well, but the guards for the affected code weren't updated
so TextureMapperPlatformLayer::Client::platformLayerWillBeDestroyed()
wasn't being called anymore.
Rubber-stamped by Philippe Normand.
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
(WebCore::MediaPlayerPrivateGStreamerBase::~MediaPlayerPrivateGStreamerBase):
- 5:54 AM WebKitGTK edited by
- (diff)
- 5:49 AM WebKitGTK/Eclipse edited by
- (diff)
- 5:41 AM WebKitGTK/Eclipse created by
- 5:11 AM WebKitGTK/Roadmap edited by
- (diff)
- 3:29 AM WebKitGTK/SpeedUpBuild edited by
- (diff)
- 2:48 AM WebKitGTK/SpeedUpBuild edited by
- (diff)
- 12:50 AM Changeset in webkit [179984] by
-
- 12 edits5 adds in trunk
[GTK] Add API to allow overriding the default color chooser implementation
https://bugs.webkit.org/show_bug.cgi?id=98935
Reviewed by Gustavo Noronha Silva.
Source/WebKit2:
Add API to allow the user to override the default UI of color
chooser. Similar to the file chooser API, a new run-color-chooser
signal is added to WebKitWebView that passes a WebKitColorChooserRequest
parameter to the signal.
Initial patch by Arnaud Renevier <a.renevier@sisa.samsung.com>.
- PlatformGTK.cmake: Add new files to compilation.
- UIProcess/API/gtk/PageClientImpl.cpp:
(WebKit::PageClientImpl::createColorPicker): Create a
WebKitColorChooser is the view widget is a WebKitWebView or a
WebColorPicker otherwise,
- UIProcess/API/gtk/WebKitColorChooser.cpp: Added.
(WebKit::WebKitColorChooser::create):
(WebKit::WebKitColorChooser::WebKitColorChooser):
(WebKit::WebKitColorChooser::~WebKitColorChooser):
(WebKit::WebKitColorChooser::endPicker): Chain up to parent class
when not having a request, or finish the request if we have one.
(WebKit::WebKitColorChooser::colorChooserRequestFinished):
(WebKit::WebKitColorChooser::colorChooserRequestRGBAChanged):
(WebKit::WebKitColorChooser::showColorPicker): Create a new
WebKitColorChooserRequest and emit WebKitWebView::run-color-chooser.
If the signal is not handled, fallback to the default color
chooser dialog implemented by the parent class.
- UIProcess/API/gtk/WebKitColorChooser.h: Added.
- UIProcess/API/gtk/WebKitColorChooserRequest.cpp: Added.
(webkitColorChooserRequestGetProperty):
(webkitColorChooserRequestSetProperty):
(webkit_color_chooser_request_class_init):
(webkit_color_chooser_request_set_rgba):
(webkit_color_chooser_request_get_rgba):
(webkit_color_chooser_request_get_element_rectangle):
(webkit_color_chooser_request_finish):
(webkit_color_chooser_request_cancel):
(webkitColorChooserRequestCreate):
- UIProcess/API/gtk/WebKitColorChooserRequest.h: Added.
- UIProcess/API/gtk/WebKitColorChooserRequestPrivate.h: Added.
- UIProcess/API/gtk/WebKitWebView.cpp:
(webkit_web_view_class_init): Add run-color-chooser signal.
(webkitWebViewEmitRunColorChooser): Emit run-color-chooser signal.
- UIProcess/API/gtk/WebKitWebView.h:
- UIProcess/API/gtk/WebKitWebViewPrivate.h:
- UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt: Add new symbols.
- UIProcess/API/gtk/docs/webkit2gtk-docs.sgml: Add new section for WebKitColorChooserRequest.
- UIProcess/API/gtk/webkit2.h: Include WebKitColorChooserRequest.h
Tools:
Add a color chooser implementation for MiniBrowser using
GtkPopover when the GTK+ version is recent enough.
And a test case to check the new color chooser API.
- MiniBrowser/gtk/BrowserWindow.c:
(colorChooserRGBAChanged):
(popoverColorClosed):
(colorChooserRequestFinished):
(runColorChooserCallback):
(browserWindowConstructed):
- TestWebKitAPI/Tests/WebKit2Gtk/TestUIClient.cpp:
(testWebViewColorChooserRequest):
(beforeAll):