Timeline



Sep 8, 2014:

11:36 PM Changeset in webkit [173421] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Minor refactor in CSSComputedStyleDeclaration
https://bugs.webkit.org/show_bug.cgi?id=136664

Reviewed by Darin Adler.

The "if (length.isPercentNotCalculated()) createValue() else zoomAdjustedPixelValue()"
pattern occurred a number of times here, so factor into percentageOrZoomAdjustedValue().

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::positionOffsetValue): l -> length
(WebCore::percentageOrZoomAdjustedValue):
(WebCore::getBorderRadiusCornerValues):
(WebCore::getBorderRadiusCornerValue):
(WebCore::scrollSnapDestination):
(WebCore::scrollSnapPoints):
(WebCore::scrollSnapCoordinates):

11:34 PM Changeset in webkit [173420] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WebKit2

[WebKit2] Fix build error in WebKit2/WebProcess module
https://bugs.webkit.org/show_bug.cgi?id=136667

Patch by Shivakumar JM <shiva.jm@samsung.com> on 2014-09-08
Reviewed by Darin Adler.

Fix the build error by handling default case.

  • WebProcess/Network/WebResourceLoadScheduler.cpp:

(WebKit::maximumBufferingTime):

11:07 PM Changeset in webkit [173419] by ap@apple.com
  • 2 edits in trunk/Source/WebCore

Application Cache Storage: failed to execute statement "DELETE FROM CacheGroups" error "no such table: CacheGroups"
https://bugs.webkit.org/show_bug.cgi?id=136647

Reviewed by Darin Adler.

  • loader/appcache/ApplicationCacheStorage.cpp: (WebCore::ApplicationCacheStorage::verifySchemaVersion):

Don't try to delete the tables if we can't expect to have them yet.

7:56 PM Changeset in webkit [173418] by mmaxfield@apple.com
  • 6 edits
    2 adds in trunk

REGRESSION (r172153): Text drawn with wrong color when second text shadow has zero offset and blur (breaks buttons at aws.amazon.com)
https://bugs.webkit.org/show_bug.cgi?id=136612

Reviewed by Darin Adler.

Source/WebCore:

r172153 was fundamentally broken, and would restore graphics contexts that had never been saved. This patch
reimplements r172153 by using "continue" to skip loop iterations instead of changing the internal logic of
the loop.

In addition, I have refactored InlineTextBox::applyShadowToGraphicsContext() to take an extra boolean
reference as an out parameter in order to make it obvious it if saved a graphics context that needs
to be restored. This should make it less likely to make these kinds of mistakes in the future.

Test: fast/text/empty-shadow-with-color.html

  • rendering/InlineTextBox.cpp:

(WebCore::InlineTextBox::applyShadowToGraphicsContext): Add bool reference out param.

  • rendering/InlineTextBox.h: Ditto.
  • rendering/TextPainter.cpp:

(WebCore::isEmptyShadow): Change logic to not skip loop iterations on a null shadow.
(WebCore::paintTextWithShadows): Use continue to skip loop iterations for empty shadows. In addition,
use the out param in InlineTextBox::applyShadowToGraphicsContext().

  • rendering/svg/SVGInlineTextBox.cpp:

(WebCore::SVGInlineTextBox::paintTextWithShadows): Update for new sigurature of
InlineTextBox::applyShadowToGraphicsContext().

LayoutTests:

Make sure that text is drawn with correct color when second text shadow has zero offset and blur

  • fast/text/empty-shadow-with-color-expected.html: Added.
  • fast/text/empty-shadow-with-color.html: Added.
7:31 PM Changeset in webkit [173417] by mmaxfield@apple.com
  • 2 edits in trunk/PerformanceTests

PerformanceTests/SVG/SVG-Text.html has unparsable output
https://bugs.webkit.org/show_bug.cgi?id=136648

Reviewed by Gavin Barraclough.

I need to clean up the arbitrary text on the page before telling
the test runner infrastructure that the test is complete.

  • SVG/SVG-Text.html:
7:03 PM Changeset in webkit [173416] by roger_fong@apple.com
  • 2 edits in trunk/LayoutTests

Unreviewed. More webgl conformance test gardening.

  • platform/mac/TestExpectations:
6:46 PM Changeset in webkit [173415] by mjs@apple.com
  • 2 edits in trunk/Source/WebKit/mac

Fix 32-bit Mac build for new warnings
https://bugs.webkit.org/show_bug.cgi?id=136624

Reviewed by Darin Adler.

(Jessie already fixed this but my version with typedefs seems a tiny bit cleaner.)

  • Carbon/HIViewAdapter.m:

(+[HIViewAdapter bindHIViewToNSView:nsView:]): Need to use explicit casting now.

6:39 PM Changeset in webkit [173414] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/Tools

[EFL] Enable fixed layout by default
https://bugs.webkit.org/show_bug.cgi?id=136607

Reviewed by Csaba Osztrogonác.

Fixed layout is being used by Tizen platform by default. However, the feature
has still many defects now. So, we need to enable it by default, then should fix
those bugs.

  • MiniBrowser/efl/main.c:
5:34 PM Changeset in webkit [173413] by fpizlo@apple.com
  • 22 edits
    2 adds in trunk/Source

DFG should have a reusable SSA builder
https://bugs.webkit.org/show_bug.cgi?id=136331

Reviewed by Oliver Hunt.

Source/JavaScriptCore:

We want to implement sophisticated SSA transformations like object allocation sinking
(https://bugs.webkit.org/show_bug.cgi?id=136330), but to do that, we need to be able to do
updates to SSA that require inserting new Phi's. This requires calculating where Phis go.
Previously, our Phi calculation was based on Aycock and Horspool's algorithm, and our
implementation of this algorithm only worked when doing CPS->SSA conversion. The code
could not be reused for cases where some phase happens to know that it introduced a few
defs in some blocks and it wants to figure out where the Phis should go. Moreover, even
the general algorithm of Aycock and Horspool is not well suited to such targetted SSA
updates, since it requires first inserting maximal Phis. That scales well when the Phis
were already there (like in our CPS form) but otherwise it's quite unnatural and may be
difficult to make efficient.

The usual way of handling both SSA conversion and SSA update is to use Cytron et al's
algorithm based on dominance frontiers. For a while now, I've been working on creating a
Cytron-based SSA calculator that can be used both as a replacement for our current SSA
converter and as a reusable tool for any phase that needs to do SSA update. I previously
optimized our dominator calculation and representation to use dominator trees computed
using Lengauer and Tarjan's algorithm - mainly to make it more scalable to enumerate over
the set of blocks that dominate you or vice-versa, and then I implemented a dominance
frontier calculator. This patch implements the final step towards making SSA update
available to all SSA phases: it implements an SSACalculator that can tell you where Phis
go when given an arbitrary set of Defs. To keep things simple, and to ensure that we have
good test coverage for this SSACalculator, this patch replaces the old Aycock-Horspool
SSA converter with one based on the SSACalculator.

This has no observable impact. It does reduce the amount of code in SSAConversionPhase.
But even better, it makes SSAConversionPhase have significantly less tricky logic. It
mostly just relies on SSACalculator to do the tricky stuff, and SSAConversionPhase mostly
just reasons about the weirdnesses unique to the ThreadedCPS form that it sees as input.
In fact, using the Cytron et al approach means that there isn't really any "smoke and
mirrors" trickyness related to SSA. SSACalculator's only "tricks" are using the pruned
iterated dominance frontier to place Phi's and using the dom tree to find reaching defs.
The complexity is mostly confined to Dominators, which computes various dominator-related
properties over the control flow graph. That class can be difficult to understand, but at
least it follows well-known graph theory wisdom.

  • CMakeLists.txt:
  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • dfg/DFGAnalysis.h:
  • dfg/DFGCSEPhase.cpp:
  • dfg/DFGDCEPhase.cpp:

(JSC::DFG::DCEPhase::run):

  • dfg/DFGDominators.h:

(JSC::DFG::Dominators::immediateDominatorOf):
(JSC::DFG::Dominators::forAllBlocksInIteratedDominanceFrontierOf):
(JSC::DFG::Dominators::forAllBlocksInPrunedIteratedDominanceFrontierOf):

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::dump):
(JSC::DFG::Graph::blocksInPreOrder):
(JSC::DFG::Graph::blocksInPostOrder):
(JSC::DFG::Graph::getBlocksInPreOrder): Deleted.
(JSC::DFG::Graph::getBlocksInPostOrder): Deleted.

  • dfg/DFGGraph.h:
  • dfg/DFGLICMPhase.cpp:

(JSC::DFG::LICMPhase::run):

  • dfg/DFGNodeFlags.h:
  • dfg/DFGPhase.cpp:

(JSC::DFG::Phase::beginPhase):
(JSC::DFG::Phase::endPhase):

  • dfg/DFGPhase.h:
  • dfg/DFGSSACalculator.cpp: Added.

(JSC::DFG::SSACalculator::Variable::dump):
(JSC::DFG::SSACalculator::Variable::dumpVerbose):
(JSC::DFG::SSACalculator::Def::dump):
(JSC::DFG::SSACalculator::SSACalculator):
(JSC::DFG::SSACalculator::~SSACalculator):
(JSC::DFG::SSACalculator::newVariable):
(JSC::DFG::SSACalculator::newDef):
(JSC::DFG::SSACalculator::nonLocalReachingDef):
(JSC::DFG::SSACalculator::reachingDefAtTail):
(JSC::DFG::SSACalculator::dump):

  • dfg/DFGSSACalculator.h: Added.

(JSC::DFG::SSACalculator::Variable::index):
(JSC::DFG::SSACalculator::Variable::Variable):
(JSC::DFG::SSACalculator::Def::variable):
(JSC::DFG::SSACalculator::Def::block):
(JSC::DFG::SSACalculator::Def::value):
(JSC::DFG::SSACalculator::Def::Def):
(JSC::DFG::SSACalculator::variable):
(JSC::DFG::SSACalculator::computePhis):
(JSC::DFG::SSACalculator::phisForBlock):
(JSC::DFG::SSACalculator::reachingDefAtHead):

  • dfg/DFGSSAConversionPhase.cpp:

(JSC::DFG::SSAConversionPhase::SSAConversionPhase):
(JSC::DFG::SSAConversionPhase::run):
(JSC::DFG::SSAConversionPhase::forwardPhiChildren): Deleted.
(JSC::DFG::SSAConversionPhase::forwardPhi): Deleted.
(JSC::DFG::SSAConversionPhase::forwardPhiEdge): Deleted.
(JSC::DFG::SSAConversionPhase::deduplicateChildren): Deleted.

  • dfg/DFGSSAConversionPhase.h:
  • dfg/DFGValidate.cpp:

(JSC::DFG::Validate::Validate):
(JSC::DFG::Validate::dumpGraphIfAppropriate):
(JSC::DFG::validate):

  • dfg/DFGValidate.h:
  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::LowerDFGToLLVM::lower):

  • runtime/Options.h:

Source/WTF:

Update the alloc() method to use variadic templates. This makes it more natural to use.

  • wtf/SegmentedVector.h:

(WTF::SegmentedVector::alloc):

5:33 PM Changeset in webkit [173412] by Lucas Forschler
  • 5 edits in branches/safari-600.1-branch/Source

Versioning.

5:24 PM Changeset in webkit [173411] by Lucas Forschler
  • 1 copy in tags/Safari-600.1.21

New Tag.

5:21 PM Changeset in webkit [173410] by commit-queue@webkit.org
  • 54 edits
    2 deletes in trunk/Source

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

