WebKit-https.git
11 years agoFix the incorrect bug link in WebCore/ChangeLog for r44366.
jianli@chromium.org [Tue, 2 Jun 2009 22:08:19 +0000 (22:08 +0000)]
Fix the incorrect bug link in WebCore/ChangeLog for r44366.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44373 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago Land correct results for a test I just added (forgot to regenerate them after...
ap@webkit.org [Tue, 2 Jun 2009 21:46:06 +0000 (21:46 +0000)]
    Land correct results for a test I just added (forgot to regenerate them after adding new
        test cases).

        * fast/xpath/py-dom-xpath/expressions-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44372 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years agoRevert r44276.
pkasting@chromium.org [Tue, 2 Jun 2009 21:43:21 +0000 (21:43 +0000)]
Revert r44276.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44371 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years agoMoved CSSMatrix tests into LayoutTests/transforms so both 2D and 3D versions get...
cmarrin@apple.com [Tue, 2 Jun 2009 21:42:40 +0000 (21:42 +0000)]
Moved CSSMatrix tests into LayoutTests/transforms so both 2D and 3D versions get tested in all cases, as per discussion with Maciej

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44370 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-06-02 Julien Chaffraix <jchaffraix@webkit.org>
eric@webkit.org [Tue, 2 Jun 2009 21:33:40 +0000 (21:33 +0000)]
2009-06-02  Julien Chaffraix  <jchaffraix@webkit.org>

        Reviewed by Eric Seidel.

        Bug 17167: Failures in fast/dom/Node/initial-values.html

        This partly solve a compatibility issue with other browsers. It will also
        make us more consistent while handling XHTML element.

        The issue is that when we create an XHTML element inside an HTML document
        (as it is the case when calling createElementNS), we default to the HTML
        behaviour in nodeName. As we cannot test if an HTMLElement is an XHTML
        element, our fix is to check whether it has a prefix and then default
        to XML behaviour for nodeName.

        * html/HTMLElement.cpp:
        (WebCore::HTMLElement::nodeName): Add a prefix check before
        returning the uppercase tagName (HTML behaviour).

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44369 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-06-02 Eric Seidel <eric@webkit.org>
eric@webkit.org [Tue, 2 Jun 2009 21:31:13 +0000 (21:31 +0000)]
2009-06-02  Eric Seidel  <eric@webkit.org>

        Reviewed by Maciej Stachowiak.

        Add a compareBoundaryPoints which takes RangeBoundaryPoints
        https://bugs.webkit.org/show_bug.cgi?id=25500

        I noticed the need for this function when removing compareBoundaryPoints(Position, Position)
        This patch is almost entirely minus lines.

        No functional changes, thus no tests.

        * dom/Range.cpp:
        (WebCore::Range::setStart):
        (WebCore::Range::setEnd):
        (WebCore::Range::compareBoundaryPoints):
        (WebCore::Range::boundaryPointsValid):
        * dom/Range.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44368 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-06-02 Eric Seidel <eric@webkit.org>
eric@webkit.org [Tue, 2 Jun 2009 21:31:08 +0000 (21:31 +0000)]
2009-06-02  Eric Seidel  <eric@webkit.org>

        Reviewed by Maciej Stachowiak.

        Remove Range::compareBoundaryPoints(Position, Position) per Darin's suggestion in bug 25056
        https://bugs.webkit.org/show_bug.cgi?id=25500

        Darin indicated the Range should deal only with primitive DOM node/offset
        pairs, and that Position (which is a more robust editing construct) should have
        its own comparison functions and that Range.h should not mention Position at all.

        Turns out that Position already has a comparePositions() function (which knows
        how to additionally handled positions in shadow trees).  So I've just changed
        all callers of compareBoundaryPoints(Position, Position) to use the existing
        comparePositions() function.  I've also added a comparePositions which takes
        VisiblePositions for convenience.

        * dom/Range.cpp:
        * dom/Range.h:
        * editing/ApplyStyleCommand.cpp:
        (WebCore::ApplyStyleCommand::updateStartEnd):
        (WebCore::ApplyStyleCommand::applyBlockStyle):
        (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
        (WebCore::ApplyStyleCommand::applyInlineStyle):
        (WebCore::ApplyStyleCommand::applyInlineStyleToRange):
        (WebCore::ApplyStyleCommand::removeInlineStyle):
        (WebCore::ApplyStyleCommand::nodeFullySelected):
        (WebCore::ApplyStyleCommand::nodeFullyUnselected):
        * editing/CompositeEditCommand.cpp:
        (WebCore::CompositeEditCommand::deleteInsignificantText):
        (WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary):
        (WebCore::CompositeEditCommand::moveParagraphs):
        * editing/DeleteSelectionCommand.cpp:
        (WebCore::DeleteSelectionCommand::initializeStartEnd):
        (WebCore::DeleteSelectionCommand::handleGeneralDelete):
        (WebCore::DeleteSelectionCommand::mergeParagraphs):
        * editing/SelectionController.cpp:
        (WebCore::SelectionController::nodeWillBeRemoved):
        * editing/VisibleSelection.cpp:
        (WebCore::VisibleSelection::toNormalizedRange):
        * editing/htmlediting.cpp:
        (WebCore::comparePositions):
        * editing/htmlediting.h:
        * page/EventHandler.cpp:
        (WebCore::EventHandler::handleMousePressEventSingleClick):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44367 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-06-02 Albert J. Wong <ajwong@chromium.org>
jianli@chromium.org [Tue, 2 Jun 2009 21:09:14 +0000 (21:09 +0000)]
2009-06-02  Albert J. Wong  <ajwong@chromium.org>

        Reviewed by Dimitri Glazkov.

        https://bugs.webkit.org/show_bug.cgi?id=25595
        Upstream v8_utility.h functions into V8Utilities.h.  This patch has
        some transitional code to make upstreaming easier.  This code will
        be deleted in a few days.

        * bindings/v8/ScriptFunctionCall.cpp:
        (WebCore::ScriptFunctionCall::construct): NewInstance -> newInstance.
        * bindings/v8/V8Utilities.h:
        (WebCore::AllowAllocation::AllowAllocation): Function added.
        (WebCore::AllowAllocation::~AllowAllocation): Function added.
        (WebCore::SafeAllocation::NewInstance): Function added.
        * bindings/v8/WorkerContextExecutionProxy.cpp:
        (WebCore::WorkerContextExecutionProxy::initContextIfNeeded):
        NewInstance -> newInstance.
        (WebCore::WorkerContextExecutionProxy::toV8): NewInstance ->
        newInstance.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44366 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-06-02 Anders Carlsson <andersca@apple.com>
andersca@apple.com [Tue, 2 Jun 2009 20:59:30 +0000 (20:59 +0000)]
2009-06-02  Anders Carlsson  <andersca@apple.com>

        Rubber-stamped by Mark Rowe.

        Update WebKitSystemInterface.

        * libWebKitSystemInterfaceLeopard.a:
        * libWebKitSystemInterfaceSnowLeopard.a:
        * libWebKitSystemInterfaceTiger.a:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44365 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago Reviewed by John Sullivan.
mitz@apple.com [Tue, 2 Jun 2009 20:25:37 +0000 (20:25 +0000)]
    Reviewed by John Sullivan.

        - fix <rdar://problem/6940747> Search field’s focus ring is outset

        * rendering/RenderThemeWin.cpp:
        (WebCore::RenderThemeWin::adjustSearchFieldStyle): Set the focused
        search field outline offset to -2.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44364 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-06-02 Brent Fulgham <bfulgham@webkit.org>
bfulgham@webkit.org [Tue, 2 Jun 2009 19:01:34 +0000 (19:01 +0000)]
2009-06-02  Brent Fulgham  <bfulgham@webkit.org>

        Reviewed by Adam Roben.

        Update WinLauncher for WebKitCreateInstance.
        https://bugs.webkit.org/show_bug.cgi?id=26136

        * WinLauncher/WinLauncher.cpp: Revise implementation to
          use WebKitCreateInstance (rather than CoCreateInstance).
        * WinLauncher/WinLauncher.h: Modify include path for
          WebKit.h to match DumpRenderTree style.
        * WinLauncher/WinLauncher.vcproj: Remove unnecessary
          WebKit.tlb and EmbeddedIDL flags from build.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44363 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-06-02 Sam Weinig <sam@webkit.org>
weinig@apple.com [Tue, 2 Jun 2009 18:10:52 +0000 (18:10 +0000)]
2009-06-02  Sam Weinig  <sam@webkit.org>

        Reviewed by Alexey Proskuryakov.

        Add list of unimplemented event handlers to DOMWindow.

        * page/DOMWindow.idl:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44362 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago Reviewed by Sam Weinig.
ap@webkit.org [Tue, 2 Jun 2009 17:59:09 +0000 (17:59 +0000)]
    Reviewed by Sam Weinig.

        https://bugs.webkit.org/show_bug.cgi?id=26133
        Adapt and import py-dom-xpath tests

        Tests: fast/xpath/py-dom-xpath/abbreviations.html
               fast/xpath/py-dom-xpath/axes.html
               fast/xpath/py-dom-xpath/data.html
               fast/xpath/py-dom-xpath/expressions.html
               fast/xpath/py-dom-xpath/functions.html
               fast/xpath/py-dom-xpath/nodetests.html
               fast/xpath/py-dom-xpath/paths.html
               fast/xpath/py-dom-xpath/predicates.html

        Fix bugs found with this test suite:
        - name and local-name were incorrect for processing instructions (XPath expanded-name
        doesn't match DOM exactly);
        - name, local-name and namespace functions should crash on attribute nodes;
        - attemps to make node sets from other types were not detected as errors.

        No performance impact.

        * xml/XPathExpressionNode.h: Track type conversion errors that happen during evaluation.
        An error won't stop evaluation, but an exception will be raised afterwards. We could also
        detect conversion errors at compile time, but not if we're going to support XPath variables
        (which is unnecessary for XPathEvaluator, but will be necessary if we decide to make our own
        XSLT one day).

        * xml/XPathExpression.cpp: (WebCore::XPathExpression::evaluate): Check whether a type
        conversion exception occurred during evaluation, and raise an excpetion if it did.

        * xml/XPathFunctions.cpp:
        (WebCore::XPath::expandedNameLocalPart):
        (WebCore::XPath::expandedName):
        XPath name(), local-name() and namespace-uri() functions are defined in terms of expanded-name,
        which doesn't match anything available via DOM exactly. Calculate the expanded name properly.
        (WebCore::XPath::FunNamespaceURI::evaluate): This function could crash if used with an
        attribute node, because it released what was possibly the only reference to attribute node
        before using it. Changed the function to avoid such situation.
        (WebCore::XPath::FunLocalName::evaluate): Ditto. Also, used the new expandedNameLocalPart()
        to work properly with processing instruction nodes.
        (WebCore::XPath::FunName::evaluate): Ditto (using expandedName()).
        (WebCore::XPath::FunCount::evaluate): Signal an error if the argument is not a node-set
        (by using toNodeSet unconditionally, which will raise an error, and return an empty set).

        * xml/XPathPath.cpp: (WebCore::XPath::Filter::evaluate): Signal an error if the expression
        evaluation result is not a node-set.

        * xml/XPathPath.h: (WebCore::XPath::Filter::resultType): A Filter's result is actually
        always a node-set (this is not so for FilterExpr production in the spec, but is for us,
        because we don't naively map BNF productions to classes).

        * xml/XPathPredicate.cpp: (WebCore::XPath::Union::evaluate): Signal an error if either side
        is not a node-set.

        * xml/XPathStep.cpp: Removed an unnecesary include.

        * xml/XPathValue.cpp:
        (WebCore::XPath::Value::toNodeSet): Signal an error if conversion fails.
        (WebCore::XPath::Value::modifiableNodeSet): Ditto.
        (WebCore::XPath::Value::toNumber): Don't allow inputs that don't match XPath Number production
        (in particular, those using exponential notation).

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44361 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years agoWebCore:
weinig@apple.com [Tue, 2 Jun 2009 17:33:59 +0000 (17:33 +0000)]
WebCore:

2009-06-01  Sam Weinig  <sam@webkit.org>

        Reviewed by Brady Eidson.

        Part of https://bugs.webkit.org/show_bug.cgi?id=26100
        Add missing event handler properties to the DOMWindow

        Added oncontextmenu, oninput, and onmessage event handlers to
        the DOMWindow. Aditionally, the onloadstart, onprogress, onstalled,
        and onsuspend event handlers were implemented but not added to
        DOMWindow.idl.

        * page/DOMWindow.cpp:
        (WebCore::DOMWindow::oninput):
        (WebCore::DOMWindow::setOninput):
        (WebCore::DOMWindow::onmessage):
        (WebCore::DOMWindow::setOnmessage):
        (WebCore::DOMWindow::oncontextmenu):
        (WebCore::DOMWindow::setOncontextmenu):
        * page/DOMWindow.h:
        * page/DOMWindow.idl:

LayoutTests:

2009-06-01  Sam Weinig  <sam@webkit.org>

        Reviewed by Brady Eidson.

        Part of https://bugs.webkit.org/show_bug.cgi?id=26100
        Add missing event handler properties to the DOMWindow

        Added oncontextmenu, oninput, and onmessage event handlers to
        the DOMWindow. Aditionally, the onloadstart, onprogress, onstalled,
        and onsuspend event handlers were implemented but not added to
        DOMWindow.idl.

        * fast/dom/Window/window-properties-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44360 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-06-02 Xan Lopez <xlopez@igalia.com>
xan@webkit.org [Tue, 2 Jun 2009 16:57:56 +0000 (16:57 +0000)]
2009-06-02  Xan Lopez  <xlopez@igalia.com>

        Reviewed by Sam Weinig.

        Use C-style comments in Platform.h so it can be included from C
        files.

        * wtf/Platform.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44359 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-06-02 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
vestbo@webkit.org [Tue, 2 Jun 2009 14:54:40 +0000 (14:54 +0000)]
2009-06-02  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>

        Rubber-stamped by Adam Roben.

        [Qt] Fix Perl warning about uninitialized value (passedConfiguration())

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44358 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-06-02 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
vestbo@webkit.org [Tue, 2 Jun 2009 13:54:49 +0000 (13:54 +0000)]
2009-06-02  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>

        Rubber-stamped by Simon Hausmann.

        Use File::Spec->tmpdir instead of hardcoded paths for tempfile() dir

        This fixes the Windows-build if the user does not have a /tmp directory.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44357 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-06-02 Gavin Barraclough <barraclough@apple.com>
barraclough@apple.com [Tue, 2 Jun 2009 09:34:28 +0000 (09:34 +0000)]
2009-06-02  Gavin Barraclough  <barraclough@apple.com>

        Reviewed by Oliver ">>" Hunt.

        emitSlow_op_rshift is linking the wrong number of slow cases, if !supportsFloatingPoint().
        Fixerate, and refactor/comment the code a little to make it clearer what is going on.

        * jit/JITArithmetic.cpp:
        (JSC::JIT::emit_op_rshift):
        (JSC::JIT::emitSlow_op_rshift):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44356 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years agoRevert 44354. Test does not pass.
abarth@webkit.org [Tue, 2 Jun 2009 09:17:00 +0000 (09:17 +0000)]
Revert 44354.  Test does not pass.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44355 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years agoWebCore:
abarth@webkit.org [Tue, 2 Jun 2009 08:37:41 +0000 (08:37 +0000)]
WebCore:

2009-06-02  Grace Kloba  <klobag@gmail.com>

        Reviewed by Darin Adler.  Landed by Adam Barth.

        https://bugs.webkit.org/show_bug.cgi?id=26016

        As HTMLKeygenElement is derived from HTMLSelectElement, HTMLOptionElement::ownerSelectElement() needs to check both selectTag and keygenTag.
        Test: fast/dom/HTMLKeygenElement/keygen-option-select.html

        * html/HTMLOptionElement.cpp:
        (WebCore::HTMLOptionElement::ownerSelectElement):

LayoutTests:

2009-06-02  Grace Kloba  <klobag@gmail.com>

        Reviewed by Darin Adler.  Landed by Adam Barth.

        https://bugs.webkit.org/show_bug.cgi?id=26016

        As HTMLKeygenElement is derived from HTMLSelectElement, HTMLOptionElement::ownerSelectElement() needs to check both selectTag and keygenTag. Added layout test to make sure set selected on option will affect keygen element.

        * fast/dom/HTMLKeygenElement: Added.
        * fast/dom/HTMLKeygenElement/keygen-option-select-expected.txt: Added.
        * fast/dom/HTMLKeygenElement/keygen-option-select.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44354 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years agoAdd link to bug.
abarth@webkit.org [Tue, 2 Jun 2009 08:32:21 +0000 (08:32 +0000)]
Add link to bug.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44353 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years agoRevert 44351.
abarth@webkit.org [Tue, 2 Jun 2009 08:30:08 +0000 (08:30 +0000)]
Revert 44351.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44352 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years agoWebCore:
abarth@webkit.org [Tue, 2 Jun 2009 07:56:39 +0000 (07:56 +0000)]
WebCore:

2009-06-01  Ben Murdoch  <benm@google.com>

        Reviewed by Darin Adler.  Landed by Adam Barth.

        https://bugs.webkit.org/show_bug.cgi?id=25710

        Fix a bug that causes database transactions to fail if a history navigation to a hash fragment of the same document is made while resources (e.g. an XHR) are loading.

        Test: storage/hash-change-with-xhr.html

        * loader/DocumentLoader.cpp:
        (WebCore::DocumentLoader::stopLoading):
        * loader/DocumentLoader.h:
        * loader/FrameLoader.cpp:
        (WebCore::FrameLoader::stopLoading):
        (WebCore::FrameLoader::stopAllLoaders):
        * loader/FrameLoader.h:
        * loader/FrameLoaderTypes.h:
        (WebCore::):
        * page/Page.cpp:
        (WebCore::Page::goToItem):

LayoutTests:

2009-06-02  Ben Murdoch  <benm@google.com>

        Reviewed by Darin Alder.  Landed by Adam Barth.

        https://bugs.webkit.org/show_bug.cgi?id=25710

        Fix a bug that causes database transactions to fail if a history navigation to a hash fragment of the same document is made while resources (e.g. an XHR) are loading.

        * storage/hash-change-with-xhr-expected.txt: Added.
        * storage/hash-change-with-xhr.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44351 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-06-02 Johnny Ding <johnnyding.webkit@gmail.com>
abarth@webkit.org [Tue, 2 Jun 2009 07:26:31 +0000 (07:26 +0000)]
2009-06-02  Johnny Ding  <johnnyding.webkit@gmail.com>

        Reviewed by Alexey Proskuryakov.  Landed by Adam Barth.

        https://bugs.webkit.org/show_bug.cgi?id=24747

        Add a test case for multiple requests for same sub-resource due to preload.

        * http/tests/loading/preload-img-test-expected.txt: Added.
        * http/tests/loading/preload-img-test.html: Added.
        * http/tests/loading/resources/preload-test.jpg: Added.
        * http/tests/resources/network-simulator.php:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44350 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-06-01 Yongjun Zhang <yongjun.zhang@nokia.com>>
abarth@webkit.org [Tue, 2 Jun 2009 07:00:11 +0000 (07:00 +0000)]
2009-06-01  Yongjun Zhang  <yongjun.zhang@nokia.com>>

        Reviewed by Holger Freyther.  Landed by Adam Barth.

        <https://bugs.webkit.org/show_bug.cgi?id=26070>

        [Qt] EventSender.keyDown doesn't support Arrow Up and Down keys.
        Add Down and Up key support.

        * DumpRenderTree/qt/jsobjects.cpp:
        (EventSender::keyDown):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44349 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-06-01 Jeremy Orlow <jorlow@chromium.org>
abarth@webkit.org [Tue, 2 Jun 2009 06:40:39 +0000 (06:40 +0000)]
2009-06-01  Jeremy Orlow  <jorlow@chromium.org>

        Reviewed by Darin Adler.  Landed by Adam Barth.

        Remove a redundant checkEncodedString call when constructing a
        KURL object from a string.

        * platform/KURL.cpp:
        (WebCore::KURL::KURL):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44348 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-06-01 Gavin Barraclough <barraclough@apple.com>
barraclough@apple.com [Tue, 2 Jun 2009 05:59:53 +0000 (05:59 +0000)]
2009-06-01  Gavin Barraclough  <barraclough@apple.com>

        Reviewed by NOBODY - speculative windows build fix (errm, for the other patch!).

        * jit/JITStubs.cpp:
        (JSC::):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44347 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-06-01 Gavin Barraclough <barraclough@apple.com>
barraclough@apple.com [Tue, 2 Jun 2009 05:54:32 +0000 (05:54 +0000)]
2009-06-01  Gavin Barraclough  <barraclough@apple.com>

        Reviewed by NOBODY - speculative windows build fix.

        * assembler/AbstractMacroAssembler.h:
        (JSC::::CodeLocationCall::CodeLocationCall):
        (JSC::::CodeLocationNearCall::CodeLocationNearCall):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44346 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-06-01 Gavin Barraclough <barraclough@apple.com>
barraclough@apple.com [Tue, 2 Jun 2009 05:36:18 +0000 (05:36 +0000)]
2009-06-01  Gavin Barraclough  <barraclough@apple.com>

        Reviewed by Olliej Hunt.

        Change JITStub functions from being static members on the JITStub class to be
        global extern "C" functions, and switch their the function signature declaration
        in the definition of the functions to be C-macro generated.  This makes it easier
        to work with the stub functions from assembler code (since the names no longer
        require mangling), and by delaring the functions with a macro we can look at
        also auto-generating asm thunks to wrap the JITStub functions to perform the
        work currently in 'restoreArgumentReference' (as a memory saving).

        Making this change also forces us to be a bit more realistic about what is private
        on the Register and CallFrame objects.  Presently most everything on these classes
        is private, and the classes have plenty of friends.  We could befriend all the
        global functions to perpetuate the delusion of encapsulation, but using friends is
        a bit of a sledgehammer solution here - since friends can poke around with all of
        the class's privates, and since all the major classes taht operate on Regsiters are
        currently friends, right there is currently in practice very little protection at
        all.  Better to start removing friend delclarations, and exposing just the parts
        that need to be exposed.

        * interpreter/CallFrame.h:
        (JSC::ExecState::returnPC):
        (JSC::ExecState::setCallerFrame):
        (JSC::ExecState::returnValueRegister):
        (JSC::ExecState::setArgumentCount):
        (JSC::ExecState::setCallee):
        (JSC::ExecState::setCodeBlock):
        * interpreter/Interpreter.h:
        * interpreter/Register.h:
        (JSC::Register::Register):
        (JSC::Register::i):
        * jit/JITStubs.cpp:
        (JSC::):
        (JSC::JITThunks::JITThunks):
        (JSC::JITThunks::tryCachePutByID):
        (JSC::JITThunks::tryCacheGetByID):
        (JSC::JITStubs::DEFINE_STUB_FUNCTION):
        * jit/JITStubs.h:
        (JSC::JITStubs::):
        * runtime/JSFunction.h:
        (JSC::JSFunction::nativeFunction):
        (JSC::JSFunction::classInfo):
        * runtime/JSGlobalData.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44344 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years agoTidy up the literal parser.
oliver@apple.com [Tue, 2 Jun 2009 04:40:16 +0000 (04:40 +0000)]
Tidy up the literal parser.

Reviewed by Gavin Barraclogh.

Make the number lexing in the LiteralParser exactly match the JSON spec, which
makes us cover more cases, but also more strict.  Also made string lexing only
allow double-quoted strings.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44343 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-06-01 Dimitri Glazkov <dglazkov@chromium.org>
dglazkov@chromium.org [Tue, 2 Jun 2009 03:03:56 +0000 (03:03 +0000)]
2009-06-01  Dimitri Glazkov  <dglazkov@chromium.org>

        Unreviewed, build fix.

        Reposition platform guard, improperly placed by http://trac.webkit.org/changeset/44340
        Bad Dimitri.

        * platform/KeyboardCodes.h: Repositioned the guard to avoid nested
            WebCore namespace declarations.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44342 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-06-01 Gavin Barraclough <barraclough@apple.com>
barraclough@apple.com [Tue, 2 Jun 2009 01:20:35 +0000 (01:20 +0000)]
2009-06-01  Gavin Barraclough  <barraclough@apple.com>

        Reviewed by Sam "WX" Weinig.

        Allow the JIT to operate without relying on use of RWX memory, on platforms where this is supported.

        This patch adds a switch to Platform.h (ENABLE_ASSEMBLER_WX_EXCLUSIVE) which enables this mode of operation.
        When this flag is set, all executable memory will be allocated RX, and switched to RW only whilst being
        modified.  Upon completion of code generation the protection is switched back to RX to allow execution.

        Further optimization will be required before it is desirable to enable this mode of operation by default;
        enabling this presently incurs a 5%-10% regression.

        (Submitting disabled - no performance impact).

        * assembler/AbstractMacroAssembler.h:
        (JSC::AbstractMacroAssembler::CodeLocationInstruction::repatchLoadToLEA):
        (JSC::AbstractMacroAssembler::CodeLocationLabel::fromFunctionPointer):
        (JSC::AbstractMacroAssembler::CodeLocationJump::relink):
        (JSC::AbstractMacroAssembler::CodeLocationCall::relink):
        (JSC::AbstractMacroAssembler::CodeLocationNearCall::relink):
        (JSC::AbstractMacroAssembler::CodeLocationDataLabel32::repatch):
        (JSC::AbstractMacroAssembler::CodeLocationDataLabelPtr::repatch):
        (JSC::AbstractMacroAssembler::ProcessorReturnAddress::relinkCallerToTrampoline):
        (JSC::AbstractMacroAssembler::ProcessorReturnAddress::relinkCallerToFunction):
        (JSC::AbstractMacroAssembler::ProcessorReturnAddress::relinkNearCallerToTrampoline):
        (JSC::AbstractMacroAssembler::ProcessorReturnAddress::relinkNearCallerToFunction):
        (JSC::AbstractMacroAssembler::PatchBuffer::PatchBuffer):
        (JSC::AbstractMacroAssembler::PatchBuffer::~PatchBuffer):
        (JSC::AbstractMacroAssembler::PatchBuffer::link):
        (JSC::AbstractMacroAssembler::PatchBuffer::patch):
        (JSC::AbstractMacroAssembler::PatchBuffer::performFinalization):
        (JSC::::CodeLocationCommon::nearCallAtOffset):
        (JSC::::CodeLocationCall::CodeLocationCall):
        (JSC::::CodeLocationNearCall::CodeLocationNearCall):
        * assembler/AssemblerBuffer.h:
        (JSC::AssemblerBuffer::executableCopy):
        * assembler/X86Assembler.h:
        (JSC::CAN_SIGN_EXTEND_U32_64):
        (JSC::X86Assembler::linkJump):
        (JSC::X86Assembler::linkCall):
        (JSC::X86Assembler::patchPointer):
        (JSC::X86Assembler::relinkJump):
        (JSC::X86Assembler::relinkCall):
        (JSC::X86Assembler::repatchInt32):
        (JSC::X86Assembler::repatchPointer):
        (JSC::X86Assembler::repatchLoadToLEA):
        (JSC::X86Assembler::patchInt32):
        (JSC::X86Assembler::patchRel32):
        * jit/ExecutableAllocator.h:
        (JSC::ExecutableAllocator::):
        (JSC::ExecutableAllocator::makeWritable):
        (JSC::ExecutableAllocator::makeExecutable):
        * jit/ExecutableAllocatorFixedVMPool.cpp:
        (JSC::FixedVMPoolAllocator::FixedVMPoolAllocator):
        * jit/ExecutableAllocatorPosix.cpp:
        (JSC::ExecutablePool::systemAlloc):
        (JSC::ExecutablePool::systemRelease):
        (JSC::ExecutableAllocator::reprotectRegion):
        * jit/ExecutableAllocatorWin.cpp:
        * jit/JITPropertyAccess.cpp:
        (JSC::JIT::patchGetByIdSelf):
        (JSC::JIT::patchPutByIdReplace):
        * wtf/Platform.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44341 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-06-01 Dimitri Glazkov <dglazkov@chromium.org>
dglazkov@chromium.org [Mon, 1 Jun 2009 23:48:03 +0000 (23:48 +0000)]
2009-06-01  Dimitri Glazkov  <dglazkov@chromium.org>

        Unreviewed, build fix.

        * platform/KeyboardCodes.h: Integrated contents of platform/chromium/KeyboardCodes.h
            with a stern FIXME.
        * platform/chromium/KeyboardCodes.h: Removed.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44340 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years agosvn-create-patch displays confusing "Broken pipe" errors from Subversion
mrowe@apple.com [Mon, 1 Jun 2009 23:38:30 +0000 (23:38 +0000)]
svn-create-patch displays confusing "Broken pipe" errors from Subversion
when files have been renamed in local working copy.  This was happening
because we invoke 'svn info' to determine the URL that the file was copied
from, but we were closing the pipe to the subprocess before SVN had finished
writing its output.

Reviewed by Sam Weinig.

* Scripts/prepare-ChangeLog: Consume all 'svn info' output before closing the file handle.
* Scripts/svn-create-patch: Ditto.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44339 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years agoReviewed by Eric Seidel.
zimmermann@webkit.org [Mon, 1 Jun 2009 23:09:43 +0000 (23:09 +0000)]
Reviewed by Eric Seidel.

Fix assertion error in --filters enabled debug builds.
Instead of using RefPtr<AtomicStringImpl> as keys for the hash maps in SVGFilterBuilder, just use AtomicString objects.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44338 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years agoReviewed by Eric Seidel.
zimmermann@webkit.org [Mon, 1 Jun 2009 22:20:30 +0000 (22:20 +0000)]
Reviewed by Eric Seidel.

Fix --filters enabled build on Mac.
Remove unnecessary 'boundingBox' parameter from finishRenderSVGContent() method.
Kill several warnings, to make build pass.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44337 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-05-29 Zoltan Horvath <hzoltan@inf.u-szeged.hu>
bfulgham@webkit.org [Mon, 1 Jun 2009 22:19:41 +0000 (22:19 +0000)]
2009-05-29 Zoltan Horvath  <hzoltan@inf.u-szeged.hu>

        Reviewed by Darin Adler.

        Inherits Interpreter class from FastAllocBase because it has been
        instantiated by 'new' in JavaScriptCore/runtime/JSGlobalData.cpp.

        * interpreter/Interpreter.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44336 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years agoChangeLog spelling, meaning fixes.
dglazkov@chromium.org [Mon, 1 Jun 2009 21:52:26 +0000 (21:52 +0000)]
ChangeLog spelling, meaning fixes.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44335 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-06-01 Dimitri Glazkov <dglazkov@chromium.org>
dglazkov@chromium.org [Mon, 1 Jun 2009 21:50:46 +0000 (21:50 +0000)]
2009-06-01  Dimitri Glazkov  <dglazkov@chromium.org>

        Reviewed by Dave Hyatt.

        Fix Chromium build by adding an #ifdef.

        * platform/mac/ScrollbarThemeMac.mm:
        (WebCore::ScrollbarThemeMac::paint): Added an #ifdef.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44334 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-06-01 Benjamin C Meyer <benjamin.meyer@torchmobile.com>
kov@webkit.org [Mon, 1 Jun 2009 21:37:47 +0000 (21:37 +0000)]
2009-06-01  Benjamin C Meyer  <benjamin.meyer@torchmobile.com>

        Rubber-stamped by Gustavo Noronha.

        Before guessing the url trim the string to remove whitespace added to the start/end by the user.

        * Api/qwebview.cpp:
        (QWebView::guessUrlFromString):
        * tests/qwebview/tst_qwebview.cpp:
        (tst_QWebView::guessUrlFromString_data):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44333 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-06-01 Dirk Schulze <krit@webkit.org>
krit@webkit.org [Mon, 1 Jun 2009 21:28:40 +0000 (21:28 +0000)]
2009-06-01  Dirk Schulze  <krit@webkit.org>

        Reviewed by Nikolas Zimmermann.

        Remove last pieces of the old SVG filte system. They are not
        usable with our current filter system. The new filter effects
        will replace the functionality step by step.

        * GNUmakefile.am:
        * WebCore.pro:
        * WebCore.vcproj/WebCore.vcproj:
        * WebCore.xcodeproj/project.pbxproj:
        * svg/graphics/cairo: Removed.
        * svg/graphics/cairo/SVGResourceFilterCairo.cpp: Removed.
        * svg/graphics/cg: Removed.
        * svg/graphics/cg/SVGResourceFilterCg.cpp: Removed.
        * svg/graphics/cg/SVGResourceFilterCg.mm: Removed.
        * svg/graphics/filters/SVGFilterEffect.cpp: Removed.
        * svg/graphics/filters/SVGFilterEffect.h: Removed.
        * svg/graphics/filters/cg: Removed.
        * svg/graphics/filters/cg/SVGFEHelpersCg.h: Removed.
        * svg/graphics/filters/cg/SVGFEHelpersCg.mm: Removed.
        * svg/graphics/filters/cg/SVGFilterEffectCg.mm: Removed.
        * svg/graphics/filters/cg/WKArithmeticFilter.cikernel: Removed.
        * svg/graphics/filters/cg/WKArithmeticFilter.h: Removed.
        * svg/graphics/filters/cg/WKArithmeticFilter.m: Removed.
        * svg/graphics/filters/cg/WKComponentMergeFilter.cikernel: Removed.
        * svg/graphics/filters/cg/WKComponentMergeFilter.h: Removed.
        * svg/graphics/filters/cg/WKComponentMergeFilter.m: Removed.
        * svg/graphics/filters/cg/WKDiffuseLightingFilter.cikernel: Removed.
        * svg/graphics/filters/cg/WKDiffuseLightingFilter.h: Removed.
        * svg/graphics/filters/cg/WKDiffuseLightingFilter.m: Removed.
        * svg/graphics/filters/cg/WKDiscreteTransferFilter.cikernel: Removed.
        * svg/graphics/filters/cg/WKDiscreteTransferFilter.h: Removed.
        * svg/graphics/filters/cg/WKDiscreteTransferFilter.m: Removed.
        * svg/graphics/filters/cg/WKDisplacementMapFilter.cikernel: Removed.
        * svg/graphics/filters/cg/WKDisplacementMapFilter.h: Removed.
        * svg/graphics/filters/cg/WKDisplacementMapFilter.m: Removed.
        * svg/graphics/filters/cg/WKDistantLightFilter.cikernel: Removed.
        * svg/graphics/filters/cg/WKDistantLightFilter.h: Removed.
        * svg/graphics/filters/cg/WKDistantLightFilter.m: Removed.
        * svg/graphics/filters/cg/WKGammaTransferFilter.cikernel: Removed.
        * svg/graphics/filters/cg/WKGammaTransferFilter.h: Removed.
        * svg/graphics/filters/cg/WKGammaTransferFilter.m: Removed.
        * svg/graphics/filters/cg/WKIdentityTransferFilter.h: Removed.
        * svg/graphics/filters/cg/WKIdentityTransferFilter.m: Removed.
        * svg/graphics/filters/cg/WKLinearTransferFilter.cikernel: Removed.
        * svg/graphics/filters/cg/WKLinearTransferFilter.h: Removed.
        * svg/graphics/filters/cg/WKLinearTransferFilter.m: Removed.
        * svg/graphics/filters/cg/WKNormalMapFilter.cikernel: Removed.
        * svg/graphics/filters/cg/WKNormalMapFilter.h: Removed.
        * svg/graphics/filters/cg/WKNormalMapFilter.m: Removed.
        * svg/graphics/filters/cg/WKPointLightFilter.cikernel: Removed.
        * svg/graphics/filters/cg/WKPointLightFilter.h: Removed.
        * svg/graphics/filters/cg/WKPointLightFilter.m: Removed.
        * svg/graphics/filters/cg/WKSpecularLightingFilter.cikernel: Removed.
        * svg/graphics/filters/cg/WKSpecularLightingFilter.h: Removed.
        * svg/graphics/filters/cg/WKSpecularLightingFilter.m: Removed.
        * svg/graphics/filters/cg/WKSpotLightFilter.cikernel: Removed.
        * svg/graphics/filters/cg/WKSpotLightFilter.h: Removed.
        * svg/graphics/filters/cg/WKSpotLightFilter.m: Removed.
        * svg/graphics/filters/cg/WKTableTransferFilter.cikernel: Removed.
        * svg/graphics/filters/cg/WKTableTransferFilter.h: Removed.
        * svg/graphics/filters/cg/WKTableTransferFilter.m: Removed.
        * svg/graphics/mac: Removed.
        * svg/graphics/mac/SVGResourceFilterPlatformDataMac.h: Removed.
        * svg/graphics/mac/SVGResourceFilterPlatformDataMac.mm: Removed.
        * svg/graphics/qt: Removed.
        * svg/graphics/qt/SVGResourceFilterQt.cpp: Removed.
        * svg/graphics/skia: Removed.
        * svg/graphics/skia/SVGResourceFilterSkia.cpp: Removed.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44332 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-06-01 Benjamin C Meyer <benjamin.meyer@torchmobile.com>
kov@webkit.org [Mon, 1 Jun 2009 21:05:06 +0000 (21:05 +0000)]
2009-06-01  Benjamin C Meyer  <benjamin.meyer@torchmobile.com>

        Rubber-stamped by Gustavo Noronha.

        Use QLatin1Char() to compile when QT_NO_CAST_FROM_ASCII and QT_NO_CAST_TO_ASCII is defined

        * Api/qwebview.cpp:
        (QWebView::guessUrlFromString):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44331 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-06-01 Benjamin C Meyer <benjamin.meyer@torchmobile.com>
kov@webkit.org [Mon, 1 Jun 2009 20:06:39 +0000 (20:06 +0000)]
2009-06-01  Benjamin C Meyer  <benjamin.meyer@torchmobile.com>

        Rubber-stamped by Gustavo Noronha.

        Cleanup autotest file
        - use proper includes
        - remove useless constructor and destructor
        - add missing newline at the end of the file

        * tests/qwebview/tst_qwebview.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44330 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-06-01 Benjamin C Meyer <benjamin.meyer@torchmobile.com>
kov@webkit.org [Mon, 1 Jun 2009 20:01:21 +0000 (20:01 +0000)]
2009-06-01  Benjamin C Meyer  <benjamin.meyer@torchmobile.com>

        Rubber-stamped by Gustavo Noronha.

        Add a missing space between two words in the documentation.

        * Api/qwebview.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44329 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-06-01 Dmitry Titov <dimich@chromium.org>
dimich@chromium.org [Mon, 1 Jun 2009 19:56:33 +0000 (19:56 +0000)]
2009-06-01  Dmitry Titov  <dimich@chromium.org>

        Fix the previous checkin (ttp://trac.webkit.org/changeset/44327).
        This adds a comment suggested during review.

        * platform/ThreadGlobalData.cpp:
        (WebCore::ThreadGlobalData::~ThreadGlobalData): Add comment clarifying the change.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44328 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-06-01 Dmitry Titov <dimich@chromium.org>
dimich@chromium.org [Mon, 1 Jun 2009 19:44:20 +0000 (19:44 +0000)]
2009-06-01  Dmitry Titov  <dimich@chromium.org>

        Reviewed by Darin Adler.

        https://bugs.webkit.org/show_bug.cgi?id=25973
        Avoid calling CurrentThread() in thread-specific destructors in OSX Chromium.
        Pthreads invoke thread-specific destructors after WTF::detachThread() is called and ThreadIdentifier
        for the thread removed from the WTF thread map. Calling CurrentThread() in such destructor causes
        the ThreadIdentifier to be re-created and inserted into the map again. Since Pthreads on OSX reuse
        the pthread_t between threads, the next created thread will have the same pthread_t and cause an assert
        in establishIdentifierForPthreadHandle() since the id is already in the map.

        The behavior is covered by existing test LayoutTests/fast/workers/worker-terminate.html, which currently fails
        on OSX Chromium and will stop failing after this change.

        * platform/ThreadGlobalData.h:
        * platform/ThreadGlobalData.cpp:
        (WebCore::ThreadGlobalData::~ThreadGlobalData):
        Store the result of "isMainThread()" in a member variable during construction of thread-specific data
        to avoid calling IsMainThread() in destructor, since the latter calls CurrentThread() in OSX Chromium.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44327 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-06-01 David Levin <levin@chromium.org>
levin@chromium.org [Mon, 1 Jun 2009 19:18:12 +0000 (19:18 +0000)]
2009-06-01  David Levin  <levin@chromium.org>

        Reviewed by NOBODY (windows build fix).

        Add exports for windows (corresponding to the JavaScriptCore.exp modification
        in the previous change).

        * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
        * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore_debug.def:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44326 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years agoJavaScriptCore:
levin@chromium.org [Mon, 1 Jun 2009 18:41:20 +0000 (18:41 +0000)]
JavaScriptCore:

2009-06-01  David Levin  <levin@chromium.org>

        Reviewed by Darin Alder and Maciej Stachowiak.

        Bug 26057: StringImpl should share buffers with UString.
        https://bugs.webkit.org/show_bug.cgi?id=26057

        * JavaScriptCore.exp:
        * runtime/UString.cpp:
        (JSC::UString::Rep::create):
        (JSC::UString::BaseString::sharedBuffer): Only do the sharing when
        the buffer exceeds a certain size.  The size was tuned by running
        various dom benchmarks with numbers ranging from 20 to 800 and finding
        a place that seemed to do the best overall.
        * runtime/UString.h:

WebCore:

2009-06-01  David Levin  <levin@chromium.org>

        Reviewed by Darin Alder and Maciej Stachowiak.

        Bug 26057: StringImpl should share buffers with UString.
        https://bugs.webkit.org/show_bug.cgi?id=26057

        This change results in the following performance improvements:
        On http://www.hixie.ch/tests/adhoc/perf/dom/artificial/core/001.html
        the time went from 78ms to 40ms for append (other times remained constant).

        On http://www.hixie.ch/tests/adhoc/perf/dom/artificial/core/002.html,
        the time went from 3900ms to 2600ms.

        For http://dromaeo.com/?dom, the time for DomModification improved by ~6%.
        Other tests in dom seemed to be faster across several runs but within the
        margin of error (except DOM Attributes which was slightly ~1.5% worse).

        Existing tests cover this code and there is no new functionality
        that is exposed to test.

        * platform/text/AtomicString.cpp:
        (WebCore::AtomicString::add):
        * platform/text/String.cpp:
        (WebCore::String::String):
        (WebCore::String::operator UString):
        * platform/text/StringImpl.cpp:
        (WebCore::StringImpl::StringImpl):
        (WebCore::StringImpl::~StringImpl):
        (WebCore::StringImpl::create): Consumes a shared buffer.
        (WebCore::StringImpl::ustring): Shares the StringImpl's buffer with the UString.
        (WebCore::StringImpl::sharedBuffer): Exposes the buffer that may be shared.
        * platform/text/StringImpl.h:
        (WebCore::StringImpl::hasTerminatingNullCharacter):
        (WebCore::StringImpl::inTable):
        (WebCore::StringImpl::setInTable): Converted the bools to be inside of PtrAndFlags
        to avoid growing StringImpl in size.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44325 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-06-01 Brent Fulgham <bfulgham@webkit.org>
bfulgham@webkit.org [Mon, 1 Jun 2009 17:16:44 +0000 (17:16 +0000)]
2009-06-01  Brent Fulgham  <bfulgham@webkit.org>

        Build fix for Cairo Windows target.  Windows link definition
        files were out of sync with the Apple Windows link files.

        * WebKit.vcproj/WebKit_Cairo.def:
        * WebKit.vcproj/WebKit_Cairo_debug.def:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44324 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-06-01 Dimitri Glazkov <dglazkov@chromium.org>
dglazkov@chromium.org [Mon, 1 Jun 2009 16:53:01 +0000 (16:53 +0000)]
2009-06-01  Dimitri Glazkov  <dglazkov@chromium.org>

        Unreviewed, build fix.

        V8 bindings follow-up to to DOMWindow-related cleanup:
        http://trac.webkit.org/changeset/44215

        * bindings/v8/ScriptController.cpp: Removed disconnectFrame(), relocated
            its body to destructor.
        * bindings/v8/ScriptController.h: Removed disconnectFrame() decl.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44323 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-05-28 Pavel Feldman <pfeldman@chromium.org>
dglazkov@chromium.org [Mon, 1 Jun 2009 16:16:03 +0000 (16:16 +0000)]
2009-05-28  Pavel Feldman  <pfeldman@chromium.org>

        Reviewed by Timothy Hatcher.

        - Add panel enabler to the resources panel.
        - Add session / always options into the panel enabler.
        - Make enabled status for three panels sticky (globally).
        - Persist enabled status using InspectorController::Settings
        - Make InspectorController produce no network-related overhead when
          resources panel is not enabled.

        https://bugs.webkit.org/show_bug.cgi?id=26046

        * inspector/InspectorController.cpp:
        (WebCore::InspectorController::InspectorController):
        (WebCore::InspectorController::setWindowVisible):
        (WebCore::InspectorController::populateScriptObjects):
        (WebCore::InspectorController::identifierForInitialRequest):
        (WebCore::InspectorController::willSendRequest):
        (WebCore::InspectorController::didReceiveResponse):
        (WebCore::InspectorController::didReceiveContentLength):
        (WebCore::InspectorController::didFinishLoading):
        (WebCore::InspectorController::didFailLoading):
        (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest):
        (WebCore::InspectorController::scriptImported):
        (WebCore::InspectorController::enableResourceTracking):
        (WebCore::InspectorController::disableResourceTracking):
        (WebCore::InspectorController::startUserInitiatedProfiling):
        (WebCore::InspectorController::enableProfiler):
        (WebCore::InspectorController::disableProfiler):
        (WebCore::InspectorController::enableDebugger):
        (WebCore::InspectorController::disableDebugger):
        * inspector/InspectorController.h:
        (WebCore::InspectorController::Setting::Setting):
        (WebCore::InspectorController::resourceTrackingEnabled):
        * inspector/InspectorController.idl:
        * inspector/InspectorFrontend.cpp:
        (WebCore::InspectorFrontend::resourceTrackingWasEnabled):
        (WebCore::InspectorFrontend::resourceTrackingWasDisabled):
        * inspector/InspectorFrontend.h:
        * inspector/front-end/PanelEnablerView.js:
        (WebInspector.PanelEnablerView.enableOption):
        (WebInspector.PanelEnablerView):
        (WebInspector.PanelEnablerView.prototype._windowResized):
        (WebInspector.PanelEnablerView.prototype.alwaysWasChosen):
        * inspector/front-end/ProfilesPanel.js:
        (WebInspector.ProfilesPanel.prototype._enableProfiling):
        (WebInspector.ProfilesPanel.prototype._toggleProfiling):
        * inspector/front-end/ResourcesPanel.js:
        (WebInspector.ResourcesPanel):
        (WebInspector.ResourcesPanel.prototype.get statusBarItems):
        (WebInspector.ResourcesPanel.prototype.resourceTrackingWasEnabled):
        (WebInspector.ResourcesPanel.prototype.resourceTrackingWasDisabled):
        (WebInspector.ResourcesPanel.prototype.reset):
        (WebInspector.ResourcesPanel.prototype._updateSidebarWidth):
        (WebInspector.ResourcesPanel.prototype._enableResourceTracking):
        (WebInspector.ResourcesPanel.prototype._toggleResourceTracking):
        * inspector/front-end/ScriptsPanel.js:
        (WebInspector.ScriptsPanel.prototype._enableDebugging):
        (WebInspector.ScriptsPanel.prototype._toggleDebugging):
        * inspector/front-end/inspector.css:
        * inspector/front-end/inspector.js:
        (WebInspector.resourceTrackingWasEnabled):
        (WebInspector.resourceTrackingWasDisabled):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44322 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years agoRevert 44320. The test didn't pass on Windows.
abarth@webkit.org [Mon, 1 Jun 2009 10:14:32 +0000 (10:14 +0000)]
Revert 44320.  The test didn't pass on Windows.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44321 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-06-01 Jungshik Shin <jshin@chromium.org>
abarth@webkit.org [Mon, 1 Jun 2009 09:05:25 +0000 (09:05 +0000)]
2009-06-01  Jungshik Shin  <jshin@chromium.org>

        Reviewed by Maciej Stachowiak.  Landed by Adam Barth.

        Add an additional test for bug 23786 (mistreatment of CR/LF
        as zero-width characters in Chromium port).  Tests using Bidi text were
        added when the fix was checked in. Without the patch, Chromium used
        to fail the same way with LTR complex scripts as well. (that is,
        CR and LF were treated as zero-width space). To prevent a potential
        regression in the future, a new test with Hindi (a LTR complex script)
        is added.

        https://bugs.webkit.org/show_bug.cgi?id=25698

        * fast/text/international/hindi-whitespace.html: Added.
        * platform/mac/fast/text/international/hindi-whitespace-expected.checksum: Added.
        * platform/mac/fast/text/international/hindi-whitespace-expected.png: Added.
        * platform/mac/fast/text/international/hindi-whitespace-expected.txt: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44320 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years agoWebCore:
abarth@webkit.org [Mon, 1 Jun 2009 09:00:00 +0000 (09:00 +0000)]
WebCore:

2009-06-01  Drew Wilson  <atwilson@google.com>

        Reviewed by Darin Adler.  Landed (and tweaked) by Adam Barth.

        https://bugs.webkit.org/show_bug.cgi?id=25902

        Added WorkerContext.close()

        Test: fast/workers/worker-close.html

        * workers/WorkerContext.cpp:
        (WebCore::WorkerContext::close):
        * workers/WorkerContext.h:
        * workers/WorkerContext.idl:
        * workers/WorkerMessagingProxy.cpp:
        (WebCore::WorkerMessagingProxy::workerContextDestroyedInternal):

LayoutTests:

2009-06-01  Drew Wilson  <atwilson@google.com>

        Reviewed by Darin Adler.  Landed by Adam Barth.

        https://bugs.webkit.org/show_bug.cgi?id=25902

        Added WorkerContext.close()

        * fast/workers/worker-close-expected.txt: Added.
        * fast/workers/worker-close.html: Added.
        * fast/workers/resources/worker-close.js: Added.
        * http/tests/xmlhttprequest/workers/close.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44319 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years agoAdd missing expected result.
abarth@webkit.org [Mon, 1 Jun 2009 08:30:56 +0000 (08:30 +0000)]
Add missing expected result.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44318 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago Reviewed by Darin Adler.
ap@webkit.org [Mon, 1 Jun 2009 08:27:25 +0000 (08:27 +0000)]
    Reviewed by Darin Adler.

        https://bugs.webkit.org/show_bug.cgi?id=12471
        XPathResult not invalidated for documents retrieved via XMLHttpRequest

        Test: fast/xpath/detached-subtree-invalidate-iterator.html and existing tests in dom/svg/level3/xpath.

        Use DOM tree version instead of DOMSubtreeModified events to invalidate, which is more
        reliable and much faster.

        * xml/XPathExpression.cpp:
        (WebCore::XPathExpression::evaluate):
        * xml/XPathResult.cpp:
        (WebCore::XPathResult::XPathResult):
        (WebCore::XPathResult::~XPathResult):
        (WebCore::XPathResult::invalidIteratorState):
        (WebCore::XPathResult::iterateNext):
        * xml/XPathResult.h:
        (WebCore::XPathResult::create):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44317 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-06-01 Darin Adler <darin@apple.com>
darin@apple.com [Mon, 1 Jun 2009 08:18:11 +0000 (08:18 +0000)]
2009-06-01  Darin Adler  <darin@apple.com>

        * WebView/WebTextCompletionController.mm: Fix Tiger build by adding import
        of WebTypesInternal.h.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44316 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years agoWebCore:
abarth@webkit.org [Mon, 1 Jun 2009 08:11:41 +0000 (08:11 +0000)]
WebCore:

2009-06-01  Brett Wilson  <brettw@chromium.org>

        Reviewed by Darin Adler.  Landed by Adam Barth.

        https://bugs.webkit.org/show_bug.cgi?id=25750

        Test: fast/transforms/bounding-rect-zoom.html

        Make getClientRects and getBoundingClientRect account for ther zoom
        factor.

        * dom/Element.cpp:
        (WebCore::adjustFloatPointForAbsoluteZoom):
        (WebCore::adjustFloatQuadForAbsoluteZoom):
        (WebCore::adjustIntRectForAbsoluteZoom):
        (WebCore::Element::getClientRects):
        (WebCore::Element::getBoundingClientRect):

LayoutTests:

2009-06-01  Brett Wilson  <brettw@chromium.org>

        Reviewed by Darin Adler.  Landed by Adam Barth.

        https://bugs.webkit.org/show_bug.cgi?id=25750

        Test: fast/transforms/bounding-rect-zoom.html

        Make getClientRects and getBoundingClientRect account for ther zoom
        factor.

        * fast/transforms/bounding-rect-zoom.html: Added.
        * platform/mac/fast/transforms/bounding-rect-zoom-expected.txt: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44315 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years agoAdd bogus expected result to trick the bot into showing me the real expected results...
abarth@webkit.org [Mon, 1 Jun 2009 08:07:20 +0000 (08:07 +0000)]
Add bogus expected result to trick the bot into showing me the real expected results (as suggested by bdash).

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44314 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years agoWebKit:
darin@apple.com [Mon, 1 Jun 2009 07:46:17 +0000 (07:46 +0000)]
WebKit:

2009-06-01  Darin Adler  <darin@apple.com>

        Reviewed by Maciej Stachowiak.

        Bug 26113: break WebTextCompletionController out into its own source file
        https://bugs.webkit.org/show_bug.cgi?id=26113

        * WebKit.xcodeproj/project.pbxproj: Add WebTextCompletionController.h/mm.

WebKit/mac:

2009-06-01  Darin Adler  <darin@apple.com>

        Reviewed by Maciej Stachowiak.

        Bug 26113: break WebTextCompletionController out into its own source file
        https://bugs.webkit.org/show_bug.cgi?id=26113

        * WebView/WebHTMLView.mm:
        (-[WebHTMLViewPrivate dealloc]): Updated for new name.
        (-[WebHTMLViewPrivate clear]): Ditto.
        (-[WebHTMLView _frameOrBoundsChanged]): Ditto.
        (-[WebHTMLView menuForEvent:]): Ditto.
        (-[WebHTMLView windowDidResignKey:]): Ditto.
        (-[WebHTMLView windowWillClose:]): Ditto.
        (-[WebHTMLView mouseDown:]): Ditto.
        (-[WebHTMLView resignFirstResponder]): Ditto.
        (-[WebHTMLView keyDown:]): Ditto.
        (-[WebHTMLView complete:]): Ditto. Also pass WebView to init method.
        (-[WebHTMLView _interceptEditingKeyEvent:shouldSaveCommand:]): Ditto.

        * WebView/WebTextCompletionController.h: Copied from mac/WebView/WebHTMLView.mm.
        * WebView/WebTextCompletionController.mm: Copied from mac/WebView/WebHTMLView.mm.
        Changed initializer to pass in a spearate WebView and WebHTMLView, to smooth the
        way for handling viewless mode properly in the future.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44313 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-06-01 Tony Chang <tony@chromium.org>
abarth@webkit.org [Mon, 1 Jun 2009 07:43:04 +0000 (07:43 +0000)]
2009-06-01  Tony Chang  <tony@chromium.org>

        Reviewed by Dimitri Glazkov.  Landed by Adam Barth.

        https://bugs.webkit.org/show_bug.cgi?id=26026

        Fix an infinite loop when using the keyboard in Chromium select
        popups.

        Not testable since it involves sending a keyboard event to
        the popup, which is not possible (eventSender sends the key
        events through webview, we want to go through the webwidget).

        * platform/chromium/PopupMenuChromium.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44312 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years agoWebCore:
abarth@webkit.org [Mon, 1 Jun 2009 07:34:55 +0000 (07:34 +0000)]
WebCore:

2009-06-01  Nate Chapin  <japhet@google.com>

        Reviewed by Dimitri Glazkov.  Landed by Adam Barth.

        If a url with an anchor is being loaded, ensure that the anchor remains locked in view until the page
        has finished loading compeltely or the user has manually scrolled.  Refreshing an anchor url after
        scrolling to a new location on the page will still result in jumping to the new location.

        https://bugs.webkit.org/show_bug.cgi?id=26034

        * loader/FrameLoader.cpp:
        (WebCore::FrameLoader::gotoAnchor): Set anchor lock after navigating to anchor.
        (WebCore::FrameLoader::completed): Release anchor lock.
        * page/FrameView.cpp:
        (WebCore::FrameView::FrameView): Ensure anchor lock starts unset.
        (WebCore::FrameView::reset): Ensure anchor lock starts unset.
        (WebCore::FrameView::layout): If anchor lock is set, force a gotoAnchor() after layout.
        (WebCore::FrameView::scrollRectIntoViewRecursively): Release anchor lock if a programmatic scroll begins.
        (WebCore::FrameView::setWasScrolledByUser): Release anchor lock if user manually scrolls.
        (WebCore::FrameView::setScrollPosition): Release anchor lock if a programmatic scroll begins.
        * page/FrameView.h:
        (WebCore::FrameView::lockedToAnchor): Added.
        (WebCore::FrameView::setLockedToAnchor): Added.

LayoutTests:

2009-06-01  Nate Chapin  <japhet@google.com>

        Reviewed by Dimitri Glazkov.  Landed by Adam Barth.

        Ensure an anchor remains locked in view as images (without height already specified) load around it.

        https://bugs.webkit.org/show_bug.cgi?id=26034

        * fast/dynamic/anchor-lock.html: Added.
        * fast/dynamic/resources/largeblank.png: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44311 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-05-31 Gavin Barraclough <barraclough@apple.com>
barraclough@apple.com [Mon, 1 Jun 2009 06:06:25 +0000 (06:06 +0000)]
2009-05-31  Gavin Barraclough  <barraclough@apple.com>

        Reviewed by Olliej "you just need to change NativeFunctionWrapper.h" Hunt.

        Add ENABLE_JIT_OPTIMIZE_NATIVE_CALL switch to allow JIT to operate without native call optimizations.

        * runtime/NativeFunctionWrapper.h:
        * wtf/Platform.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44310 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-05-31 Dirk Schulze <krit@webkit.org>
krit@webkit.org [Mon, 1 Jun 2009 05:36:12 +0000 (05:36 +0000)]
2009-05-31  Dirk Schulze  <krit@webkit.org>

        Reviewed by Nikolas Zimmermann.

        WebKit needs cross-platform filter system
        [https://bugs.webkit.org/show_bug.cgi?id=19991]

        A short clean-up. FilterBuilder is SVG specific. Move it
        to svg/graphics/filters and rename it to SVGFilterBuilder.

        * GNUmakefile.am:
        * WebCore.pro:
        * WebCore.xcodeproj/project.pbxproj:
        * svg/FilterBuilder.cpp: Removed.
        * svg/FilterBuilder.h: Removed.
        * svg/SVGFilterElement.cpp:
        * svg/SVGFilterPrimitiveStandardAttributes.h:
        * svg/graphics/SVGResourceFilter.cpp:
        (WebCore::SVGResourceFilter::SVGResourceFilter):
        * svg/graphics/SVGResourceFilter.h:
        (WebCore::SVGResourceFilter::builder):
        * svg/graphics/filters/SVGFilterBuilder.cpp: Added.
        (WebCore::SVGFilterBuilder::SVGFilterBuilder):
        (WebCore::SVGFilterBuilder::add):
        (WebCore::SVGFilterBuilder::getEffectById):
        (WebCore::SVGFilterBuilder::clearEffects):
        * svg/graphics/filters/SVGFilterBuilder.h: Added.
        (WebCore::SVGFilterBuilder::lastEffect):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44309 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years agoFix a typo in ChangeLog.
ap@webkit.org [Mon, 1 Jun 2009 05:35:02 +0000 (05:35 +0000)]
Fix a typo in ChangeLog.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44308 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago Reviewed by Darin Adler.
ap@webkit.org [Mon, 1 Jun 2009 05:23:08 +0000 (05:23 +0000)]
    Reviewed by Darin Adler.

        https://bugs.webkit.org/show_bug.cgi?id=13233
        Need to implement an optimizing XPath evaluator

        Avoid sorting results of hierarchical paths that are natuarlly sorted. On a flat data structure
        with 128K nodes and a simple XPath expression, this changes evaluation time from 1.5 minutes
        to 33 ms.

        * xml/XPathNodeSet.h: Keep track of whether subtrees rooted at nodes in set are disjoint,
        which is useful for optimization.
        (WebCore::XPath::NodeSet::NodeSet): Removed, it was identical to compiler generated one.
        (WebCore::XPath::NodeSet::operator=): Ditto.
        (WebCore::XPath::NodeSet::swap): Ditto.
        (WebCore::XPath::NodeSet::isSorted): Single element sets are always sorted, even if sort()
        was never called.
        (WebCore::XPath::NodeSet::markSubtreesDisjoint): Just like being sorted, the new flag is
        maintained by callers.
        (WebCore::XPath::NodeSet::subtreesAreDisjoint): A single element set only has one subtree.
        Currently, the only way for a set to gain this flag is to be produced from a single element
        set with a hierarchical location path.

        * xml/XPathPath.cpp: (WebCore::XPath::LocationPath::evaluate): Use the new flag to avoid
        maintaining a set of unique nodes, and to avoid sorting the result.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44307 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago Reviewed by Darin Adler.
ap@webkit.org [Mon, 1 Jun 2009 04:18:09 +0000 (04:18 +0000)]
    Reviewed by Darin Adler.

        https://bugs.webkit.org/show_bug.cgi?id=13233
        Need to implement an optimizing XPath evaluator

        This patch adds some infrastructure and simple optimizations. Namely,
        - we now avoid building a full NodeSet just to evaluate a predicate in some cases;
        - "/descendant-or-self::node()/child::" is optimized to iterate the tree once when possible;

WebCore:
        * xml/XPathExpressionNode.cpp:
        (WebCore::XPath::Expression::Expression):
        * xml/XPathExpressionNode.h:
        (WebCore::XPath::Expression::addSubExpression):
        (WebCore::XPath::Expression::isContextNodeSensitive):
        (WebCore::XPath::Expression::isContextPositionSensitive):
        (WebCore::XPath::Expression::isContextSizeSensitive):
        (WebCore::XPath::Expression::setIsContextNodeSensitive):
        (WebCore::XPath::Expression::setIsContextPositionSensitive):
        (WebCore::XPath::Expression::setIsContextSizeSensitive):
        XPath expression now knows its result type, and whether evaluation depends on context.

        * xml/XPathFunctions.cpp:
        (WebCore::XPath::FunLast::resultType):
        (WebCore::XPath::FunLast::FunLast):
        (WebCore::XPath::FunPosition::resultType):
        (WebCore::XPath::FunPosition::FunPosition):
        (WebCore::XPath::FunCount::resultType):
        (WebCore::XPath::FunId::resultType):
        (WebCore::XPath::FunLocalName::resultType):
        (WebCore::XPath::FunLocalName::FunLocalName):
        (WebCore::XPath::FunNamespaceURI::resultType):
        (WebCore::XPath::FunNamespaceURI::FunNamespaceURI):
        (WebCore::XPath::FunName::resultType):
        (WebCore::XPath::FunName::FunName):
        (WebCore::XPath::FunString::resultType):
        (WebCore::XPath::FunString::FunString):
        (WebCore::XPath::FunConcat::resultType):
        (WebCore::XPath::FunStartsWith::resultType):
        (WebCore::XPath::FunContains::resultType):
        (WebCore::XPath::FunSubstringBefore::resultType):
        (WebCore::XPath::FunSubstringAfter::resultType):
        (WebCore::XPath::FunSubstring::resultType):
        (WebCore::XPath::FunStringLength::resultType):
        (WebCore::XPath::FunStringLength::FunStringLength):
        (WebCore::XPath::FunNormalizeSpace::resultType):
        (WebCore::XPath::FunNormalizeSpace::FunNormalizeSpace):
        (WebCore::XPath::FunTranslate::resultType):
        (WebCore::XPath::FunBoolean::resultType):
        (WebCore::XPath::FunNot::resultType):
        (WebCore::XPath::FunTrue::resultType):
        (WebCore::XPath::FunFalse::resultType):
        (WebCore::XPath::FunLang::resultType):
        (WebCore::XPath::FunLang::FunLang):
        (WebCore::XPath::FunNumber::resultType):
        (WebCore::XPath::FunNumber::FunNumber):
        (WebCore::XPath::FunSum::resultType):
        (WebCore::XPath::FunFloor::resultType):
        (WebCore::XPath::FunCeiling::resultType):
        (WebCore::XPath::FunRound::resultType):
        (WebCore::XPath::Function::setArguments):
        Set optimization details for the expression. Normally, a function does not introduce context
        node set dependency, but some use context node as default argument, or otherwise use the context.

        * xml/XPathFunctions.h: Tweaked style.

        * xml/XPathPath.cpp:
        (WebCore::XPath::Filter::Filter): A filter is as context node set sensitive as its expression is.
        (WebCore::XPath::LocationPath::LocationPath): A location path can only be context node sensitive,
        and only if the path relative.
        (WebCore::XPath::LocationPath::appendStep): Invoke compile-time Step optimizations.
        (WebCore::XPath::LocationPath::insertFirstStep): Ditto.
        (WebCore::XPath::Path::Path): A path is as context node set sensitive as its filter is.

        * xml/XPathPath.h:
        (WebCore::XPath::Filter::resultType): Result type of a filter is the same as of its expression
        (useful filters return NodeSets, of course).
        (WebCore::XPath::LocationPath::setAbsolute): An absolute location path if context node set
        insensitive.
        (WebCore::XPath::LocationPath::resultType): A path's result is always a node set.
        (WebCore::XPath::Path::resultType): Ditto.

        * xml/XPathPredicate.h:
        (WebCore::XPath::Number::resultType): Return a proper result type.
        (WebCore::XPath::StringExpression::resultType): Ditto.
        (WebCore::XPath::Negative::resultType): Ditto.
        (WebCore::XPath::NumericOp::resultType): Ditto.
        (WebCore::XPath::EqTestOp::resultType): Ditto.
        (WebCore::XPath::LogicalOp::resultType): Ditto.
        (WebCore::XPath::Union::resultType): Ditto.
        (WebCore::XPath::Predicate::isContextPositionSensitive): A predicate can be context position
        sensitive even if its expression is not, because e.g. [5] is a shortcut for [position()=5].
        (WebCore::XPath::Predicate::isContextSizeSensitive): This matches expression result.

        * xml/XPathStep.h:
        (WebCore::XPath::Step::NodeTest::Kind): Removed unused ElementNodeTest, which was previously
        borrowed from XPath 2.0 to express some optimizations.
        (WebCore::XPath::Step::NodeTest::mergedPredicates): To avoid building a huge node set and
        filtering it with predicates, we now try to apply predicates while enumerating an axis.
        (WebCore::XPath::Step::nodeTest): Expose m_nodeTest.

        * xml/XPathStep.cpp:
        (WebCore::XPath::Step::~Step): The step owns NodeTest merged predicates, so it is still
        possible to copy NodeTests.
        (WebCore::XPath::Step::optimize): Merge predicates into NodeTest if possible.
        (WebCore::XPath::optimizeStepPair): Optimize some expressions containing "//".
        (WebCore::XPath::Step::predicatesAreContextListInsensitive): The above optimization is only
        possible if there are no context sensitive predicates for "//".
        (WebCore::XPath::Step::evaluate): Track context position for the first merged predicate.
        (WebCore::XPath::nodeMatchesBasicTest): Check whether the node matches node test, ignoring
        merged predicates.
        (WebCore::XPath::nodeMatches): Additionally check merged predicates, and update position.
        (WebCore::XPath::Step::nodesInAxis): Check merged predicates in optimized attribute code
        path.

        * xml/XPathVariableReference.h: (WebCore::XPath::VariableReference::resultType): Variable
        references are not used with XPathEvaluator, so we'll only need them if we decide to
        reimplement XSLT. The type of variable reference is not known at compile time.

LayoutTests:
        * fast/xpath/attribute-node-predicate-expected.txt: Added.
        * fast/xpath/attribute-node-predicate.html: Added.
        Test that predicates on attribute nodes are applied correctly (which I had wrong for a while
        when working on this patch).

        * fast/xpath/position-expected.txt:
        * fast/xpath/position.html:
        Added an example from XPath spec.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44306 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years agoAdd Windows results for fast/forms/isindex-placeholder.html
mitz@apple.com [Mon, 1 Jun 2009 03:59:52 +0000 (03:59 +0000)]
Add Windows results for fast/forms/isindex-placeholder.html

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44305 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-05-31 Sam Weinig <sam@webkit.org>
mitz@apple.com [Mon, 1 Jun 2009 03:55:21 +0000 (03:55 +0000)]
2009-05-31  Sam Weinig <sam@webkit.org>

        Implement LayoutTestController::clearAllDatabases()
        on Windows.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44304 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-05-31 Sam Weinig <sam@webkit.org>
weinig@apple.com [Mon, 1 Jun 2009 03:05:48 +0000 (03:05 +0000)]
2009-05-31  Sam Weinig  <sam@webkit.org>

        Rubber-stamped by Dan Bernstein.

        Remove unused JSEventTargetBase.h

        * GNUmakefile.am:
        * WebCore.vcproj/WebCore.vcproj:
        * WebCore.xcodeproj/project.pbxproj:
        * bindings/js/JSEventTargetBase.h: Removed.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44303 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years agoWebCore:
weinig@apple.com [Mon, 1 Jun 2009 02:56:19 +0000 (02:56 +0000)]
WebCore:

2009-05-31  Sam Weinig  <sam@webkit.org>

        Reviewed by Dan Bernstein.

        Part of https://bugs.webkit.org/show_bug.cgi?id=26100
        Add missing event handler properties to the DOMWindow

        Add missing oncanplay, oncanplaythrough, ondurationchange, onemptied,
        onended, onloadeddata, onloadedmetadata, onpause, onplay, onplaying,
        onratechange, onseeked, onseeking, ontimeupdate, onvolumechange,
        onwaiting, onloadstart, onprogress, onstalled, onsuspend, ondrag,
        ondragend, ondragenter, ondragleave, ondragover, ondragstart and
        ondrop event handlers to the DOMWindow.

        * page/DOMWindow.cpp:
        (WebCore::DOMWindow::ondrag):
        (WebCore::DOMWindow::setOndrag):
        (WebCore::DOMWindow::ondragend):
        (WebCore::DOMWindow::setOndragend):
        (WebCore::DOMWindow::ondragenter):
        (WebCore::DOMWindow::setOndragenter):
        (WebCore::DOMWindow::ondragleave):
        (WebCore::DOMWindow::setOndragleave):
        (WebCore::DOMWindow::ondragover):
        (WebCore::DOMWindow::setOndragover):
        (WebCore::DOMWindow::ondragstart):
        (WebCore::DOMWindow::setOndragstart):
        (WebCore::DOMWindow::ondrop):
        (WebCore::DOMWindow::setOndrop):
        (WebCore::DOMWindow::oncanplay):
        (WebCore::DOMWindow::setOncanplay):
        (WebCore::DOMWindow::oncanplaythrough):
        (WebCore::DOMWindow::setOncanplaythrough):
        (WebCore::DOMWindow::ondurationchange):
        (WebCore::DOMWindow::setOndurationchange):
        (WebCore::DOMWindow::onemptied):
        (WebCore::DOMWindow::setOnemptied):
        (WebCore::DOMWindow::onended):
        (WebCore::DOMWindow::setOnended):
        (WebCore::DOMWindow::onloadeddata):
        (WebCore::DOMWindow::setOnloadeddata):
        (WebCore::DOMWindow::onloadedmetadata):
        (WebCore::DOMWindow::setOnloadedmetadata):
        (WebCore::DOMWindow::onpause):
        (WebCore::DOMWindow::setOnpause):
        (WebCore::DOMWindow::onplay):
        (WebCore::DOMWindow::setOnplay):
        (WebCore::DOMWindow::onplaying):
        (WebCore::DOMWindow::setOnplaying):
        (WebCore::DOMWindow::onratechange):
        (WebCore::DOMWindow::setOnratechange):
        (WebCore::DOMWindow::onseeked):
        (WebCore::DOMWindow::setOnseeked):
        (WebCore::DOMWindow::onseeking):
        (WebCore::DOMWindow::setOnseeking):
        (WebCore::DOMWindow::ontimeupdate):
        (WebCore::DOMWindow::setOntimeupdate):
        (WebCore::DOMWindow::onvolumechange):
        (WebCore::DOMWindow::setOnvolumechange):
        (WebCore::DOMWindow::onwaiting):
        (WebCore::DOMWindow::setOnwaiting):
        (WebCore::DOMWindow::onloadstart):
        (WebCore::DOMWindow::setOnloadstart):
        (WebCore::DOMWindow::onprogress):
        (WebCore::DOMWindow::setOnprogress):
        (WebCore::DOMWindow::onstalled):
        (WebCore::DOMWindow::setOnstalled):
        (WebCore::DOMWindow::onsuspend):
        (WebCore::DOMWindow::setOnsuspend):
        * page/DOMWindow.h:
        * page/DOMWindow.idl:

LayoutTests:

2009-05-31  Sam Weinig  <sam@webkit.org>

        Reviewed by Dan Bernstein.

        Part of https://bugs.webkit.org/show_bug.cgi?id=26100
        Add missing event handler properties to the DOMWindow

        Add missing oncanplay, oncanplaythrough, ondurationchange, onemptied,
        onended, onloadeddata, onloadedmetadata, onpause, onplay, onplaying,
        onratechange, onseeked, onseeking, ontimeupdate, onvolumechange,
        onwaiting, onloadstart, onprogress, onstalled, onsuspend, ondrag,
        ondragend, ondragenter, ondragleave, ondragover, ondragstart and
        ondrop event handlers to the DOMWindow.

        * fast/dom/Window/window-properties-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44302 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years agoWebCore:
weinig@apple.com [Mon, 1 Jun 2009 00:20:47 +0000 (00:20 +0000)]
WebCore:

2009-05-31  Sam Weinig  <sam@webkit.org>

        Reviewed by Anders Carlsson.

        Part of https://bugs.webkit.org/show_bug.cgi?id=26100
        Add missing event handler properties to the DOMWindow

        Add missing onstorage event handler to the DOMWindow.

        * page/DOMWindow.cpp:
        (WebCore::DOMWindow::onstorage):
        (WebCore::DOMWindow::setOnstorage):
        * page/DOMWindow.h:
        * page/DOMWindow.idl:

LayoutTests:

2009-05-31  Sam Weinig  <sam@webkit.org>

        Reviewed by Anders Carlsson.

        Part of https://bugs.webkit.org/show_bug.cgi?id=26100
        Add missing event handler properties to the DOMWindow

        Add missing onstorage event handler to the DOMWindow.

        * fast/dom/Window/window-properties-expected.txt:
        * storage/domstorage/window-attributes-exist-expected.txt:
        * storage/domstorage/window-attributes-exist.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44301 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-05-31 Sam Weinig <sam@webkit.org>
weinig@apple.com [Sun, 31 May 2009 23:47:57 +0000 (23:47 +0000)]
2009-05-31  Sam Weinig  <sam@webkit.org>

        Rubber-stamped by Mark Rowe.

        Remove duplicate file. The version of window-properties-expected.txt in the
        platform/mac-leopard was identical to the one in the normal spot.

        * platform/mac-leopard/fast/dom/Window/window-properties-expected.txt: Removed.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44300 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-05-31 Dirk Schulze <krit@webkit.org>
krit@webkit.org [Sun, 31 May 2009 23:12:20 +0000 (23:12 +0000)]
2009-05-31  Dirk Schulze  <krit@webkit.org>

        Reviewed by Nikolas Zimmermann.

        WebKit needs cross-platform filter system
        [https://bugs.webkit.org/show_bug.cgi?id=19991]

        Make use of the new filter system in WebCore for SVG. Deleted Mac bindings
        and replace it by a platform independent code. Calculation of subRegions
        is missing but needed for a first filter effect.

        * GNUmakefile.am:
        * WebCore.pro:
        * WebCore.vcproj/WebCore.vcproj:
        * WebCore.xcodeproj/project.pbxproj:
        * platform/graphics/filters/Filter.h:
        (WebCore::Filter::~Filter):
        (WebCore::Filter::setSourceImage):
        * rendering/SVGRenderSupport.cpp:
        (WebCore::SVGRenderBase::prepareToRenderSVGContent):
        (WebCore::SVGRenderBase::finishRenderSVGContent):
        * svg/FilterBuilder.h:
        (WebCore::FilterBuilder::lastEffect):
        * svg/SVGFEBlendElement.cpp:
        (WebCore::SVGFEBlendElement::SVGFEBlendElement):
        (WebCore::SVGFEBlendElement::build):
        * svg/SVGFEBlendElement.h:
        * svg/SVGFEColorMatrixElement.cpp:
        (WebCore::SVGFEColorMatrixElement::SVGFEColorMatrixElement):
        (WebCore::SVGFEColorMatrixElement::build):
        * svg/SVGFEColorMatrixElement.h:
        * svg/SVGFEComponentTransferElement.cpp:
        (WebCore::SVGFEComponentTransferElement::SVGFEComponentTransferElement):
        (WebCore::SVGFEComponentTransferElement::build):
        * svg/SVGFEComponentTransferElement.h:
        * svg/SVGFECompositeElement.cpp:
        (WebCore::SVGFECompositeElement::SVGFECompositeElement):
        (WebCore::SVGFECompositeElement::build):
        * svg/SVGFECompositeElement.h:
        * svg/SVGFEDiffuseLightingElement.cpp:
        (WebCore::SVGFEDiffuseLightingElement::SVGFEDiffuseLightingElement):
        (WebCore::SVGFEDiffuseLightingElement::build):
        * svg/SVGFEDiffuseLightingElement.h:
        * svg/SVGFEDisplacementMapElement.cpp:
        (WebCore::SVGFEDisplacementMapElement::SVGFEDisplacementMapElement):
        (WebCore::SVGFEDisplacementMapElement::build):
        * svg/SVGFEDisplacementMapElement.h:
        * svg/SVGFEFloodElement.cpp:
        (WebCore::SVGFEFloodElement::SVGFEFloodElement):
        (WebCore::SVGFEFloodElement::build):
        * svg/SVGFEFloodElement.h:
        * svg/SVGFEGaussianBlurElement.cpp:
        (WebCore::SVGFEGaussianBlurElement::SVGFEGaussianBlurElement):
        (WebCore::SVGFEGaussianBlurElement::build):
        * svg/SVGFEGaussianBlurElement.h:
        * svg/SVGFEImageElement.cpp:
        (WebCore::SVGFEImageElement::SVGFEImageElement):
        (WebCore::SVGFEImageElement::notifyFinished):
        (WebCore::SVGFEImageElement::build):
        * svg/SVGFEImageElement.h:
        * svg/SVGFEMergeElement.cpp:
        (WebCore::SVGFEMergeElement::SVGFEMergeElement):
        (WebCore::SVGFEMergeElement::build):
        * svg/SVGFEMergeElement.h:
        * svg/SVGFEOffsetElement.cpp:
        (WebCore::SVGFEOffsetElement::SVGFEOffsetElement):
        (WebCore::SVGFEOffsetElement::build):
        * svg/SVGFEOffsetElement.h:
        * svg/SVGFESpecularLightingElement.cpp:
        (WebCore::SVGFESpecularLightingElement::SVGFESpecularLightingElement):
        (WebCore::SVGFESpecularLightingElement::build):
        * svg/SVGFESpecularLightingElement.h:
        * svg/SVGFETileElement.cpp:
        (WebCore::SVGFETileElement::SVGFETileElement):
        (WebCore::SVGFETileElement::build):
        * svg/SVGFETileElement.h:
        * svg/SVGFETurbulenceElement.cpp:
        (WebCore::SVGFETurbulenceElement::SVGFETurbulenceElement):
        (WebCore::SVGFETurbulenceElement::build):
        * svg/SVGFETurbulenceElement.h:
        * svg/SVGFilterElement.cpp:
        (WebCore::SVGFilterElement::canvasResource):
        * svg/SVGFilterPrimitiveStandardAttributes.cpp:
        (WebCore::SVGFilterPrimitiveStandardAttributes::setStandardAttributes):
        * svg/SVGFilterPrimitiveStandardAttributes.h:
        (WebCore::SVGFilterPrimitiveStandardAttributes::contextElement):
        * svg/graphics/SVGResourceFilter.cpp:
        (WebCore::SVGResourceFilter::SVGResourceFilter):
        (WebCore::SVGResourceFilter::addFilterEffect):
        (WebCore::SVGResourceFilter::filterBBoxForItemBBox):
        (WebCore::SVGResourceFilter::prepareFilter):
        (WebCore::SVGResourceFilter::applyFilter):
        (WebCore::SVGResourceFilter::externalRepresentation):
        * svg/graphics/SVGResourceFilter.h:
        (WebCore::SVGResourceFilter::filterBoundingBox):
        (WebCore::SVGResourceFilter::setFilterBoundingBox):
        (WebCore::SVGResourceFilter::itemBoundingBox):
        (WebCore::SVGResourceFilter::setItemBoundingBox):
        (WebCore::SVGResourceFilter::builder):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44299 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years agoWebCore:
weinig@apple.com [Sun, 31 May 2009 22:24:27 +0000 (22:24 +0000)]
WebCore:

2009-05-30  Sam Weinig  <sam@webkit.org>

        Reviewed by Mark Rowe.

        Fix for https://bugs.webkit.org/show_bug.cgi?id=26110
        Update online/offline events to match the current spec.
        - Also adds window.ononline and window.onoffline event handler
          properties.

        * page/DOMWindow.cpp:
        (WebCore::DOMWindow::onoffline):
        (WebCore::DOMWindow::setOnoffline):
        (WebCore::DOMWindow::ononline):
        (WebCore::DOMWindow::setOnonline):
        * page/DOMWindow.h:
        * page/DOMWindow.idl:
        * page/Page.cpp:
        (WebCore::networkStateChanged):

LayoutTests:

2009-05-30  Sam Weinig  <sam@webkit.org>

        Reviewed by Mark Rowe.

        Fix for https://bugs.webkit.org/show_bug.cgi?id=26110
        Update online/offline events to match the current spec.
        - Also adds window.ononline and window.onoffline event handler
          properties.

        * fast/dom/Window/window-properties-expected.txt:
        * platform/mac-leopard/fast/dom/Window/window-properties-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44298 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-05-31 Dirk Schulze <krit@webkit.org>
krit@webkit.org [Sun, 31 May 2009 18:22:20 +0000 (18:22 +0000)]
2009-05-31  Dirk Schulze  <krit@webkit.org>

        Reviewed by Nikolas Zimmermann.

        WebKit needs cross-platform filter system
        [https://bugs.webkit.org/show_bug.cgi?id=19991]

        Adding 'in1' attribute support for <feFlood>, as specified in SVG 1.1.
        This change helps creating test cases, once filters are activated.

        * svg/SVGFEFloodElement.cpp:
        (WebCore::SVGFEFloodElement::SVGFEFloodElement):
        (WebCore::SVGFEFloodElement::parseMappedAttribute):
        (WebCore::SVGFEFloodElement::build):
        * svg/SVGFEFloodElement.h:
        * svg/SVGFEFloodElement.idl:
        * svg/graphics/filters/SVGFEFlood.cpp:
        (WebCore::FEFlood::FEFlood):
        (WebCore::FEFlood::create):
        * svg/graphics/filters/SVGFEFlood.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44297 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-05-31 Dirk Schulze <krit@webkit.org>
krit@webkit.org [Sun, 31 May 2009 17:34:03 +0000 (17:34 +0000)]
2009-05-31  Dirk Schulze  <krit@webkit.org>

        Reviewed by Nikolas Zimmermann.

        WebKit needs cross-platform filter system
        [https://bugs.webkit.org/show_bug.cgi?id=19991]

        Replace all occurrences of SVGResourceFilter by Filter. This is the last
        step for a SVG independent filter system. Every other part of WebCore can
        use the filter system by creating a new Filter object.

        * GNUmakefile.am:
        * WebCore.pro:
        * WebCore.xcodeproj/project.pbxproj:
        * platform/graphics/filters/FEBlend.cpp:
        (WebCore::FEBlend::apply):
        * platform/graphics/filters/FEBlend.h:
        * platform/graphics/filters/FEColorMatrix.cpp:
        (WebCore::FEColorMatrix::apply):
        * platform/graphics/filters/FEColorMatrix.h:
        * platform/graphics/filters/FEComponentTransfer.cpp:
        (WebCore::FEComponentTransfer::apply):
        * platform/graphics/filters/FEComponentTransfer.h:
        * platform/graphics/filters/FEComposite.cpp:
        (WebCore::FEComposite::apply):
        * platform/graphics/filters/FEComposite.h:
        * platform/graphics/filters/Filter.h: Added.
        (WebCore::Filter::setSourceImage):
        (WebCore::Filter::sourceImage):
        * platform/graphics/filters/FilterEffect.h:
        * platform/graphics/filters/SourceAlpha.cpp:
        (WebCore::SourceAlpha::apply):
        * platform/graphics/filters/SourceAlpha.h:
        * platform/graphics/filters/SourceGraphic.cpp:
        (WebCore::SourceGraphic::apply):
        * platform/graphics/filters/SourceGraphic.h:
        * svg/Filter.cpp: Removed.
        * svg/Filter.h: Removed.
        * svg/graphics/filters/SVGFEConvolveMatrix.cpp:
        (WebCore::FEConvolveMatrix::apply):
        * svg/graphics/filters/SVGFEConvolveMatrix.h:
        * svg/graphics/filters/SVGFEDiffuseLighting.cpp:
        (WebCore::FEDiffuseLighting::apply):
        * svg/graphics/filters/SVGFEDiffuseLighting.h:
        * svg/graphics/filters/SVGFEDisplacementMap.cpp:
        (WebCore::FEDisplacementMap::apply):
        * svg/graphics/filters/SVGFEDisplacementMap.h:
        * svg/graphics/filters/SVGFEFlood.cpp:
        (WebCore::FEFlood::apply):
        * svg/graphics/filters/SVGFEFlood.h:
        * svg/graphics/filters/SVGFEGaussianBlur.cpp:
        (WebCore::FEGaussianBlur::apply):
        * svg/graphics/filters/SVGFEGaussianBlur.h:
        * svg/graphics/filters/SVGFEImage.cpp:
        (WebCore::FEImage::apply):
        * svg/graphics/filters/SVGFEImage.h:
        * svg/graphics/filters/SVGFEMerge.cpp:
        (WebCore::FEMerge::apply):
        * svg/graphics/filters/SVGFEMerge.h:
        * svg/graphics/filters/SVGFEMorphology.cpp:
        (WebCore::FEMorphology::apply):
        * svg/graphics/filters/SVGFEMorphology.h:
        * svg/graphics/filters/SVGFEOffset.cpp:
        (WebCore::FEOffset::apply):
        * svg/graphics/filters/SVGFEOffset.h:
        * svg/graphics/filters/SVGFESpecularLighting.cpp:
        (WebCore::FESpecularLighting::apply):
        * svg/graphics/filters/SVGFESpecularLighting.h:
        * svg/graphics/filters/SVGFETile.cpp:
        (WebCore::FETile::apply):
        * svg/graphics/filters/SVGFETile.h:
        * svg/graphics/filters/SVGFETurbulence.cpp:
        (WebCore::FETurbulence::apply):
        * svg/graphics/filters/SVGFETurbulence.h:
        * svg/graphics/filters/SVGFilter.cpp: Added.
        (WebCore::SVGFilter::SVGFilter):
        (WebCore::SVGFilter::calculateEffectSubRegion):
        (WebCore::SVGFilter::create):
        * svg/graphics/filters/SVGFilter.h: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44296 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years agoBuild fix for platforms without plugins support.
kevino@webkit.org [Sun, 31 May 2009 03:26:30 +0000 (03:26 +0000)]
Build fix for platforms without plugins support.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44295 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years agoReviewed by Darin Adler.
zimmermann@webkit.org [Sun, 31 May 2009 02:32:48 +0000 (02:32 +0000)]
Reviewed by Darin Adler.

Fixes: https://bugs.webkit.org/show_bug.cgi?id=25979

Fix regression, local WML files won't load anymore, as the mimetype isn't correctly detected.
Bug filed at <rdar://problem/6917571> to cover this CFNetwork limitation.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44294 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years agoWebCore:
weinig@apple.com [Sun, 31 May 2009 00:58:06 +0000 (00:58 +0000)]
WebCore:

2009-05-29  Sam Weinig  <sam@webkit.org>

        Reviewed by Anders Carlsson.

        Fix for https://bugs.webkit.org/show_bug.cgi?id=26091
        Make storage events match the current spec.
        - Storage event listeners are added to the window.
        - Storage events are dispatched to the window.

        Updated existing tests.

        * dom/Document.cpp:
        (WebCore::Document::dispatchWindowEvent):
        * dom/Document.h:
        * dom/Node.cpp:
        * dom/Node.h:
        * html/HTMLBodyElement.cpp:
        (WebCore::HTMLBodyElement::parseMappedAttribute):
        * storage/LocalStorageArea.cpp:
        (WebCore::LocalStorageArea::dispatchStorageEvent):
        * storage/SessionStorageArea.cpp:
        (WebCore::SessionStorageArea::dispatchStorageEvent):

LayoutTests:

2009-05-29  Sam Weinig  <sam@webkit.org>

        Reviewed by Anders Carlsson.

        Fix for https://bugs.webkit.org/show_bug.cgi?id=26091
        Make storage events match the current spec.
        - Storage event listeners are added to the window.
        - Storage events are dispatched to the window.

        * storage/domstorage/localstorage/iframe-events.html:
        * storage/domstorage/localstorage/index-get-and-set.html:
        * storage/domstorage/localstorage/resources/iframe-events-second.html:
        * storage/domstorage/localstorage/simple-events.html:
        * storage/domstorage/sessionstorage/iframe-events.html:
        * storage/domstorage/sessionstorage/index-get-and-set.html:
        * storage/domstorage/sessionstorage/resources/iframe-events-second.html:
        * storage/domstorage/sessionstorage/simple-events.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44293 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years agoWebCore:
darin@apple.com [Sat, 30 May 2009 23:27:00 +0000 (23:27 +0000)]
WebCore:

2009-05-30  Darin Adler  <darin@apple.com>

        Reviewed by Adele Peterson.

        Bug 26097: REGRESSION (r44283): Tab key doesn't work when focus is on a <select> element

        Test: fast/forms/focus-control-to-page.html

        * dom/SelectElement.h: Made destructor protected. Tweaked a bit.

        * html/HTMLSelectElement.cpp: Removed unneeded includes.
        (WebCore::HTMLSelectElement::remove): Removed unneeded range check of the
        result of optionToListIndex.
        (WebCore::HTMLSelectElement::parseMappedAttribute): Removed code to set the
        unused attribute, m_minwidth.
        (WebCore::HTMLSelectElement::defaultEventHandler): The actual bug fix.
        Call through to the base class defaultEventHandler if the event hasn't
        been handled yet.

        * html/HTMLSelectElement.h: Removed unneeded includes. Made a lot more functions
        private. Removed unused minWidth function and m_minwidth data member.

LayoutTests:

2009-05-30  Darin Adler  <darin@apple.com>

        Reviewed by Adele Peterson.

        Bug 26097: REGRESSION (r44283): Tab key doesn't work when focus is on a <select> element

        * fast/forms/focus-control-to-page-expected.txt: Updated.
        * fast/forms/focus-control-to-page.html: Added test of <select>, <textarea>,
        and <input type="password">, and made sure we can tab both in and out of each type.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44292 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-05-30 Fridrich Strba <fridrich.strba@bluewin.ch>
bfulgham@webkit.org [Sat, 30 May 2009 23:20:47 +0000 (23:20 +0000)]
2009-05-30  Fridrich Strba  <fridrich.strba@bluewin.ch>

        Reviewed by Holger Freyther.

        The two KeyboardCodes.h files are basically identical and the
        qt one is properly #ifdef-ed for different win32 systems. Share
        them between Qt and Gtk implementations.

        * GNUmakefile.am:
        * platform/KeyboardCodes.h: Copied from WebCore/platform/qt/KeyboardCodes.h.
        * platform/gtk/KeyboardCodes.h: Removed.
        * platform/qt/KeyboardCodes.h: Removed.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44291 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago Add JSLock to -[WebScriptCallFrame scopeChain]
ddkilzer@apple.com [Sat, 30 May 2009 22:58:57 +0000 (22:58 +0000)]
    Add JSLock to -[WebScriptCallFrame scopeChain]

        Reviewed by Darin Adler.

        In Debug builds of WebKit, Dashcode launching MobileSafari could
        cause the ASSERT(JSLock::lockCount() > 0) assertion to fire in
        JSC::Heap::heapAllocate() because the JSLock wasn't taken.

        * WebView/WebScriptDebugDelegate.mm:
        (-[WebScriptCallFrame scopeChain]): Take JSLock before calling
        into JavaScriptCore.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44290 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-05-30 Jeremy Orlow <jorlow@chromium.org>
bfulgham@webkit.org [Sat, 30 May 2009 22:38:45 +0000 (22:38 +0000)]
2009-05-30  Jeremy Orlow  <jorlow@chromium.org>

        Reviewed by Sam Weinig.

        LocalStorage and SessionStorage's implicit setters do not correctly
        handle null.  The custom JS bindings should convert to strings
        unconditionally and not try to handle null specially.
        https://bugs.webkit.org/show_bug.cgi?id=25970

        * storage/domstorage/localstorage/string-conversion-expected.txt: Added.
        * storage/domstorage/localstorage/string-conversion.html: Added.
        * storage/domstorage/sessionstorage/string-conversion-expected.txt: Added.
        * storage/domstorage/sessionstorage/string-conversion.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44289 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-05-30 Jeremy Orlow <jorlow@chromium.org>
bfulgham@webkit.org [Sat, 30 May 2009 22:38:18 +0000 (22:38 +0000)]
2009-05-30  Jeremy Orlow  <jorlow@chromium.org>

        Reviewed by Sam Weinig.

        LocalStorage and SessionStorage's implicit setters do not correctly
        handle null.  The custom JS bindings should convert to strings
        unconditionally and not try to handle null specially.
        https://bugs.webkit.org/show_bug.cgi?id=25970

        Tests: storage/domstorage/localstorage/string-conversion.html
               storage/domstorage/sessionstorage/string-conversion.html

        * bindings/js/JSStorageCustom.cpp:
        (WebCore::JSStorage::customPut):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44288 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years agoWebCore:
mitz@apple.com [Sat, 30 May 2009 20:35:15 +0000 (20:35 +0000)]
WebCore:

        Reviewed by Darin Adler.

        - fix <rdar://problem/6935192> REGRESSION (Safari 3-TOT): Scroll
          bars in key window draw as inactive if the WebView is not active

        Test: platform/mac/scrollbars/key-window-not-first-responder.html

        * platform/mac/ScrollbarThemeMac.mm:
        (WebCore::ScrollbarThemeMac::paint): Use the window's key state instead
        of the WebView's first responder state to switch between active and
        inactive state.

LayoutTests:

        Reviewed by Darin Adler.

        - test for <rdar://problem/6935192> REGRESSION (Safari 3-TOT): Scroll
          bars in key window draw as inactive if the WebView is not active

        * platform/mac/scrollbars/key-window-not-first-responder-expected.checksum: Added.
        * platform/mac/scrollbars/key-window-not-first-responder-expected.png: Added.
        * platform/mac/scrollbars/key-window-not-first-responder-expected.txt: Added.
        * platform/mac/scrollbars/key-window-not-first-responder.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44287 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-05-30 Darin Adler <darin@apple.com>
darin@apple.com [Sat, 30 May 2009 20:27:21 +0000 (20:27 +0000)]
2009-05-30  Darin Adler  <darin@apple.com>

        Reviewed by Sam Weinig.

        <rdar://problem/6935193> REGRESSION (r42734): Celtic Kane JavaScript benchmark does not run:
        "Maximum call stack size exceeded"

        * runtime/ArrayPrototype.cpp:
        (JSC::arrayProtoFuncToString): Use the same recursion limit as the other recursion checks.
        We need a limit of at least 100 to run the benchmark above.
        (JSC::arrayProtoFuncToLocaleString): Ditto.
        (JSC::arrayProtoFuncJoin): Ditto.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44286 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years agoWebCore:
mitz@apple.com [Sat, 30 May 2009 17:50:10 +0000 (17:50 +0000)]
WebCore:

        Reviewed by Simon Fraser.

        - fix https://bugs.webkit.org/show_bug.cgi?id=18445
          <rdar://problem/5931174> Assertion failure in CSSGradientValue::image
          with -webkit-gradient as body's background

        Test: fast/backgrounds/body-generated-image-propagated-to-root.html

        * rendering/RenderBoxModelObject.cpp:
        (WebCore::RenderBoxModelObject::paintFillLayerExtended): Check if this
        is the root element painting a background layer propagated from the
        body, and if it is, use the body's renderer as the client to
        StyleImage::image().

LayoutTests:

        Reviewed by Simon Fraser.

        - test for https://bugs.webkit.org/show_bug.cgi?id=18445
          <rdar://problem/5931174> Assertion failure in CSSGradientValue::image
          with -webkit-gradient as body's background

        * fast/backgrounds/body-generated-image-propagated-to-root.html: Added.
        * platform/mac/fast/backgrounds/body-generated-image-propagated-to-root-expected.checksum: Added.
        * platform/mac/fast/backgrounds/body-generated-image-propagated-to-root-expected.png: Added.
        * platform/mac/fast/backgrounds/body-generated-image-propagated-to-root-expected.txt: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44285 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-05-30 Holger Hans Peter Freyther <zecke@selfish.org>
zecke@webkit.org [Sat, 30 May 2009 16:50:23 +0000 (16:50 +0000)]
2009-05-30  Holger Hans Peter Freyther  <zecke@selfish.org>

        Unreviewed build fix for AXObjectCache.

        For !HAVE(ACCESSIBILITY) postNotification was defined twice. Move
        that into the #ifdef.

        * accessibility/AXObjectCache.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44284 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years agoReviewed by George Staikos.
zimmermann@webkit.org [Sat, 30 May 2009 01:38:41 +0000 (01:38 +0000)]
Reviewed by George Staikos.

Fixes: https://bugs.webkit.org/show_bug.cgi?id=26072

Add support for the last missing WML element: <select>. This patch adds WMLSelectElement, providing
the same functionality HTMLSelectElement has. The WML specific features will follow soon.

Add simple testcase covering <select> element rendering: fast/wml/select.wml

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44283 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-05-29 Jan Michael Alonzo <jmalonzo@webkit.org>
jmalonzo@webkit.org [Fri, 29 May 2009 22:55:20 +0000 (22:55 +0000)]
2009-05-29  Jan Michael Alonzo  <jmalonzo@webkit.org>

        Reviewed by Gustavo Noronha.

        Fixed compile warning when comparing the different navigation types

        * webkit/webkitwebnavigationaction.cpp:
        (webkit_web_navigation_action_class_init):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44282 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-05-29 David Levin <levin@chromium.org>
levin@chromium.org [Fri, 29 May 2009 22:42:07 +0000 (22:42 +0000)]
2009-05-29  David Levin  <levin@chromium.org>

        Reviewed by NOBODY (build fix for windows).

        http://trac.webkit.org/changeset/44279 left in a "Vector<WCHAR> localeNameBuf"
        that it was trying to replace.  Resulting in this variable being defined twice (and
        the second time incorrectly).

        * platform/win/Language.cpp:
        (WebCore::localeInfo):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44281 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-05-29 Takeshi Yoshino <tyoshino@google.com>
levin@chromium.org [Fri, 29 May 2009 22:02:48 +0000 (22:02 +0000)]
2009-05-29  Takeshi Yoshino  <tyoshino@google.com>

        Reviewed by Darin Alder.

        https://bugs.webkit.org/show_bug.cgi?id=26018

        Fix behavior of the Element View of the Web Inspector for double
        clicking the element outline tree.

        Double clicking the element outline tree should
        1) on attribute: enter attribute editing mode
        2) on text: enter text editing mode
        3) otherwise: change root node to the parent element of double clicked
           element.

        Now, 3) is broken. For example, clicking <html> clears the element
        outline view.

        rootDOMNode should be updated to this.representedObject.parentNode, not
        this.parent.representedObject which is parent inside the element
        outline tree itself.

        * inspector/front-end/ElementsTreeOutline.js:
        (WebInspector.ElementsTreeElement.prototype.ondblclick):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44280 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-05-29 David Moore <davemoore@google.com>
levin@chromium.org [Fri, 29 May 2009 22:02:41 +0000 (22:02 +0000)]
2009-05-29  David Moore  <davemoore@google.com>

        Reviewed by Darin Alder.

        https://bugs.webkit.org/show_bug.cgi?id=26001
        Change many of the uses of String::adopt() to String::createUninitialized().
        This allows those strings to use an inlined buffer for their characters.

        * dom/StyleElement.cpp:
        Loop over nodes to precompute length of string and then
        write the characters into the allocated inline buffer
        (WebCore::StyleElement::process):
        * dom/Text.cpp:
        Loop over nodes to precompute length of string and then
        write the characters into the allocated inline buffer
        (WebCore::Text::wholeText):
        (WebCore::Text::rendererIsNeeded):
        (WebCore::Text::createRenderer):
        (WebCore::Text::createWithLengthLimit):
        (WebCore::Text::formatForDebugger):
        * platform/text/String.cpp:
        (WebCore::String::append):
        (WebCore::String::insert):
        (WebCore::String::truncate):
        (WebCore::String::remove):
        * platform/text/StringBuilder.cpp:
        (WebCore::StringBuilder::toString):
        * platform/text/StringImpl.cpp:
        (WebCore::StringImpl::lower):
        (WebCore::StringImpl::upper):
        (WebCore::StringImpl::secure):
        (WebCore::StringImpl::foldCase):
        (WebCore::StringImpl::replace):
        * platform/text/TextCodecLatin1.cpp:
        (WebCore::TextCodecLatin1::decode):
        * platform/text/TextCodecUserDefined.cpp:
        (WebCore::TextCodecUserDefined::decode):
        * platform/win/Language.cpp:
        (WebCore::localeInfo):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44279 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years agoWebCore:
levin@chromium.org [Fri, 29 May 2009 22:02:30 +0000 (22:02 +0000)]
WebCore:

2009-05-29  Takeshi Yoshino  <tyoshino@google.com>

        Reviewed by Darin Alder.

        Bug 25911: Apply href in base elements to anchors shown on the source viewer
        https://bugs.webkit.org/show_bug.cgi?id=25911

        In rendering HTML sources, parse base elements to apply the base URI to
        anchors shown on the source viewer.

        This issue was originally reported to the Chromium issue tracker.
        http://code.google.com/p/chromium/issues/detail?id=2418

        Test: fast/frames/viewsource-link-on-href-value.html

        * html/HTMLViewSourceDocument.cpp:
        (WebCore::HTMLViewSourceDocument::addViewSourceToken):

LayoutTests:

2009-05-29  Takeshi Yoshino  <tyoshino@google.com>

        Reviewed by Darin Alder.

        Bug 25911: Apply href in base elements to anchors shown on the source viewer
        https://bugs.webkit.org/show_bug.cgi?id=25911

        In rendering HTML sources, parse base elements to apply the base URI to
        anchors shown on the source viewer.

        Add tests to verify this change.

        This issue was originally reported to the Chromium issue tracker.
        http://code.google.com/p/chromium/issues/detail?id=2418

        * fast/frames/resources/viewsource-frame-3.html: Added.
        * fast/frames/resources/viewsource-frame-4.html: Added.
        * fast/frames/viewsource-link-on-href-value-expected.txt: Added.
        * fast/frames/viewsource-link-on-href-value.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44278 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years agoWebCore:
levin@chromium.org [Fri, 29 May 2009 22:02:22 +0000 (22:02 +0000)]
WebCore:

2009-05-29  Rob Buis  <rwlbuis@gmail.com>

        Reviewed by David Hyatt.

        https://bugs.webkit.org/show_bug.cgi?id=22429
        document.styleSheets collection ignores media=presentation

        Ensure that stylesheets though <link> show up in document.styleSheets regardless of media attribute.

        Test: fast/css/sheet-collection-link.html

        * html/HTMLLinkElement.cpp:
        (WebCore::HTMLLinkElement::process):

LayoutTests:

2009-05-29  Rob Buis  <rwlbuis@gmail.com>

        Reviewed by David Hyatt.

        Testcase for:
        https://bugs.webkit.org/show_bug.cgi?id=22429
        document.styleSheets collection ignores media=presentation

        * fast/css/sheet-collection-link.html: Added.
        * fast/css/sheet-collection-link-expected.txt: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44277 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-05-29 Itai Danan <idanan@chromium.org>
levin@chromium.org [Fri, 29 May 2009 22:02:12 +0000 (22:02 +0000)]
2009-05-29  Itai Danan  <idanan@chromium.org>

        Reviewed by Jon Honeycutt.

        Bug 24791: Should have a preference to disable auto scrolling
        https://bugs.webkit.org/show_bug.cgi?id=24791

        To understand why this is required see the discussion in
        issue 24722 (https://bugs.webkit.org/show_bug.cgi?id=24722).

        The code review was done in https://bugs.webkit.org/show_bug.cgi?id=21794.

        * page/EventHandler.cpp:
        (WebCore::EventHandler::handleMousePressEvent): Use autoscroll behavior flag to determine
        if autoscroll needs to be released on this event.
        (WebCore::EventHandler::handleMouseReleaseEvent):  Use autoscroll behavior flag to determine
        if autoscroll needs to be released on this event (reverse logic of for Press event).
        * page/Settings.cpp:
        (WebCore::Settings::Settings): Initialize autoscroll behavior setting.
        * page/Settings.h:
        (WebCore::Settings::setUsesStickyPanScroll): Autoscroll behavior setting setter.
        (WebCore::Settings::usesStickyPanScroll): Autoscroll behavior setting getter.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44276 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years agoWebCore:
jianli@chromium.org [Fri, 29 May 2009 21:58:50 +0000 (21:58 +0000)]
WebCore:

2009-05-29  Jian Li  <jianli@chromium.org>

        Reviewed by Dimitri Glazkov.

        https://bugs.webkit.org/show_bug.cgi?id=26069
        Fix a crash in custom V8 bindings code for XMLHttpRequest.

        Test: fast/xmlhttprequest/xmlhttprequest-open-after-iframe-onload-remove-self.html

        * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
        (WebCore::CALLBACK_FUNC_DECL):

LayoutTests:

2009-05-29  Jian Li  <jianli@chromium.org>

        Reviewed by Dimitri Glazkov.

        https://bugs.webkit.org/show_bug.cgi?id=26069
        Test for the above bug.

        * fast/xmlhttprequest/resources/xmlhttprequest-open-after-iframe-onload-remove-self-child.html: Added.
        * fast/xmlhttprequest/xmlhttprequest-open-after-iframe-onload-remove-self-expected.txt: Added.
        * fast/xmlhttprequest/xmlhttprequest-open-after-iframe-onload-remove-self.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44275 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago2009-05-29 David Levin <levin@chromium.org>
bfulgham@webkit.org [Fri, 29 May 2009 21:38:07 +0000 (21:38 +0000)]
2009-05-29  David Levin  <levin@chromium.org>

        Reviewed by Darin Adler.

        Bug 26074: SQLTransaction::executeSQL does an unnecessary call to String::copy.
        https://bugs.webkit.org/show_bug.cgi?id=26074

        The constructor for SQLStatement already does a copy for this string.

        * storage/SQLTransaction.cpp:
        (WebCore::SQLTransaction::executeSQL):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44274 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11 years ago Implement WebFrame::startDownload
aroben@apple.com [Fri, 29 May 2009 20:53:50 +0000 (20:53 +0000)]
    Implement WebFrame::startDownload

        Fixes the WebKit side of Bug 25729: Alt-clicking a link doesn't start
        a download <https://bugs.webkit.org/show_bug.cgi?id=25729>. Fixing
        this all the way will require a change in Safari.

        Reviewed by Darin Adler.

        * WebFrame.cpp:
        (WebFrame::startDownload): Call through to WebView::downloadURL.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@44273 268f45cc-cd09-0410-ab3c-d52691b4dbfc