1. 13 Jul, 2011 40 commits
    • morrita@google.com's avatar
      .: [ShadowContentElement] forwarded node should be able to access its hosting content element. · 3b337f86
      morrita@google.com authored
      https://bugs.webkit.org/show_bug.cgi?id=64251
      
      Reviewed by Dimitri Glazkov.
      
      Added GTK symbols for new window.internals methods.
      
      * Source/autotools/symbols.filter:
      
      Source/WebCore: [ShadowContentElement] forwarded node should be able to access its hosting content element.
      https://bugs.webkit.org/show_bug.cgi?id=64251
      
      Reviewed by Dimitri Glazkov.
      
      - Introduced ShadowInclusionSet to manage included nodes to its includer content element.
        ShadowInclusionSet instance is owned by ShadowRoot.
      - Updated the set on inclusion list changes.
      - Used the set to retrieve the content element of NodeRenderingContext.
      
      There are also related refactoring and cleanup:
      - Renamed NodeRenderingContext::m_contentElement to m_includer
      - ShadowContentSelector::m_activeElement is no longer used, thus removed.
      
      Test: fast/dom/shadow/content-element-includer.html
      
      * WebCore.exp.in:
      * dom/NodeRenderingContext.cpp:
      (WebCore::NodeRenderingContext::NodeRenderingContext):
      (WebCore::NodeRenderingContext::nextRenderer):
      (WebCore::NodeRenderingContext::previousRenderer):
      * dom/NodeRenderingContext.h:
      (WebCore::NodeRenderingContext::includer):
      * dom/ShadowContentElement.cpp:
      (WebCore::removeFromSet): Added
      (WebCore::addToSet): Added
      (WebCore::ShadowContentElement::attach):
      (WebCore::ShadowContentElement::detach):
      * dom/ShadowContentElement.h:
      (WebCore::ShadowInclusionSet::add):
      (WebCore::ShadowInclusionSet::remove):
      (WebCore::ShadowInclusionSet::isEmpty):
      (WebCore::ShadowInclusionSet::Translator::hash):
      (WebCore::ShadowInclusionSet::Translator::equal):
      (WebCore::ShadowInclusionSet::Hash::hash):
      (WebCore::ShadowInclusionSet::Hash::equal):
      (WebCore::ShadowInclusionSet::find):
      * dom/ShadowContentSelector.cpp:
      (WebCore::ShadowContentSelector::ShadowContentSelector):
      (WebCore::ShadowContentSelector::selectInclusion):
      * dom/ShadowContentSelector.h:
      * dom/ShadowRoot.cpp:
      (WebCore::ShadowRoot::~ShadowRoot):
      (WebCore::ShadowRoot::includerFor): Replaced activeElement()
      (WebCore::ShadowRoot::inclusions): Added
      (WebCore::ShadowRoot::ensureInclusions): Added
      * dom/ShadowRoot.h:
      (WebCore::toShadowRoot):
      * testing/Internals.cpp:
      (WebCore::Internals::includerFor):
      * testing/Internals.h:
      * testing/Internals.idl:
      
      Source/WebKit2: [ShadowContentElement] forwarded node should be able to access its hosting content element.
      https://bugs.webkit.org/show_bug.cgi?id=64251
      
      Reviewed by Dimitri Glazkov.
      
      Exported additional symbols for window.internals object.
      
      * win/WebKit2.def:
      
      LayoutTests: [ShadowContentElement] forwarded node should be able to access its hosting content element.
      https://bugs.webkit.org/show_bug.cgi?id=64251
      
      Reviewed by Dimitri Glazkov.
      
      - Added a new test.
      - Updated expectations. This change make ShadowContentElement availability on NodeRenderingContext
        more strict. that makes some redundant node disappeared.
      
      * fast/dom/shadow/content-element-includer-expected.txt: Added.
      * fast/dom/shadow/content-element-includer.html: Added.
      * platform/chromium-win/fast/html/details-nested-2-expected.txt:
      * platform/gtk/fast/html/details-nested-2-expected.txt:
      * platform/mac/fast/html/details-nested-2-expected.txt:
      * platform/qt/fast/html/details-nested-2-expected.txt:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@90976 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3b337f86
    • scheib@chromium.org's avatar
      [chromium] Update chromium test expectations. · 077b1d22
      scheib@chromium.org authored
      * platform/chromium/test_expectations.txt:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@90975 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      077b1d22
    • tkent@chromium.org's avatar
      [Qt] Remove duplicated entries. · cf611158
      tkent@chromium.org authored
      * platform/qt/test_expectations.txt:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@90974 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      cf611158
    • dpranke@chromium.org's avatar
      new-run-webkit-tests: print baseline search path as part of config output · d4fe6909
      dpranke@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=64499
      
      Reviewed by Eric Seidel.
      
      * Scripts/webkitpy/layout_tests/controllers/manager.py:
      * Scripts/webkitpy/layout_tests/controllers/manager_unittest.py:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@90973 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d4fe6909
    • dominicc@chromium.org's avatar
      Raise if dispatchEvent dispatches an event that is being dispatched · dd007793
      dominicc@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=64150
      
      Reviewed by Dimitri Glazkov.
      
      Source/WebCore:
      
      Spec: http://www.w3.org/TR/DOM-Level-3-Events/#events-EventTarget-dispatchEvent
      
      Test: fast/events/dispatch-event-being-dispatched.html
      
      * dom/Event.h:
      (WebCore::Event::isBeingDispatched): Added.
      * dom/EventException.h:
      * dom/EventException.idl: Add DISPATCH_REQUEST_ERR.
      * dom/EventTarget.cpp:
      (WebCore::EventTarget::dispatchEvent): Raise if being dispatched.
      * dom/ExceptionCode.cpp: Add gunk for DISPATCH_REQUEST_ERR.
      
      LayoutTests:
      
      * fast/dom/Window/window-properties-expected.txt: Added DISPATCH_REQUEST_ERR.
      * fast/events/dispatch-event-being-dispatched-expected.txt: Added.
      * fast/events/dispatch-event-being-dispatched.html: Added.
      * fast/workers/resources/worker-event-listener.js:
      (onmessage): Redispatching the MessageEvent throws an exception now.
      * platform/gtk/fast/dom/Window/window-properties-expected.txt:
      * platform/qt-wk2/fast/dom/Window/window-properties-expected.txt:
      * platform/qt/fast/dom/Window/window-properties-expected.txt:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@90972 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      dd007793
    • tkent@chromium.org's avatar
      Implement text field placeholders using shadow DOM · 8e17b7c2
      tkent@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=64253
      
      Reviewed by Dimitri Glazkov.
      
      Source/WebCore:
      
      Represents a placeholder text as a shadow element, and its
      visibility is controlled by 'visibility' CSS property.
      
      This patch removes all of existing code about placeholder from
      RenderTextControl*. RenderTextControl* have only small code about
      placeholder layout.
      
      Also, this patch removes INPUT_PLACEHOLDER legacy pseudo ID, and
      the placeholder style uses Element::shadowPseudoId().
      
      This fixes the following regressions:
      - https://bugs.webkit.org/show_bug.cgi?id=51290
      - https://bugs.webkit.org/show_bug.cgi?id=54797
      - https://bugs.webkit.org/show_bug.cgi?id=54814
      - https://bugs.webkit.org/show_bug.cgi?id=63367
      
      Test: fast/forms/textarea-placeholder-wrapping.html
      
      * css/CSSSelector.cpp: Remove INPUT_PLACEHOLDER legacy pseudo ID.
      (WebCore::CSSSelector::pseudoId):
      (WebCore::nameToPseudoTypeMap):
      (WebCore::CSSSelector::extractPseudoType):
      * css/CSSSelector.h: ditto.
      * css/html.css:
      (::-webkit-input-placeholder): Added. This contains properties
      common in <input> and <textarea>. Some properties have !important
      so that a stylesheet specified by a page author won't break
      WebKit's assumption.
      (input::-webkit-input-placeholder, isindex::-webkit-input-placeholder):
       Added the default style for <input> placeholders.
      * html/HTMLInputElement.cpp:
      (WebCore::HTMLInputElement::placeholderElement): Delegate to an InputType.
      (WebCore::HTMLInputElement::updatePlaceholderText): ditto.
      * html/HTMLInputElement.h: Declare placeholderElement() and updatePlaceholderText().
      * html/HTMLTextAreaElement.cpp:
      (WebCore::HTMLTextAreaElement::createRenderer):
      Remove the 'placeholderVisible' argument.
      (WebCore::HTMLTextAreaElement::placeholderElement): Added.
      (WebCore::HTMLTextAreaElement::updatePlaceholderText):
       Added. This creates, deletes, or updates the placeholder element.
      * html/HTMLTextAreaElement.h:
      - Declare placeholderElement() and updatePlaceholderText().
      - Add m_placeholder.
      * html/HTMLTextFormControlElement.cpp:
      (WebCore::HTMLTextFormControlElement::updatePlaceholderVisibility):
      Update the placeholder element and 'visibility' CSS property,
      instead of delegating the job to a renderer.
      * html/HTMLTextFormControlElement.h:
      Declare two pure virtual functions: placeholderElement() and updatePlaceholderText().
      * html/InputType.cpp:
      (WebCore::InputType::placeholderElement): Add an empty implementation.
      (WebCore::InputType::updatePlaceholderText): Add an empty implementation.
      * html/InputType.h: Declare placeholderElement() and updatePlaceholderText().
      * html/TextFieldInputType.cpp:
      (WebCore::TextFieldInputType::createRenderer):
      Remove the 'placeholderVisible' argument.
      (WebCore::TextFieldInputType::placeholderElement): Added.
      (WebCore::TextFieldInputType::destroyShadowSubtree): Deletes m_placeholder.
      (WebCore::TextFieldInputType::updatePlaceholderText):
       Added. This creates, deletes, or updates the placeholder element.
      * html/TextFieldInputType.h:
      - Declare placeholderElement() and updatePlaceholderText().
      - Add m_placeholder.
      * rendering/RenderTextControl.cpp:
      (WebCore::RenderTextControl::RenderTextControl):
      Remove the 'placeholderVisible' argument.
      (WebCore::RenderTextControl::layoutSpecialExcludedChild):
      Excludes the placeholder renderer in order to avoid to secure a box for
      the placeholder.
      * rendering/RenderTextControl.h:
      - Remove declarations of removed functions.
      - Update the RenderTextControl signature.
      - Add layoutSpecialExcludedChild().
      * rendering/RenderTextControlMultiLine.cpp:
      (WebCore::RenderTextControlMultiLine::RenderTextControlMultiLine):
      Remove the 'placeholderVisible' argument.
      (WebCore::RenderTextControlMultiLine::layoutSpecialExcludedChild):
      Laying out the placeholder box so that it has correct width and location.
      * rendering/RenderTextControlMultiLine.h:
      - Remove declarations of removed functions.
      - Update the RenderTextControlMultiLine signature.
      - Add layoutSpecialExcludedChild().
      * rendering/RenderTextControlSingleLine.cpp:
      (WebCore::RenderTextControlSingleLine::RenderTextControlSingleLine):
      Remove the 'placeholderVisible' argument.
      (WebCore::RenderTextControlSingleLine::layout):
      Laying out the placeholder box so that it has correct width and location.
      * rendering/RenderTextControlSingleLine.h:
      - Remove declarations of removed functions.
      - Update the RenderTextControlSingleLine signature.
      * rendering/style/RenderStyleConstants.h: Remove INPUT_PLACEHOLDER.
      
      LayoutTests:
      
      Add some test cases, and update expectations because placeholders
      have their renderers.
      
      * fast/forms/input-placeholder-text-indent.html:
        Remove an obsolete comment. A placeholder respects a percentage indent.
      * fast/forms/placeholder-position.html:
        Add tests for line-height and text-align.
      * fast/forms/textarea-placeholder-wrapping.html: Added.
      * platform/chromium/test_expectations.txt:
      * platform/gtk/test_expectations.txt:
      * platform/mac/fast/css/pseudo-cache-stale-expected.txt:
      * platform/mac/fast/forms/input-placeholder-text-indent-expected.png:
      * platform/mac/fast/forms/input-placeholder-text-indent-expected.txt:
      * platform/mac/fast/forms/isindex-placeholder-expected.png:
      * platform/mac/fast/forms/isindex-placeholder-expected.txt:
      * platform/mac/fast/forms/password-placeholder-expected.txt:
      * platform/mac/fast/forms/password-placeholder-text-security-expected.png:
      * platform/mac/fast/forms/password-placeholder-text-security-expected.txt:
      * platform/mac/fast/forms/placeholder-position-expected.png:
      * platform/mac/fast/forms/placeholder-position-expected.txt:
      * platform/mac/fast/forms/placeholder-pseudo-style-expected.png:
      * platform/mac/fast/forms/placeholder-pseudo-style-expected.txt:
      * platform/mac/fast/forms/placeholder-set-attribute-expected.txt:
      * platform/mac/fast/forms/placeholder-stripped-expected.txt:
      * platform/mac/fast/forms/search-placeholder-value-changed-expected.txt:
      * platform/mac/fast/forms/search-styled-expected.png:
      * platform/mac/fast/forms/search-styled-expected.txt:
      * platform/mac/fast/forms/textarea-placeholder-pseudo-style-expected.txt:
      * platform/mac/fast/forms/textarea-placeholder-set-attribute-expected.txt:
      * platform/mac/fast/forms/textarea-placeholder-wrapping-expected.png: Added.
      * platform/mac/fast/forms/textarea-placeholder-wrapping-expected.txt: Added.
      * platform/qt/test_expectations.txt:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@90971 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8e17b7c2
    • simonjam@chromium.org's avatar
      Remove hack that forcefully prevents scripts from running in shadow SVG · db2146a5
      simonjam@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=64419
      
      This hack was put in to prevent scripts from running in shadow SVG. This should never have
      happened, but did because we didn't parse <script> tags in SVG properly. This was fixed in
      r88584, so the hack is no longer needed.
      
      No new tests since there is no change in functionality.
      
      Reviewed by Tony Gentilcore.
      
      * dom/ScriptElement.cpp:
      (WebCore::ScriptElement::prepareScript):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@90970 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      db2146a5
    • commit-queue@webkit.org's avatar
      [chromium] Clean undeeded WebCore:: namespace prefixing from WebBindings. · 0abc254a
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=64361
      
      Patch by Noel Gordon <noel.gordon@gmail.com> on 2011-07-13
      Reviewed by Kent Tamura.
      
      * src/WebBindings.cpp:
      (WebKit::makeIntArrayImpl):
      (WebKit::makeStringArrayImpl):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@90969 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0abc254a
    • abarth@webkit.org's avatar
      gardening server should have an API for parsing changelogs · ec8e0102
      abarth@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=64495
      
      Reviewed by Eric Seidel.
      
      This patch exposes much of the same information from CommitInfo in a
      dictionary form, which is easier to send over-the-wire as JSON to the
      frontend.
      
      * Scripts/webkitpy/common/checkout/checkout.py:
      * Scripts/webkitpy/common/checkout/checkout_unittest.py:
      * Scripts/webkitpy/tool/mocktool.py:
      * Scripts/webkitpy/tool/servers/gardeningserver.py:
      * Scripts/webkitpy/tool/servers/gardeningserver_unittest.py:
      * Scripts/webkitpy/tool/servers/reflectionhandler.py:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@90968 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ec8e0102
    • commit-queue@webkit.org's avatar
      REGRESSION: GitTestWithMock.test_create_patch fails · c6680c39
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=62945
      
      Reviewed by Daniel Bates.
      
      I was not able to reproduce the exact failure seen in the bug,
      however this test was failing on my machine for other reasons.
      
      I went through and did an audit of our run_command usage, it's
      entirely in scm classes after this change.  (Not surprising given
      that scm.py was the second file ever created in webkit.py.)
      
      The real bug I'm fixing here is that we were setting executive.should_log
      when the value had changed to executive._should_log.  Now we set the right one
      and the test works again.
      
      * Scripts/webkitpy/common/checkout/checkout.py:
      * Scripts/webkitpy/common/checkout/scm/git.py:
      * Scripts/webkitpy/common/checkout/scm/scm.py:
      * Scripts/webkitpy/common/checkout/scm/scm_unittest.py:
      * Scripts/webkitpy/common/checkout/scm/svn.py:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@90967 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c6680c39
    • commit-queue@webkit.org's avatar
      [CSSRegions] Parse -webkit-content-order property · 36f0e880
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=63897
      
      Patch by Mihnea Ovidenie <mihnea@adobe.com> on 2011-07-13
      Reviewed by David Hyatt.
      
      Source/WebCore:
      
      Test: fast/regions/webkit-content-order-parsing.html
      
      * css/CSSComputedStyleDeclaration.cpp:
      (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
      * css/CSSParser.cpp:
      (WebCore::CSSParser::parseValue):
      * css/CSSPropertyNames.in:
      * css/CSSStyleSelector.cpp:
      (WebCore::CSSStyleSelector::applyProperty):
      * rendering/style/RenderStyle.cpp:
      (WebCore::RenderStyle::diff):
      * rendering/style/RenderStyle.h:
      (WebCore::InheritedFlags::regionIndex):
      (WebCore::InheritedFlags::setRegionIndex):
      (WebCore::InheritedFlags::initialRegionIndex):
      * rendering/style/StyleRareNonInheritedData.cpp:
      (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
      (WebCore::StyleRareNonInheritedData::operator==):
      * rendering/style/StyleRareNonInheritedData.h:
      
      LayoutTests:
      
      * fast/regions/script-tests/webkit-content-order-parsing.js: Added.
      * fast/regions/webkit-content-order-parsing-expected.txt: Added.
      * fast/regions/webkit-content-order-parsing.html: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@90966 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      36f0e880
    • isherman@chromium.org's avatar
      Fix WTF header guard style check · c85e535b
      isherman@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=64488
      
      Reviewed by David Levin.
      
      * Scripts/webkitpy/style/checkers/cpp.py:
      * Scripts/webkitpy/style/checkers/cpp_unittest.py: Verify that we don't *always* suggest "WTF_" as a prefix
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@90965 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c85e535b
    • ojan@chromium.org's avatar
      bring flakiness_dashboard.html closer to webkit style · 017a8675
      ojan@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=64477
      
      Reviewed by Adam Barth.
      
      * TestResultServer/static-dashboards/dashboard_base.js:
      Fix bad variable name that would hit only when running the tests.
      * TestResultServer/static-dashboards/flakiness_dashboard.html:
      No code/logic changes. All moving/removing brackets, indents and moving things
      to one line.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@90964 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      017a8675
    • commit-queue@webkit.org's avatar
      Patch by James Robinson <jamesr@chromium.org> on 2011-07-13 · 87083f54
      commit-queue@webkit.org authored
      Reviewed by Kenneth Russell.
      
      [chromium] Move draw implementation for ContentLayerChromium/ImageLayerChromium to the appropriate CCLayerImpl subclass
      https://bugs.webkit.org/show_bug.cgi?id=58833
      
      Adds a TiledLayerChromium class to handle the tiling logic shared by ContentLayerChromium and ImageLayerChromium
      so that they can be siblings in the class hierarchy instead of children. Also adds a CCTiledLayerImpl to handle
      the drawing responsibilities for tiled layers.
      
      TiledLayerChromium maintains a tiler, tiling options, and calculates the tiling transform. Subclasses are
      responsible for providing an appropriate texture updater implementation. CCTiledLayerImpl takes the tiler,
      tiling transform and layer properties and draws the layer.  Longer term it'd be better of the CCTiledLayerImpl
      owned the tiler and the TiledLayerChromium only owned an updater, but getting there will require changing the
      way tile eviction works.
      
      * WebCore.gypi:
      * platform/graphics/chromium/ContentLayerChromium.cpp:
      (WebCore::ContentLayerChromium::ContentLayerChromium):
      (WebCore::ContentLayerChromium::paintContentsIfDirty):
      (WebCore::ContentLayerChromium::drawsContent):
      * platform/graphics/chromium/ContentLayerChromium.h:
      (WebCore::ContentLayerChromium::textureUpdater):
      * platform/graphics/chromium/ImageLayerChromium.cpp:
      (WebCore::ImageLayerChromium::ImageLayerChromium):
      (WebCore::ImageLayerChromium::cleanupResources):
      (WebCore::ImageLayerChromium::paintContentsIfDirty):
      (WebCore::ImageLayerChromium::textureUpdater):
      (WebCore::ImageLayerChromium::contentBounds):
      (WebCore::ImageLayerChromium::drawsContent):
      (WebCore::ImageLayerChromium::createTextureUpdaterIfNeeded):
      * platform/graphics/chromium/ImageLayerChromium.h:
      * platform/graphics/chromium/LayerChromium.cpp:
      (WebCore::LayerChromium::pushPropertiesTo):
      (WebCore::LayerChromium::ccLayerImpl):
      * platform/graphics/chromium/LayerChromium.h:
      * platform/graphics/chromium/LayerRendererChromium.cpp:
      (WebCore::LayerRendererChromium::drawRootLayer):
      * platform/graphics/chromium/LayerTilerChromium.cpp:
      (WebCore::LayerTilerChromium::updateRect):
      (WebCore::LayerTilerChromium::draw):
      (WebCore::LayerTilerChromium::drawTiles):
      * platform/graphics/chromium/LayerTilerChromium.h:
      * platform/graphics/chromium/TiledLayerChromium.cpp: Added.
      (WebCore::TiledLayerChromium::TiledLayerChromium):
      (WebCore::TiledLayerChromium::~TiledLayerChromium):
      (WebCore::TiledLayerChromium::createCCLayerImpl):
      (WebCore::TiledLayerChromium::cleanupResources):
      (WebCore::TiledLayerChromium::setLayerRenderer):
      (WebCore::TiledLayerChromium::updateTileSizeAndTilingOption):
      (WebCore::TiledLayerChromium::drawsContent):
      (WebCore::TiledLayerChromium::createTilerIfNeeded):
      (WebCore::TiledLayerChromium::updateCompositorResources):
      (WebCore::TiledLayerChromium::setTilingOption):
      (WebCore::TiledLayerChromium::setIsMask):
      (WebCore::TiledLayerChromium::tilingTransform):
      (WebCore::TiledLayerChromium::pushPropertiesTo):
      (WebCore::writeIndent):
      (WebCore::TiledLayerChromium::dumpLayerProperties):
      * platform/graphics/chromium/TiledLayerChromium.h: Added.
      * platform/graphics/chromium/cc/CCLayerImpl.cpp:
      (WebCore::CCLayerImpl::draw):
      * platform/graphics/chromium/cc/CCLayerImpl.h:
      (WebCore::CCLayerImpl::setDrawsContent):
      (WebCore::CCLayerImpl::drawsContent):
      * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp: Added.
      (WebCore::CCTiledLayerImpl::CCTiledLayerImpl):
      (WebCore::CCTiledLayerImpl::~CCTiledLayerImpl):
      (WebCore::CCTiledLayerImpl::draw):
      (WebCore::CCTiledLayerImpl::bindContentsTexture):
      (WebCore::CCTiledLayerImpl::dumpLayerProperties):
      * platform/graphics/chromium/cc/CCTiledLayerImpl.h: Added.
      (WebCore::CCTiledLayerImpl::create):
      (WebCore::CCTiledLayerImpl::setTilingTransform):
      (WebCore::CCTiledLayerImpl::setTiler):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@90963 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      87083f54
    • msaboff@apple.com's avatar
      https://bugs.webkit.org/show_bug.cgi?id=64202 · b0ba7fc5
      msaboff@apple.com authored
      Enh: Improve handling of RegExp in the form of /.*blah.*/
      
      Reviewed by Gavin Barraclough.
      
      ../../../../Volumes/Data/src/webkit/LayoutTests: 
      
      New tests to support /.*<expression>.*/ enhancement.
      
      * fast/regex/dotstar-expected.txt: Added.
      * fast/regex/dotstar.html: Added.
      * fast/regex/script-tests/dotstar.js: Added.
      
      ../../../../Volumes/Data/src/webkit/Source/JavaScriptCore: 
      
      Added code to both the Yarr interpreter and JIT to handle
      these expressions a little differently.  First off, the terms
      in between the leading and trailing .*'s cannot capture and
      also this enhancement is limited to single alternative expressions.
      If an expression is of the right form with the aforementioned
      restrictions, we process the inner terms and then look for the
      beginning of the string and end of the string.  There is handling 
      for multiline expressions to allow the beginning and end to be 
      right after and right before newlines.
      
      This enhancement speeds up expressions of this type 12x on
      a MacBookPro.
      
      Cleaned up 'case' statement indentation.
      
      A new set of tests was added as LayoutTests/fast/regex/dotstar.html
      
      * yarr/YarrInterpreter.cpp:
      (JSC::Yarr::Interpreter::InputStream::end):
      (JSC::Yarr::Interpreter::matchDotStarEnclosure):
      (JSC::Yarr::Interpreter::matchDisjunction):
      (JSC::Yarr::ByteCompiler::assertionDotStarEnclosure):
      (JSC::Yarr::ByteCompiler::emitDisjunction):
      * yarr/YarrInterpreter.h:
      (JSC::Yarr::ByteTerm::DotStarEnclosure):
      * yarr/YarrJIT.cpp:
      (JSC::Yarr::YarrGenerator::generateDotStarEnclosure):
      (JSC::Yarr::YarrGenerator::backtrackDotStarEnclosure):
      (JSC::Yarr::YarrGenerator::generateTerm):
      (JSC::Yarr::YarrGenerator::backtrackTerm):
      * yarr/YarrPattern.cpp:
      (JSC::Yarr::YarrPatternConstructor::setupAlternativeOffsets):
      (JSC::Yarr::YarrPatternConstructor::containsCapturingTerms):
      (JSC::Yarr::YarrPatternConstructor::optimizeDotStarWrappedExpressions):
      (JSC::Yarr::YarrPattern::compile):
      * yarr/YarrPattern.h:
      (JSC::Yarr::PatternTerm::PatternTerm):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@90962 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b0ba7fc5
    • jchaffraix@webkit.org's avatar
      Remove an unused bit in RenderObject · 03b25429
      jchaffraix@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=64485
      
      Reviewed by Darin Adler.
      
      No change in behavior so no new test.
      
      * rendering/RenderObject.h: Removed a bit that was duplicated from RenderTableCell.
      However it was not used in RenderObject and RenderTableCell already packed this bit.
      We were lying in the number of used bits in RenderObject which was 33. This change
      brings us back to what was advertised.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@90961 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      03b25429
    • scheib@chromium.org's avatar
      [chromium] Update chromium test expectations. · 57c6879f
      scheib@chromium.org authored
      * platform/chromium/test_expectations.txt:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@90960 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      57c6879f
    • simon.fraser@apple.com's avatar
      2011-07-13 Simon Fraser <simon.fraser@apple.com> · b8fae948
      simon.fraser@apple.com authored
              Fix non-debug builds.
      
              * rendering/RenderLayerBacking.cpp:
              (WebCore::RenderLayerBacking::createGraphicsLayer):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@90959 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b8fae948
    • scheib@chromium.org's avatar
      Unreviewed, rolling out r90957. · 571efc0f
      scheib@chromium.org authored
      http://trac.webkit.org/changeset/90957
      
      Fixing incorrect test expectations
      
      * platform/chromium/test_expectations.txt:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@90958 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      571efc0f
    • scheib@chromium.org's avatar
      [chromium] Update chromium test expectations. · 40d5a6ad
      scheib@chromium.org authored
      * platform/chromium/test_expectations.txt:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@90957 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      40d5a6ad
    • vitalyr@chromium.org's avatar
      2011-07-13 Vitaly Repeshko <vitalyr@chromium.org> · ee5c3614
      vitalyr@chromium.org authored
              [chromium] Fix mac build after r90949.
      
              * bindings/v8/V8HiddenPropertyName.cpp:
              (WebCore::V8HiddenPropertyName::hiddenReferenceName):
              * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
              (WebCore::toV8Object):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@90956 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ee5c3614
    • eae@chromium.org's avatar
      Switch table rendering to to new layout types · fad42edc
      eae@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=64478
      
      Reviewed by Eric Seidel.
      
      No new tests, no new functionality.
      
      * rendering/AutoTableLayout.cpp:
      * rendering/AutoTableLayout.h:
      * rendering/HitTestResult.cpp:
      * rendering/HitTestResult.h:
      * rendering/LayoutTypes.h:
      * rendering/RenderBlock.h:
      * rendering/RenderBoxModelObject.cpp:
      * rendering/RenderBoxModelObject.h:
      * rendering/RenderObject.h:
      * rendering/RenderTable.cpp:
      * rendering/RenderTable.h:
      * rendering/RenderTableCell.cpp:
      * rendering/RenderTableCell.h:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@90955 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      fad42edc
    • simon.fraser@apple.com's avatar
      2011-07-13 Simon Fraser <simon.fraser@apple.com> · ec223217
      simon.fraser@apple.com authored
              Factor some GraphicsLayer creation code in RenderLayerBacking
              https://bugs.webkit.org/show_bug.cgi?id=64487
      
              Reviewed by Sam Weinig.
      
              Move the GraphicsLayer::create() calls into once place so that we
              don't have lots of #ifndef NDEBUG in various places, and can share
              more code in future.
      
              No behavior change, so no new tests.
      
              * rendering/RenderLayerBacking.cpp:
              (WebCore::RenderLayerBacking::RenderLayerBacking):
              (WebCore::RenderLayerBacking::~RenderLayerBacking):
              (WebCore::RenderLayerBacking::createGraphicsLayer):
              (WebCore::RenderLayerBacking::createPrimaryGraphicsLayer):
              (WebCore::RenderLayerBacking::destroyGraphicsLayers):
              (WebCore::RenderLayerBacking::updateLayerTransform):
              (WebCore::RenderLayerBacking::updateClippingLayers):
              (WebCore::RenderLayerBacking::updateOverflowControlsLayers):
              (WebCore::RenderLayerBacking::updateForegroundLayer):
              (WebCore::RenderLayerBacking::updateMaskLayer):
              * rendering/RenderLayerBacking.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@90954 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ec223217
    • xan@webkit.org's avatar
      Tools: · 602e1717
      xan@webkit.org authored
      2011-07-13  Xan Lopez  <xlopez@igalia.com>
      
              [GTK] Fix distcheck
      
              Reviewed by Martin Robinson.
      
              * WebKitTestRunner/GNUmakefile.am: mark built sources as nodist.
      
      WebCore:
      
      2011-07-13  Xan Lopez  <xlopez@igalia.com>
      
              [GTK] Fix distcheck.
      
              Reviewed by Martin Robinson.
      
              * GNUmakefile.list.am: add missing files.
      
      JavaScriptCore:
      
      2011-07-13  Xan Lopez  <xlopez@igalia.com>
      
              [GTK] Fix distcheck
      
              Reviewed by Martin Robinson.
      
              * GNUmakefile.list.am: add missing files.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@90953 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      602e1717
    • jamesr@google.com's avatar
      [chromium] No implementation defined for WTF::monotonicallyIncreasingTime · 401a78ee
      jamesr@google.com authored
      https://bugs.webkit.org/show_bug.cgi?id=64420
      
      Reviewed by Tony Gentilcore.
      
      Source/WebCore:
      
      Removes some redundant time related code.
      
      * platform/chromium/PlatformBridge.h:
      * platform/chromium/SystemTimeChromium.cpp:
      (WebCore::userIdleTime):
      
      Source/WebKit/chromium:
      
      Provides an implementation of WTF::monotonicallyIncreasingTime() alongside the implementation of
      WTF::currentTime().
      
      * src/ChromiumCurrentTime.cpp:
      (WTF::monotonicallyIncreasingTime):
      * src/PlatformBridge.cpp:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@90952 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      401a78ee
    • joepeck@webkit.org's avatar
      Unreviewed fix. Add a "\n" to a printf that somehow got lost. · 6e0d3cb8
      joepeck@webkit.org authored
      2011-07-13  Joseph Pecoraro  <joepeck@webkit.org>
      
              * DumpRenderTree/qt/DumpRenderTreeQt.cpp:
              (WebCore::DumpRenderTree::dumpApplicationCacheQuota):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@90951 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6e0d3cb8
    • commit-queue@webkit.org's avatar
      DFG JIT does not implement prototype chain or list caching for get_by_id. · 5f595757
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=64147
      
      Patch by Filip Pizlo <fpizlo@apple.com> on 2011-07-13
      Reviewed by Gavin Barraclough.
      
      This implements unified support for prototype caching, prototype chain
      caching, and polymorphic (i.e. list) prototype and prototype chain
      caching.  This is done by creating common code for emitting prototype
      or chain access stubs, and having it factored out into
      generateProtoChainAccessStub().  This function is called by
      tryCacheGetByID once the latter determines that some form of prototype
      access caching is necessary (i.e. the slot being accessed is not on the
      base value but on some other object).
      
      Direct prototype list, and prototype chain list, caching is implemented by
      linking the slow path to operationGetByIdProtoBuildList(), which uses the
      same helper function (generateProtoChainAccessStub()) as tryCacheGetByID.
      
      This change required ensuring that the value in the scratchGPR field in
      StructureStubInfo is preserved even after the stub info is in the
      chain, or proto_list, states.  Hence scratchGPR was moved out of the union
      and into the top-level of StructureStubInfo.
      
      * bytecode/StructureStubInfo.h:
      * dfg/DFGJITCompiler.cpp:
      (JSC::DFG::JITCompiler::compileFunction):
      * dfg/DFGOperations.cpp:
      * dfg/DFGOperations.h:
      * dfg/DFGRepatch.cpp:
      (JSC::DFG::emitRestoreScratch):
      (JSC::DFG::linkRestoreScratch):
      (JSC::DFG::generateProtoChainAccessStub):
      (JSC::DFG::tryCacheGetByID):
      (JSC::DFG::tryBuildGetByIDProtoList):
      (JSC::DFG::dfgBuildGetByIDProtoList):
      (JSC::DFG::tryCachePutByID):
      * dfg/DFGRepatch.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@90950 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5f595757
    • vitalyr@chromium.org's avatar
      2011-07-13 Vitaly Repeshko <vitalyr@chromium.org> · 124b30ee
      vitalyr@chromium.org authored
              [V8] Avoid memory leaks with hidden references.
              https://bugs.webkit.org/show_bug.cgi?id=64467
      
              Reviewed by Adam Barth.
      
              We used to have growing arrays of hidden references associated
              with objects. The entries in this array had no keys and were never
              removed. This patch changes the interface to require a reference
              name. This way it's harder to leak an unbounded number of
              objects. Also it makes our wrapper objects one machine word
              smaller.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@90949 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      124b30ee
    • joepeck@webkit.org's avatar
      Improve names of some ApplicationCacheStorage accessor methods · df994624
      joepeck@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=64433
      
      Reviewed by Alexey Proskuryakov.
      
      2011-07-13  Joseph Pecoraro  <joepeck@webkit.org>
      
              Some methods returned a bool for success/failure and
              actually returned a value as an out parameter so their
              name was confusing. Rename these methods to make them
              more clear.
      
              (WebCore::ApplicationCache::diskUsageForOrigin):
              * loader/appcache/ApplicationCacheGroup.cpp:
              (WebCore::ApplicationCacheGroup::recalculateAvailableSpaceInQuota):
              * loader/appcache/ApplicationCacheStorage.cpp:
              (WebCore::ApplicationCacheStorage::calculateQuotaForOrigin):
              (WebCore::ApplicationCacheStorage::calculateUsageForOrigin):
              (WebCore::ApplicationCacheStorage::calculateRemainingSizeForOriginExcludingCache):
              (WebCore::ApplicationCacheStorage::checkOriginQuota):
              * loader/appcache/ApplicationCacheStorage.h:
              * loader/appcache/ApplicationCache.cpp:
              Rename the methods.
      
              * WebCore.exp.in:
              Replaced old versions. Also, calculateRemaining wasn't needed
              outside WebCore, so no longer export it.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@90948 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      df994624
    • joepeck@webkit.org's avatar
      Some ApplicationCache Origin Cleanup · ce1067db
      joepeck@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=64431
      
      Reviewed by Alexey Proskuryakov.
      
      2011-07-13  Joseph Pecoraro  <joepeck@webkit.org>
      
              - m_loadedSize is inaccurate. This just replaces it with
              calls to ApplicationCache::estimatedSizeInStorage.
      
              - m_availableSpaceInQuota can get out of date, so we just
              recalculate it at the start of appcache downloads.
      
              * loader/appcache/ApplicationCacheGroup.h:
              * loader/appcache/ApplicationCacheGroup.cpp:
              (WebCore::ApplicationCacheGroup::ApplicationCacheGroup):
              (WebCore::ApplicationCacheGroup::didReceiveData):
              Remove references to m_loadedSize.
      
              (WebCore::ApplicationCacheGroup::didFinishLoading):
              Replace m_loadedSize with estimatedSizeInStorage after we
              add the new cached resource to the cache. The calculation
              already happened so this check is fast.
      
              (WebCore::ApplicationCacheGroup::didFinishLoadingManifest):
              When we start the Downloading phase, recalculate the quota
              so that we have an up to date quota value so that we can
              break early if needed.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@90947 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ce1067db
    • joepeck@webkit.org's avatar
      ApplicationCache Quota Output is Flakey · 4e8a358c
      joepeck@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=64410
      
      Reviewed by Alexey Proskuryakov.
      
      2011-07-13  Joseph Pecoraro  <joepeck@webkit.org>
      
              Have the tests truncate the number of bytes needed in
              the delegate callback to get an approximation of how
              much space was needed.
      
              * http/tests/appcache/origin-quota-continued-download-expected.txt:
              * http/tests/appcache/origin-quota-continued-download-multiple-manifests-expected.txt:
              * http/tests/appcache/origin-quota-continued-download-multiple-manifests.html:
              * http/tests/appcache/origin-quota-expected.txt:
              Update the output and clarify what the multiple-manifests test
              is looking for in the space needed output.
      
              * platform/mac/Skipped:
              * platform/qt/Skipped:
              Unskip the tests.
      
      2011-07-13  Joseph Pecoraro  <joepeck@webkit.org>
      
              Unify the delegate logging for reaching application cache
              quotas. Truncate the space needed to the nearest 10000
              for less flakey test output. This also better supports
              printing NSUInteger on non-64 bit systems by casting to
              an unsigned long.
      
              * DumpRenderTree/mac/UIDelegate.mm:
              (-[UIDelegate webView:exceededApplicationCacheOriginQuotaForSecurityOrigin:totalSpaceNeeded:]):
              * DumpRenderTree/qt/DumpRenderTreeQt.cpp:
              (WebCore::DumpRenderTree::dumpApplicationCacheQuota):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@90946 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4e8a358c
    • jamesr@google.com's avatar
      [chromium] Update chromium gpu expectations. · e219e0a0
      jamesr@google.com authored
      * platform/chromium/test_expectations.txt:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@90945 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e219e0a0
    • dglazkov@chromium.org's avatar
      [Chromium] Prettify spacing in test_expectations.txt · f9a21b47
      dglazkov@chromium.org authored
      * platform/chromium/test_expectations.txt: Ran through the new parser/serializer code.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@90944 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f9a21b47
    • dglazkov@chromium.org's avatar
      Remove unused TestExpectations._overrides. · bb9ebcd9
      dglazkov@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=64470
      
      Reviewed by Adam Barth.
      
      * Scripts/webkitpy/layout_tests/models/test_expectations.py: Removed unused member.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@90943 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      bb9ebcd9
    • dglazkov@chromium.org's avatar
      Introduce TestExpectationSerializer.list_to_string. · 4200b2db
      dglazkov@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=64462
      
      Reviewed by Adam Barth.
      
      * Scripts/webkitpy/layout_tests/models/test_expectations.py: Added list_to_string and change the relevant callsite to use it.
      * Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py: Added tests for it.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@90942 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4200b2db
    • dglazkov@chromium.org's avatar
      Consolidate expectations parsing code. · de0c7964
      dglazkov@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=64460
      
      Reviewed by Adam Barth.
      
      * Scripts/webkitpy/layout_tests/models/test_expectations.py: Folded TestExpectationParser._split_expectation_string into TestExpectationParser.parse.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@90941 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      de0c7964
    • bfulgham@webkit.org's avatar
      Standardize WinCairo conditionalized code under PLATFORM macro. · 5fcb8a1b
      bfulgham@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=64377
      
      Reviewed by Maciej Stachowiak.
      
      Source/JavaScriptCore: 
      
      * wtf/Platform.h: Update to use PLATFORM(WIN_CAIRO) for tests.
      
      Source/WebCore: 
      
      Update compile-time conditions that had previously used #ifdef
      of WIN_CAIRO to consistently use PLATFORM(WIN_CAIRO).
      
      * WebCore.vcproj/WebCoreCairo.vsprops: Remove redundant declaration
        of WIN_CAIRO.
      * WebCore.vcproj/WebCoreDebugCairoCFLite.vsprops: Update to use
        the existing WinCairo.vsprops file.
      * WebCorePrefix.h: Update for new WTF_PLATFORM_WIN_CAIRO define.
      * config.h: Update to use PLATFORM(WIN_CAIRO).
      
      Tools: 
      
      Update compile-time conditions that had previously used #ifdef
      of WIN_CAIRO to consistently use PLATFORM(WIN_CAIRO).
      
      * DumpRenderTree/config.h: Switch to PLATFORM(WIN_CAIRO)
      * DumpRenderTree/win/DumpRenderTreeCairo.vsprops: Remove redundant
        define of WIN_CAIRO=1.
      * DumpRenderTree/win/DumpRenderTreeDebugCairoCFLite.vsprops: Add
        WinCairo.vs...
      5fcb8a1b
    • levin@chromium.org's avatar
      Possible race condition in ThreadIdentifierData::initializeKeyOnce and shouldCallRealDebugger. · eeedb3da
      levin@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=64465
      
      Reviewed by Dmitry Titov.
      
      There isn't a good way to test this as it is very highly unlikely to occur.
      
      Source/JavaScriptCore:
      
      * wtf/ThreadIdentifierDataPthreads.cpp:
      (WTF::ThreadIdentifierData::initializeKeyOnce): Since scoped static initialization
      isn't thread-safe, change the initialization to be global.
      
      Source/WebKit2:
      
      * PluginProcess/mac/PluginProcessMac.mm:
      (WebKit::shouldCallRealDebugger): :Since scoped static initialization
      isn't thread-safe, change the initialization to be global.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@90939 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      eeedb3da
    • barraclough@apple.com's avatar
      https://bugs.webkit.org/show_bug.cgi?id=64424 · 4710a59a
      barraclough@apple.com authored
      Our direct eval behaviour deviates slightly from the spec.
      
      Reviewed by Oliver Hunt.
      
      Source/JavaScriptCore: 
      
      The ES5 spec defines a concept of 'Direct Call to Eval' (see section 15.1.2.1.1), where
      behaviour will differ from that of an indirect call (e.g. " { eval: window.eval }.eval();"
      or "var a = eval; a();" are indirect calls), particularly in non-strict scopes variables
      may be introduced into the caller's environment.
      
      ES5 direct calls are any call where the callee function is provided by a reference, a base
      of that Reference is an EnvironmentRecord (this corresponds to all productions
      "PrimaryExpression: Identifier", see 10.2.2.1 GetIdentifierReference), and where the name
      of the reference is "eval". This means any expression of the form "eval(...)", and that
      calls the standard built in eval method from on the Global Object, is considered to be
      direct.
      
      In JavaScriptCore we are currently overly restrictive. We also check that the
      EnvironmentRecord that is the base of the reference is the Declaractive Environment Record
      at the root of the scope chain, corresponding to the Global Object - an "eval(..)" statement
      that hits a var eval in a nested scope is not considered to be direct. This behaviour does
      not emanate from the spec, and is incorrect.
      
      * interpreter/Interpreter.cpp:
      (JSC::Interpreter::privateExecute):
          - Fixed direct eval check in op_call_eval.
      * jit/JITStubs.cpp:
      (JSC::DEFINE_STUB_FUNCTION):
          - Fixed direct eval check in op_call_eval.
      * runtime/Executable.h:
      (JSC::isHostFunction):
          - Added check for host function with specific NativeFunction.
      
      LayoutTests: 
      
      Correct expected results.
      
      * fast/js/eval-keyword-vs-function-expected.txt:
      * fast/js/eval-keyword-vs-function.html:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@90938 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4710a59a
    • commit-queue@webkit.org's avatar
      [CSS Exclusions] Fix for comment #23 on wrap-shape parsing bug 61726 · 68340cff
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=64464
      
      Patch by Alexandru Chiculita <achicu@adobe.com> on 2011-07-13
      Reviewed by Tony Chang.
      
      No new tests needed.
      
      * css/CSSParser.cpp:
      (WebCore::CSSParser::parseWrapShapeRect): Removed the "valid" local.
      (WebCore::CSSParser::parseWrapShapeCircle): Removed the "valid" local.
      (WebCore::CSSParser::parseWrapShapeEllipse): Removed the "valid" local.
      * css/CSSPrimitiveValue.cpp:
      * css/CSSWrapShapes.h:
      (WebCore::CSSWrapShapePolygon::getXAt): Replaced bit shift with multiplication.
      (WebCore::CSSWrapShapePolygon::getYAt): Replaced bit shift with multiplication.
      * rendering/style/RenderStyle.cpp:
      * rendering/style/StyleRareNonInheritedData.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@90937 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      68340cff