Breaking buildw with error "unable to restore file position to
0x00000c60 for section DWARF.debug_info (errno = 9)"
(Requested by mlam_ on #webkit).

Reverted changeset:

"Move CallFrame and Register inlines functions out of
JSScope.h."
https://bugs.webkit.org/show_bug.cgi?id=136579
http://trac.webkit.org/changeset/173402

5:18 PM Changeset in webkit [173409] by roger_fong@apple.com
  • 2 edits in trunk/LayoutTests

Unreviewed. Skip some WebGL conformance tests that may be passing on the bots now.

  • platform/mac/TestExpectations:
5:08 PM Changeset in webkit [173408] by roger_fong@apple.com
  • 2 edits in branches/safari-600.1-branch/Source/ThirdParty

Unreviewed build fix for FHPrime 64bit builds.

  • gtest/msvc/gtest-md.vcxproj:
5:02 PM Changeset in webkit [173407] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebInspectorUI

Web Inspector: Inspector frequently restores wrong view when opened (often Timelines instead of Resource)
https://bugs.webkit.org/show_bug.cgi?id=135965

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-09-08
Reviewed by Timothy Hatcher.

There were numerous subtle race conditions in state restoration.
This patch intends to fix a number of them to get what feels
like sane behavior for selected sidebar state restoration.

  1. Starting a Timeline recording no longer automatically switches to the TimelineContentView.

This was making every reload switch to Timelines. If you had
a resource selected (e.g. the DOM Tree) we should go back
to showing the DOM tree.

  1. Background sidebars should not reveal and select tree elements.

This was making resources get selected in Timelines when reloading the page
because the background Resources sidebar was restoring selection of the resource.
That is an unexpected selection and breaks the experience of Timelines.

  1. ContentView changes during page navigation / reload should not be saved, and improve Resource restoration.

If a TimelineContentView was in the ContentBrowser back/forward history,
a reload with a resource selected in the Resources sidebar would end up
showing the Timelines sidebar. This was because when ContentViews are
closed during the navigation, the ContentBrowser would fall back to the
remaining TimelineContentView and switch to its only allowed sidebar
(Timelines). ResourceSidebarPanel, knowing a resource was selected,
would select the MainFrame intending to stay in the Resource sidebar,
but the resource is okay with showing in any sidebar, so we stay on Timelines.

  1. Resource sidebar state restoration should propertly restore selection.

On reload, state restoration would know the resource to re-select in the
Resources sidebar. As ResourceTreeElements are added to the sidebar
they are checked against the state restoration cookie. If they match,
they would select the element and delete the cookie. Unfortunately,
if this was the first TreeElement child being added to a FrameTreeElement,
the FrameTreeElement onpopulate would remove all children and re-add
them in a unique way. Unfortunately this means the TreeElement we
selected based on the cookie, immediately got thrown away and recreated,
and we no longer reveal and select it. This is a special case for
FrameTreeElements which use the onpopulate SPI. So, instead of starting
processing the new element queue, if this is the first time just trigger
the onpopulate and elements are made just once.

  1. Show Error Console triggering early, could have unexpected sidebar behavior.

Opening Web Inspector directly to the console can run before
WebInspector.contentLoaded (DOMContentLoaded). So in that case
WebInspector.showFullHeightConsole was not handling if the contentBrowser
had no content view yet, and the sidebar might be-reopened later on
in contentLoaded based on the setting value.

  1. Improve automatic resource selection for sidebars with multiple tree outlines.

Selecting a call frame tree element was unexpectedly changing the
selection to a Resource where the breakpoint was set. This was
because we were only looking at one of potentially many content
tree outlines in the sidebar to see if there was a user action.

  • UserInterface/Base/Main.js:

(WebInspector.contentLoaded):
(WebInspector.showFullHeightConsole):
(WebInspector.toggleConsoleView):
(WebInspector._mainResourceDidChange):
(WebInspector._provisionalLoadStarted):
(WebInspector._revealAndSelectRepresentedObjectInNavigationSidebar):
(WebInspector._updateCookieForInspectorViewState):
(WebInspector._contentBrowserCurrentContentViewDidChange):

  • UserInterface/Views/NavigationSidebarPanel.js:

(WebInspector.NavigationSidebarPanel.prototype._treeElementAddedOrChanged):

  • UserInterface/Views/ResourceSidebarPanel.js:

(WebInspector.ResourceSidebarPanel.prototype._mainFrameMainResourceDidChange.delayedWork):
(WebInspector.ResourceSidebarPanel.prototype._mainFrameMainResourceDidChange):

  • UserInterface/Views/TimelineSidebarPanel.js:

(WebInspector.TimelineSidebarPanel.prototype._recordingLoaded):

5:00 PM Changeset in webkit [173406] by commit-queue@webkit.org
  • 5 edits
    3 adds in trunk

Web Inspector: Add layout test for lowercase CSSProperty names
https://bugs.webkit.org/show_bug.cgi?id=135961

Patch by Matt Baker <Matt Baker> on 2014-09-08
Reviewed by Joseph Pecoraro.

Source/WebInspectorUI:

Modified test components to support testing CSSStyleManager and related classes:

  • Added required models to Test.html
  • Added CSSCompletions initialization to Test.js
  • CSSCompletions doesn't assume presence of CodeMirror.
  • UserInterface/Base/Test.js:

(WebInspector.loaded):

  • UserInterface/Models/CSSCompletions.js:
  • UserInterface/Test.html:

LayoutTests:

Added test to check that property names in matched CSS rules are returned in lowercase
when specified with upper or mixed case in the original CSS source.

  • inspector/css/matched-style-properties-expected.txt: Added.
  • inspector/css/matched-style-properties.html: Added.
4:59 PM Changeset in webkit [173405] by commit-queue@webkit.org
  • 5 edits in trunk

Web Inspector: Fixes to layout test infrastructure
https://bugs.webkit.org/show_bug.cgi?id=136360

Patch by Matt Baker <Matt Baker> on 2014-09-08
Reviewed by Joseph Pecoraro.

Source/WebInspectorUI:

Added missing includes to Test.html, which was breaking tests that
depended on SourceCodeLocation and LazySourceCodeLocation. Also fixed
bug which prevented test results from being resent after reloading the
page under test.

  • UserInterface/Base/Test.js:

(InspectorTest.reloadPage):

  • UserInterface/Test.html:

LayoutTests:

Updated expected results to reflect breakpoint resolution changes in r171784.

  • inspector/debugger/probe-manager-add-remove-actions-expected.txt:
4:54 PM Changeset in webkit [173404] by bshafiei@apple.com
  • 5 edits in branches/safari-600.1.4.11-branch/Source

Versioning.

4:41 PM Changeset in webkit [173403] by bshafiei@apple.com
  • 1 copy in tags/Safari-600.1.4.11.5

New tag.

3:58 PM Changeset in webkit [173402] by mark.lam@apple.com
  • 54 edits
    2 adds in trunk/Source

Move CallFrame and Register inlines functions out of JSScope.h.
<https://webkit.org/b/136579>

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

This include fixing up some files to #include JSCInlines.h to pick up
these inline functions. I also added JSCellInlines.h to JSCInlines.h
since it is included from many of the affected .cpp files.

  • API/ObjCCallbackFunction.mm:
  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj.filters:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • bindings/ScriptValue.cpp:
  • inspector/InjectedScriptHost.cpp:
  • inspector/InjectedScriptManager.cpp:
  • inspector/JSGlobalObjectInspectorController.cpp:
  • inspector/JSJavaScriptCallFrame.cpp:
  • inspector/ScriptDebugServer.cpp:
  • interpreter/CallFrameInlines.h:

(JSC::CallFrame::vm):
(JSC::CallFrame::lexicalGlobalObject):
(JSC::CallFrame::globalThisValue):

  • interpreter/RegisterInlines.h: Added.

(JSC::Register::operator=):
(JSC::Register::scope):

  • runtime/ArgumentsIteratorConstructor.cpp:
  • runtime/JSArrayIterator.cpp:
  • runtime/JSCInlines.h:
  • runtime/JSCJSValue.cpp:
  • runtime/JSMapIterator.cpp:
  • runtime/JSPromiseConstructor.cpp:
  • runtime/JSPromiseDeferred.cpp:
  • runtime/JSPromiseFunctions.cpp:
  • runtime/JSPromisePrototype.cpp:
  • runtime/JSPromiseReaction.cpp:
  • runtime/JSScope.h:

(JSC::Register::operator=): Deleted.
(JSC::Register::scope): Deleted.
(JSC::ExecState::vm): Deleted.
(JSC::ExecState::lexicalGlobalObject): Deleted.
(JSC::ExecState::globalThisValue): Deleted.

  • runtime/JSSetIterator.cpp:
  • runtime/MapConstructor.cpp:
  • runtime/MapData.cpp:
  • runtime/MapIteratorPrototype.cpp:
  • runtime/MapPrototype.cpp:
  • runtime/SetConstructor.cpp:
  • runtime/SetIteratorPrototype.cpp:
  • runtime/SetPrototype.cpp:
  • runtime/WeakMapConstructor.cpp:
  • runtime/WeakMapPrototype.cpp:

Source/WebCore:

No new tests.

Added #include of the appropriate *Inlines.h files. Unlike in
JavaScriptCore, I #include'd the specific needed *Inlines.h instead of
JSCInlines.h. This is done to minimize the need for WebCore to be
rebuilt when JSC changes are introduced.

  • ForwardingHeaders/interpreter/RegisterInlines.h: Added.
  • bindings/js/JSAudioBufferSourceNodeCustom.cpp:
  • bindings/js/JSAudioTrackCustom.cpp:
  • bindings/js/JSBiquadFilterNodeCustom.cpp:
  • bindings/js/JSCSSStyleDeclarationCustom.cpp:
  • bindings/js/JSCanvasRenderingContext2DCustom.cpp:
  • bindings/js/JSCommandLineAPIHostCustom.cpp:
  • bindings/js/JSCustomSQLStatementErrorCallback.cpp:
  • bindings/js/JSDOMBinding.h:
  • bindings/js/JSDOMStringListCustom.cpp:
  • bindings/js/JSDOMWindowBase.cpp:
  • bindings/js/JSDOMWindowShell.cpp:
  • bindings/js/JSDocumentCustom.cpp:
  • bindings/js/JSHTMLDocumentCustom.cpp:
  • bindings/js/JSOscillatorNodeCustom.cpp:
  • bindings/js/JSPannerNodeCustom.cpp:
  • bindings/js/JSPopStateEventCustom.cpp:
  • dom/TreeWalker.cpp:
  • html/HTMLPlugInImageElement.cpp:
  • inspector/CommandLineAPIModule.cpp:
  • inspector/InspectorController.cpp:
3:33 PM Changeset in webkit [173401] by dino@apple.com
  • 5 edits
    2 adds in trunk/Source/WebCore

Separate the Apple media controls module from other ports
https://bugs.webkit.org/show_bug.cgi?id=136644
rdar://problem/18270969

Reviewed by Eric Carlson.

Make a mediaControlsBase.{js|css} that acts as the base
class for the EFL and GTK ports (they were using mediaControlsApple).
Over time, the Apple-specific controls may use more of the
Base class.

  • Modules/mediacontrols/mediaControlsBase.css: Added.
  • Modules/mediacontrols/mediaControlsBase.js: Added.
  • PlatformEfl.cmake:
  • PlatformGTK.cmake:
  • platform/efl/RenderThemeEfl.cpp:

(WebCore::RenderThemeEfl::mediaControlsStyleSheet): Load Base rather than Apple.
(WebCore::RenderThemeEfl::mediaControlsScript): Ditto.

  • rendering/RenderThemeGtk.cpp:

(WebCore::RenderThemeGtk::mediaControlsScript): Ditto.

2:40 PM Changeset in webkit [173400] by ap@apple.com
  • 2 edits in trunk/LayoutTests

Investigate test failures on ML caused by MediaTime refactoring
https://bugs.webkit.org/show_bug.cgi?id=136532

Added another test that appears to have been affected by this refactoring.

  • platform/mac/TestExpectations:
2:38 PM Changeset in webkit [173399] by Simon Fraser
  • 3 edits in trunk/Source/WebKit2

Fix the iOS build.

  • Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.Development.mm:
  • Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.mm:
2:22 PM Changeset in webkit [173398] by jochen@chromium.org
  • 2 edits in trunk/Source/WebCore

Always update the referrer header in CachedResource
https://bugs.webkit.org/show_bug.cgi?id=136642

Reviewed by Alexey Proskuryakov.

If a request already includes a referrer header, and the document has
a non-default referrer policy, it is possible that we have to modify
the referrer header.

  • loader/cache/CachedResource.cpp:

(WebCore::CachedResource::addAdditionalRequestHeaders):

1:51 PM Changeset in webkit [173397] by commit-queue@webkit.org
  • 182 edits in trunk

Remove FILTERS flag
https://bugs.webkit.org/show_bug.cgi?id=136571

Patch by Eva Balazsfalvi <evab.u-szeged@partner.samsung.com> on 2014-09-08
Reviewed by Darin Adler.

.:

  • Source/cmake/OptionsEfl.cmake:
  • Source/cmake/OptionsGTK.cmake:
  • Source/cmake/OptionsMac.cmake:
  • Source/cmake/WebKitFeatures.cmake:
  • Source/cmakeconfig.h.cmake:

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

No new tests required, no new functionality.

  • CMakeLists.txt:
  • Configurations/FeatureDefines.xcconfig:
  • DerivedSources.make:
  • dom/DOMImplementation.cpp:

(WebCore::isSupportedSVG10Feature):
(WebCore::isSupportedSVG11Feature):

  • platform/graphics/cpu/arm/filters/FEBlendNEON.h:
  • platform/graphics/cpu/arm/filters/FECompositeArithmeticNEON.h:
  • platform/graphics/cpu/arm/filters/FEGaussianBlurNEON.h:
  • platform/graphics/cpu/arm/filters/NEONHelpers.h:
  • platform/graphics/filters/DistantLightSource.cpp:
  • platform/graphics/filters/DistantLightSource.h:
  • platform/graphics/filters/FEBlend.cpp:
  • platform/graphics/filters/FEBlend.h:
  • platform/graphics/filters/FEColorMatrix.cpp:
  • platform/graphics/filters/FEColorMatrix.h:
  • platform/graphics/filters/FEComponentTransfer.cpp:
  • platform/graphics/filters/FEComponentTransfer.h:
  • platform/graphics/filters/FEComposite.cpp:
  • platform/graphics/filters/FEComposite.h:
  • platform/graphics/filters/FEConvolveMatrix.cpp:
  • platform/graphics/filters/FEConvolveMatrix.h:
  • platform/graphics/filters/FEDiffuseLighting.cpp:
  • platform/graphics/filters/FEDiffuseLighting.h:
  • platform/graphics/filters/FEDisplacementMap.cpp:
  • platform/graphics/filters/FEDisplacementMap.h:
  • platform/graphics/filters/FEDropShadow.cpp:
  • platform/graphics/filters/FEDropShadow.h:
  • platform/graphics/filters/FEFlood.cpp:
  • platform/graphics/filters/FEFlood.h:
  • platform/graphics/filters/FEGaussianBlur.cpp:
  • platform/graphics/filters/FEGaussianBlur.h:
  • platform/graphics/filters/FELighting.cpp:
  • platform/graphics/filters/FELighting.h:
  • platform/graphics/filters/FEMerge.cpp:
  • platform/graphics/filters/FEMerge.h:
  • platform/graphics/filters/FEMorphology.cpp:
  • platform/graphics/filters/FEMorphology.h:
  • platform/graphics/filters/FEOffset.cpp:
  • platform/graphics/filters/FEOffset.h:
  • platform/graphics/filters/FESpecularLighting.cpp:
  • platform/graphics/filters/FESpecularLighting.h:
  • platform/graphics/filters/FETile.cpp:
  • platform/graphics/filters/FETile.h:
  • platform/graphics/filters/FETurbulence.cpp:
  • platform/graphics/filters/FETurbulence.h:
  • platform/graphics/filters/Filter.h:
  • platform/graphics/filters/FilterEffect.cpp:
  • platform/graphics/filters/FilterEffect.h:
  • platform/graphics/filters/LightSource.h:
  • platform/graphics/filters/PointLightSource.cpp:
  • platform/graphics/filters/PointLightSource.h:
  • platform/graphics/filters/SourceAlpha.cpp:
  • platform/graphics/filters/SourceAlpha.h:
  • platform/graphics/filters/SourceGraphic.cpp:
  • platform/graphics/filters/SourceGraphic.h:
  • platform/graphics/filters/SpotLightSource.cpp:
  • platform/graphics/filters/SpotLightSource.h:
  • rendering/svg/RenderSVGResource.cpp:

(WebCore::removeFromCacheAndInvalidateDependencies):

  • rendering/svg/RenderSVGResourceFilter.cpp:
  • rendering/svg/RenderSVGResourceFilter.h:
  • rendering/svg/RenderSVGResourceFilterPrimitive.cpp:
  • rendering/svg/RenderSVGResourceFilterPrimitive.h:
  • rendering/svg/RenderSVGRoot.cpp:
  • rendering/svg/SVGRenderSupport.cpp:

(WebCore::SVGRenderSupport::intersectRepaintRectWithResources):

  • rendering/svg/SVGRenderTreeAsText.cpp:

(WebCore::writeSVGResourceContainer):
(WebCore::writeResources):

  • rendering/svg/SVGRenderingContext.cpp:

(WebCore::SVGRenderingContext::~SVGRenderingContext):
(WebCore::SVGRenderingContext::prepareToRenderSVGContent):

  • rendering/svg/SVGRenderingContext.h:

(WebCore::SVGRenderingContext::SVGRenderingContext):

  • rendering/svg/SVGResources.cpp:

(WebCore::targetReferenceFromResource):
(WebCore::SVGResources::buildCachedResources):
(WebCore::SVGResources::removeClientFromCache):
(WebCore::SVGResources::resourceDestroyed):
(WebCore::SVGResources::buildSetOfResources):
(WebCore::SVGResources::resetFilter):
(WebCore::SVGResources::dump):

  • rendering/svg/SVGResources.h:

(WebCore::SVGResources::filter):
(WebCore::SVGResources::ClipperFilterMaskerData::ClipperFilterMaskerData):

  • rendering/svg/SVGResourcesCycleSolver.cpp:

(WebCore::SVGResourcesCycleSolver::breakCycle):

  • svg/SVGAnimatedEnumeration.cpp:

(WebCore::enumerationValueForTargetAttribute):

  • svg/SVGComponentTransferFunctionElement.cpp:
  • svg/SVGComponentTransferFunctionElement.h:
  • svg/SVGComponentTransferFunctionElement.idl:
  • svg/SVGFEBlendElement.cpp:
  • svg/SVGFEBlendElement.h:
  • svg/SVGFEBlendElement.idl:
  • svg/SVGFEColorMatrixElement.cpp:
  • svg/SVGFEColorMatrixElement.h:
  • svg/SVGFEColorMatrixElement.idl:
  • svg/SVGFEComponentTransferElement.cpp:
  • svg/SVGFEComponentTransferElement.h:
  • svg/SVGFEComponentTransferElement.idl:
  • svg/SVGFECompositeElement.cpp:
  • svg/SVGFECompositeElement.h:
  • svg/SVGFECompositeElement.idl:
  • svg/SVGFEConvolveMatrixElement.cpp:
  • svg/SVGFEConvolveMatrixElement.h:
  • svg/SVGFEConvolveMatrixElement.idl:
  • svg/SVGFEDiffuseLightingElement.cpp:
  • svg/SVGFEDiffuseLightingElement.h:
  • svg/SVGFEDiffuseLightingElement.idl:
  • svg/SVGFEDisplacementMapElement.cpp:
  • svg/SVGFEDisplacementMapElement.h:
  • svg/SVGFEDisplacementMapElement.idl:
  • svg/SVGFEDistantLightElement.cpp:
  • svg/SVGFEDistantLightElement.h:
  • svg/SVGFEDistantLightElement.idl:
  • svg/SVGFEDropShadowElement.cpp:
  • svg/SVGFEDropShadowElement.h:
  • svg/SVGFEDropShadowElement.idl:
  • svg/SVGFEFloodElement.cpp:
  • svg/SVGFEFloodElement.h:
  • svg/SVGFEFloodElement.idl:
  • svg/SVGFEFuncAElement.cpp:
  • svg/SVGFEFuncAElement.h:
  • svg/SVGFEFuncAElement.idl:
  • svg/SVGFEFuncBElement.cpp:
  • svg/SVGFEFuncBElement.h:
  • svg/SVGFEFuncBElement.idl:
  • svg/SVGFEFuncGElement.cpp:
  • svg/SVGFEFuncGElement.h:
  • svg/SVGFEFuncGElement.idl:
  • svg/SVGFEFuncRElement.cpp:
  • svg/SVGFEFuncRElement.h:
  • svg/SVGFEFuncRElement.idl:
  • svg/SVGFEGaussianBlurElement.cpp:
  • svg/SVGFEGaussianBlurElement.h:
  • svg/SVGFEGaussianBlurElement.idl:
  • svg/SVGFEImageElement.cpp:
  • svg/SVGFEImageElement.h:
  • svg/SVGFEImageElement.idl:
  • svg/SVGFELightElement.cpp:
  • svg/SVGFELightElement.h:
  • svg/SVGFEMergeElement.cpp:
  • svg/SVGFEMergeElement.h:
  • svg/SVGFEMergeElement.idl:
  • svg/SVGFEMergeNodeElement.cpp:
  • svg/SVGFEMergeNodeElement.h:
  • svg/SVGFEMergeNodeElement.idl:
  • svg/SVGFEMorphologyElement.cpp:
  • svg/SVGFEMorphologyElement.h:
  • svg/SVGFEMorphologyElement.idl:
  • svg/SVGFEOffsetElement.cpp:
  • svg/SVGFEOffsetElement.h:
  • svg/SVGFEOffsetElement.idl:
  • svg/SVGFEPointLightElement.cpp:
  • svg/SVGFEPointLightElement.h:
  • svg/SVGFEPointLightElement.idl:
  • svg/SVGFESpecularLightingElement.cpp:
  • svg/SVGFESpecularLightingElement.h:
  • svg/SVGFESpecularLightingElement.idl:
  • svg/SVGFESpotLightElement.cpp:
  • svg/SVGFESpotLightElement.h:
  • svg/SVGFESpotLightElement.idl:
  • svg/SVGFETileElement.cpp:
  • svg/SVGFETileElement.h:
  • svg/SVGFETileElement.idl:
  • svg/SVGFETurbulenceElement.cpp:
  • svg/SVGFETurbulenceElement.h:
  • svg/SVGFETurbulenceElement.idl:
  • svg/SVGFilterElement.cpp:
  • svg/SVGFilterElement.h:
  • svg/SVGFilterElement.idl:
  • svg/SVGFilterPrimitiveStandardAttributes.cpp:
  • svg/SVGFilterPrimitiveStandardAttributes.h:
  • svg/graphics/filters/SVGFEImage.cpp:
  • svg/graphics/filters/SVGFEImage.h:
  • svg/graphics/filters/SVGFilter.cpp:
  • svg/graphics/filters/SVGFilter.h:
  • svg/graphics/filters/SVGFilterBuilder.cpp:
  • svg/graphics/filters/SVGFilterBuilder.h:
  • svg/svgtags.in:

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:

Source/WTF:

  • wtf/FeatureDefines.h:

Tools:

  • Scripts/webkitperl/FeatureList.pm:

WebKitLibraries:

  • win/tools/vsprops/FeatureDefines.props:
  • win/tools/vsprops/FeatureDefinesCairo.props:
1:36 PM Changeset in webkit [173396] by Lucas Forschler
  • 2 edits in branches/safari-600.1-branch/Source/WebCore

Merged r173365. rdar://problem/18257576

1:10 PM Changeset in webkit [173395] by roger_fong@apple.com
  • 2 edits in branches/safari-600.1-branch/Source/ThirdParty/ANGLE

Unreviewed tentative build fix for FHPrime bots.

  • ANGLE.vcxproj/libGLESv2Common.props:
1:01 PM Changeset in webkit [173394] by Antti Koivisto
  • 7 edits in trunk/Source/WebKit2

Buffer images on web process side
https://bugs.webkit.org/show_bug.cgi?id=136631

Reviewed by Darin Adler.

We can substantially reduce IPC and decoding time for large images by allowing some buffering.

This patch makes us buffer image data up to 0.5s before sending it over to the web process.

  • NetworkProcess/NetworkResourceLoader.cpp:

(WebKit::NetworkResourceLoader::NetworkResourceLoader):
(WebKit::NetworkResourceLoader::cleanup):
(WebKit::NetworkResourceLoader::didReceiveBuffer):

Start the timer.

(WebKit::NetworkResourceLoader::didFinishLoading):
(WebKit::NetworkResourceLoader::startBufferingTimerIfNeeded):
(WebKit::NetworkResourceLoader::bufferingTimerFired):
(WebKit::NetworkResourceLoader::sendBuffer):

Send the data when the timer fires or the load finishes, whichever happens first.

  • NetworkProcess/NetworkResourceLoader.h:
  • Platform/IPC/ArgumentCoders.h:

Support encoding std::chrono::duration

  • Shared/Network/NetworkResourceLoadParameters.cpp:

(WebKit::NetworkResourceLoadParameters::NetworkResourceLoadParameters):
(WebKit::NetworkResourceLoadParameters::encode):
(WebKit::NetworkResourceLoadParameters::decode):

  • Shared/Network/NetworkResourceLoadParameters.h:

Pass maximimum buffering duration.

  • WebProcess/Network/WebResourceLoadScheduler.cpp:

(WebKit::maximumBufferingTime):

Deterimine duration from the resource type.
Enabled full buffering for font resources. They are not decoded incrementally.

(WebKit::WebResourceLoadScheduler::scheduleLoad):

11:59 AM Changeset in webkit [173393] by mitz@apple.com
  • 4 edits in trunk/Source

HAVE(VOUCHERS) is not available outside of WebKit2
https://bugs.webkit.org/show_bug.cgi?id=136637

Reviewed by Tim Horton.

Source/WebKit2:

  • config.h: Moved the definition of HAVE_VOUCHERS from here to wtf’s Platform.h.

Source/WTF:

  • wtf/Platform.h: Moved the definition of HAVE_VOUCHERS from WebKit2’s config.h here.
11:57 AM Changeset in webkit [173392] by Simon Fraser
  • 7 edits in trunk/Source/WebCore

Use enum class for the RunPostLayoutTasks enum
https://bugs.webkit.org/show_bug.cgi?id=136640

Reviewed by Dean Jackson.

Use enum class for RunPostLayoutTasks fixing callers. Add an explanatory comment,
and add some spacing.

  • dom/Document.cpp:

(WebCore::Document::updateLayoutIgnorePendingStylesheets):

  • dom/Document.h:
  • html/HTMLAppletElement.cpp:

(WebCore::HTMLAppletElement::renderWidgetForJSBindings):

  • html/HTMLEmbedElement.cpp:

(WebCore::HTMLEmbedElement::renderWidgetForJSBindings):

  • html/HTMLObjectElement.cpp:

(WebCore::HTMLObjectElement::renderWidgetForJSBindings):

  • testing/Internals.cpp:

(WebCore::Internals::updateLayoutIgnorePendingStylesheetsAndRunPostLayoutTasks):

11:54 AM Changeset in webkit [173391] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[WinCairo] Compile error.
https://bugs.webkit.org/show_bug.cgi?id=136633

Patch by peavo@outlook.com <peavo@outlook.com> on 2014-09-08
Reviewed by Darin Adler.

Enum name has already been defined.

  • platform/audio/AudioHardwareListener.h:
11:44 AM Changeset in webkit [173390] by bshafiei@apple.com
  • 2 edits in branches/safari-600.1.4.11-branch/Source/WebCore

Merged r173344. <rdar://problem/18267402>

11:32 AM Changeset in webkit [173389] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebCore

Remove some unused code in ImageSourceCG
https://bugs.webkit.org/show_bug.cgi?id=136638

Reviewed by Dan Bernstein.

  • platform/graphics/cg/ImageSourceCG.cpp:

(WebCore::ImageSource::setData):
Remove this code. Firstly, it's in a USE(CG) && !PLATFORM(COCOA) && !PLATFORM(WIN)
block, and that's simply not a thing. Secondly, the referenced bug was fixed in Lion.

11:14 AM Changeset in webkit [173388] by saambarati1@gmail.com
  • 3 edits
    1 add in trunk/Source/JavaScriptCore

Merge StructureShapes that share the same prototype chain
https://bugs.webkit.org/show_bug.cgi?id=136549

Reviewed by Filip Pizlo.

Instead of keeping track of many discrete StructureShapes that share
the same prototype chain, TypeSet should merge StructureShapes that
have the same prototype chain and provide a new member variable for
optional structure fields. This provides a cleaner and more concise
interface for dealing with StructureShapes within TypeSet. Instead
of having many discrete shapes that are almost identical, almost
identical shapes will be merged together with an interface for
understanding what fields the shapes being merged together differ in.

  • runtime/TypeSet.cpp:

(JSC::TypeSet::addTypeInformation):
(JSC::StructureShape::addProperty):
(JSC::StructureShape::toJSONString):
(JSC::StructureShape::inspectorRepresentation):
(JSC::StructureShape::hasSamePrototypeChain):
(JSC::StructureShape::merge):

  • runtime/TypeSet.h:
  • tests/typeProfiler/optional-fields.js: Added.

(wrapper.func):
(wrapper):

11:04 AM Changeset in webkit [173387] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

Try to fix the build after r173383, part 4.

  • Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.Development.mm:

Machine finally caught up so I could actually test the fixes!

10:53 AM Changeset in webkit [173386] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

Try to fix the build after r173383, part 3.

  • Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.mm:
10:45 AM Changeset in webkit [173385] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WTF

Try to fix the build after r173383, part 2.

  • wtf/OSObjectPtr.h:
10:37 AM Changeset in webkit [173384] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WTF

Try to fix the build after r173383.

  • wtf/OSObjectPtr.h:
10:26 AM Changeset in webkit [173383] by weinig@apple.com
  • 2 edits in trunk/Source/WTF

Make OSObjectPtr a bit more like RefPtr
https://bugs.webkit.org/show_bug.cgi?id=136613

Reviewed by Darin Adler.

Address some of Darin's feedback by:

  • Making the adopting constructor private and friending adoptOSObject().
  • Implementing the assignment operator using swap.
  • Adding a move assignment operator.
  • wtf/OSObjectPtr.h:

(WTF::OSObjectPtr::operator=):
(WTF::OSObjectPtr::swap):
(WTF::OSObjectPtr::OSObjectPtr):

10:10 AM Changeset in webkit [173382] by gyuyoung.kim@samsung.com
  • 13 edits in trunk/Source/WebCore

Introduce CSS_RULE_TYPE_CASTS, and use it
https://bugs.webkit.org/show_bug.cgi?id=136628

Reviewed by Darin Adler.

As a step to use toFoo, this patch introduces toCSSFooRule(). This will help to detect
wrong type cast. Additionally some missing type casts are clean up as well.

No new tests, no behavior changes.

  • bindings/gobject/WebKitDOMPrivate.cpp:

(WebKit::wrap):

  • css/CSSFontSelector.cpp:

(WebCore::CSSFontSelector::addFontFaceRule):

  • css/CSSImportRule.h:
  • css/CSSMediaRule.h:
  • css/CSSParser.cpp:

(WebCore::CSSParser::parseGridTemplateRowsAndAreas):

  • css/CSSRule.h:
  • css/CSSStyleRule.h:
  • css/CSSSupportsRule.h:
  • css/InspectorCSSOMWrappers.cpp:

(WebCore::InspectorCSSOMWrappers::collect):

  • css/WebKitCSSRegionRule.h:
  • inspector/InspectorCSSAgent.cpp:

(WebCore::InspectorCSSAgent::asCSSStyleRule):
(WebCore::InspectorCSSAgent::collectStyleSheets):

  • inspector/InspectorStyleSheet.cpp:

(WebCore::asCSSRuleList):
(WebCore::fillMediaListChain):

  • page/PageSerializer.cpp:

(WebCore::PageSerializer::serializeCSSStyleSheet):

10:05 AM Changeset in webkit [173381] by ap@apple.com
  • 4 edits in trunk/Tools

Dashboard metrics should ignore commits that didn't trigger builds
https://bugs.webkit.org/show_bug.cgi?id=136618

Reviewed by Darin Adler.

Commits that didn't trigger builds are ones like ChangeLog updates, patches for
other platforms etc. It does not make sense to count wait time for these, as it
can be arbitrarily long.

The new algorithm is much slower asymptotically, but it's OK, computers are fast.

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

(BuildbotIteration.prototype._parseData): Record changes that triggered the iteration.

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

We used to walk the timeline to see which revisions are fully tested, but that's not
correct. A revision that's only tested by a subset of queues finishes independently
of another that's tested by another subset. Now, we just search for the answer for
each revision individually.

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

(MetricsView.prototype._update.appendQueueResults): Added worst revision number, which
the analyzer now reports. Removed best time, which is more confusing than meaningful.

9:11 AM Changeset in webkit [173380] by jberlin@webkit.org
  • 2 edits in trunk/Source/WebKit/mac

32-bit build fix after r173364.

  • Carbon/HIViewAdapter.m:

(+[HIViewAdapter bindHIViewToNSView:nsView:]):

8:28 AM Changeset in webkit [173379] by mitz@apple.com
  • 3 edits in trunk/Source/WebKit/mac

Build fix.

Added back SPI that is still in use.

  • Misc/WebNSURLExtras.h:
  • Misc/WebNSURLExtras.mm:

(-[NSURL _webkit_URLByRemovingFragment]):

8:21 AM Changeset in webkit [173378] by mitz@apple.com
  • 4 edits in trunk/Source

Source/WebKit/mac:
iOS Simulator build fix.

  • Misc/WebKitSystemBits.m:

(WebMemorySize):

Source/WebKit2:
Build fix.

  • Platform/IPC/Connection.h:
8:21 AM Changeset in webkit [173377] by jberlin@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

More 32-bit Release build fixes after r173364.

  • dfg/DFGSpeculativeJIT32_64.cpp:

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

7:45 AM Changeset in webkit [173376] by jberlin@webkit.org
  • 2 edits in trunk/Source/WTF

More build fixes after r173374.

  • wtf/dtoa/strtod.cc:
7:33 AM Changeset in webkit [173375] by jberlin@webkit.org
  • 2 edits in trunk/Source/WTF

Build fix after r173374.

  • wtf/dtoa/strtod.cc:
7:26 AM Changeset in webkit [173374] by jberlin@webkit.org
  • 2 edits in trunk/Source/WTF

Speculative build fix after r173364.

  • wtf/dtoa/strtod.cc:
3:01 AM Changeset in webkit [173373] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/Source/WebCore

[EFL[WK2] MiniBrowser comes to crash on debug mode
https://bugs.webkit.org/show_bug.cgi?id=136617

Reviewed by Csaba Osztrogonác.

Fix wrong ASSERTION use in applyCursorFromEcoreX().

  • platform/efl/EflScreenUtilities.cpp: Change ASSERT(!window) with *ASSERT(window)*

(WebCore::applyCursorFromEcoreX):

2:32 AM Changeset in webkit [173372] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Remove EWebLauncher from webkitdirs.pm
https://bugs.webkit.org/show_bug.cgi?id=136622

Patch by Tibor Meszaros <tmeszaros.u-szeged@partner.samsung.com> on 2014-09-08
Reviewed by Gyuyoung Kim.

  • Scripts/webkitdirs.pm:

(launcherName):

Sep 7, 2014:

7:39 PM Changeset in webkit [173371] by mjs@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Fix typos in last patch to fix build.

Unreviewed build fix.

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::silentSavePlanForGPR):
(JSC::DFG::SpeculativeJIT::jumpSlowForUnwantedArrayMode):

7:16 PM Changeset in webkit [173370] by mjs@apple.com
  • 10 edits in trunk/Source

Introduce COMPILER_QUIRK(CONSIDERS_UNREACHABLE_CODE) and use it
https://bugs.webkit.org/show_bug.cgi?id=136616

Reviewed by Darin Adler.
Source/JavaScriptCore:


Many compilers will analyze unrechable code paths (e.g. after an
unreachable code path), so sometimes they need dead code initializations.
But clang with suitable warnings will complain about unreachable code. So
use the quirk to include it conditionally.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::printGetByIdOp):

  • dfg/DFGOSRExitCompilerCommon.cpp:

(JSC::DFG::handleExitCounts):

  • dfg/DFGPlan.cpp:

(JSC::DFG::Plan::compileInThread):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::silentSavePlanForGPR):

  • jsc.cpp:
  • runtime/JSArray.cpp:

(JSC::JSArray::fillArgList):
(JSC::JSArray::copyToArguments):

  • runtime/RegExp.cpp:

(JSC::RegExp::compile):
(JSC::RegExp::compileMatchOnly):

Source/WTF:

  • wtf/Compiler.h: Define the quirk for all compilers but clang.
6:36 PM Changeset in webkit [173369] by gyuyoung.kim@samsung.com
  • 5 edits in trunk/Source/WebCore

Introduce toBasicShapeFoo() instead of static_cast<BasicShapeFoo*>
https://bugs.webkit.org/show_bug.cgi?id=136609

Reviewed by Darin Adler.

To use BasicShapeFoo() helps to detect wrong type casting and improve code readability.

No new tests, no behavior changes.

  • css/BasicShapeFunctions.cpp:

(WebCore::valueForBasicShape):

  • rendering/shapes/Shape.cpp:

(WebCore::Shape::createShape):

  • rendering/style/BasicShapes.cpp:

(WebCore::BasicShape::canBlend):
(WebCore::BasicShapeCircle::blend):
(WebCore::BasicShapeEllipse::blend):
(WebCore::BasicShapePolygon::blend):
(WebCore::BasicShapeInset::blend):

  • rendering/style/BasicShapes.h:
12:14 PM Changeset in webkit [173368] by Darin Adler
  • 2 edits in trunk/Source/WebKit/mac

Fix build failure seen on Mountain Lion buildbot.

  • Misc/WebNSDataExtras.h: Make WEB_GUESS_MIME_TYPE_PEEK_LENGTH an unsigned instead

of an int, to avoid warning about mixing signs.

10:56 AM Changeset in webkit [173367] by weinig@apple.com
  • 16 edits
    1 move
    2 adds in trunk

XPCPtr should be converted into an all purpose smart pointer for os_objects
https://bugs.webkit.org/show_bug.cgi?id=136602

Reviewed by Darin Adler.

Source/WebKit2:

  • DatabaseProcess/EntryPoint/mac/XPCService/DatabaseServiceEntryPoint.mm:

(DatabaseServiceInitializer):

  • NetworkProcess/EntryPoint/mac/XPCService/NetworkServiceEntryPoint.mm:

(WebKit::NetworkServiceInitializerDelegate::NetworkServiceInitializerDelegate):
(NetworkServiceInitializer):

  • Platform/IPC/Connection.h:

(IPC::Connection::Identifier::Identifier):

  • Platform/IPC/mac/ConnectionMac.mm:

(IPC::ConnectionTerminationWatchdog::createConnectionTerminationWatchdog):
(IPC::ConnectionTerminationWatchdog::ConnectionTerminationWatchdog):

  • Platform/IPC/mac/XPCPtr.h: Removed.
  • PluginProcess/EntryPoint/mac/XPCService/PluginServiceEntryPoint.mm:

(WebKit::PluginServiceInitializerDelegate::PluginServiceInitializerDelegate):
(PluginServiceInitializer):

  • Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.h:

(WebKit::XPCServiceInitializerDelegate::XPCServiceInitializerDelegate):
(WebKit::XPCServiceInitializer):

  • Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.mm:

(WebKit::XPCServiceInitializerDelegate::checkEntitlements):
(WebKit::XPCServiceInitializerDelegate::hasEntitlement):

  • Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.Development.mm:

(WebKit::XPCServiceEventHandler):

  • Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.mm:

(WebKit::XPCServiceEventHandler):

  • UIProcess/Launcher/mac/ProcessLauncherMac.mm:

(WebKit::connectToService):
(WebKit::connectToReExecService):

  • WebProcess/EntryPoint/mac/XPCService/WebContentServiceEntryPoint.mm:

(WebContentServiceInitializer):
Update after the rename of XPCPtr to OSObjectPtr.

Source/WTF:

  • WTF.xcodeproj/project.pbxproj:
  • wtf/OSObjectPtr.h: Copied from Source/WebKit2/Platform/IPC/mac/XPCPtr.h.

(WTF::retainOSObject):
(WTF::releaseOSObject):
(WTF::OSObjectPtr::OSObjectPtr):
(WTF::OSObjectPtr::~OSObjectPtr):
(WTF::OSObjectPtr::operator=):
(WTF::adoptOSObject):
(IPC::XPCPtr::XPCPtr): Deleted.
(IPC::XPCPtr::~XPCPtr): Deleted.
(IPC::XPCPtr::operator=): Deleted.
(IPC::adoptXPC): Deleted.
Rename/move XPCPtr to OSObjectPtr and make it work with any os_object.

Tools:

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WTF/darwin: Added.
  • TestWebKitAPI/Tests/WTF/darwin/OSObjectPtr.cpp: Added.

Add basic unit tests for OSObjectPtr.

2:30 AM Changeset in webkit [173366] by timothy@apple.com
  • 3 edits in trunk/Source/WebInspectorUI

Use a <circle> instead of a <path> in DownloadArrow.svg.
https://bugs.webkit.org/show_bug.cgi?id=136608

Reviewed by Antoine Quint.

  • UserInterface/Images/DownloadArrow.svg:
  • UserInterface/Views/TreeElementStatusButton.css:

(.item > .status > .status-button > svg .filled):
(body.mac-platform.legacy .item > .status > .status-button > svg .filled):
(:focus .item.selected > .status > .status-button > svg .filled):
(.item > .status > .status-button > svg .stroked):
(body.mac-platform.legacy .item > .status > .status-button > svg .stroked):
(:focus .item.selected > .status > .status-button > svg .stroked):
Tweak CSS selectors to apply to other shapes, not just path.

Sep 6, 2014:

5:19 PM Changeset in webkit [173365] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

[Fullscreen] Add a site-specific hack to work around "flash on exit" behavior of YouTube.com.
https://bugs.webkit.org/show_bug.cgi?id=136604

Reviewed by Eric Carlson.

YouTube.com will cause a "flash" of the full screen sized <video> element upon exiting full
screen because the "fullscreenchange" event is fired asynchronously after the exit animation
completes. Only YouTube sites and embeds, add a site-specific-quirk which runs the "fullscreenchange"
event synchronously at the end of the exit animation. This causes YouTube's video resizing logic
to run during the period of time where we've disabled screen updates, instead of immediately
after.

  • dom/Document.cpp:

(WebCore::Document::webkitDidExitFullScreenForElement):

3:53 PM Changeset in webkit [173364] by Darin Adler
  • 40 edits in trunk/Source

Make updates suggested by new version of Xcode
https://bugs.webkit.org/show_bug.cgi?id=136603

Reviewed by Mark Rowe.

Source/JavaScriptCore:

  • Configurations/Base.xcconfig: Added CLANG_WARN_UNREACHABLE_CODE, COMBINE_HIDPI_IMAGES,

and ENABLE_STRICT_OBJC_MSGSEND as suggested by Xcode upgrade check.

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::jumpSlowForUnwantedArrayMode): Compile out unreachable code
for clang, since it understands the code is unreachable.

  • runtime/JSArray.cpp:

(JSC::JSArray::fillArgList): Ditto.
(JSC::JSArray::copyToArguments): Ditto.

Source/ThirdParty:

  • gtest/xcode/Config/General.xcconfig: Moved CLANG_WARN_BOOL_CONVERSION,

CLANG_WARN_ENUM_CONVERSION, CLANG_WARN_INT_CONVERSION, and COMBINE_HIDPI_IMAGES
here from project file. Added CLANG_WARN_UNREACHABLE_CODE, ENABLE_STRICT_OBJC_MSGSEND,
and GCC_WARN_64_TO_32_BIT_CONVERSION as suggested by Xcode upgrade check.

  • gtest/xcode/gtest.xcodeproj/project.pbxproj: Updated LastUpgradeCheck and removed

things that are redundant with the xcconfig file above.

Source/ThirdParty/ANGLE:

  • ANGLE.xcodeproj/project.pbxproj: Updated LastUpgradeCheck.
  • Configurations/ANGLE.xcconfig: Added CLANG_WARN_BOOL_CONVERSION,

CLANG_WARN_ENUM_CONVERSION, CLANG_WARN_INT_CONVERSION, COMBINE_HIDPI_IMAGES,
and ENABLE_STRICT_OBJC_MSGSEND as suggested by Xcode upgrade check.

Source/WebCore:

  • Configurations/Base.xcconfig: Added COMBINE_HIDPI_IMAGES and

ENABLE_STRICT_OBJC_MSGSEND as suggested by Xcode upgrade check.

  • WebCore.xcodeproj/project.pbxproj: Let Xcode remove an orphaned item from the file,

and also updated LastUpgradeCheck.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::updateTextTrackDisplay): Use #if/#else/#endif instead of
using #if/return/#endif and leaving code unreachable.
(WebCore::HTMLMediaElement::configureMediaControls): Ditto.
(WebCore::HTMLMediaElement::configureTextTrackDisplay): Ditto.

  • html/canvas/WebGLDrawBuffers.cpp:

(WebCore::WebGLDrawBuffers::supported): Ditto.

Source/WebInspectorUI:

  • Configurations/Base.xcconfig: Added CLANG_WARN_BOOL_CONVERSION, CLANG_WARN_CONSTANT_CONVERSION,

CLANG_WARN_EMPTY_BODY, CLANG_WARN_ENUM_CONVERSION, CLANG_WARN_INT_CONVERSION,
CLANG_WARN_UNREACHABLE_CODE, CLANG_WARNDUPLICATE_METHOD_MATCH, ENABLE_STRICT_OBJC_MSGSEND,
GCC_WARN_UNDECLARED_SELECTOR, and GCC_WARN_UNUSED_FUNCTION as suggested by Xcode update check.
Also removed duplicate GCC_WARN_UNUSED_VARIABLE line.

  • WebInspectorUI.xcodeproj/project.pbxproj: Updated LastUpgradeCheck.

Source/WebKit:

  • WebKit.xcodeproj/project.pbxproj: Updated LastUpgradeCheck.

Source/WebKit/mac:

  • Configurations/Base.xcconfig: Added CLANG_WARN_UNREACHABLE_CODE, COMBINE_HIDPI_IMAGES,

and ENABLE_STRICT_OBJC_MSGSEND as suggested by Xcode upgrade check.

  • History/WebURLsWithTitles.m:

(+[WebURLsWithTitles writeURLs:andTitles:toPasteboard:]): Use NSUInteger instead of
unsigned for correctness, and to quiet the 32-to-64-bit compiler warning (which is
not turned on because it gives us too many false positives).

  • Misc/WebElementDictionary.mm:

(-[WebElementDictionary objectForKey:]): Ditto.

  • Misc/WebNSDataExtras.m:

(-[NSData _webkit_guessedMIMETypeForXML]): Ditto.
(-[NSData _webkit_guessedMIMEType]): Ditto.
(-[NSData _webkit_parseRFC822HeaderFields]): Ditto.
(-[NSData _web_locationAfterFirstBlankLine]): Ditto.

  • Misc/WebNSURLExtras.h: Removed unused _web_URLWithLowercasedScheme, _web_hostData,

_webkit_URLByRemovingFragment, _webkit_URLByRemovingResourceSpecifier, _webkit_isFTPDirectoryURL,
_webkit_shouldLoadAsEmptyDocument, _web_hostNameNeedsDecodingWithRange:,
_web_hostNameNeedsEncodingWithRange:, _web_decodeHostNameWithRange:, _web_encodeHostNameWithRange:,
and _webkit_URLFragment methods.

  • Misc/WebNSURLExtras.mm:

(-[NSURL _web_URLByTruncatingOneCharacterBeforeComponent:]): Deleted.
(-[NSURL _webkit_URLByRemovingFragment]): Deleted.
(-[NSURL _webkit_URLByRemovingResourceSpecifier]): Deleted.
(-[NSURL _webkit_isFTPDirectoryURL]): Deleted.
(-[NSURL _webkit_shouldLoadAsEmptyDocument]): Deleted.
(-[NSURL _web_URLWithLowercasedScheme]): Deleted.
(-[NSString _webkit_isFTPDirectoryURL]): Deleted.
(-[NSString _web_hostNameNeedsDecodingWithRange:]): Deleted.
(-[NSString _web_hostNameNeedsEncodingWithRange:]): Deleted.
(-[NSString _web_decodeHostNameWithRange:]): Deleted.
(-[NSString _web_encodeHostNameWithRange:]): Deleted.
(-[NSString _webkit_URLFragment]): Deleted.

  • Plugins/WebPluginDatabase.mm:

(-[WebPluginDatabase removePluginInstanceViewsFor:]): Use a modern for loop
to iterate an array instead of a loop using the type "unsigned int".

  • WebCoreSupport/WebOpenPanelResultListener.mm:

(-[WebOpenPanelResultListener chooseFilenames:]): Use NSUInteger instead of int.

  • WebView/WebDelegateImplementationCaching.mm:

(CallDelegate): Use wtfCallIMP in one overload that was instead just calling the
directly without a proper type for the function pointer. This might have been causing
an actual problem on 64-bit systems, and it was different from all the other CallDelegate
functions that were already doing this correctly.

  • WebView/WebTextCompletionController.mm:

(-[WebTextCompletionController _placePopupWindow:]): Use NSUInteger instead of int.

Source/WebKit2:

  • Configurations/Base.xcconfig: Added CLANG_WARN_UNREACHABLE_CODE, COMBINE_HIDPI_IMAGES,

and ENABLE_STRICT_OBJC_MSGSEND as suggested by the Xcode upgrade check.

  • PluginProcess/mac/PluginProcessMac.mm:

(WebKit::initializeCocoaOverrides): Changed NSConcreteTask_launch to use the same technique
as the other functions in this file, doing the type casting right at the call to
method_setImplementation so the global has a suitable type for making a function call,
rather than relying on the abilty to call through a type without a specific argument list.

  • UIProcess/Plugins/PluginInfoStore.cpp:

(WebKit::pathExtension): Use size_t for the result of String::reverseFind rather than
converting it to an int. Also don't rely on the fact that WTF's notFound becomes -1 when
cast from size_t to int.

  • WebKit2.xcodeproj/project.pbxproj: Let Xcode delete some orphaned items, and updated

LastUpgradeCheck.

Source/WTF:

  • Configurations/Base.xcconfig: Added CLANG_WARN_UNREACHABLE_CODE,

COMBINE_HIDPI_IMAGES, and ENABLE_STRICT_OBJC_MSGSEND as suggested by
Xcode upgrade check.

  • WTF.xcodeproj/project.pbxproj: Updated LastUpgradeCheck.
1:52 PM Changeset in webkit [173363] by Brian Burg
  • 12 edits in trunk/Source

Web Inspector: convert DockSide to an enum class
https://bugs.webkit.org/show_bug.cgi?id=136601

Reviewed by Timothy Hatcher.

Source/WebCore:

  • inspector/InspectorFrontendClient.h:
  • inspector/InspectorFrontendClientLocal.cpp:

(WebCore::InspectorFrontendClientLocal::InspectorFrontendClientLocal):
(WebCore::InspectorFrontendClientLocal::requestSetDockSide):
(WebCore::InspectorFrontendClientLocal::canAttachWindow):
(WebCore::InspectorFrontendClientLocal::setAttachedWindow):

  • inspector/InspectorFrontendHost.cpp:

(WebCore::InspectorFrontendHost::requestSetDockSide):

Source/WebKit/mac:

  • WebCoreSupport/WebInspectorClient.mm:

(WebInspectorFrontendClient::frontendLoaded):
(-[WebInspectorWindowController attachWindow:]):
(-[WebInspectorWindowController attach]):
(-[WebInspectorWindowController detach]):

  • WebInspector/WebInspectorFrontend.mm:

(-[WebInspectorFrontend attach]):

Source/WebKit/win:

  • WebCoreSupport/WebInspectorClient.cpp:

(WebInspectorFrontendClient::frontendLoaded):

Source/WebKit2:

  • WebProcess/WebCoreSupport/WebInspectorFrontendClient.cpp:

(WebKit::WebInspectorFrontendClient::attachWindow):

  • WebProcess/WebPage/WebInspector.cpp:

(WebKit::WebInspector::attachedBottom):
(WebKit::WebInspector::attachedRight):
(WebKit::WebInspector::detached):

12:27 PM Changeset in webkit [173362] by bshafiei@apple.com
  • 5 edits in branches/safari-600.1-branch/Source

Versioning.

11:49 AM Changeset in webkit [173361] by bshafiei@apple.com
  • 1 copy in tags/Safari-600.1.20

New tag.

10:58 AM Changeset in webkit [173360] by Antti Koivisto
  • 2 edits in trunk/Source/WebCore

Serialize ResourceResponses using WebKit types
https://bugs.webkit.org/show_bug.cgi?id=136545

Fix the failing webarchive tests.

  • platform/network/mac/ResourceResponseMac.mm:

(WebCore::ResourceResponse::initNSURLResponse): Map empty text encoding name to nil NSString.

10:27 AM Changeset in webkit [173359] by saambarati1@gmail.com
  • 2 edits in trunk/Tools

Unreviewed. Add myself as a committer.

  • Scripts/webkitpy/common/config/contributors.json:
10:02 AM Changeset in webkit [173358] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[WinCairo][Curl] fileExists() incorrectly claims folder does not exist.
https://bugs.webkit.org/show_bug.cgi?id=136598

Patch by peavo@outlook.com <peavo@outlook.com> on 2014-09-06
Reviewed by Alex Christensen.

The fileExists() function will always return false on Windows,
if the filename parameter ends with a slash or backslash.

  • platform/network/curl/CurlCacheManager.cpp:

(WebCore::CurlCacheManager::setCacheDirectory): Add slash after call to fileExists().

9:04 AM Changeset in webkit [173357] by ddkilzer@apple.com
  • 2 edits in trunk/Source/WebCore

New clang warns about boolean checks for |this| pointer in RenderObject debug methods
<http://webkit.org/b/136599>

Reviewed by Zalan Bujtas.

Ignores the following static analyzer warnings:

Source/WebCore/rendering/RenderObject.cpp:1465:10: error: 'this' pointer cannot be null in well-defined C++ code; pointer may be assumed to always convert to true [-Werror,-Wundefined-bool-conversion]

if (!this) {

~~

Source/WebCore/rendering/RenderObject.cpp:1584:10: error: 'this' pointer cannot be null in well-defined C++ code; pointer may be assumed to always convert to true [-Werror,-Wundefined-bool-conversion]

if (!this)

~~

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::showRenderObject):
(WebCore::RenderObject::showRenderSubTreeAndMark):
Add "#pragma clang" preprocessor macros to ignore this warning
since the code is only compiled for Debug builds. Also add a
pragma for the pragma so older clangs don't complain about an
unkonwn pragma.

8:33 AM Changeset in webkit [173356] by Antti Koivisto
  • 14 edits in trunk

Serialize ResourceResponses using WebKit types
https://bugs.webkit.org/show_bug.cgi?id=136545

Reviewed by Alexey Proskuryakov.

Source/WebCore:

Serialization is faster and we can mostly avoid having NSURLResponses in web process.

  • WebCore.exp.in:
  • platform/network/ResourceLoadTiming.h:

(WebCore::ResourceLoadTiming::encode):
(WebCore::ResourceLoadTiming::decode):

  • platform/network/ResourceResponseBase.h:

(WebCore::ResourceResponseBase::encode):
(WebCore::ResourceResponseBase::decode):

Serialize from the WebCore data instead of serializing NSURLResponse.

  • platform/network/cf/ResourceResponseCFNet.cpp:

(WebCore::ResourceResponse::cfURLResponse):

Synthesize CFURLResponse by creating NSURLResponse on Cocoa platforms so we don't need copy code.
This has negligible performance impact, NSURLResponse is just a wrapper around CFURLResponse.

  • platform/network/mac/ResourceResponseMac.mm:

(WebCore::ResourceResponse::nsURLResponse):
(WebCore::ResourceResponse::setCertificateChain):

Avoid unnecessary NSURLRequest instantiation in debug builds.

Source/WebKit2:

Remove the WK2 serialization code for responses. It moves to the types itself in WebCore where it is
close to the data being serialized and less likely to get out of sync.

  • Shared/WebCoreArgumentCoders.cpp:

(IPC::ArgumentCoder<ResourceResponse>::encode): Deleted.
(IPC::ArgumentCoder<ResourceResponse>::decode): Deleted.

  • Shared/WebCoreArgumentCoders.h:
  • Shared/mac/WebCoreArgumentCodersMac.mm:

(IPC::ArgumentCoder<ResourceResponse>::encodePlatformData): Deleted.
(IPC::ArgumentCoder<ResourceResponse>::decodePlatformData): Deleted.

LayoutTests:

Remove failure expectations for tests fixed by this patch.

http/tests/xmlhttprequest/web-apps/012.html
http/tests/xmlhttprequest/web-apps/013.html

  • platform/mac-wk2/TestExpectations:
8:02 AM Changeset in webkit [173355] by ddkilzer@apple.com
  • 2 edits in trunk/Source/WebCore

HTMLElement.cpp does not compile with new clang
<http://webkit.org/b/136600>

Reviewed by Chris Fleizach.

Fixes the following static analyzer warning:

Source/WebCore/html/HTMLElement.cpp:545:10: error: 'this' pointer cannot be null in well-defined C++ code; pointer may be assumed to always convert to true [-Werror,-Wundefined-bool-conversion]

if (!this
!parentNode())

~~

  • html/HTMLElement.cpp:

(WebCore::HTMLElement::setOuterText): Remove "!this" check added
in r75738. It would only cover up real bugs, and isn't even hit
in layout tests.

4:17 AM Changeset in webkit [173354] by ryuan.choi@gmail.com
  • 8 edits
    1 delete in trunk/Source

[EFL] Drop evas object cursor support
https://bugs.webkit.org/show_bug.cgi?id=136324

Reviewed by Gyuyoung Kim.

Removed evas object cursor because there are some bugs.
ewebkit will only support ecore_x_cursor because ewebkit is available with X, now.

Source/WebCore:

  • platform/efl/DefaultTheme/CMakeLists.txt: Removed cursor related code.
  • platform/efl/DefaultTheme/default.edc: Ditto.
  • platform/efl/DefaultTheme/widget/cursor/cursor.edc: Removed.
  • platform/efl/EflScreenUtilities.cpp:

(WebCore::getEcoreCursor):
(WebCore::applyCursorFromEcoreX): Renamed applyFallbackCursor.
(WebCore::createCustomCursor): Added to make custom cursor.
(WebCore::applyFallbackCursor): Deleted.

  • platform/efl/EflScreenUtilities.h:

Source/WebKit2:

  • UIProcess/API/efl/EwkView.cpp:

(EwkViewEventHandler<EVAS_CALLBACK_MOUSE_IN>::handleEvent):
(EwkView::EwkView):
(EwkView::updateCursor): Simplifies not to use evas object cursor.
(EwkView::setCursor): Ditto.

  • UIProcess/API/efl/EwkView.h:
3:36 AM Changeset in webkit [173353] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/Tools

Unreviewed, EFL build fix when SHARED_CORE is on.

  • TestWebKitAPI/PlatformEfl.cmake:
12:07 AM Changeset in webkit [173352] by commit-queue@webkit.org
  • 4 edits in trunk

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

Broke webgl/1.0.2/conformance/glsl/misc/shader-varying-
packing-restrictions.html (Requested by ap on #webkit).

Reverted changeset:

"Remove statically used varyings from packing restrictions
check."
https://bugs.webkit.org/show_bug.cgi?id=136585
http://trac.webkit.org/changeset/173335

12:02 AM Changeset in webkit [173351] by commit-queue@webkit.org
  • 13 edits in trunk/Source

Unreviewed, rolling out r173340 and r173342.
https://bugs.webkit.org/show_bug.cgi?id=136596

Broke many tests (Requested by ap on #webkit).

Reverted changesets:

"Remove PLATFORM(IOS) from WebCore/editing (Part 3)."
https://bugs.webkit.org/show_bug.cgi?id=136474
http://trac.webkit.org/changeset/173340

"Build fix after r173340."
http://trac.webkit.org/changeset/173342

Sep 5, 2014:

9:58 PM Changeset in webkit [173350] by commit-queue@webkit.org
  • 13 edits in trunk/Source

Use WTFString::split(char) in more places
https://bugs.webkit.org/show_bug.cgi?id=136543

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-09-05
Reviewed by Sam Weinig.

Source/WebCore:

  • inspector/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::nodeForPath):

  • mathml/MathMLMencloseElement.cpp:

(WebCore::MathMLMencloseElement::collectStyleForPresentationAttribute):

  • page/PerformanceResourceTiming.cpp:

(WebCore::passesTimingAllowCheck):

  • platform/graphics/opengl/Extensions3DOpenGLCommon.cpp:

(WebCore::Extensions3DOpenGLCommon::initializeAvailableExtensions):

  • platform/graphics/opengl/GLPlatformContext.cpp:

(WebCore::parseExtensions):

  • platform/gtk/PasteboardHelper.cpp:

(WebCore::PasteboardHelper::fillDataObjectFromDropData):

  • platform/network/curl/CurlCacheEntry.cpp:

(WebCore::CurlCacheEntry::loadResponseHeaders):

  • platform/network/curl/CurlCacheManager.cpp:

(WebCore::CurlCacheManager::loadIndex):

Source/WebKit2:

  • Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm:

(WebKit::PluginVersion::parse):

  • UIProcess/gtk/WebContextGtk.cpp:

(WebKit::initInspectorServer):

  • WebProcess/Plugins/Netscape/NetscapePlugin.cpp:

(WebKit::isTransparentSilverlightBackgroundValue):

9:14 PM Changeset in webkit [173349] by mmaxfield@apple.com
  • 11 edits
    2 adds in trunk

Laying out a TextRun using an SVG font is O(n2)
https://bugs.webkit.org/show_bug.cgi?id=136584

Reviewed by Andreas Kling.

PerformanceTests:

Time how long it takes to lay out and render some text using an SVG font.

  • SVG/SVG-Text.html: Added.
  • SVG/resources/graffiti.svg: Added.

Source/WebCore:

Caching the version of the run with normalized spaces leads to a 5x speedup on the
performance test this patch adds.

Note that SVGFontData::applySVGGlyphSelection() is still unnecesarrily O(n), so more
work can be done here. In particular, the call to collectGlyphsForString() can likely
be sped up.

No new correctness tests because there is no behavior change.
Performance Test: SVG/SVG-Text.html

  • platform/graphics/Font.h:

(WebCore::Font::treatAsSpace): Make inline.
(WebCore::Font::treatAsZeroWidthSpace): Ditto.
(WebCore::Font::treatAsZeroWidthSpaceInComplexScript): Ditto.

  • platform/graphics/SimpleFontData.h: Add String cache argument.
  • platform/graphics/TextRun.h: Move member variables around for better packing.

(WebCore::TextRun::TextRun): Ditto.

  • platform/graphics/WidthIterator.cpp: Add String cache argument.

(WebCore::WidthIterator::glyphDataForCharacter): Ditto.
(WebCore::WidthIterator::advanceInternal): Create String cache and pass it to
glyphDataForCharacter.

  • platform/graphics/WidthIterator.h: Add String cache argument.
  • rendering/svg/SVGTextRunRenderingContext.cpp: Ditto.

(WebCore::SVGTextRunRenderingContext::glyphDataForCharacter): Ditto.

  • rendering/svg/SVGTextRunRenderingContext.h: Ditto.
  • svg/SVGFontData.cpp:

(WebCore::SVGFontData::applySVGGlyphSelection): Call computeNormalizedSpaces
to consult with the cache.
(WebCore::computeNormalizedSpaces): Compute cached String value.

  • svg/SVGFontData.h: Add String cache argument.
7:24 PM Changeset in webkit [173348] by ddkilzer@apple.com
  • 2 edits in trunk/Source/WebCore

REGRESSION (r169407): Calls to RenderStyle::getRoundedBorderFor() in computeRoundedRectForBoxShape() still include RenderView pointer
<http://webkit.org/b/136591>
<rdar://problem/18143731>

Reviewed by Simon Fraser.

In r169407, the RenderView* argument was removed from
RenderStyle::getRoundedBorderFor(). This argument was not
removed from these calls in computeRoundedRectForBoxShape(), but
because getRoundedBorderFor() always returned a reference, and
because the default for the next argument was true, there was no
actual change in behavior from this bug.

No new tests since there is no change in behavior.

  • rendering/shapes/BoxShape.cpp:

(WebCore::computeRoundedRectForBoxShape): Remove RenderView*
arguments from calls to getRoundedBorderFor().

5:25 PM Changeset in webkit [173347] by Simon Fraser
  • 3 edits in trunk/LayoutTests

Change this test not to use a percentage width, and to use a non-blurred
shadow to avoid different results on Retina display systems.

  • platform/mac-wk2/tiled-drawing/scrolling/frames/fixed-inside-frame-expected.txt:
  • platform/mac-wk2/tiled-drawing/scrolling/frames/fixed-inside-frame.html:
5:16 PM Changeset in webkit [173346] by ggaren@apple.com
  • 8 edits in trunk/Source

bmalloc should honor the FastMalloc statistics API
https://bugs.webkit.org/show_bug.cgi?id=136592

Reviewed by Gavin Barraclough.

Source/bmalloc:

We do this by tracking "size" and "capacity" in the VM heap.

The VM heap's "capacity" is all the VM we ever allocated.

The VM heap's "size" the subset of VM currently held onto by the
VM heap (and therefore not in use by the regular heap).

Somewhat ironically, reducing the process's memory footprint, increases
the size of the VM heap, since the VM heap holds the pages that are
purely virtual and not physical.

  • bmalloc/Heap.cpp:

(bmalloc::Heap::size):
(bmalloc::Heap::capacity):

  • bmalloc/Heap.h:
  • bmalloc/VMHeap.cpp:

(bmalloc::VMHeap::VMHeap):
(bmalloc::VMHeap::allocateSmallChunk):
(bmalloc::VMHeap::allocateMediumChunk):
(bmalloc::VMHeap::allocateLargeChunk):

  • bmalloc/VMHeap.h:

(bmalloc::VMHeap::size):
(bmalloc::VMHeap::capacity):
(bmalloc::VMHeap::allocateSmallPage):
(bmalloc::VMHeap::allocateMediumPage):
(bmalloc::VMHeap::allocateLargeRange):
(bmalloc::VMHeap::deallocateSmallPage):
(bmalloc::VMHeap::deallocateMediumPage):
(bmalloc::VMHeap::deallocateLargeRange):

  • bmalloc/bmalloc.h:

(bmalloc::api::heapSize):
(bmalloc::api::heapCapacity):

Source/WTF:

  • wtf/FastMalloc.cpp:

(WTF::fastMallocStatistics):

5:15 PM Changeset in webkit [173345] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebCore

[iOS] Work around bug 136593 by disabling the PDFDocumentImage live resize optimization there
https://bugs.webkit.org/show_bug.cgi?id=136594
rdar://problem/17457013

Reviewed by Simon Fraser.

  • platform/graphics/cg/PDFDocumentImage.cpp:

(WebCore::PDFDocumentImage::updateCachedImageIfNeeded):
Disable the optimization on iOS, because bug 136593 rears its head
most often on iOS because it is more common to have contexts that always
use low-quality image interpolation on that platform.

5:14 PM Changeset in webkit [173344] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebCore

Doing a navigation on a non-opaque WKWebView can result in an empty layer tree
https://bugs.webkit.org/show_bug.cgi?id=136590
<rdar://problem/18234000>

Reviewed by Simon Fraser.

  • page/FrameView.cpp:

(WebCore::FrameView::setTransparent):
Avoid scheduling a compositing layer update if the RenderView isn't the
one associated with this FrameView. This can happen during a navigation,
before the new Document (and RenderView) is swapped in. This is particularly
bad in the case of setTransparent because it is called from Frame::createView,
which is right in the middle of that transition window. If we let the compositing
layer update go ahead, it can end up detaching the new Document's layer tree,
and we have no mechanism that would cause it to reattach.

5:06 PM Changeset in webkit [173343] by jpfau@apple.com
  • 2 edits in trunk/LayoutTests

Unreviewed, skip tests for a feature that isn't supported

  • platform/mac/TestExpectations:
4:54 PM Changeset in webkit [173342] by enrica@apple.com
  • 2 edits in trunk/Source/WebKit/mac

Build fix after r173340.

  • WebCoreSupport/WebEditorClient.h:

(kit):
(core):

4:40 PM Changeset in webkit [173341] by Lucas Forschler
  • 2 edits in trunk/Tools

<https://webkit.org/b/136586> Add bots to Apple build/test queues

Reviewed by Daniel Bates.

  • BuildSlaveSupport/build.webkit.org-config/config.json:
4:30 PM Changeset in webkit [173340] by enrica@apple.com
  • 13 edits in trunk/Source

Remove PLATFORM(IOS) from WebCore/editing (Part 3).
https://bugs.webkit.org/show_bug.cgi?id=136474

Reviewed by Benjamin Poulain.

This patch removes the use of PLATFORM(IOS) from TextAffinity.h
and removes the assumption that EAffinity values match NSSelectionAffinity
values. It also removes the includes in TextAffinity.h, creating the need to
include explicitly the files when necessary. It also removes the unnecessary
use of platform specific types, replacing them with WebCore types.

Source/WebCore:

  • editing/TextAffinity.h:

(kit): Deleted.
(core): Deleted.

  • editing/cocoa/HTMLConverter.mm:
  • page/mac/WebCoreFrameView.h:
  • platform/ios/ScrollViewIOS.mm:

(WebCore::ScrollView::platformSetScrollPosition):
(WebCore::ScrollView::platformSetScrollOrigin):

  • platform/ios/wak/WAKScrollView.mm:

(-[WAKScrollView setScrollOrigin:updatePositionAtAll:immediately:]):
(-[WAKScrollView scrollOrigin]):

Source/WebKit/mac:

  • WebCoreSupport/WebEditorClient.h: Added kit and core for EAffinity.
  • WebView/WebFrameView.mm:

(-[WebFrameView _scrollToBeginningOfDocument]):
(-[WebFrameView _scrollToEndOfDocument]):

Source/WebKit2:

  • WebProcess/InjectedBundle/API/mac/WKDOMInternals.mm:
  • WebProcess/WebPage/WKAccessibilityWebPageObjectIOS.mm:

(-[WKAccessibilityWebPageObject accessibilityHitTest:]):

4:01 PM Changeset in webkit [173339] by jpfau@apple.com
  • 1 edit
    2 adds in trunk/LayoutTests

Add test after r173324

Rubber-stamped by Simon Fraser.

  • storage/indexeddb/version-change-event-expected.txt: Added.
  • storage/indexeddb/version-change-event.html: Added.
4:00 PM Changeset in webkit [173338] by ggaren@apple.com
  • 2 edits in trunk/Source/WTF

bmalloc should honor the FastMalloc scavenging API
https://bugs.webkit.org/show_bug.cgi?id=136588

Reviewed by Andreas Kling.

  • wtf/FastMalloc.cpp:

(WTF::releaseFastMallocFreeMemory):

3:26 PM Changeset in webkit [173337] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

Unreviewed GTK build fix; include StringPrintStream to pull in toString().

  • html/HTMLMediaElement.h:
3:11 PM Changeset in webkit [173336] by beidson@apple.com
  • 5 edits in trunk

Allow pages with unload handlers in the page cache
<rdar://problem/11084669> and https://bugs.webkit.org/show_bug.cgi?id=136535

Reviewed by Oliver Hunt.

Source/WebCore:

This will match what iOS has been doing for some time.

Updated tests for new behavior.

  • history/PageCache.cpp:

(WebCore::logCanCacheFrameDecision):
(WebCore::PageCache::canCachePageContainingThisFrame):

LayoutTests:

  • fast/frames/frame-crash-with-page-cache-expected.txt:
  • fast/frames/resources/cached-page-1.html:
3:09 PM Changeset in webkit [173335] by roger_fong@apple.com
  • 4 edits in trunk

Remove statically used varyings from packing restrictions check.
https://bugs.webkit.org/show_bug.cgi?id=136585.
<rdar://problem/16308409>

Reviewed by Dean Jackson.

  • src/compiler/translator/Compiler.cpp:

(TCompiler::enforcePackingRestrictions):

  • platform/mac/TestExpectations: Unskip build_009_to_016.html conformance test.
2:32 PM Changeset in webkit [173334] by ggaren@apple.com
  • 2 edits in trunk/Source/WTF

2014-09-05 Geoffrey Garen <ggaren@apple.com>

Rolled out <http://trac.webkit.org/changeset/173313>.

It seems to have broken the PLT bot.

Do the bmalloc.
https://bugs.webkit.org/show_bug.cgi?id=132629

  • wtf/FastMalloc.cpp:
2:08 PM Changeset in webkit [173333] by commit-queue@webkit.org
  • 7 edits
    3 adds in trunk

Web Inspector: breakpoint actions should work regardless of Content Security Policy
https://bugs.webkit.org/show_bug.cgi?id=136542

Patch by Matt Baker <Matt Baker> on 2014-09-05
Reviewed by Mark Lam.

Source/JavaScriptCore:

Added JSC::DebuggerEvalEnabler, an RAII object which enables eval on a
JSGlobalObject for the duration of a scope, returning the eval enabled state to its
original value when the scope exits. Used by JSC::DebuggerCallFrame::evaluate
to allow breakpoint actions to execute JS in pages with a Content Security Policy
that would normally prohibit this (such as Inspector's Main.html).

Refactored Inspector::InjectedScriptBase to use the RAII object instead of manually
setting eval enabled and then resetting the original eval enabled state.

NOTE: The JS::DebuggerEvalEnabler constructor checks the passed in ExecState pointer
for null to be equivalent with the original code in Inspector::InjectedScriptBase.
InjectedScriptBase is getting the ExecState from ScriptObject::scriptState(), which
can currently be null.

(JSC::DebuggerCallFrame::evaluate):

  • debugger/DebuggerEvalEnabler.h: Added.

(JSC::DebuggerEvalEnabler::DebuggerEvalEnabler):
(JSC::DebuggerEvalEnabler::~DebuggerEvalEnabler):

  • inspector/InjectedScriptBase.cpp:

(Inspector::InjectedScriptBase::callFunctionWithEvalEnabled):

LayoutTests:

Added test for "Evaluate JavaScript" breakpoint actions for breakpoints set on
pages with a CSP that does not allow 'unsafe-eval'.

  • inspector/debugger/breakpoint-action-eval-expected.txt: Added.
  • inspector/debugger/breakpoint-action-eval.html: Added.
1:57 PM Changeset in webkit [173332] by ap@apple.com
  • 2 edits in trunk/Tools

Buildbot metrics page gives wrong results after a new bot gets added
https://bugs.webkit.org/show_bug.cgi?id=136516

Reviewed by Tim Horton.

Part 2: Fix elapsed times.

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

(Analyzer.prototype._countTimes): Made lastTestedRevisionByQueue contain undefined values
until the first build in a queue. This happens to work as needed with _fullyTestedRevisionNumber().

1:25 PM Changeset in webkit [173331] by clopez@igalia.com
  • 6 edits in trunk

[SOUP] Implement ResourceResponse::platformSuggestedFilename() when USE(SOUP) is enabled.
https://bugs.webkit.org/show_bug.cgi?id=136562

Reviewed by Martin Robinson.

Source/WebCore:

No new tests, this makes existing tests pass.

  • platform/network/soup/ResourceResponseSoup.cpp:

(WebCore::ResourceResponse::platformSuggestedFilename):
Implement ResourceResponse::platformSuggestedFilename() for SOUP after r173272, r173301 and r173305.

Tools:

  • Scripts/run-gtk-tests:

(TestRunner): Remove failure expectations for tests that now pass.

LayoutTests:

  • platform/gtk/TestExpectations: Remove failure expectations for tests that now pass.
1:05 PM Changeset in webkit [173330] by msaboff@apple.com
  • 3 edits
    2 adds in trunk/LayoutTests

ARM32 iOS: JSC Test math.js fails
https://bugs.webkit.org/show_bug.cgi?id=136261

Reviewed by Geoffrey Garen.

Split out the failing tests to a new test script math-denorm.js. Added check
at the top of the new file to skip the tests when running on ARM for iOS.

  • js/math-denorm-expected.txt: Added.
  • js/math-expected.txt:
  • js/script-tests/math-denorm.js: Added.
  • js/script-tests/math.js:
1:05 PM Changeset in webkit [173329] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebCore

[Curl] Compile error.
https://bugs.webkit.org/show_bug.cgi?id=136574

Patch by peavo@outlook.com <peavo@outlook.com> on 2014-09-05
Reviewed by Alex Christensen.

The ResourceResponse::setSuggestedFilename method is no longer available.

  • platform/network/curl/CurlCacheEntry.cpp:

(WebCore::CurlCacheEntry::setResponseFromCachedHeaders):

  • platform/network/curl/CurlDownload.cpp:

(WebCore::CurlDownload::didReceiveHeader):

  • platform/network/curl/MultipartHandle.cpp:

(WebCore::MultipartHandle::didReceiveResponse):

  • platform/network/curl/ResourceHandleManager.cpp:

(WebCore::headerCallback):

  • platform/network/curl/ResourceResponse.h:

(WebCore::ResourceResponse::platformSuggestedFilename):

1:04 PM Changeset in webkit [173328] by benjamin@webkit.org
  • 21 edits
    12 adds in trunk

Update the current matching of :read-only and :read-write to the latest spec
https://bugs.webkit.org/show_bug.cgi?id=136566

Reviewed by Antti Koivisto.

Source/WebCore:

WebKit's implementation of :read-only and :read-write dated from 2008 and
it was based on the web form spec (http://www.w3.org/TR/web-forms-2/).
That spec is very dead now.

There are new definitions of :read-only and :read-write in three specs:
-the HTML living spec: http://www.whatwg.org/specs/web-apps/current-work/multipage/scripting.html#selector-read-only
-Selectors level 4: http://dev.w3.org/csswg/selectors4/#rw-pseudos
-CSS 3 UI: http://www.w3.org/TR/css3-ui/

All the definitions say about the same thing. The definitions of Selector Level 4 and
CSS 3 UI are very vague and poorly worded. I used the HTML when something was ambiguous.

In the new definitions, :read-only and :read-write are opposite. It is no longer possible to
match both selector simultaneously for the same element.
Consequently, I got rid of Element:matchesReadOnlyPseudoClass(). Matching :read-only is now equivalent
to :not(:read-write).

The existing definition of :read-write was matching the spec so I could reuse that.

There is one more part to the new spec that is not addressed here: the pseudo class :read-write should
now also match arbitrary editable HTMLElement (e.g. an element with contenteditable). This will be fixed
in a follow up.

Tests: fast/css/read-only-read-write-input-basics.html

fast/css/read-only-read-write-textarea-basics.html
fast/selectors/read-only-read-write-input-basics.html
fast/selectors/read-only-read-write-input-in-fieldset.html
fast/selectors/read-only-read-write-textarea-basics.html
fast/selectors/read-only-read-write-textarea-in-fieldset.html

  • css/SelectorCheckerTestFunctions.h:

(WebCore::matchesReadOnlyPseudoClass):

  • dom/Element.cpp:

(WebCore::Element::matchesReadOnlyPseudoClass): Deleted.

  • dom/Element.h:
  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::matchesReadOnlyPseudoClass): Deleted.

  • html/HTMLInputElement.h:
  • html/HTMLTextAreaElement.cpp:

(WebCore::HTMLTextAreaElement::matchesReadOnlyPseudoClass): Deleted.

  • html/HTMLTextAreaElement.h:
  • html/shadow/SliderThumbElement.cpp:

(WebCore::SliderThumbElement::matchesReadOnlyPseudoClass): Deleted.

  • html/shadow/SliderThumbElement.h:
  • html/shadow/SpinButtonElement.cpp:

(WebCore::SpinButtonElement::matchesReadOnlyPseudoClass): Deleted.

  • html/shadow/SpinButtonElement.h:
  • rendering/RenderTheme.cpp:

(WebCore::RenderTheme::isReadOnlyControl):

LayoutTests:

  • fast/css/readonly-pseudoclass-opera-005.html:

This was one of the original test.
With the new definition, input[type=radio] is always :read-only.

  • fast/forms/input-live-pseudo-selectors-expected.txt:
  • fast/forms/resources/input-live-pseudo-selectors.js:
  • fast/forms/resources/live-pseudo-selectors.css:

(:read-only): Deleted.

  • fast/forms/resources/select-live-pseudo-selectors.js:
  • fast/forms/resources/textarea-live-pseudo-selectors.js:
  • fast/forms/textarea-live-pseudo-selectors-expected.txt:

Those various tests were mostly testing form validation. The selectors
for :read-only and :read-write were in the way of testing.

They were only 3 cases tested and they are covered by the new tests.

  • fast/css/read-only-read-write-input-basics-expected.html: Added.
  • fast/css/read-only-read-write-input-basics.html: Added.
  • fast/css/read-only-read-write-textarea-basics-expected.html: Added.
  • fast/css/read-only-read-write-textarea-basics.html: Added.
  • fast/selectors/read-only-read-write-input-basics-expected.txt: Added.
  • fast/selectors/read-only-read-write-input-basics.html: Added.
  • fast/selectors/read-only-read-write-input-in-fieldset-expected.txt: Added.
  • fast/selectors/read-only-read-write-input-in-fieldset.html: Added.
  • fast/selectors/read-only-read-write-textarea-basics-expected.txt: Added.
  • fast/selectors/read-only-read-write-textarea-basics.html: Added.
  • fast/selectors/read-only-read-write-textarea-in-fieldset-expected.txt: Added.
  • fast/selectors/read-only-read-write-textarea-in-fieldset.html: Added.

New tests covering basic features for <input> and <textarea>. The definition for
other editable content is ignored for now.

12:42 PM Changeset in webkit [173327] by commit-queue@webkit.org
  • 5 edits
    1 add in trunk/Source/JavaScriptCore

[WinCairo] jsc.exe won't run.
https://bugs.webkit.org/show_bug.cgi?id=136481

Patch by peavo@outlook.com <peavo@outlook.com> on 2014-09-05
Reviewed by Alex Christensen.

We need to define WIN_CAIRO to avoid looking for the AAS folder.

12:33 PM Changeset in webkit [173326] by ddkilzer@apple.com
  • 12 edits in trunk/Source

JavaScriptCore should build with newer clang
<http://webkit.org/b/136002>
<rdar://problem/18020616>

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

Other than the JSC::SourceProvider::asID() change (which simply
removes code that the optimizing compiler would have discarded
in Release builds), we move the |this| checks in OpaqueJSString
to NULL checks in to JSBase, JSObjectRef, JSScriptRef,
JSStringRef{CF} and JSValueRef.

Note that the following function arguments are _not_ NULL-checked
since doing so would just cover up bugs (and were not needed to
prevent any tests from failing):

  • |script| in JSEvaluateScript(), JSCheckScriptSyntax();
  • |body| in JSObjectMakeFunction();
  • |source| in JSScriptCreateReferencingImmortalASCIIText() (which is a const char* anyway);
  • |source| in JSScriptCreateFromString().
  • API/JSBase.cpp:

(JSEvaluateScript): Add NULL check for |sourceURL|.
(JSCheckScriptSyntax): Ditto.

  • API/JSObjectRef.cpp:

(JSObjectMakeFunction): Ditto.

  • API/JSScriptRef.cpp:

(JSScriptCreateReferencingImmortalASCIIText): Ditto.
(JSScriptCreateFromString): Add NULL check for |url|.

  • API/JSStringRef.cpp:

(JSStringGetLength): Return early if NULL pointer is passed in.
(JSStringGetCharactersPtr): Ditto.
(JSStringGetUTF8CString): Ditto. Also check |buffer| parameter.

  • API/JSStringRefCF.cpp:

(JSStringCopyCFString): Ditto.

  • API/JSValueRef.cpp:

(JSValueMakeString): Add NULL check for |string|.

  • API/OpaqueJSString.cpp:

(OpaqueJSString::string): Remove code that checks |this|.
(OpaqueJSString::identifier): Ditto.
(OpaqueJSString::characters): Ditto.

  • API/OpaqueJSString.h:

(OpaqueJSString::is8Bit): Remove code that checks |this|.
(OpaqueJSString::characters8): Ditto.
(OpaqueJSString::characters16): Ditto.
(OpaqueJSString::length): Ditto.

  • parser/SourceProvider.h:

(JSC::SourceProvider::asID): Remove code that checks |this|.

Source/WebKit2:

  • Shared/API/c/WKString.cpp:

(WKStringCreateWithJSString): Add NULL check to prevent
WebKitTestRunner crashes that relied on the previous |this|
behavior where NULL values were allowed.

12:25 PM Changeset in webkit [173325] by akling@apple.com
  • 12 edits in trunk/Source/WebCore

CTTE: SVGResourcesCache should only allow RenderElements.
<https://webkit.org/b/136578>

Only RenderElement subclasses can use SVG resources.
Codify this by making SVGResourcesCache::m_cache keyed on RenderElement.

Reviewed by Antti Koivisto.

  • rendering/svg/RenderSVGContainer.cpp:

(WebCore::RenderSVGContainer::selfWillPaint):

  • rendering/svg/RenderSVGImage.cpp:

(WebCore::RenderSVGImage::imageChanged):

  • rendering/svg/RenderSVGResource.cpp:

(WebCore::requestPaintingResource):
(WebCore::removeFromCacheAndInvalidateDependencies):

  • rendering/svg/RenderSVGResourceClipper.cpp:

(WebCore::RenderSVGResourceClipper::applyClippingToContext):

  • rendering/svg/RenderSVGRoot.cpp:

(WebCore::RenderSVGRoot::paintReplaced):

  • rendering/svg/RenderSVGShape.cpp:

(WebCore::RenderSVGShape::shouldGenerateMarkerPositions):
(WebCore::RenderSVGShape::markerRect):
(WebCore::RenderSVGShape::drawMarkers):

  • rendering/svg/SVGRenderSupport.cpp:

(WebCore::invalidateResourcesOfChildren):
(WebCore::SVGRenderSupport::intersectRepaintRectWithResources):
(WebCore::SVGRenderSupport::filtersForceContainerLayout):
(WebCore::SVGRenderSupport::pointInClippingArea):

  • rendering/svg/SVGRenderingContext.cpp:

(WebCore::SVGRenderingContext::prepareToRenderSVGContent):

  • rendering/svg/SVGResourcesCache.cpp:

(WebCore::resourcesCacheFromRenderer):
(WebCore::SVGResourcesCache::cachedResourcesForRenderer):
(WebCore::SVGResourcesCache::clientLayoutChanged):
(WebCore::SVGResourcesCache::clientDestroyed):
(WebCore::SVGResourcesCache::resourceDestroyed):
(WebCore::SVGResourcesCache::cachedResourcesForRenderObject): Deleted.

  • rendering/svg/SVGResourcesCache.h:
  • rendering/svg/SVGResourcesCycleSolver.cpp:

(WebCore::SVGResourcesCycleSolver::resourceContainsCycles):

12:20 PM Changeset in webkit [173324] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

IDB version changed events should have a valid eventType()
https://bugs.webkit.org/show_bug.cgi?id=136583

Reviewed by Brady Eidson.

IDBDatabase::dispatchEvent() asserts that the event type is versionchangeEvent,
but the version changed event created with an empty event type. Correct this.

  • Modules/indexeddb/IDBDatabase.cpp:

(WebCore::IDBDatabase::onVersionChange):

12:16 PM Changeset in webkit [173323] by roger_fong@apple.com
  • 2 edits in trunk/Source/WebCore

Increase number of maximum active WebGL contexts.
https://bugs.webkit.org/show_bug.cgi?id=136551.
<rdar://problem/18236425>

Reviewed by Brent Fulgham.

Test covered by Khronos conformance test:
webgl/1.0.2/conformance/context/context-creation-and-destruction.html

  • platform/graphics/mac/GraphicsContext3DMac.mm:
12:09 PM Changeset in webkit [173322] by ap@apple.com
  • 4 edits in trunk/Tools

Dashboard metrics page wastes a lot of time sorting iterations
https://bugs.webkit.org/show_bug.cgi?id=136559

Reviewed by Tim Horton.

Also fixes comments here and there, and adds a missing "var".

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

(BuildbotIteration.prototype._parseData):
(BuildbotIteration.prototype._updateWithData):

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

(BuildbotQueue.prototype.loadAll):

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

(Analyzer.prototype._countTimes):

11:57 AM Changeset in webkit [173321] by Simon Fraser
  • 6 edits in trunk/Source

Remove some PLATFORM(IOS) code in Color.h/cpp
https://bugs.webkit.org/show_bug.cgi?id=136582

Reviewed by Dan Bates.
Source/WebCore:

Remove Color::tap which is unused, and remove createCGColorWithDeviceWhite()
which was only called in one file in WebKit.

  • WebCore.exp.in:
  • platform/graphics/Color.h:
  • platform/graphics/cg/ColorCG.cpp:

(WebCore::createCGColorWithDeviceWhite): Deleted.

Source/WebKit/ios:

createCGColorWithDeviceWhite() is only used here so make it a local static function.

  • WebView/WebPDFViewIOS.mm:

(createCGColorWithDeviceWhite):

11:54 AM Changeset in webkit [173320] by Beth Dakin
  • 17 edits in trunk/Source

ScrollablArea::handleWheelEvent() should return early if the ScrollableArea is not
actually scrollable
https://bugs.webkit.org/show_bug.cgi?id=136558

Reviewed by Simon Fraser.

Source/WebCore:

This patch requires adding a new virtual function to ScrollableArea called
isScrollableOrRubberbandable(). Unfortunately, there is already a virtual function
of that name that exists on RenderLayerModelObject, which is only problematic
because RenderListBox inherits from both RenderLayerModelObject and
ScrollableArea. This patch resolves that conflict in the simplest way, by re-
naming the RenderLayerModelObject version of the function to
isScrollableOrRubberbandableBox(). It’s a little unfortunate, but simpler than the
other solutions I came up with.

New ScrollableArea virtual function.

  • page/FrameView.cpp:

(WebCore::FrameView::isScrollableOrRubberbandable):

  • page/FrameView.h:

The point of the whole patch! Return early if you can’t scroll or rubber band.

  • platform/ScrollableArea.cpp:

(WebCore::ScrollableArea::handleWheelEvent):

New ScrollableArea virtual function.

  • platform/ScrollableArea.h:
  • platform/win/PopupMenuWin.h:

Re-name.

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::isScrollableOrRubberbandableBox):
(WebCore::RenderBox::isScrollableOrRubberbandable): Deleted.

  • rendering/RenderBox.h:

Implement new ScrollableArea virtual function, and adapt to the re-name.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::isScrollableOrRubberbandable):
(WebCore::RenderLayer::hasScrollableOrRubberbandableAncestor):

  • rendering/RenderLayer.h:

Re-name.

  • rendering/RenderLayerModelObject.h:

(WebCore::RenderLayerModelObject::isScrollableOrRubberbandableBox):
(WebCore::RenderLayerModelObject::isScrollableOrRubberbandable): Deleted.

Implement ScrollableArea virtual function.

  • rendering/RenderListBox.cpp:

(WebCore::RenderListBox::isScrollableOrRubberbandable):

  • rendering/RenderListBox.h:

Re-name.

  • rendering/RenderView.cpp:

(WebCore::RenderView::isScrollableOrRubberbandableBox):
(WebCore::RenderView::isScrollableOrRubberbandable): Deleted.

  • rendering/RenderView.h:

Source/WebKit2:

New ScrollableArea virtual function.

  • WebProcess/Plugins/PDF/PDFPlugin.h:
11:42 AM Changeset in webkit [173319] by clopez@igalia.com
  • 5 edits in trunk

[GTK] Unreviewed GTK gardening.

Tools:

  • Scripts/run-gtk-tests:

(TestRunner): Skip tests failing since r173272.

LayoutTests:

  • platform/gtk/TestExpectations: Report and mark new failures after r173049 and r173272.

Update some expectations for new cases.

  • platform/gtk/fast/css/vertical-text-overflow-ellipsis-text-align-center-expected.txt: Rebaseline after r173049.
11:38 AM Changeset in webkit [173318] by jer.noble@apple.com
  • 75 edits
    2 copies
    2 moves
    1 delete in trunk

Refactoring: make MediaTime the primary time type for audiovisual times.
https://bugs.webkit.org/show_bug.cgi?id=133579

Reviewed by Eric Carlson.

Source/JavaScriptCore:

Add a utility function which converts a MediaTime to a JSNumber.

  • runtime/JSCJSValue.h:

(JSC::jsNumber):

Source/WebCore:

In order to limit the number of floating-point rounding errors for media systems which
can make use of rational time objects.

Add some convenience methods to convert between QTTime and MediaTime.

  • platform/graphics/mac/MediaTimeQTKit.h: Added.
  • platform/graphics/mac/MediaTimeQTKit.mm: Added.

(WebCore::toMediaTime):
(WebCore::toQTTime):

Rename MediaTimeMac -> MediaTimeAVFoundation:

  • platform/graphics/avfoundation/MediaTimeAVFoundation.cpp: Renamed from Source/WebCore/platform/mac/MediaTimeMac.cpp.

(WebCore::toMediaTime):
(WebCore::toCMTime):

  • platform/graphics/avfoundation/MediaTimeAVFoundation.h: Renamed from Source/WebCore/platform/mac/MediaTimeMac.h.

Use MediaTime instead of double:

  • Modules/mediasource/MediaSource.cpp:

(WebCore::MediaSource::duration):
(WebCore::MediaSource::currentTime):
(WebCore::MediaSource::buffered):
(WebCore::MediaSource::setDuration):
(WebCore::MediaSource::activeRanges):

  • Modules/mediasource/MediaSource.h:
  • Modules/mediasource/SourceBuffer.cpp:

(WebCore::SourceBuffer::remove):
(WebCore::SourceBuffer::removeCodedFrames):
(WebCore::SourceBuffer::sourceBufferPrivateDidReceiveInitializationSegment):
(WebCore::SourceBuffer::sourceBufferPrivateDidReceiveSample):
(WebCore::SourceBuffer::hasCurrentTime):
(WebCore::SourceBuffer::hasFutureTime):
(WebCore::SourceBuffer::canPlayThrough):

  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSDataCueCustom.cpp:

(WebCore::JSDataCueConstructor::constructJSDataCue):

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::HTMLMediaElement):
(WebCore::HTMLMediaElement::parseAttribute):

  • html/HTMLMediaElement.h:

(WebCore::ValueToString<MediaTime>::string):

  • html/MediaFragmentURIParser.cpp:

(WebCore::MediaFragmentURIParser::MediaFragmentURIParser):
(WebCore::MediaFragmentURIParser::startTime):
(WebCore::MediaFragmentURIParser::endTime):
(WebCore::MediaFragmentURIParser::parseTimeFragment):
(WebCore::MediaFragmentURIParser::parseNPTFragment):
(WebCore::MediaFragmentURIParser::parseNPTTime):
(WebCore::MediaFragmentURIParser::invalidTimeValue): Deleted.

  • html/MediaFragmentURIParser.h:
  • html/TimeRanges.h:

(WebCore::TimeRanges::ranges):

  • html/track/DataCue.cpp:

(WebCore::DataCue::DataCue):

  • html/track/DataCue.h:

(WebCore::DataCue::create):

  • html/track/InbandDataTextTrack.cpp:

(WebCore::InbandDataTextTrack::addDataCue):
(WebCore::InbandDataTextTrack::updateDataCue):
(WebCore::InbandDataTextTrack::removeDataCue):

  • html/track/InbandDataTextTrack.h:
  • html/track/InbandGenericTextTrack.cpp:

(WebCore::InbandGenericTextTrack::updateCueFromCueData):
(WebCore::InbandGenericTextTrack::addGenericCue):
(WebCore::InbandGenericTextTrack::removeGenericCue):

  • html/track/InbandTextTrack.cpp:

(WebCore::InbandTextTrack::startTimeVariance):

  • html/track/InbandTextTrack.h:
  • html/track/InbandWebVTTTextTrack.cpp:

(WebCore::InbandWebVTTTextTrack::newCuesParsed):

  • html/track/TextTrack.cpp:

(WebCore::TextTrack::addCue):
(WebCore::TextTrack::hasCue):

  • html/track/TextTrack.h:

(WebCore::TextTrack::startTimeVariance):

  • html/track/TextTrackCue.cpp:

(WebCore::TextTrackCue::create):
(WebCore::TextTrackCue::TextTrackCue):
(WebCore::TextTrackCue::setStartTime):
(WebCore::TextTrackCue::setEndTime):
(WebCore::TextTrackCue::hasEquivalentStartTime):

  • html/track/TextTrackCue.h:

(WebCore::TextTrackCue::startTime):
(WebCore::TextTrackCue::endTime):

  • html/track/TextTrackCueGeneric.cpp:

(WebCore::TextTrackCueGeneric::TextTrackCueGeneric):

  • html/track/TextTrackCueGeneric.h:
  • html/track/TextTrackCueList.cpp:

(WebCore::TextTrackCueList::add):

  • html/track/VTTCue.cpp:

(WebCore::VTTCue::VTTCue):
(WebCore::VTTCue::markFutureAndPastNodes):
(WebCore::VTTCue::updateDisplayTree):

  • html/track/VTTCue.h:

(WebCore::VTTCue::create):

  • html/track/WebVTTParser.cpp:

(WebCore::WebVTTParser::WebVTTParser):
(WebCore::WebVTTParser::resetCueValues):
(WebCore::WebVTTParser::collectTimeStamp):
(WebCore::WebVTTTreeBuilder::constructTreeFromToken):

  • html/track/WebVTTParser.h:

(WebCore::WebVTTCueData::startTime):
(WebCore::WebVTTCueData::setStartTime):
(WebCore::WebVTTCueData::endTime):
(WebCore::WebVTTCueData::setEndTime):
(WebCore::WebVTTCueData::WebVTTCueData): Deleted.

  • platform/graphics/InbandTextTrackPrivateClient.h:

(WebCore::GenericCueData::startTime):
(WebCore::GenericCueData::setStartTime):
(WebCore::GenericCueData::endTime):
(WebCore::GenericCueData::setEndTime):
(WebCore::GenericCueData::GenericCueData):

  • platform/graphics/MediaPlayer.cpp:

(WebCore::MediaPlayer::duration):
(WebCore::MediaPlayer::startTime):
(WebCore::MediaPlayer::initialTime):
(WebCore::MediaPlayer::currentTime):
(WebCore::MediaPlayer::seekWithTolerance):
(WebCore::MediaPlayer::seek):
(WebCore::MediaPlayer::maxTimeSeekable):
(WebCore::MediaPlayer::minTimeSeekable):
(WebCore::MediaPlayer::mediaTimeForTimeValue):
(WebCore::MediaPlayer::totalFrameDelay):

  • platform/graphics/MediaPlayer.h:
  • platform/graphics/MediaPlayerPrivate.h:

(WebCore::MediaPlayerPrivateInterface::durationMediaTime):
(WebCore::MediaPlayerPrivateInterface::currentMediaTime):
(WebCore::MediaPlayerPrivateInterface::seek):
(WebCore::MediaPlayerPrivateInterface::seekWithTolerance):
(WebCore::MediaPlayerPrivateInterface::startTime):
(WebCore::MediaPlayerPrivateInterface::initialTime):
(WebCore::MediaPlayerPrivateInterface::seekable):
(WebCore::MediaPlayerPrivateInterface::maxMediaTimeSeekable):
(WebCore::MediaPlayerPrivateInterface::minMediaTimeSeekable):
(WebCore::MediaPlayerPrivateInterface::mediaTimeForTimeValue):
(WebCore::MediaPlayerPrivateInterface::totalFrameDelay):
(WebCore::MediaPlayerPrivateInterface::startTimeDouble): Deleted.
(WebCore::MediaPlayerPrivateInterface::maxTimeSeekableDouble): Deleted.
(WebCore::MediaPlayerPrivateInterface::mediaTimeForTimeValueDouble): Deleted.

  • platform/graphics/MediaSourcePrivateClient.h:
  • platform/graphics/TrackPrivateBase.h:

(WebCore::TrackPrivateBase::startTimeVariance):

  • platform/graphics/avfoundation/InbandMetadataTextTrackPrivateAVF.cpp:

(WebCore::InbandMetadataTextTrackPrivateAVF::InbandMetadataTextTrackPrivateAVF):
(WebCore::InbandMetadataTextTrackPrivateAVF::addDataCue):
(WebCore::InbandMetadataTextTrackPrivateAVF::updatePendingCueEndTimes):
(WebCore::InbandMetadataTextTrackPrivateAVF::flushPartialCues):

  • platform/graphics/avfoundation/InbandMetadataTextTrackPrivateAVF.h:

(WebCore::IncompleteMetaDataCue::IncompleteMetaDataCue):
(WebCore::IncompleteMetaDataCue::startTime):

  • platform/graphics/avfoundation/InbandTextTrackPrivateAVF.cpp:

(WebCore::InbandTextTrackPrivateAVF::processCue):
(WebCore::InbandTextTrackPrivateAVF::resetCueValues):

  • platform/graphics/avfoundation/InbandTextTrackPrivateAVF.h:
  • platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:

(WebCore::MediaPlayerPrivateAVFoundation::MediaPlayerPrivateAVFoundation):
(WebCore::MediaPlayerPrivateAVFoundation::durationMediaTime):
(WebCore::MediaPlayerPrivateAVFoundation::seek):
(WebCore::MediaPlayerPrivateAVFoundation::seekWithTolerance):
(WebCore::MediaPlayerPrivateAVFoundation::maxMediaTimeSeekable):
(WebCore::MediaPlayerPrivateAVFoundation::minMediaTimeSeekable):
(WebCore::MediaPlayerPrivateAVFoundation::maxTimeLoaded):
(WebCore::MediaPlayerPrivateAVFoundation::didLoadingProgress):
(WebCore::MediaPlayerPrivateAVFoundation::updateStates):
(WebCore::MediaPlayerPrivateAVFoundation::loadedTimeRangesChanged):
(WebCore::MediaPlayerPrivateAVFoundation::seekableTimeRangesChanged):
(WebCore::MediaPlayerPrivateAVFoundation::timeChanged):
(WebCore::MediaPlayerPrivateAVFoundation::didEnd):
(WebCore::MediaPlayerPrivateAVFoundation::invalidateCachedDuration):
(WebCore::MediaPlayerPrivateAVFoundation::scheduleMainThreadNotification):
(WebCore::MediaPlayerPrivateAVFoundation::extraMemoryCost):
(WebCore::MediaPlayerPrivateAVFoundation::duration): Deleted.
(WebCore::MediaPlayerPrivateAVFoundation::maxTimeSeekableDouble): Deleted.
(WebCore::MediaPlayerPrivateAVFoundation::minTimeSeekable): Deleted.

  • platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:

(WebCore::MediaPlayerPrivateAVFoundation::Notification::Notification):
(WebCore::MediaPlayerPrivateAVFoundation::Notification::time):

  • platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:

(WebCore::MediaPlayerPrivateAVFoundationCF::platformDuration):
(WebCore::MediaPlayerPrivateAVFoundationCF::currentTime):
(WebCore::MediaPlayerPrivateAVFoundationCF::seekToTime):
(WebCore::MediaPlayerPrivateAVFoundationCF::platformDuration):
(WebCore::MediaPlayerPrivateAVFoundationCF::currentTime):
(WebCore::MediaPlayerPrivateAVFoundationCF::seekToTime):
(WebCore::MediaPlayerPrivateAVFoundationCF::platformMinTimeSeekable):
(WebCore::MediaPlayerPrivateAVFoundationCF::platformMaxTimeSeekable):
(WebCore::MediaPlayerPrivateAVFoundationCF::platformMaxTimeLoaded):
(WebCore::MediaPlayerPrivateAVFoundationCF::mediaTimeForTimeValue): Deleted.
(WebCore::AVFWrapper::seekToTime): Deleted.
(WebCore::LegibleOutputData::LegibleOutputData): Deleted.
(WebCore::AVFWrapper::createImageForTimeInRect): Deleted.
(WebCore::MediaPlayerPrivateAVFoundationCF::platformMinTimeSeekable):
(WebCore::MediaPlayerPrivateAVFoundationCF::platformMaxTimeSeekable):
(WebCore::MediaPlayerPrivateAVFoundationCF::platformMaxTimeLoaded):
(WebCore::MediaPlayerPrivateAVFoundationCF::mediaTimeForTimeValue): Deleted.
(WebCore::AVFWrapper::seekToTime): Deleted.
(WebCore::LegibleOutputData::LegibleOutputData): Deleted.
(WebCore::AVFWrapper::createImageForTimeInRect): Deleted.

  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:

(WebCore::MediaPlayerPrivateAVFoundationObjC::MediaPlayerPrivateAVFoundationObjC):
(WebCore::MediaPlayerPrivateAVFoundationObjC::cancelLoad):
(WebCore::MediaPlayerPrivateAVFoundationObjC::platformDuration):
(WebCore::MediaPlayerPrivateAVFoundationObjC::currentMediaTime):
(WebCore::MediaPlayerPrivateAVFoundationObjC::seekToTime):
(WebCore::MediaPlayerPrivateAVFoundationObjC::platformMinTimeSeekable):
(WebCore::MediaPlayerPrivateAVFoundationObjC::platformMaxTimeSeekable):
(WebCore::MediaPlayerPrivateAVFoundationObjC::platformMaxTimeLoaded):
(WebCore::MediaPlayerPrivateAVFoundationObjC::mediaTimeForTimeValue):
(WebCore::MediaPlayerPrivateAVFoundationObjC::processCue):
(WebCore::MediaPlayerPrivateAVFoundationObjC::metadataDidArrive):
(WebCore::MediaPlayerPrivateAVFoundationObjC::durationDidChange):
(-[WebCoreAVFMovieObserver observeValueForKeyPath:ofObject:change:context:]):
(-[WebCoreAVFMovieObserver legibleOutput:didOutputAttributedStrings:nativeSampleBuffers:forItemTime:]):
(WebCore::MediaPlayerPrivateAVFoundationObjC::currentTime): Deleted.

  • platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.h:
  • platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:

(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::durationMediaTime):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::startTime):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::initialTime):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::seekWithTolerance):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::seekInternal):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::seekable):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::maxMediaTimeSeekable):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::minMediaTimeSeekable):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::totalFrameDelay):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::durationDouble): Deleted.
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::currentTimeDouble): Deleted.
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::startTimeDouble): Deleted.
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::maxTimeSeekableDouble): Deleted.
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::minTimeSeekable): Deleted.

  • platform/graphics/avfoundation/objc/OutOfBandTextTrackPrivateAVF.h:
  • platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:
  • platform/graphics/gstreamer/InbandMetadataTextTrackPrivateGStreamer.h:

(WebCore::InbandMetadataTextTrackPrivateGStreamer::addDataCue):

  • platform/graphics/gstreamer/InbandMetadataTextTrackPrivateGStreamer.h:

(WebCore::InbandMetadataTextTrackPrivateGStreamer::addDataCue):

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

(WebCore::MediaPlayerPrivateGStreamer::processMpegTsSection):
(WebCore::MediaPlayerPrivateGStreamer::processTableOfContentsEntry):
(WebCore::MediaPlayerPrivateGStreamer::processMpegTsSection):
(WebCore::MediaPlayerPrivateGStreamer::processTableOfContentsEntry):

  • platform/graphics/mac/MediaPlayerPrivateQTKit.h:
  • platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
  • platform/graphics/mac/MediaPlayerPrivateQTKit.mm:

(WebCore::maxValueForTimeRanges):
(WebCore::MediaPlayerPrivateQTKit::MediaPlayerPrivateQTKit):
(WebCore::MediaPlayerPrivateQTKit::durationMediaTime):
(WebCore::MediaPlayerPrivateQTKit::currentMediaTime):
(WebCore::MediaPlayerPrivateQTKit::seek):
(WebCore::MediaPlayerPrivateQTKit::doSeek):
(WebCore::MediaPlayerPrivateQTKit::cancelSeek):
(WebCore::MediaPlayerPrivateQTKit::seekTimerFired):
(WebCore::MediaPlayerPrivateQTKit::seeking):
(WebCore::MediaPlayerPrivateQTKit::setPreservesPitch):
(WebCore::MediaPlayerPrivateQTKit::buffered):
(WebCore::MediaPlayerPrivateQTKit::maxMediaTimeSeekable):
(WebCore::MediaPlayerPrivateQTKit::maxMediaTimeLoaded):
(WebCore::MediaPlayerPrivateQTKit::didLoadingProgress):
(WebCore::MediaPlayerPrivateQTKit::updateStates):
(WebCore::MediaPlayerPrivateQTKit::timeChanged):
(WebCore::MediaPlayerPrivateQTKit::didEnd):
(WebCore::MediaPlayerPrivateQTKit::maxMediaTimeSeekable):
(WebCore::MediaPlayerPrivateQTKit::maxMediaTimeLoaded):
(WebCore::MediaPlayerPrivateQTKit::createQTTime): Deleted.
(WebCore::MediaPlayerPrivateQTKit::duration): Deleted.
(WebCore::MediaPlayerPrivateQTKit::currentTime): Deleted.
(WebCore::MediaPlayerPrivateQTKit::maxTimeSeekable): Deleted.
(WebCore::MediaPlayerPrivateQTKit::maxTimeLoaded): Deleted.
(WebCore::MediaPlayerPrivateQTKit::mediaTimeForTimeValue): Deleted.

  • platform/mac/PlatformClockCM.mm:
  • platform/mock/mediasource/MockMediaPlayerMediaSource.cpp:

(WebCore::MockMediaPlayerMediaSource::maxMediaTimeSeekable):
(WebCore::MockMediaPlayerMediaSource::currentMediaTime):
(WebCore::MockMediaPlayerMediaSource::durationMediaTime):
(WebCore::MockMediaPlayerMediaSource::seekWithTolerance):
(WebCore::MockMediaPlayerMediaSource::totalFrameDelay):
(WebCore::MockMediaPlayerMediaSource::maxTimeSeekableDouble): Deleted.
(WebCore::MockMediaPlayerMediaSource::currentTimeDouble): Deleted.
(WebCore::MockMediaPlayerMediaSource::durationDouble): Deleted.

  • platform/mock/mediasource/MockMediaPlayerMediaSource.h:
  • platform/mock/mediasource/MockMediaSourcePrivate.cpp:

(WebCore::MockMediaSourcePrivate::MockMediaSourcePrivate):

  • platform/mock/mediasource/MockMediaSourcePrivate.h:
  • platform/mock/mediasource/MockSourceBufferPrivate.cpp:

(WebCore::MockSourceBufferPrivate::enqueueSample):

Source/WTF:

Add a unary minus operator, and add unimplemented private casting operators, to make
unintentional double->MediaTime and MediaTime->double casts hard errors.

  • wtf/MediaTime.cpp:

(WTF::MediaTime::operator-):

  • wtf/MediaTime.h:

LayoutTests:

Update the http/media tests to use byte-ranges, and update our byte-range CGI script
to return correct headers. Remove the platform expected results for media/video-seek-past-end-paused.html
now that we pass.

  • http/tests/media/reload-after-dialog.html:
  • http/tests/media/video-error-abort.html:
  • http/tests/media/video-throttled-load.cgi:
  • platform/mac/media/video-seek-past-end-paused-expected.txt: Removed.
  • platform/mac/TestExpectations:
11:33 AM Changeset in webkit [173317] by dbates@webkit.org
  • 2 edits in trunk/Source/WebKit/mac

[iOS] Another attempt to fix the iOS build after <http://trac.webkit.org/changeset/173309>
(https://bugs.webkit.org/show_bug.cgi?id=136564)

Move #endif inside -viewDidMoveToWindow up one line such that the closing brace ('}') is after it.

  • WebView/WebHTMLView.mm:

(-[WebHTMLView viewDidMoveToWindow]):

11:25 AM Changeset in webkit [173316] by dbates@webkit.org
  • 2 edits in trunk/Source/WebKit/mac

[iOS] Another attempt to fix the iOS build after <http://trac.webkit.org/changeset/173309>
(https://bugs.webkit.org/show_bug.cgi?id=136564)

Add !PLATFORM(IOS)-guard in -viewDidMoveToWindow around code that references WebHTMLViewPrivate.flagsChangedEventMonitor.
The instance variable WebHTMLViewPrivate.flagsChangedEventMonitor is guarded by !PLATFORM(IOS).

  • WebView/WebHTMLView.mm:

(-[WebHTMLView viewDidMoveToWindow]):

11:16 AM Changeset in webkit [173315] by dbates@webkit.org
  • 2 edits in trunk/Source/WebKit/mac

[iOS] Fix the iOS build after <http://trac.webkit.org/changeset/173309>
(https://bugs.webkit.org/show_bug.cgi?id=136564)

Include more code inside the !PLATFORM(IOS)-guarded section in -setDataSource:.

  • WebView/WebHTMLView.mm:

(-[WebHTMLView setDataSource:]):

11:15 AM Changeset in webkit [173314] by Antti Koivisto
  • 3 edits in trunk/Source/WebCore

REGRESSION(r173272): Two blob tests failing on WK1
https://bugs.webkit.org/show_bug.cgi?id=136573

Reviewed by Alexey Proskuryakov.

http/tests/fileapi/blob-url-in-subframe.html
http/tests/security/mixedContent/blob-url-in-iframe.html

  • platform/network/BlobResourceHandle.cpp:

(WebCore::BlobResourceHandle::notifyResponseOnSuccess):

No need to set this twice.

  • platform/network/mac/ResourceResponseMac.mm:

(WebCore::ResourceResponse::initNSURLResponse):

Also test that it is an HTTP URL before using NSHTTPURLResponse. Blobs create non-HTTP URLs with status codes.
Pass the accidentally lost expected content length.

11:07 AM Changeset in webkit [173313] by ggaren@apple.com
  • 2 edits in trunk/Source/WTF

Do the bmalloc.
https://bugs.webkit.org/show_bug.cgi?id=132629

Reviewed by Michael Saboff.

64-bit only for now, just to try it out.

  • wtf/FastMalloc.cpp:
9:17 AM Changeset in webkit [173312] by msaboff@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

ARM: Add more coverage to ARMv7 disassembler
https://bugs.webkit.org/show_bug.cgi?id=136565

Reviewed by Mark Lam.

Added ARMV7 disassembler support for Push/Pop multiple and floating point instructions
VCMP, VCVT[R] between floating point and integer, and VLDR.

  • disassembler/ARMv7/ARMv7DOpcode.cpp:

(JSC::ARMv7Disassembler::ARMv7DOpcodeDataPushPopMultiple::appendRegisterList):
(JSC::ARMv7Disassembler::ARMv7DOpcodeDataPopMultiple::format):
(JSC::ARMv7Disassembler::ARMv7DOpcodeDataPushMultiple::format):
(JSC::ARMv7Disassembler::ARMv7DOpcodeVCMP::format):
(JSC::ARMv7Disassembler::ARMv7DOpcodeVCVTBetweenFPAndInt::format):
(JSC::ARMv7Disassembler::ARMv7DOpcodeVLDR::format):

  • disassembler/ARMv7/ARMv7DOpcode.h:

(JSC::ARMv7Disassembler::ARMv7DOpcodeDataPushPopMultiple::registerList):
(JSC::ARMv7Disassembler::ARMv7DOpcodeDataPushPopMultiple::condition):
(JSC::ARMv7Disassembler::ARMv7DOpcodeVCMP::condition):
(JSC::ARMv7Disassembler::ARMv7DOpcodeVCMP::dBit):
(JSC::ARMv7Disassembler::ARMv7DOpcodeVCMP::vd):
(JSC::ARMv7Disassembler::ARMv7DOpcodeVCMP::szBit):
(JSC::ARMv7Disassembler::ARMv7DOpcodeVCMP::eBit):
(JSC::ARMv7Disassembler::ARMv7DOpcodeVCMP::mBit):
(JSC::ARMv7Disassembler::ARMv7DOpcodeVCMP::vm):
(JSC::ARMv7Disassembler::ARMv7DOpcodeVCVTBetweenFPAndInt::condition):
(JSC::ARMv7Disassembler::ARMv7DOpcodeVCVTBetweenFPAndInt::dBit):
(JSC::ARMv7Disassembler::ARMv7DOpcodeVCVTBetweenFPAndInt::op2):
(JSC::ARMv7Disassembler::ARMv7DOpcodeVCVTBetweenFPAndInt::vd):
(JSC::ARMv7Disassembler::ARMv7DOpcodeVCVTBetweenFPAndInt::szBit):
(JSC::ARMv7Disassembler::ARMv7DOpcodeVCVTBetweenFPAndInt::op):
(JSC::ARMv7Disassembler::ARMv7DOpcodeVCVTBetweenFPAndInt::mBit):
(JSC::ARMv7Disassembler::ARMv7DOpcodeVCVTBetweenFPAndInt::vm):
(JSC::ARMv7Disassembler::ARMv7DOpcodeVLDR::condition):
(JSC::ARMv7Disassembler::ARMv7DOpcodeVLDR::uBit):
(JSC::ARMv7Disassembler::ARMv7DOpcodeVLDR::rn):
(JSC::ARMv7Disassembler::ARMv7DOpcodeVLDR::vd):
(JSC::ARMv7Disassembler::ARMv7DOpcodeVLDR::doubleReg):
(JSC::ARMv7Disassembler::ARMv7DOpcodeVLDR::immediate8):

7:18 AM Changeset in webkit [173311] by Alan Bujtas
  • 5 edits in trunk/Source/WebCore

Move computeInlinePreferredLogicalWidths() from RenderBlock to RenderBlockFlow
https://bugs.webkit.org/show_bug.cgi?id=136461

Reviewed by Darin Adler.

This patch enables us to go from const_cast<RenderBlockFlow*>(this)->computeInlinePreferredLogicalWidths()
to computeInlinePreferredLogicalWidths().

Covered by existing tests.

  • rendering/RenderBlock.cpp:

(WebCore::InlineMinMaxIterator::endOfInline): Deleted.
(WebCore::InlineMinMaxIterator::next): Deleted.
(WebCore::getBPMWidth): Deleted.
(WebCore::getBorderPaddingMargin): Deleted.
(WebCore::stripTrailingSpace): Deleted.
(WebCore::preferredWidth): Deleted.
(WebCore::RenderBlock::computeInlinePreferredLogicalWidths): Deleted.

  • rendering/RenderBlock.h:
  • rendering/RenderBlockFlow.cpp:

(WebCore::RenderBlockFlow::computeIntrinsicLogicalWidths):
(WebCore::InlineMinMaxIterator::initial): The (parent == current) condition was used as 'initial' state before.
and in order to make computeInlinePreferredLogicalWidths const, InlineMinMaxIterator() needs to take const RenderObject*.
(WebCore::InlineMinMaxIterator::next):
(WebCore::getBPMWidth):
(WebCore::getBorderPaddingMargin):
(WebCore::stripTrailingSpace):
(WebCore::preferredWidth):
(WebCore::RenderBlockFlow::computeInlinePreferredLogicalWidths):

  • rendering/RenderBlockFlow.h:
3:25 AM Changeset in webkit [173310] by Dániel Bátyai
  • 2 edits in trunk/Source/WTF

Enable GenGC on ARM Traditional
https://bugs.webkit.org/show_bug.cgi?id=136567

Reviewed by Csaba Osztrogonác.

  • wtf/Platform.h:
1:01 AM Changeset in webkit [173309] by mjs@apple.com
  • 3 edits in trunk/Source/WebKit/mac

Use tracking areas instead of (SPI) mouse moved notifications, and follow flags changes with an event monitor
https://bugs.webkit.org/show_bug.cgi?id=136564

Reviewed by Dan Bernstein.

WebKit1 depended on mouse moved event notifications to track mouse
moves, and on being specially called by Safari to track flags
changes. WebKit2 does both these things better - it uses a tracking area
and event monitors. Copy those approaches.

  • WebKit.order: Remove reference to obsolete call.
  • WebView/WebHTMLView.mm:

(-[WebHTMLViewPrivate dealloc]): No need to deallocate tracking
area, since we now just always have one.
(-[WebHTMLViewPrivate clear]): ditto
(-[WebHTMLView _postFakeMouseMovedEventForFlagsChangedEvent:]):
New method that posts a fake mouse move event in response to
a flags change event, for use by the event monitor.
(+[WebHTMLView _postFlagsChangedEvent:]): Empty this old call,
still kept around for benefit of older Safari.
(-[WebHTMLView _updateMouseoverWithEvent:]): Handle Dashboard's
special mouseover mode (previously handled in a weird way).
(-[WebHTMLView close]): No more need to mess with mouse moved observer.
(-[WebHTMLView viewWillMoveToWindow:]): ditto
(-[WebHTMLView viewDidMoveToWindow]): ditto; but now hook up a flags
changed monitor.
(-[WebHTMLView windowDidBecomeKey:]): No need to handle non-key window
tracking area or mouse moved observer.
(-[WebHTMLView windowDidResignKey:]): ditto
(-[WebHTMLView windowWillOrderOnScreen:]): No need to mess with mouse
moved observer.
(-[WebHTMLView windowWillOrderOffScreen:]): ditto
(-[WebHTMLView mouseMoved:]): Converted from the old mouseMovedNotification:
(-[WebHTMLView setDataSource:]): Change if around body to early return. Hook
up tracking area - we have to do it here, because before this point, the
WebHTMLView does not know its WebView, which is where dashboard settings
live.
(-[WebHTMLView _removeMouseMovedObserverUnconditionally]): Deleted.
(-[WebHTMLView addMouseMovedObserver]): Deleted.
(-[WebHTMLView removeMouseMovedObserver]): Deleted.

Sep 4, 2014:

10:58 PM Changeset in webkit [173308] by ap@apple.com
  • 2 edits in trunk/LayoutTests

platform/mac-wk2/tiled-drawing/scrolling/frames/frameset-nested-frame-scrollability.html is flakey
https://bugs.webkit.org/show_bug.cgi?id=136554

  • platform/mac-wk2/TestExpectations: Marking it as such.
8:36 PM Changeset in webkit [173307] by mark.lam@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Move PropertySlot's inline functions back to PropertySlot.h.
<https://webkit.org/b/136547>

Reviewed by Filip Pizlo.

  • runtime/JSObject.h:

(JSC::PropertySlot::getValue): Deleted.

  • runtime/PropertySlot.h:

(JSC::PropertySlot::getValue):

8:32 PM Changeset in webkit [173306] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/Source/WebKit2

Unreviewed, speculative build fix on GTK port since r173305.

  • UIProcess/API/gtk/WebKitURISchemeRequest.cpp:

(webkitURISchemeRequestReadCallback):

8:15 PM Changeset in webkit [173305] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/Source/WebCore

Unreviewed, build fix for EFL and GTK ports since r173272.

  • platform/network/soup/ResourceResponseSoup.cpp:

(WebCore::ResourceResponse::updateFromSoupMessageHeaders):

6:54 PM Changeset in webkit [173304] by fpizlo@apple.com
  • 6 edits in trunk/Source/JavaScriptCore

Make sure that deleting all code first processes the call edge log, and reenable call edge profiling.

Rubber stamped by Sam Weinig.

  • debugger/Debugger.cpp:

(JSC::Debugger::forEachCodeBlock):
(JSC::Debugger::setSteppingMode):
(JSC::Debugger::recompileAllJSFunctions):

  • inspector/agents/InspectorRuntimeAgent.cpp:

(Inspector::recompileAllJSFunctionsForTypeProfiling):

  • runtime/Options.h: Reenable call edge profiling.
  • runtime/VM.cpp:

(JSC::VM::prepareToDiscardCode): Make sure this also processes the call edge log, in case any call edge profiles are about to be destroyed.
(JSC::VM::discardAllCode):
(JSC::VM::releaseExecutableMemory):
(JSC::VM::setEnabledProfiler):
(JSC::VM::waitForCompilationsToComplete): Deleted.

  • runtime/VM.h: Rename waitForCompilationsToComplete() back to prepareToDiscardCode() because the purpose of the method - now as ever - is to do all of the things that need to be done to ensure that code may be safely deleted.
6:52 PM Changeset in webkit [173303] by psolanki@apple.com
  • 4 edits in trunk/Source/WebCore

Unreviewed. Speculative build fix. Add platformSuggestedFilename() to all the ResourceResponse header files.

  • platform/network/curl/ResourceResponse.h:

(WebCore::ResourceResponse::platformSuggestedFilename):

  • platform/network/soup/ResourceResponse.h:
  • platform/network/win/ResourceResponse.h:

(WebCore::ResourceResponse::platformSuggestedFilename):

6:37 PM Changeset in webkit [173302] by Simon Fraser
  • 4 edits in trunk/LayoutTests

Rebaseline three blending tests which no longer need backing store.

  • css3/blending/blend-mode-blended-element-overlapping-composited-sibling-should-have-compositing-layer-expected.txt:
  • css3/blending/blend-mode-parent-of-composited-blended-has-layer-expected.txt:
  • css3/blending/blend-mode-with-composited-descendant-should-have-layer-expected.txt:
6:36 PM Changeset in webkit [173301] by psolanki@apple.com
  • 2 edits in trunk/Source/WebCore

Unreviewed. Another speculative build fix after r173272. Add a stub implementation for
ResourceResponse::platformSuggestedFilename(). Filed bug 136562 for proper fix.

  • platform/network/soup/ResourceResponseSoup.cpp:

(ResourceResponse::platformSuggestedFilename):

6:09 PM Changeset in webkit [173300] by psolanki@apple.com
  • 4 edits in trunk/Source/WebCore

Unreviewed. Speculative EFL and GTK build fix after r173272. Remove the filename argument
from the various ResourceResponse constructors.

  • platform/network/curl/ResourceResponse.h:

(WebCore::ResourceResponse::ResourceResponse):

  • platform/network/soup/ResourceResponse.h:

(WebCore::ResourceResponse::ResourceResponse):

  • platform/network/win/ResourceResponse.h:

(WebCore::ResourceResponse::ResourceResponse):

6:02 PM Changeset in webkit [173299] by psolanki@apple.com
  • 3 edits in trunk/Source/WebKit/mac

Bring back [WebPreferences setDiskImageCacheEnabled:] for backwards compatibility
https://bugs.webkit.org/show_bug.cgi?id=136560

Reviewed by Joseph Pecoraro.

I removed the disk image caching code in r173265. However, we still have clients that call
setDiskImageCacheEnabled. Add in a stub method until we can wean the clients off this call.

  • WebView/WebPreferences.mm:

(-[WebPreferences setDiskImageCacheEnabled:]):

  • WebView/WebPreferencesPrivate.h:
5:57 PM Changeset in webkit [173298] by commit-queue@webkit.org
  • 3 edits in trunk/Source/JavaScriptCore

Ensure that the call frame set up by vmEntryToNative does not overlap with the stack of the callee
https://bugs.webkit.org/show_bug.cgi?id=136485

Patch by Akos Kiss <akiss@inf.u-szeged.hu> on 2014-09-04
Reviewed by Michael Saboff.

Changed makeHostFunctionCall to keep the stack pointer above the call
frame set up by doVMEntry. Thus the callee will/can not override the top
of the call frame.

Refactored the two (32_64 and 64) versions of makeHostFunctionCall to be
more alike to help future maintenance.

  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm:
5:55 PM Changeset in webkit [173297] by Simon Fraser
  • 2 edits in trunk/Tools

Add some logging to help diagnose assertions in dumpWebViewAsPixelsAndCompareWithExpected() on bots
https://bugs.webkit.org/show_bug.cgi?id=136561

Reviewed by Tim Horton.

Log for calloc() and CGBitmapContextCreate() failures.

  • DumpRenderTree/mac/PixelDumpSupportMac.mm:

(createBitmapContext):
(createBitmapContextFromWebView):

5:29 PM Changeset in webkit [173296] by aestes@apple.com
  • 2 edits in trunk/Tools

Fix the Mac Production build after r173283.

  • WebKitTestRunner/config.h: Reverted to defining WEBCORE_EXPORT for now.
5:23 PM Changeset in webkit [173295] by Simon Fraser
  • 3 edits
    2 adds in trunk

border-radius should not force layer backing store
https://bugs.webkit.org/show_bug.cgi?id=136555

Reviewed by Dean Jackson.

Source/WebCore:

Border-radius is not a reason to allocate backing store; it's not relevant unless
we also have a border or background, and hasBoxDecorations() already checks for that.

With that gone, we can now use renderer.hasBoxDecorations() (which also checks for
a background), but it doesn't check for outlines, so do that in addition.

Test: compositing/backing/border-radius-no-backing.html

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::calculateClipRects):

LayoutTests:

Test that dumps layers on some composited elements with border-radius

  • compositing/backing/border-radius-no-backing-expected.txt: Added.
  • compositing/backing/border-radius-no-backing.html: Added.
5:23 PM Changeset in webkit [173294] by Simon Fraser
  • 3 edits
    2 adds in trunk

CSS filter on a compositing layer should not cause unncessary backing store allocation
https://bugs.webkit.org/show_bug.cgi?id=136557

Reviewed by Dean Jackson.

Source/WebCore:

Remove the style.hasFilter() check from hasBoxDecorations(), since filters aren't
a box decoration. This allows creation of simple container layers with composited filters.

Test: compositing/backing/filter-no-backing.html

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::calculateClipRects):

LayoutTests:

Dump the layer tree on some layer configs with filters.

  • compositing/backing/filter-no-backing-expected.txt: Added.
  • compositing/backing/filter-no-backing.html: Added.
5:23 PM Changeset in webkit [173293] by Simon Fraser
  • 4 edits
    4 adds in trunk

Improve the logic for compositing backing store avoidance
https://bugs.webkit.org/show_bug.cgi?id=136556

Reviewed by Dean Jackson.

Source/WebCore:

Avoid backing store allocation in more cases by improving the logic that detects
whether a RenderLayer has any painted, non-layer descendent renderers.

Rename RenderLayer::hasNonEmptyChildRenderers() to hasPaintingNonLayerDescendants(),
and make it recur 3 levels deep, walking child lists of up to 20 siblings looking
for renderers that paint anything. Any renderer with box decorations paints;
replaced elements paint, and non-whitespace text nodes paint. We can avoid
making backing store when whitespace nodes are present only when user-select is none,
since we have to ensure that there's backing store to paint the selection into.

Tests: compositing/backing/inline-block-no-backing.html

compositing/backing/whitespace-nodes-no-backing.html

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::hasNonEmptyChildRenderers): Call the recursive hasPaintingNonLayerDescendants().
(WebCore::RenderLayer::hasBoxDecorationsOrBackground):
(WebCore::RenderLayer::isVisuallyNonEmpty): Do the cheap tests first. Use isRenderReplaced()
rather than isReplaced(), since the latter includes inline-blocks.

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::updateConfiguration): Don't run the isSimpleContainerCompositingLayer()
logic in the root layer, since it always wants backing store.
(WebCore::RenderLayerBacking::updateAfterDescendents): Ditto.
(WebCore::RenderLayerBacking::isSimpleContainerCompositingLayer): isReplaced() includes
inline-block, so use isRenderReplaced() instead.

LayoutTests:

Tests that dump the layer tree (showing backing store) for various combinations
of child renderers and whitespace.

  • compositing/backing/inline-block-no-backing-expected.txt: Added.
  • compositing/backing/inline-block-no-backing.html: Added.
  • compositing/backing/whitespace-nodes-no-backing-expected.txt: Added.
  • compositing/backing/whitespace-nodes-no-backing.html: Added.
5:09 PM Changeset in webkit [173292] by dbates@webkit.org
  • 2 edits in trunk/Source/WebCore

[iOS] Fix the iOS build after <http://trac.webkit.org/changeset/173258>
(https://bugs.webkit.org/show_bug.cgi?id=136494)

Use ENABLE_TOUCH_EVENT instead of ENABLE(TOUCH_EVENT) as the latter isn't available
to some clients of this private header.

  • platform/ios/wak/WAKResponder.h:
4:50 PM Changeset in webkit [173291] by Beth Dakin
  • 2 edits in trunk/LayoutTests

Another speculative fix for the bots.

  • platform/mac-wk2/tiled-drawing/scrolling/root-overflow-with-mousewheel.html:
4:47 PM Changeset in webkit [173290] by Brent Fulgham
  • 4 edits in trunk/Tools

[Win] webkitpy test suite frequently fails to complete
https://bugs.webkit.org/show_bug.cgi?id=136546

Reviewed by Daniel Bates.

Properly convert the ASCII crash log produced by ntsd into
a unicode string as early as possible so that we handle it
properly when generating our logs and other test support output.

We were mixing ASCII/unicode strings under Windows, which was
causing test system failures when we processed some crash logs.

Also do a better job of handling garbage pid entries in the
Cygwin lock files.

  • Scripts/webkitpy/common/system/crashlogs.py:

(CrashLogs._find_newest_log_win): The ntsd '.logopen' command
creates an ASCII file. Decode it as ASCII, not 'utf-8', and
handle the strings as unicode from that point on.

  • Scripts/webkitpy/port/http_lock.py:

(HttpLock._current_lock_pid): Add logging and handle case of
the current_pid failing to cleanly convert to 'int'.

  • Scripts/webkitpy/port/win.py:

(WinPort): Add 64-bit architecture as a known target for the
Windows build.

4:38 PM Changeset in webkit [173289] by roger_fong@apple.com
  • 2 edits in trunk/Source/WebCore

Clicking on a select element should never hide the popup menu.
https://bugs.webkit.org/show_bug.cgi?id=136548.
<rdar://problem/10215926>
Reviewed by Simon Fraser.

  • html/HTMLSelectElement.cpp:

(WebCore::HTMLSelectElement::menuListDefaultEventHandler):
Never call hidePopup as a result of a click on a select element.
The only way you can properly hide a popup is to click again or lose focus on the popup itself.

4:13 PM Changeset in webkit [173288] by aestes@apple.com
  • 5 edits in trunk

Address additional review feedback after landing r173283.

Reviewed by Daniel Bates.

  • DumpRenderTree/config.h: Removed redundant includes.
  • TestWebKitAPI/config.h: Ditto.
  • WebKitTestRunner/config.h: Ditto.
3:39 PM Changeset in webkit [173287] by enrica@apple.com
  • 6 edits in trunk/Source/WebCore

Remove PLATFORM(IOS) from WebCore/editing (Part 2).
https://bugs.webkit.org/show_bug.cgi?id=136474

Reviewed by Tim Horton.

Removing some more PLATFORM(IOS) from the editing code.
Most of these changes are fixes that were made for IOS but never merged
to OpenSource.

  • editing/ApplyStyleCommand.cpp:

(WebCore::ApplyStyleCommand::applyBlockStyle):

  • editing/ReplaceSelectionCommand.cpp:

(WebCore::ReplaceSelectionCommand::doApply):

  • editing/VisibleSelection.cpp:

(WebCore::VisibleSelection::setStartAndEndFromBaseAndExtentRespectingGranularity):
(WebCore::VisibleSelection::adjustSelectionToAvoidCrossingEditingBoundaries):

  • editing/VisibleUnits.cpp:

(WebCore::startOfDocument):
(WebCore::endOfDocument):

  • editing/ios/EditorIOS.mm: No need for platform guard, this file is not built for Mac.
3:31 PM Changeset in webkit [173286] by Beth Dakin
  • 2 edits in trunk/LayoutTests

Speculative fix for a test failing on the bot.

  • platform/mac-wk2/tiled-drawing/scrolling/root-overflow-with-mousewheel.html:
3:24 PM Changeset in webkit [173285] by Lucas Forschler
  • 5 edits in branches/safari-600.1-branch/Source

Versioning.

3:19 PM Changeset in webkit [173284] by Lucas Forschler
  • 1 copy in tags/Safari-600.1.19

New Tag.

2:59 PM WebKitGtkLayoutTests edited by b.long@cablelabs.com
Remove extra argument in WebKitTestRunner example (diff)
2:58 PM WebKitGtkLayoutTests edited by b.long@cablelabs.com
Add info about running WebKitTestRunner (diff)
2:36 PM Changeset in webkit [173283] by aestes@apple.com
  • 10 edits in trunk

[Cocoa] Some WebKitLegacy headers migrated from WebCore incorrectly contain WEBCORE_EXPORT
https://bugs.webkit.org/show_bug.cgi?id=136521

Reviewed by Anders Carlsson.

Source/WebCore:

  • platform/ios/wak/WebCoreThread.h: Stopped defining WEBCORE_EXPORT.

Source/WebKit/mac:

Taught MigrateHeaders.make to remove WEBCORE_EXPORT from headers using this sed expression:

s/( *)WEBCORE_EXPORT /\1/g

This removes WEBCORE_EXPORT and a single following space character but preserves preceeding whitespace.

  • MigrateHeaders.make:

Source/WebKit2:

  • config.h: Included <WebCore/PlatformExportMacros.h> instead of defining WEBCORE_EXPORT.

Tools:

  • DumpRenderTree/config.h: Included <WebCore/PlatformExportMacros.h> instead of defining WEBCORE_EXPORT.
  • TestWebKitAPI/config.h: Ditto.
  • WebKitTestRunner/config.h: Ditto.
2:23 PM Changeset in webkit [173282] by msaboff@apple.com
  • 6 edits in trunk/Source/JavaScriptCore

REGRESSION(r173031): crashes during run-layout-jsc on x86/Linux
https://bugs.webkit.org/show_bug.cgi?id=136436

Reviewed by Geoffrey Garen.

Instead of trying to calculate a stack pointer that allows for possible
stacked argument space, just use the "home" stack pointer location.
That stack pointer provides space for the worst case number of stacked
arguments on architectures that use stacked arguments. It also provides
stack space so that the return PC and caller frame pointer that are stored
as part of making the call to operationCallEval will not override any part
of the callee frame created on the stack.

Changed compileCallEval() to use the stackPointer value of the calling
function. That stack pointer is calculated to have enough space for
outgoing stacked arguments. By moving the stack pointer to its "home"
position, the caller frame and return PC are not set as part of making
the call to operationCallEval(). Moved the explicit setting of the
callerFrame field of the callee CallFrame from operationCallEval() to
compileCallEval() since it has been the artifact of making a call for
most architectures. Simplified the exception logic in compileCallEval()
as a result of the change. To be compliant with the stack state
expected by virtualCallThunkGenerator(), moved the stack pointer to
point above the CallerFrameAndPC of the callee CallFrame.

  • jit/JIT.h: Changed callOperationNoExceptionCheck(J_JITOperation_EE, ...)

to callOperation(J_JITOperation_EE, ...) as it now can do a typical exception
check.

  • jit/JITCall.cpp & jit/JITCall32_64.cpp:

(JSC::JIT::compileCallEval): Use the home stack pointer when making the call
to operationCallEval. Since the stack pointer adjustment no longer needs
to be done after making the call to operationCallEval(), the exception check
logic can be simplified.
(JSC::JIT::compileCallEvalSlowCase): Restored the stack pointer to point
to above the calleeFrame as this is what the generated thunk expects.

  • jit/JITInlines.h:

(JSC::JIT::callOperation): Refactor of callOperationNoExceptionCheck
with the addition of a standard exception check.
(JSC::JIT::callOperationNoExceptionCheck): Deleted.

  • jit/JITOperations.cpp:

(JSC::operationCallEval): Eliminated the explicit setting of caller frame
as that is now done in the code generated by compileCallEval().

2:20 PM Changeset in webkit [173281] by hyatt@apple.com
  • 4 edits
    3 adds in trunk

Initial letters should clear one another.
https://bugs.webkit.org/show_bug.cgi?id=136514

Reviewed by Simon Fraser.

Source/WebCore:

Added fast/css-generated-content/initial-letter-clearance.html.

  • rendering/RenderBlockFlow.cpp:

(WebCore::RenderBlockFlow::computeLogicalLocationForFloat):
Compute the required clearance and add it both to the block's logical height
and to the logical top offset of the float.

(WebCore::RenderBlockFlow::lowestInitialLetterLogicalBottom):

  • rendering/RenderBlockFlow.h:

A new method for determining the lowest floating initial letter.

LayoutTests:

  • fast/css-generated-content/initial-letter-clearance.html: Added.
  • platform/mac/fast/css-generated-content/initial-letter-clearance-expected.png: Added.
  • platform/mac/fast/css-generated-content/initial-letter-clearance-expected.txt: Added.
2:16 PM Changeset in webkit [173280] by fpizlo@apple.com
  • 2 edits in trunk/Source/WTF

Beef up the DFG's CFG analyses to include iterated dominance frontiers and more user-friendly BlockSets
https://bugs.webkit.org/show_bug.cgi?id=136520

Fix bug found in Geoff's review but not landed in previous commit.

  • wtf/BitVector.cpp:

(WTF::BitVector::equalsSlowCaseFast): return true.

2:08 PM Changeset in webkit [173279] by fpizlo@apple.com
  • 14 edits
    2 adds in trunk/Source

Beef up the DFG's CFG analyses to include iterated dominance frontiers and more user-friendly BlockSets
https://bugs.webkit.org/show_bug.cgi?id=136520

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

Add code to compute iterated dominance frontiers. This involves using BlockSet a lot, so
this patch also makes BlockSet a lot more user-friendly.

  • CMakeLists.txt:
  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • dfg/DFGBasicBlock.h:
  • dfg/DFGBlockSet.cpp: Added.

(JSC::DFG::BlockSet::dump):

  • dfg/DFGBlockSet.h:

(JSC::DFG::BlockSet::iterator::iterator):
(JSC::DFG::BlockSet::iterator::operator++):
(JSC::DFG::BlockSet::iterator::operator==):
(JSC::DFG::BlockSet::iterator::operator!=):
(JSC::DFG::BlockSet::Iterable::Iterable):
(JSC::DFG::BlockSet::Iterable::begin):
(JSC::DFG::BlockSet::Iterable::end):
(JSC::DFG::BlockSet::iterable):
(JSC::DFG::BlockAdder::BlockAdder):
(JSC::DFG::BlockAdder::operator()):

  • dfg/DFGBlockSetInlines.h: Added.

(JSC::DFG::BlockSet::iterator::operator*):

  • dfg/DFGDominators.cpp:

(JSC::DFG::Dominators::strictDominatorsOf):
(JSC::DFG::Dominators::dominatorsOf):
(JSC::DFG::Dominators::blocksStrictlyDominatedBy):
(JSC::DFG::Dominators::blocksDominatedBy):
(JSC::DFG::Dominators::dominanceFrontierOf):
(JSC::DFG::Dominators::iteratedDominanceFrontierOf):

  • dfg/DFGDominators.h:

(JSC::DFG::Dominators::forAllStrictDominatorsOf):
(JSC::DFG::Dominators::forAllDominatorsOf):
(JSC::DFG::Dominators::forAllBlocksStrictlyDominatedBy):
(JSC::DFG::Dominators::forAllBlocksDominatedBy):
(JSC::DFG::Dominators::forAllBlocksInDominanceFrontierOf):
(JSC::DFG::Dominators::forAllBlocksInIteratedDominanceFrontierOf):
(JSC::DFG::Dominators::forAllBlocksInDominanceFrontierOfImpl):
(JSC::DFG::Dominators::forAllBlocksInIteratedDominanceFrontierOfImpl):

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::dumpBlockHeader):

  • dfg/DFGInvalidationPointInjectionPhase.cpp:

(JSC::DFG::InvalidationPointInjectionPhase::run):

Source/WTF:

Give BitVector a way to quickly find the next set (or unset) bit. Make BitVector equality
faster. Fix a minor closure goof in Spectrum.

  • wtf/BitVector.cpp:

(WTF::BitVector::equalsSlowCase):
(WTF::BitVector::equalsSlowCaseFast):
(WTF::BitVector::equalsSlowCaseSimple):

  • wtf/BitVector.h:

(WTF::BitVector::findBit):
(WTF::BitVector::findBitFast):
(WTF::BitVector::findBitSimple):
(WTF::BitVector::findBitInWord):

  • wtf/Spectrum.h:

(WTF::Spectrum::removeIf):

2:07 PM Changeset in webkit [173278] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebCore

Use WTFString::find(char) in more places
https://bugs.webkit.org/show_bug.cgi?id=136541

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-09-04
Reviewed by Daniel Bates.

  • Modules/plugins/YouTubePluginReplacement.cpp:

(WebCore::queryKeysAndValues):

  • html/HTMLEmbedElement.cpp:

(WebCore::HTMLEmbedElement::parseAttribute):

  • html/HTMLObjectElement.cpp:

(WebCore::HTMLObjectElement::parametersForPlugin):

  • html/parser/XSSAuditor.cpp:

(WebCore::XSSAuditor::decodedSnippetForAttribute):

  • page/UserContentURLPattern.cpp:

(WebCore::UserContentURLPattern::parse):

1:59 PM Changeset in webkit [173277] by Antti Koivisto
  • 2 edits in trunk/Source/WebCore

Try to fix iOS build.

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::initForSynthesizedDocument):

1:54 PM Changeset in webkit [173276] by mjs@apple.com
  • 10 edits in trunk/Source

Remove WebCoreSystemInterface glue for otherwise unused WKSI calls
https://bugs.webkit.org/show_bug.cgi?id=136527

Reviewed by Alexey Proskuryakov.

Source/WebCore:

  • WebCore.exp.in:
  • WebCore.order:
  • platform/ios/WebCoreSystemInterfaceIOS.mm:
  • platform/mac/WebCoreSystemInterface.h:
  • platform/mac/WebCoreSystemInterface.mm:

Source/WebKit/mac:

  • WebCoreSupport/WebSystemInterface.mm:

(InitWebCoreSystemInterface):

Source/WebKit2:

  • WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:

(InitWebCoreSystemInterface):

1:48 PM Changeset in webkit [173275] by Beth Dakin
  • 3 edits
    2 adds in trunk

REGRESSION (r172832): Poor 2-finger scrolling performance at theverge.com articles
(all tiles repaint)
https://bugs.webkit.org/show_bug.cgi?id=136433
-and corresponding-
rdar://problem/18193942

Reviewed by Tim Horton.

Source/WebCore:

We should ensure that we are only setting scroll elasticity for layers that return
true for scrollsOverflow(). When overflow:scroll is set on the root element, we
wound up setting the ScrollElasticity for the root, which messed up with the
special way that the root is meant to scroll. Even though overflow:scroll has been
set on the root, scrollsOverflow() is still false because we knew not to set
hasOverflowClip() since it’s the root, which is why this check works.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::setHasHorizontalScrollbar):
(WebCore::RenderLayer::setHasVerticalScrollbar):

Really, we should have never even called RenderLayer::setHasVerticalScrollbar or
RenderLayer::setHasHorizontalScrollbar since it’s wrong to be creating a scrollbar
on RenderLayer for the root. We should make sure, in addition to the other
requirements consulted, that the renderer has an overflow clip before we create
the scrollbars.
(WebCore::RenderLayer::updateScrollbarsAfterStyleChange):

LayoutTests:

  • platform/mac-wk2/tiled-drawing/scrolling/root-overflow-with-mousewheel-expected.txt: Added.
  • platform/mac-wk2/tiled-drawing/scrolling/root-overflow-with-mousewheel.html: Added.
1:23 PM Changeset in webkit [173274] by Antti Koivisto
  • 2 edits in trunk/Source/WebKit/win

Try to fix windows build.

  • WebURLResponse.cpp:

(WebURLResponse::createInstance):
(WebURLResponse::initWithURL):

1:01 PM Changeset in webkit [173273] by ap@apple.com
  • 2 edits in trunk/Tools

REGRESSION: Dashboard metrics page aggregation counts performance bots
https://bugs.webkit.org/show_bug.cgi?id=136539

Reviewed by Tim Horton.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/MetricsMain.js:
1:00 PM Changeset in webkit [173272] by Antti Koivisto
  • 16 edits in trunk/Source

Remove ResourceResponse::m_suggestedFilename
https://bugs.webkit.org/show_bug.cgi?id=136534

Reviewed by Alexey Proskuryakov.

Source/WebCore:

This will simplify things.

  • WebCore.exp.in:
  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::handleSubstituteDataLoadNow):
(WebCore::DocumentLoader::maybeLoadEmpty):

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::willLoadMediaElementURL):

  • loader/appcache/ApplicationCacheStorage.cpp:

(WebCore::ApplicationCacheStorage::loadCache):

  • loader/archive/ArchiveResource.cpp:

(WebCore::ArchiveResource::create):

  • platform/network/BlobResourceHandle.cpp:

(WebCore::BlobResourceHandle::notifyResponseOnSuccess):
(WebCore::BlobResourceHandle::notifyResponseOnError):

  • platform/network/ResourceResponseBase.cpp:

(WebCore::ResourceResponseBase::ResourceResponseBase):
(WebCore::ResourceResponseBase::adopt):
(WebCore::ResourceResponseBase::copyData):
(WebCore::ResourceResponseBase::suggestedFilename):
(WebCore::ResourceResponseBase::httpStatusText):
(WebCore::ResourceResponseBase::setHTTPStatusText):
(WebCore::ResourceResponseBase::httpHeaderField):
(WebCore::ResourceResponseBase::setHTTPHeaderField):
(WebCore::ResourceResponseBase::addHTTPHeaderField):
(WebCore::ResourceResponseBase::httpHeaderFields):
(WebCore::ResourceResponseBase::isAttachment):
(WebCore::ResourceResponseBase::wasCached):
(WebCore::ResourceResponseBase::connectionReused):
(WebCore::ResourceResponseBase::setConnectionReused):
(WebCore::ResourceResponseBase::connectionID):
(WebCore::ResourceResponseBase::setConnectionID):

Remove AllFields initialization. It was only used to get m_suggestedFilename.
Rename CommonAndUncommonFields to AllFields

(WebCore::ResourceResponseBase::setSuggestedFilename): Deleted.

No more setter.

  • platform/network/ResourceResponseBase.h:

(WebCore::ResourceResponseBase::platformSuggestedFileName):

Get the suggested filename from the platform class on-demand.

  • platform/network/cf/ResourceResponse.h:

(WebCore::ResourceResponse::ResourceResponse):

Remove never-used file name constructor parameter.

  • platform/network/cf/ResourceResponseCFNet.cpp:

(WebCore::ResourceResponse::platformLazyInit):

  • platform/network/mac/ResourceResponseMac.mm:

(WebCore::ResourceResponse::initNSURLResponse):

Synthesize HTTP response properly so it can hold Content-Disposition for file name (and other headers).

(WebCore::ResourceResponse::platformLazyInit):

Don't pull the suggested filename anymore.

(WebCore::ResourceResponse::platformSuggestedFilename):

Get the suggested name from the (possibly synthetic) NSURLRequest.

Source/WebKit2:

  • Shared/WebCoreArgumentCoders.cpp:

(IPC::ArgumentCoder<ResourceResponse>::encode):
(IPC::ArgumentCoder<ResourceResponse>::decode):

No more m_suggestedFilename.

  • WebProcess/Plugins/PDF/PDFPlugin.mm:

(WebKit::PDFPlugin::addArchiveResource):

Fake the suggested filename by using the Content-Disposition header.

12:54 PM Changeset in webkit [173271] by andersca@apple.com
  • 4 edits in trunk/Source/WTF

Make hash table classes final
https://bugs.webkit.org/show_bug.cgi?id=136540

Reviewed by Antti Koivisto.

We don't want anybody inheriting from these classes, so make them final.

  • wtf/HashCountedSet.h:
  • wtf/HashMap.h:
  • wtf/HashSet.h:
12:45 PM Changeset in webkit [173270] by Brent Fulgham
  • 2 edits in trunk/Tools

[Win] Perl test fix.

  • Scripts/webkitperl/auto-version_unittest/versionStampTests.pl: Correct test to check for

VersionStamp.exe tool, not just the driver script.

12:10 PM Changeset in webkit [173269] by mark.lam@apple.com
  • 50 edits in trunk/Source/JavaScriptCore

Fixed indentations and some style warnings in JavaScriptCore/runtime.
<https://webkit.org/b/136518>

Reviewed by Michael Saboff.

Also removed some superflous spaces. There are no semantic changes.

  • runtime/Completion.h:
  • runtime/ConstructData.h:
  • runtime/DateConstructor.h:
  • runtime/DateInstance.h:
  • runtime/DateInstanceCache.h:
  • runtime/DatePrototype.h:
  • runtime/Error.h:
  • runtime/ErrorConstructor.h:
  • runtime/ErrorInstance.h:
  • runtime/ErrorPrototype.h:
  • runtime/FunctionConstructor.h:
  • runtime/FunctionPrototype.h:
  • runtime/GetterSetter.h:
  • runtime/Identifier.h:
  • runtime/InitializeThreading.h:
  • runtime/InternalFunction.h:
  • runtime/JSAPIValueWrapper.h:
  • runtime/JSFunction.h:
  • runtime/JSLock.h:
  • runtime/JSNotAnObject.h:
  • runtime/JSONObject.h:
  • runtime/JSString.h:
  • runtime/JSTypeInfo.h:
  • runtime/JSWrapperObject.h:
  • runtime/Lookup.h:
  • runtime/MathObject.h:
  • runtime/NativeErrorConstructor.h:
  • runtime/NativeErrorPrototype.h:
  • runtime/NumberConstructor.h:
  • runtime/NumberObject.h:
  • runtime/NumberPrototype.h:
  • runtime/NumericStrings.h:
  • runtime/ObjectConstructor.h:
  • runtime/ObjectPrototype.h:
  • runtime/PropertyDescriptor.h:
  • runtime/Protect.h:
  • runtime/PutPropertySlot.h:
  • runtime/RegExp.h:
  • runtime/RegExpCachedResult.h:
  • runtime/RegExpConstructor.h:
  • runtime/RegExpMatchesArray.h:
  • runtime/RegExpObject.h:
  • runtime/RegExpPrototype.h:
  • runtime/SmallStrings.h:
  • runtime/StringConstructor.h:
  • runtime/StringObject.h:
  • runtime/StringPrototype.h:
  • runtime/StructureChain.h:
  • runtime/VM.h:
11:43 AM Changeset in webkit [173268] by commit-queue@webkit.org
  • 123 edits in trunk

Remove CSS_FILTERS flag
https://bugs.webkit.org/show_bug.cgi?id=136529

Patch by Eva Balazsfalvi <evab.u-szeged@partner.samsung.com> on 2014-09-04
Reviewed by Dirk Schulze.

.:

  • Source/cmake/OptionsEfl.cmake:
  • Source/cmake/OptionsGTK.cmake:
  • Source/cmake/OptionsMac.cmake:
  • Source/cmake/WebKitFeatures.cmake:
  • Source/cmakeconfig.h.cmake:

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

No new tests, no behaviour changed.

  • Configurations/FeatureDefines.xcconfig:
  • DerivedSources.cpp:
  • WebCore.exp.in:
  • bindings/js/JSCSSValueCustom.cpp:

(WebCore::toJS):

  • bindings/objc/DOMCSS.mm:

(kitClass):

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::ComputedStyleExtractor::valueForFilter):
(WebCore::isLayoutDependent):
(WebCore::ComputedStyleExtractor::propertyValue):

  • css/CSSComputedStyleDeclaration.h:
  • css/CSSFilterImageValue.cpp:
  • css/CSSFilterImageValue.h:
  • css/CSSImageGeneratorValue.cpp:

(WebCore::CSSImageGeneratorValue::image):
(WebCore::CSSImageGeneratorValue::isFixedSize):
(WebCore::CSSImageGeneratorValue::fixedSize):
(WebCore::CSSImageGeneratorValue::isPending):
(WebCore::CSSImageGeneratorValue::knownToBeOpaque):
(WebCore::CSSImageGeneratorValue::loadSubimages):

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::parseGeneratedImage):
(WebCore::CSSParser::parseFilterImage):
(WebCore::CSSParser::parseFilter):

  • css/CSSParser.h:
  • css/CSSPropertyNames.in:
  • css/CSSValue.cpp:

(WebCore::CSSValue::hasFailedOrCanceledSubresources):
(WebCore::CSSValue::equals):
(WebCore::CSSValue::cssText):
(WebCore::CSSValue::destroy):
(WebCore::CSSValue::cloneForCSSOM):

  • css/CSSValue.h:
  • css/StyleResolver.cpp:

(WebCore::StyleResolver::State::clear):
(WebCore::StyleResolver::applyProperty):
(WebCore::StyleResolver::generatedOrPendingFromValue):
(WebCore::StyleResolver::loadPendingResources):

  • css/StyleResolver.h:
  • css/WebKitCSSFilterValue.cpp:
  • css/WebKitCSSFilterValue.h:
  • css/WebKitCSSFilterValue.idl:
  • loader/cache/CachedSVGDocumentReference.cpp:
  • loader/cache/CachedSVGDocumentReference.h:
  • page/FrameView.cpp:

(WebCore::FrameView::scrollContentsFastPath):

  • page/animation/AnimationBase.cpp:

(WebCore::AnimationBase::AnimationBase):

  • page/animation/AnimationBase.h:
  • page/animation/CSSPropertyAnimation.cpp:

(WebCore::blendFilter):
(WebCore::blendFunc):
(WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap):

  • page/animation/ImplicitAnimation.cpp:

(WebCore::ImplicitAnimation::reset):
(WebCore::ImplicitAnimation::checkForMatchingFilterFunctionLists):

  • page/animation/ImplicitAnimation.h:
  • page/animation/KeyframeAnimation.cpp:

(WebCore::KeyframeAnimation::KeyframeAnimation):
(WebCore::KeyframeAnimation::checkForMatchingFilterFunctionLists):

  • page/animation/KeyframeAnimation.h:
  • platform/graphics/GraphicsLayer.cpp:

(WebCore::GraphicsLayer::validateFilterOperations):

  • platform/graphics/GraphicsLayer.h:
  • platform/graphics/GraphicsLayerAnimation.cpp:

(WebCore::applyFilterAnimation):
(WebCore::GraphicsLayerAnimation::applyInternal):

  • platform/graphics/GraphicsLayerAnimation.h:
  • platform/graphics/IntRectExtent.h:
  • platform/graphics/ca/GraphicsLayerCA.cpp:

(WebCore::propertyIdToString):
(WebCore::supportsAcceleratedFilterAnimations):
(WebCore::GraphicsLayerCA::filtersCanBeComposited):
(WebCore::GraphicsLayerCA::moveOrCopyAnimations):
(WebCore::GraphicsLayerCA::setFilters):
(WebCore::GraphicsLayerCA::addAnimation):
(WebCore::GraphicsLayerCA::commitLayerChangesBeforeSublayers):
(WebCore::GraphicsLayerCA::updateFilters):
(WebCore::GraphicsLayerCA::ensureStructuralLayer):
(WebCore::GraphicsLayerCA::createFilterAnimationsFromKeyframes):
(WebCore::GraphicsLayerCA::setFilterAnimationKeyframes):

  • platform/graphics/ca/GraphicsLayerCA.h:
  • platform/graphics/ca/PlatformCAAnimation.h:
  • platform/graphics/ca/PlatformCAFilters.h:
  • platform/graphics/ca/PlatformCALayer.h:
  • platform/graphics/ca/mac/PlatformCAAnimationMac.h:
  • platform/graphics/ca/mac/PlatformCAAnimationMac.mm:

(PlatformCAAnimationMac::setFromValue):
(PlatformCAAnimationMac::setToValue):
(PlatformCAAnimationMac::setValues):

  • platform/graphics/ca/mac/PlatformCAFiltersMac.mm:

(PlatformCAFilters::animatedFilterPropertyName):

  • platform/graphics/ca/mac/PlatformCALayerMac.h:
  • platform/graphics/ca/mac/PlatformCALayerMac.mm:

(PlatformCALayerMac::clone):
(PlatformCALayerMac::filtersCanBeComposited):

  • platform/graphics/ca/win/PlatformCAAnimationWin.cpp:

(PlatformCAAnimationWin::setFromValue):
(PlatformCAAnimationWin::setToValue):
(PlatformCAAnimationWin::setValues):

  • platform/graphics/ca/win/PlatformCAAnimationWin.h:
  • platform/graphics/ca/win/PlatformCAFiltersWin.cpp:

(PlatformCAFilters::animatedFilterPropertyName):

  • platform/graphics/ca/win/PlatformCALayerWin.cpp:

(PlatformCALayerWin::clone):

  • platform/graphics/ca/win/PlatformCALayerWin.h:
  • platform/graphics/filters/FilterOperation.cpp:
  • platform/graphics/filters/FilterOperation.h:
  • platform/graphics/filters/FilterOperations.cpp:
  • platform/graphics/filters/FilterOperations.h:
  • platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:

(WebCore::GraphicsLayerTextureMapper::commitLayerChanges):
(WebCore::GraphicsLayerTextureMapper::setFilters):

  • platform/graphics/texmap/GraphicsLayerTextureMapper.h:
  • platform/graphics/texmap/TextureMapper.h:
  • platform/graphics/texmap/TextureMapperGL.cpp:

(WebCore::TextureMapperGLData::TextureMapperGLData):
(WebCore::prepareFilterProgram):
(WebCore::TextureMapperGL::drawTexture):
(WebCore::BitmapTextureGL::applyFilters):

  • platform/graphics/texmap/TextureMapperGL.h:
  • platform/graphics/texmap/TextureMapperImageBuffer.cpp:

(WebCore::BitmapTextureImageBuffer::applyFilters):

  • platform/graphics/texmap/TextureMapperImageBuffer.h:
  • platform/graphics/texmap/TextureMapperLayer.cpp:

(WebCore::TextureMapperLayer::setAnimatedFilters):
(WebCore::TextureMapperLayer::computeOverlapRegions):
(WebCore::TextureMapperLayer::paintIntoSurface):
(WebCore::TextureMapperLayer::setFilters):
(WebCore::TextureMapperLayer::syncAnimations):

  • platform/graphics/texmap/TextureMapperLayer.h:

(WebCore::TextureMapperLayer::hasFilters):

  • platform/graphics/texmap/TextureMapperShaderProgram.h:
  • platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:

(WebCore::CoordinatedGraphicsLayer::didChangeFilters):
(WebCore::CoordinatedGraphicsLayer::setFilters):
(WebCore::CoordinatedGraphicsLayer::syncFilters):
(WebCore::CoordinatedGraphicsLayer::flushCompositingStateForThisLayerOnly):

  • platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h:
  • platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp:

(WebCore::CoordinatedGraphicsScene::setLayerFiltersIfNeeded):
(WebCore::CoordinatedGraphicsScene::setLayerState):

  • platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.h:
  • platform/graphics/texmap/coordinated/CoordinatedGraphicsState.h:
  • rendering/FilterEffectRenderer.cpp:
  • rendering/FilterEffectRenderer.h:
  • rendering/RenderElement.cpp:

(WebCore::RenderElement::adjustStyleDifference):

  • rendering/RenderElement.h:

(WebCore::RenderElement::hasFilter): Deleted.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::RenderLayer):
(WebCore::RenderLayer::~RenderLayer):
(WebCore::transparencyClipBox):
(WebCore::RenderLayer::paintLayerContents):
(WebCore::RenderLayer::calculateClipRects):

  • rendering/RenderLayer.h:
  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::RenderLayerBacking):
(WebCore::RenderLayerBacking::createPrimaryGraphicsLayer):
(WebCore::RenderLayerBacking::updateFilters):
(WebCore::RenderLayerBacking::updateGeometry):
(WebCore::RenderLayerBacking::startAnimation):
(WebCore::RenderLayerBacking::startTransition):
(WebCore::RenderLayerBacking::graphicsLayerToCSSProperty):
(WebCore::RenderLayerBacking::cssToGraphicsLayerProperty):

  • rendering/RenderLayerBacking.h:
  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::requiresCompositingForAnimation):
(WebCore::RenderLayerCompositor::requiresCompositingForFilters):

  • rendering/RenderLayerFilterInfo.cpp:
  • rendering/RenderLayerFilterInfo.h:
  • rendering/RenderLayerModelObject.cpp:

(WebCore::RenderLayerModelObject::styleWillChange):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::containerForRepaint):
(WebCore::RenderObject::repaintUsingContainer):

  • rendering/RenderView.cpp:

(WebCore::RenderView::RenderView):

  • rendering/RenderView.h:
  • rendering/style/RenderStyle.cpp:

(WebCore::RenderStyle::changeRequiresLayout):
(WebCore::RenderStyle::changeRequiresLayerRepaint):

  • rendering/style/RenderStyle.h:
  • rendering/style/StyleFilterData.cpp:
  • rendering/style/StyleFilterData.h:
  • rendering/style/StyleRareNonInheritedData.cpp:

(WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
(WebCore::StyleRareNonInheritedData::operator==):
(WebCore::StyleRareNonInheritedData::hasFilters):

  • rendering/style/StyleRareNonInheritedData.h:
  • rendering/svg/RenderSVGResourceContainer.cpp:

(WebCore::RenderSVGResourceContainer::markAllClientLayersForInvalidation):

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:
  • Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:

(IPC::ArgumentCoder<WebCore::FilterOperations>::decode):
(IPC::ArgumentCoder<GraphicsLayerAnimation>::encode):
(IPC::ArgumentCoder<GraphicsLayerAnimation>::decode):
(IPC::ArgumentCoder<CoordinatedGraphicsLayerState>::encode):
(IPC::ArgumentCoder<CoordinatedGraphicsLayerState>::decode):

  • Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.h:
  • Shared/WebCoreArgumentCoders.cpp:
  • Shared/WebCoreArgumentCoders.h:
  • WebProcess/WebPage/mac/GraphicsLayerCARemote.cpp:

(WebKit::GraphicsLayerCARemote::filtersCanBeComposited):

  • WebProcess/WebPage/mac/GraphicsLayerCARemote.h:
  • WebProcess/WebPage/mac/PlatformCAAnimationRemote.h:
  • WebProcess/WebPage/mac/PlatformCAAnimationRemote.mm:

(WebKit::PlatformCAAnimationRemote::setFromValue):
(WebKit::PlatformCAAnimationRemote::setToValue):
(WebKit::PlatformCAAnimationRemote::setValues):

  • WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:

(WebKit::PlatformCALayerRemote::updateClonedLayerProperties):
(WebKit::PlatformCALayerRemote::filtersCanBeComposited):

  • WebProcess/WebPage/mac/PlatformCALayerRemote.h:

Source/WTF:

  • wtf/FeatureDefines.h:

Tools:

  • Scripts/webkitperl/FeatureList.pm:

WebKitLibraries:

  • win/tools/vsprops/FeatureDefines.props:
  • win/tools/vsprops/FeatureDefinesCairo.props:

LayoutTests:

  • platform/efl/TestExpectations:
11:27 AM Changeset in webkit [173267] by zandobersek@gmail.com
  • 5 edits
    1 delete in trunk

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

Improves the situation but also introduces additional crashes.
(Requested by zdobersek on #webkit).

Reverted changeset:

"GMainLoopSource is exposed to race conditions"
https://bugs.webkit.org/show_bug.cgi?id=135800
http://trac.webkit.org/changeset/173201

Patch by Commit Queue <commit-queue@webkit.org> on 2014-09-04

11:07 AM Changeset in webkit [173266] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

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

call edge profiling and polymorphic call inlining are still
causing crashes (Requested by eric_carlson on #webkit).

Reverted changeset:

"Reenable call edge profiling and polymorphic call inlining,
now that a bunch of the bugs"
http://trac.webkit.org/changeset/173248

10:36 AM Changeset in webkit [173265] by psolanki@apple.com
  • 29 edits
    3 deletes in trunk/Source

Remove iOS specific disk image cache
https://bugs.webkit.org/show_bug.cgi?id=136517

Reviewed by Antti Koivisto.

Disk image cache code unnecessarily complicates SharedBuffer implementation. We can remove
this now since we don't enable it in WebKit2 on iOS.

Source/WebCore:

  • WebCore.exp.in:
  • WebCore.xcodeproj/project.pbxproj:
  • loader/ResourceBuffer.cpp:

(WebCore::ResourceBuffer::isUsingDiskImageCache): Deleted.

  • loader/ResourceBuffer.h:
  • loader/cache/CachedImage.cpp:

(WebCore::CachedImage::canUseDiskImageCache): Deleted.
(WebCore::CachedImage::useDiskImageCache): Deleted.

  • loader/cache/CachedImage.h:
  • loader/cache/CachedResource.cpp:

(WebCore::CachedResource::isUsingDiskImageCache): Deleted.

  • loader/cache/CachedResource.h:

(WebCore::CachedResource::canUseDiskImageCache): Deleted.
(WebCore::CachedResource::useDiskImageCache): Deleted.

  • loader/cache/MemoryCache.cpp:

(WebCore::MemoryCache::TypeStatistic::addResource):
(WebCore::MemoryCache::dumpStats):
(WebCore::MemoryCache::dumpLRULists):
(WebCore::MemoryCache::flushCachedImagesToDisk): Deleted.

  • loader/cache/MemoryCache.h:

(WebCore::MemoryCache::TypeStatistic::TypeStatistic):

  • loader/ios/DiskImageCacheClientIOS.h: Removed.
  • loader/ios/DiskImageCacheIOS.h: Removed.
  • loader/ios/DiskImageCacheIOS.mm: Removed.
  • platform/Logging.h:
  • platform/SharedBuffer.cpp:

(WebCore::SharedBuffer::SharedBuffer):
(WebCore::SharedBuffer::~SharedBuffer):
(WebCore::SharedBuffer::data):
(WebCore::SharedBuffer::append):
(WebCore::SharedBuffer::buffer):
(WebCore::SharedBuffer::getSomeData):
(WebCore::SharedBuffer::isAllowedToBeMemoryMapped): Deleted.
(WebCore::SharedBuffer::allowToBeMemoryMapped): Deleted.
(WebCore::SharedBuffer::failedMemoryMap): Deleted.
(WebCore::SharedBuffer::markAsMemoryMapped): Deleted.
(WebCore::SharedBuffer::memoryMappedNotificationCallbackData): Deleted.
(WebCore::SharedBuffer::memoryMappedNotificationCallback): Deleted.
(WebCore::SharedBuffer::setMemoryMappedNotificationCallback): Deleted.

  • platform/SharedBuffer.h:

(WebCore::SharedBuffer::isMemoryMapped): Deleted.

  • platform/cf/SharedBufferCF.cpp:

(WebCore::SharedBuffer::SharedBuffer):

  • platform/mac/SharedBufferMac.mm:

(-[WebCoreSharedBufferData length]):
(-[WebCoreSharedBufferData bytes]):
(WebCore::SharedBuffer::createCFData):
(-[WebCoreSharedBufferData initWithMemoryMappedSharedBuffer:]): Deleted.

Source/WebKit:

  • WebKit.xcodeproj/project.pbxproj:

Source/WebKit/ios:

  • WebCoreSupport/WebDiskImageCacheClientIOS.h: Removed.
  • WebCoreSupport/WebDiskImageCacheClientIOS.mm: Removed.
  • WebView/WebPDFViewPlaceholder.mm:

(-[WebPDFViewPlaceholder finishedLoadingWithDataSource:]):
(-[WebPDFViewPlaceholder dataSourceMemoryMapped]): Deleted.
(-[WebPDFViewPlaceholder dataSourceMemoryMapFailed]): Deleted.

Source/WebKit/mac:

  • Misc/WebCache.mm:

(+[WebCache statistics]):

  • WebView/WebDataSource.mm:

(-[WebDataSource _setAllowToBeMemoryMapped]):
(-[WebDataSource setDataSourceDelegate:]):
(-[WebDataSource dataSourceDelegate]):
(-[WebDataSource dealloc]):
(BufferMemoryMapped): Deleted.

  • WebView/WebPreferenceKeysPrivate.h:
  • WebView/WebPreferences.mm:

(+[WebPreferences initialize]):
(-[WebPreferences diskImageCacheEnabled]): Deleted.
(-[WebPreferences setDiskImageCacheEnabled:]): Deleted.
(-[WebPreferences diskImageCacheMinimumImageSize]): Deleted.
(-[WebPreferences setDiskImageCacheMinimumImageSize:]): Deleted.
(-[WebPreferences diskImageCacheMaximumCacheSize]): Deleted.
(-[WebPreferences setDiskImageCacheMaximumCacheSize:]): Deleted.
(-[WebPreferences _diskImageCacheSavedCacheDirectory]): Deleted.
(-[WebPreferences _setDiskImageCacheSavedCacheDirectory:]): Deleted.

  • WebView/WebPreferencesPrivate.h:
  • WebView/WebView.mm:

(-[WebView _commonInitializationWithFrameName:groupName:]):
(+[WebView _handleMemoryWarning]):
(-[WebView _preferencesChanged:]):

Source/WTF:

  • wtf/FeatureDefines.h:
10:21 AM Changeset in webkit [173264] by Brian Burg
  • 6 edits in trunk/Source/JavaScriptCore

Web Inspector: the profiler should not accrue time to nodes while the debugger is paused
https://bugs.webkit.org/show_bug.cgi?id=136352

Reviewed by Timothy Hatcher.

Hook up pause/continue events to the LegacyProfiler and any active
ProfilerGenerators. If the debugger is paused, all intervening call
entries will be created with totalTime as 0.0.

  • inspector/ScriptDebugServer.cpp:

(Inspector::ScriptDebugServer::handlePause):

  • profiler/LegacyProfiler.cpp: Move from typedef'd callbacks to using

std::function. This allows callbacks to take different argument types.

(JSC::callFunctionForProfilesWithGroup):
(JSC::LegacyProfiler::willExecute):
(JSC::LegacyProfiler::didExecute):
(JSC::LegacyProfiler::exceptionUnwind):
(JSC::LegacyProfiler::didPause):
(JSC::LegacyProfiler::didContinue):
(JSC::dispatchFunctionToProfiles): Deleted.

  • profiler/LegacyProfiler.h:
  • profiler/ProfileGenerator.cpp:

(JSC::ProfileGenerator::ProfileGenerator):
(JSC::ProfileGenerator::endCallEntry):
(JSC::ProfileGenerator::didExecute): Deleted.

  • profiler/ProfileGenerator.h:

(JSC::ProfileGenerator::didPause):
(JSC::ProfileGenerator::didContinue):

10:10 AM Changeset in webkit [173263] by commit-queue@webkit.org
  • 11 edits in trunk/Source

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

Broke JSC tests. (Requested by ddkilzer on #webkit).

Reverted changeset:

"JavaScriptCore should build with newer clang"
https://bugs.webkit.org/show_bug.cgi?id=136002
http://trac.webkit.org/changeset/173245

10:00 AM Changeset in webkit [173262] by Brian Burg
  • 8 edits in trunk/Source

LegacyProfiler: ProfileNodes should be used more like structs
https://bugs.webkit.org/show_bug.cgi?id=136381

Reviewed by Timothy Hatcher.

Source/JavaScriptCore:

Previously, both the profile generator and individual profile nodes
were collectively responsible for creating new Call entries and
maintaining data structure invariants. This complexity is unnecessary.

This patch centralizes profile data creation inside the profile generator.
The profile nodes manage nextSibling and parent pointers, but do not
collect the current time or create new Call entries themselves.

Since ProfileNode::nextSibling and its callers are only used within
debug printing code, it should be compiled out for release builds.

  • profiler/ProfileGenerator.cpp:

(JSC::ProfileGenerator::ProfileGenerator):
(JSC::AddParentForConsoleStartFunctor::operator()):
(JSC::ProfileGenerator::beginCallEntry): create a new Call entry.
(JSC::ProfileGenerator::endCallEntry): finish the last Call entry.
(JSC::ProfileGenerator::willExecute): inline ProfileNode::willExecute()
(JSC::ProfileGenerator::didExecute): inline ProfileNode::didExecute()
(JSC::ProfileGenerator::stopProfiling): Only walk up the spine.
(JSC::ProfileGenerator::removeProfileStart):
(JSC::ProfileGenerator::removeProfileEnd):

  • profiler/ProfileGenerator.h:
  • profiler/ProfileNode.cpp:

(JSC::ProfileNode::ProfileNode):
(JSC::ProfileNode::addChild):
(JSC::ProfileNode::removeChild):
(JSC::ProfileNode::spliceNode): Renamed from insertNode.
(JSC::ProfileNode::debugPrintRecursively):
(JSC::ProfileNode::willExecute): Deleted.
(JSC::ProfileNode::insertNode): Deleted.
(JSC::ProfileNode::stopProfiling): Deleted.
(JSC::ProfileNode::traverseNextNodePostOrder):
(JSC::ProfileNode::endAndRecordCall): Deleted.
(JSC::ProfileNode::debugPrintDataSampleStyle):

  • profiler/ProfileNode.h:

(JSC::ProfileNode::Call::setStartTime):
(JSC::ProfileNode::Call::setTotalTime):
(JSC::ProfileNode::appendCall):
(JSC::ProfileNode::firstChild):
(JSC::ProfileNode::lastChild):
(JSC::ProfileNode::nextSibling):
(JSC::ProfileNode::setNextSibling):

Source/WebCore:

  • inspector/ScriptProfileNode.idl: Remove an unused property.
9:46 AM Changeset in webkit [173261] by commit-queue@webkit.org
  • 1 edit
    2 deletes in trunk/Source/WebCore

Remove Qt cruft: MIMESniffing.cpp and MIMESniffing.h
https://bugs.webkit.org/show_bug.cgi?id=136528

Patch by Renato Nagy <rnagy@inf.u-szeged.hu> on 2014-09-04
Reviewed by Alexey Proskuryakov.

  • platform/network/MIMESniffing.cpp: Removed.
  • platform/network/MIMESniffing.h: Removed.
9:33 AM Changeset in webkit [173260] by ap@apple.com
  • 2 edits in trunk/Tools

Buildbot metrics page gives wrong results after a new bot gets added
https://bugs.webkit.org/show_bug.cgi?id=136516

Part 1: Fix red/green counters. Dashboard is considered green at a given time
if all the bots that ever had results before this time are green.

This doesn't (and cannot) address situations where the bot gets removed and then
re-added. It also gives wrong results after a bot gets removed, because it doesn't
know that it was ever displayed on the dashboard.

Reviewed by Darin Adler.

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

(Analyzer.prototype._dashboardIsAllGreen):
(Analyzer.prototype._updateStretchOfRedCounters):
(Analyzer.prototype._countPercentageOfGreen):
(Analyzer.prototype._allQueuesAreSuccessful): Deleted.

9:13 AM Changeset in webkit [173259] by gyuyoung.kim@samsung.com
  • 4 edits in trunk/Source/WebCore

Introduce CSS_BASIC_SHAPES_TYPE_CASTS, and use it
https://bugs.webkit.org/show_bug.cgi?id=136403

Reviewed by Daniel Bates.

toCSSBasicShapeFoo() will help to detect wrong type casting. So this patch generates it, and use it
instead of static_cast<const CSSBasicShapeFoo*>().

No new tests no behavior changes.

  • css/BasicShapeFunctions.cpp:

(WebCore::basicShapeForValue):

  • css/CSSBasicShapes.cpp:

(WebCore::CSSBasicShapeCircle::equals):
(WebCore::CSSBasicShapeEllipse::equals):
(WebCore::CSSBasicShapePolygon::equals):
(WebCore::CSSBasicShapeInset::equals):

  • css/CSSBasicShapes.h:
8:42 AM Changeset in webkit [173258] by dbates@webkit.org
  • 13 edits in trunk/Source

[iOS] Make iOS build when ENABLE_TOUCH_EVENT and ENABLE_IOS_TOUCH_EVENTS disabled
https://bugs.webkit.org/show_bug.cgi?id=136494

Reviewed by Andy Estes.

Source/WebCore:

  • WebCore.exp.in: Add ENABLE(IOS_TOUCH_EVENTS) and ENABLE(TOUCH_EVENTS) guards. Also, sort this file using

the script Tools/Scripts/sort-export-file.

  • bindings/js/JSDocumentCustom.cpp: Add ENABLE(TOUCH_EVENTS)-guard around headers JSTouch.h and JSTouchList.h.
  • page/ios/WebEventRegion.mm: Substitute ENABLE(IOS_TOUCH_EVENTS) for ENABLE(TOUCH_EVENTS) since this

code is specific to the iOS touch machinery.

  • page/scrolling/ScrollingCoordinator.cpp: Add ENABLE(IOS_TOUCH_EVENTS) and ENABLE(TOUCH_EVENTS) guards.

(WebCore::ScrollingCoordinator::computeNonFastScrollableRegion): Substitute ENABLE(IOS_TOUCH_EVENTS) for PLATFORM(IOS).

  • platform/ios/ScrollAnimatorIOS.h: Add ENABLE(TOUCH_EVENTS) guard.
  • platform/ios/ScrollAnimatorIOS.mm:

(WebCore::ScrollAnimatorIOS::ScrollAnimatorIOS): Ditto.

  • platform/ios/wak/WAKResponder.h: Ditto.
  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::RenderLayer): Add ENABLE(IOS_TOUCH_EVENTS) guard.
(WebCore::RenderLayer::~RenderLayer): Substitute ENABLE(IOS_TOUCH_EVENTS) for PLATFORM(IOS) since this
code is specific to the iOS touch machinery.

  • rendering/RenderLayer.h: Add ENABLE(IOS_TOUCH_EVENTS) guard.

Source/WebKit/mac:

  • MigrateHeaders.make: Migrate header WebEventRegion.h only when ENABLE_IOS_TOUCH_EVENTS is defined.
  • WebView/WebView.mm: Substitute ENABLE(IOS_TOUCH_EVENTS) for ENABLE(TOUCH_EVENTS).
4:14 AM Changeset in webkit [173257] by clopez@igalia.com
  • 2 edits in trunk/Source/WebCore

REGRESSION(r173240) [GTK] Debug build broken.

Unreviewed build fix after r173240.

  • dom/EventListenerMap.h: Add missing include.
1:28 AM Changeset in webkit [173256] by mitz@apple.com
  • 6 edits in trunk/Source/WebCore

Get rid of HIGH_DPI_CANVAS leftovers
https://bugs.webkit.org/show_bug.cgi?id=136491

Reviewed by Benjamin Poulain.

  • html/HTMLCanvasElement.cpp:

(WebCore::HTMLCanvasElement::HTMLCanvasElement): Removed m_deviceScaleFactor initializer.
(WebCore::HTMLCanvasElement::reset): Removed checking if the scale factor has changed and
updating m_deviceScaleFactor.
(WebCore::HTMLCanvasElement::convertLogicalToDevice): Removed scaling by the device scale
factor.
(WebCore::HTMLCanvasElement::convertDeviceToLogical): Ditto.
(WebCore::HTMLCanvasElement::createImageBuffer): Replaced m_deviceScaleFactor with a literal
1.
(WebCore::HTMLCanvasElement::targetDeviceScaleFactor): Deleted.

  • html/HTMLCanvasElement.h: Removed m_deviceScaleFactor member variable and its getter.
  • html/canvas/CanvasRenderingContext2D.cpp:

(WebCore::CanvasRenderingContext2D::putImageData): Removed scaling by the device scale
factor.

  • html/canvas/CanvasRenderingContext2D.h:

(WebCore::CanvasRenderingContext2D::webkitBackingStorePixelRatio): Changed to return 1.

  • html/canvas/WebGLRenderingContext.cpp:

(WebCore::WebGLRenderingContext::texImage2D): Replaced deviceScaleFactor() with 1.
(WebCore::WebGLRenderingContext::texSubImage2D): Ditto.

12:41 AM Changeset in webkit [173255] by Carlos Garcia Campos
  • 3 edits in trunk/Source/WebKit2

Initialize m_usesNetworkProcess earlier in WebProcess::initializeWebProcess()
https://bugs.webkit.org/show_bug.cgi?id=136478

Reviewed by Alexey Proskuryakov.

The soup network backend uses WebProcess::usesNetworkProcess()
from WebProcess::platformSetCacheModel() and
WebProcess::platformInitializeWebProcess(), both called before the
m_usesNetworkProcess member has been initialized.

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::initializeWebProcess): Move the
m_usesNetworkProcess initialization at the beginning right before
calling platformInitializeWebProcess().

  • WebProcess/cocoa/WebProcessCocoa.mm:

(WebKit::WebProcess::platformSetCacheModel): Remove the early
return when using the network process, since this was dead code
before this change, and not really needed now that
usesNetworkProcess() will return true.
(WebKit::WebProcess::platformInitializeWebProcess): Remove comment
that is not accurate since r171156.

12:03 AM Changeset in webkit [173254] by commit-queue@webkit.org
  • 25 edits
    2 adds in trunk

XMLHttpRequest always defaults Content-Type to application/xml, while it should depend on data type
https://bugs.webkit.org/show_bug.cgi?id=11049

Patch by Youenn Fablet <youenn.fablet@crf.canon.fr> on 2014-09-03
Reviewed by Darin Adler.

Source/WebCore:

Updated default mime type when sending text (changed from application/xml to text/plain;charset=UTF-8)
Updated default mime type when sending document (set to application/xml;charset=UTF-8 for XML documents and text/html;charset=UTF-8 for HTML documents)

Test: http/tests/xmlhttprequest/post-content-type-document.html

  • xml/XMLHttpRequest.cpp:

(WebCore::XMLHttpRequest::send): updating default Content-Type valuess.

LayoutTests:

  • http/tests/xmlhttprequest/methods-lower-case-expected.txt: Rebaseline (application/xml -> text/plain;charset=UTF-8).
  • http/tests/xmlhttprequest/post-content-type-document.html: New test to cover default mime type for XML and HTML document data types.
  • http/tests/xmlhttprequest/post-content-type-document-expected.txt: Ditto.
  • http/tests/xmlhttprequest/post-content-type-expected.txt: Rebaseline (application/xml -> text/plain;charset=UTF-8).
  • http/tests/xmlhttprequest/post-content-type.html: Ditto.
  • http/tests/xmlhttprequest/request-encoding2.html: Ditto.
  • platform/gtk/http/tests/xmlhttprequest/methods-async-expected.txt: Ditto.
  • platform/gtk/http/tests/xmlhttprequest/methods-expected.txt: Ditto.
  • platform/gtk/http/tests/xmlhttprequest/workers/methods-async-expected.txt: Ditto.
  • platform/gtk/http/tests/xmlhttprequest/workers/methods-expected.txt: Ditto.
  • platform/gtk/http/tests/xmlhttprequest/workers/shared-worker-methods-async-expected.txt: Ditto.
  • platform/gtk/http/tests/xmlhttprequest/workers/shared-worker-methods-expected.txt: Ditto.
Note: See TracTimeline for information about the timeline view.