WebKit-https.git
11 years agoVersioning.
mrowe@apple.com [Wed, 24 Dec 2008 03:51:57 +0000 (03:51 +0000)]
Versioning.

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

11 years ago2008-12-23 Darin Adler <darin@apple.com>
darin@apple.com [Tue, 23 Dec 2008 21:42:46 +0000 (21:42 +0000)]
2008-12-23  Darin Adler  <darin@apple.com>

        Reviewed by John Sullivan.

        - improve robustness of undo/redo in HTML editing to fix the following bugs
          <https://bugs.webkit.org/show_bug.cgi?id=19703> Crash in WebCore::InsertNodeBeforeCommand::doUnapply()
          <rdar://problem/4059423> DOM operations performed on editable HTML can cause a crash later during Undo

        Major categories of improvements:

            1) Added null checks.
            2) Eliminated type casts without corresponding type checks.
            3) Avoided possible infinite loops by building up lists of nodes to operate on
               before starting to make DOM changes.
            4) Use more RefPtr.

        No test at this time, but test cases should follow in separate patches.

        * WebCore.xcodeproj/project.pbxproj: Set the role of CSSPropertyNames.h to Private so it
        can be used in other Private headers, specifically editing ones.

        * css/CSSStyleSelector.cpp:
        (WebCore::CSSStyleSelector::locateCousinList): Adopt parentElement.
        (WebCore::CSSStyleSelector::locateSharedStyle): Ditto.
        (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): Ditto.

        * dom/Element.cpp: (WebCore::Element::cloneElement): Added.
        * dom/Element.h: Added cloneElement and an implementation of parentElement.
        * dom/Node.h: Moved parentElement from here to Element.h and changed its
        implementation so it will return 0 when the parent is not an element
        (document, document fragment, etc.).

        * editing/AppendNodeCommand.cpp:
        (WebCore::AppendNodeCommand::AppendNodeCommand): Made parent be an Element.
        Moved assertions from doApply in here.
        (WebCore::AppendNodeCommand::doApply): Simplified to just a single unchecked
        appendChild call.
        (WebCore::AppendNodeCommand::doUnapply): Simplified to just a single remove call.
        * editing/AppendNodeCommand.h: Updated.

        * editing/ApplyStyleCommand.cpp:
        (WebCore::createStyleSpanElement): Eliminate casting by creating an element in a more
        direct way with new instead of createElementNS.
        (WebCore::ApplyStyleCommand::ApplyStyleCommand): Use PassRefPtr.
        (WebCore::ApplyStyleCommand::removeCSSStyle): Use CSSPropertyID.
        (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded): Use cloneElement.
        * editing/ApplyStyleCommand.h:

        * editing/BreakBlockquoteCommand.cpp:
        (WebCore::BreakBlockquoteCommand::doApply): Use Element* and cloneElement.

        * editing/CompositeEditCommand.cpp:
        (WebCore::CompositeEditCommand::applyStyledElement): Use PassRefPtr and unsigned.
        (WebCore::CompositeEditCommand::removeStyledElement): Ditto.
        (WebCore::CompositeEditCommand::insertNodeBefore): Ditto.
        (WebCore::CompositeEditCommand::insertNodeAfter): Ditto.
        (WebCore::CompositeEditCommand::insertNodeAt): Ditto.
        (WebCore::CompositeEditCommand::appendNode): Ditto.
        (WebCore::CompositeEditCommand::removeChildrenInRange): Ditto. Also use a vector to
        make the list of children in case removing them has side effects.
        (WebCore::CompositeEditCommand::removeNode): Ditto.
        (WebCore::CompositeEditCommand::removeNodePreservingChildren): Ditto.
        (WebCore::CompositeEditCommand::removeNodeAndPruneAncestors): Ditto.
        (WebCore::CompositeEditCommand::splitTextNode): Ditto.
        (WebCore::CompositeEditCommand::splitElement): Ditto.
        (WebCore::CompositeEditCommand::mergeIdenticalElements): Ditto.
        (WebCore::CompositeEditCommand::wrapContentsInDummySpan): Ditto.
        (WebCore::CompositeEditCommand::splitTextNodeContainingElement): Ditto.
        (WebCore::CompositeEditCommand::joinTextNodes): Ditto.
        (WebCore::CompositeEditCommand::inputText): Ditto.
        (WebCore::CompositeEditCommand::insertTextIntoNode): Ditto.
        (WebCore::CompositeEditCommand::deleteTextFromNode): Ditto.
        (WebCore::CompositeEditCommand::replaceTextInNode): Ditto.
        (WebCore::CompositeEditCommand::insertNodeAtTabSpanPosition): Ditto.
        (WebCore::CompositeEditCommand::removeCSSProperty): Ditto.
        (WebCore::CompositeEditCommand::removeNodeAttribute): Ditto. Implement by calling
        setNodeAttribute instead of with its own SimpleEditCommand.
        (WebCore::CompositeEditCommand::setNodeAttribute): Ditto.
        (WebCore::CompositeEditCommand::deleteInsignificantText): Ditto.
        (WebCore::CompositeEditCommand::appendBlockPlaceholder): Ditto.
        (WebCore::CompositeEditCommand::addBlockPlaceholderIfNeeded): Ditto.
        (WebCore::CompositeEditCommand::insertNewDefaultParagraphElementAt): Ditto. Don't
        bother using an undoable operation to put the break element into the paragraph
        element because there's no need to split them and redo this when doing undo/redo.
        (WebCore::CompositeEditCommand::moveParagraphs): Ditto.
        (WebCore::CompositeEditCommand::breakOutOfEmptyListItem): Ditto.
        * editing/CompositeEditCommand.h: Ditto.

        * editing/DeleteFromTextNodeCommand.cpp:
        (WebCore::DeleteFromTextNodeCommand::DeleteFromTextNodeCommand): Use unsigned.
        (WebCore::DeleteFromTextNodeCommand::doApply): Eliminated inappropriate assertions.
        (WebCore::DeleteFromTextNodeCommand::doUnapply): Ditto.
        * editing/DeleteFromTextNodeCommand.h:

        * editing/DeleteSelectionCommand.cpp:
        (WebCore::DeleteSelectionCommand::removeNode): Use PassRefPtr.
        (WebCore::DeleteSelectionCommand::deleteTextFromNode): Ditto.
        * editing/DeleteSelectionCommand.h:

        * editing/FormatBlockCommand.cpp:
        (WebCore::FormatBlockCommand::FormatBlockCommand): Use AtomicString.
        (WebCore::FormatBlockCommand::doApply): Use Element.
        * editing/FormatBlockCommand.h:

        * editing/IndentOutdentCommand.cpp:
        (WebCore::createIndentBlockquoteElement): Use new to create the element
        instead of calling a function so we have a more specific type.
        (WebCore::IndentOutdentCommand::prepareBlockquoteLevelForInsertion):
        Use RefPtr and Element.
        (WebCore::IndentOutdentCommand::indentRegion): Ditto.
        (WebCore::IndentOutdentCommand::outdentParagraph): Ditto.
        * editing/IndentOutdentCommand.h:

        * editing/InsertIntoTextNodeCommand.cpp:
        (WebCore::InsertIntoTextNodeCommand::InsertIntoTextNodeCommand):
        Use unsigned. Added an assertion.
        (WebCore::InsertIntoTextNodeCommand::doApply): Eliminated inappropriate assertions.
        (WebCore::InsertIntoTextNodeCommand::doUnapply): Ditto.
        * editing/InsertIntoTextNodeCommand.h:

        * editing/InsertLineBreakCommand.cpp:
        (WebCore::InsertLineBreakCommand::insertNodeAfterPosition): Use Element.
        (WebCore::InsertLineBreakCommand::insertNodeBeforePosition): Ditto.

        * editing/InsertListCommand.cpp:
        (WebCore::InsertListCommand::doApply): Use Element.

        * editing/InsertNodeBeforeCommand.cpp:
        (WebCore::InsertNodeBeforeCommand::InsertNodeBeforeCommand): Moved assertions
        here from doApply.
        (WebCore::InsertNodeBeforeCommand::doApply): Eliminated inappropriate assertions.
        Added a null check.
        (WebCore::InsertNodeBeforeCommand::doUnapply): Simplified to just a single remove call.

        * editing/InsertParagraphSeparatorCommand.cpp:
        (WebCore::InsertParagraphSeparatorCommand::doApply): Use Element and cloneElement.

        * editing/JoinTextNodesCommand.cpp:
        (WebCore::JoinTextNodesCommand::doApply): Eliminated inappropriate assertions.
        Added some runtime checks. Don't store anything in m_offset.
        (WebCore::JoinTextNodesCommand::doUnapply): Ditto.
        * editing/JoinTextNodesCommand.h:

        * editing/MergeIdenticalElementsCommand.cpp:
        (WebCore::MergeIdenticalElementsCommand::MergeIdenticalElementsCommand): Moved
        an assertion here from doApply.
        (WebCore::MergeIdenticalElementsCommand::doApply): Eliminated inappropriate assertions.
        Added a null check. Changed implementation to use remove to avoid null parent issue.
        Use a vector of nodes to avoid possible infinite loop if mutation happens while iterating.
        (WebCore::MergeIdenticalElementsCommand::doUnapply): Ditto.

        * editing/ModifySelectionListLevel.cpp:
        (WebCore::ModifySelectionListLevelCommand::appendSiblingNodeRange): Use Element*.
        (WebCore::IncreaseSelectionListLevelCommand::doApply): Ditto.
        * editing/ModifySelectionListLevel.h:

        * editing/RemoveCSSPropertyCommand.cpp:
        (WebCore::RemoveCSSPropertyCommand::RemoveCSSPropertyCommand): Use PassRefPtr and
        CSSPropertyID. Also renamed m_decl to m_style.
        (WebCore::RemoveCSSPropertyCommand::doApply): Eliminated inappropriate assertions.
        (WebCore::RemoveCSSPropertyCommand::doUnapply): Ditto.

        * editing/RemoveNodeAttributeCommand.cpp: Removed contents of this file. To be deleted.
        Use SetNodeAttributeCommand instead.
        * editing/RemoveNodeAttributeCommand.h: Ditto.

        * editing/RemoveNodeCommand.cpp:
        (WebCore::RemoveNodeCommand::RemoveNodeCommand): Moved assertions here from doApply.
        Don't initialize m_refChild here; rather do it in doApply.
        (WebCore::RemoveNodeCommand::doApply): Eliminated inappropriate assertions. Added
        checks and streamlined implementation.
        (WebCore::RemoveNodeCommand::doUnapply): Ditto.
        * editing/RemoveNodeCommand.h:

        * editing/RemoveNodePreservingChildrenCommand.cpp:
        (WebCore::RemoveNodePreservingChildrenCommand::doApply): Use a vector.

        * editing/ReplaceSelectionCommand.cpp:
        (WebCore::ReplacementFragment::insertFragmentForTestRendering): Removed now-unneeded cast.

        * editing/SetNodeAttributeCommand.cpp:
        (WebCore::SetNodeAttributeCommand::SetNodeAttributeCommand): Use AtomicString.
        Removed assertion that prevents us from using this to remove an attribute.
        (WebCore::SetNodeAttributeCommand::doApply): Eliminated inappropriate assertions.
        (WebCore::SetNodeAttributeCommand::doUnapply): Ditto.
        * editing/SetNodeAttributeCommand.h:

        * editing/SplitElementCommand.cpp:
        (WebCore::SplitElementCommand::SplitElementCommand): Moved assertion here from doApply.
        (WebCore::SplitElementCommand::doApply): Check some more invariants and use a vector
        to avoid possible infinite loops.
        (WebCore::SplitElementCommand::doUnapply): Ditto.

        * editing/SplitTextNodeCommand.cpp:
        (WebCore::SplitTextNodeCommand::SplitTextNodeCommand): Moved assertions and comment
        here from doApply.
        (WebCore::SplitTextNodeCommand::doApply): Check for null and failures when applying.
        (WebCore::SplitTextNodeCommand::doUnapply): Ditto.

        * editing/SplitTextNodeContainingElementCommand.cpp:
        (WebCore::SplitTextNodeContainingElementCommand::doApply): Use Element.

        * editing/WrapContentsInDummySpanCommand.cpp:
        (WebCore::WrapContentsInDummySpanCommand::doApply): Check for null and ignore failures.
        Don't reuse the dummy span. Simplified logic.
        (WebCore::WrapContentsInDummySpanCommand::doUnapply): Ditto.

        * editing/htmlediting.cpp:
        (WebCore::isBlock): Make sure this returns true only for elements.
        (WebCore::enclosingBlock): Return an Element*.
        (WebCore::enclosingTableCell): Ditto.
        (WebCore::enclosingList): Return an HTMLElement*.
        (WebCore::outermostEnclosingList): Return an HTMLElement*.
        (WebCore::createDefaultParagraphElement): Return an HTMLElement*.
        (WebCore::createBreakElement): Return an HTMLElement*.
        (WebCore::createOrderedListElement): Return an HTMLElement*.
        (WebCore::createUnorderedListElement): Return an HTMLElement*.
        (WebCore::createListItemElement): Return an HTMLElement*.
        (WebCore::createHTMLElement): Return an HTMLElement*.
        * editing/htmlediting.h:

        * editing/markup.cpp:
        (WebCore::createFragmentFromText): Use createBreakElement and use Element*.

        * page/MouseEventWithHitTestResults.cpp:
        (WebCore::MouseEventWithHitTestResults::targetNode): Use parentElement.

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

11 years agoWebKit:
darin@apple.com [Tue, 23 Dec 2008 21:40:36 +0000 (21:40 +0000)]
WebKit:

2008-12-23  Darin Adler  <darin@apple.com>

        Reviewed by Alexey Proskuryakov.

        - fix https://bugs.webkit.org/show_bug.cgi?id=22976
          crash due to Mail's use of WebArchive and WebResource on non-main thread

        * StringsNotToBeLocalized.txt: Updated.

        * WebKit.xcodeproj/project.pbxproj: Added new file WebNSObjectExtras.mm and
        existing file WebResourceInternal.h.

WebKit/mac:

2008-12-23  Darin Adler  <darin@apple.com>

        Reviewed by Alexey Proskuryakov (a slightly earlier version).

        - fix https://bugs.webkit.org/show_bug.cgi?id=22976
          crash due to Mail's use of WebArchive and WebResource on non-main thread

        * Misc/WebKitLogging.h: Improved comments for ASSERT_MAIN_THREAD. Got rid of
        WebKitRunningOnMainThread function, which was just a cover for pthread_main_np.
        * Misc/WebKitLogging.m: Ditto.

        * Misc/WebKitVersionChecks.h: Added a version after which we won't do the
        main thread workaround.

        * Misc/WebNSObjectExtras.h: Added a new method, _webkit_getPropertyOnMainThread:,
        which performs a selector on the main thread, waits for it to complete, and then
        returns the value on the caller thread.
        * Misc/WebNSObjectExtras.mm: Added.

        * WebView/WebArchive.mm:
        (-[WebArchive init]): Added WebCoreThreadViolationCheck.
        (-[WebArchive initWithMainResource:subresources:subframeArchives:]): Perform
        initialization on main thread if needMailThreadWorkaround is true.
        Also added WebCoreThreadViolationCheck.
        (-[WebArchive initWithData:]): Added WebCoreThreadViolationCheck.
        (-[WebArchive mainResource]): Get property on main thread if
        needMailThreadWorkaround is true. Also added WebCoreThreadViolationCheck.
        (-[WebArchive subresources]): Ditto.
        (-[WebArchive subframeArchives]): Ditto.
        (-[WebArchive data]): Ditto.
        (-[WebArchive _initWithCoreLegacyWebArchive:]): Added WebCoreThreadViolationCheck.
        (-[WebArchive _coreLegacyWebArchive]): Ditto.
        (-[WebArchive _initWithArguments:]): Added. Used to implement the cross-thread
        version of initWithMainResource above.

        * WebView/WebResource.mm:
        (-[WebResource initWithCoder:]): Added WebCoreThreadViolationCheck.
        (-[WebResource data]): Get property on main thread if
        needMailThreadWorkaround is true. Also added WebCoreThreadViolationCheck.
        (-[WebResource URL]): Ditto.
        (-[WebResource MIMEType]): Ditto.
        (-[WebResource textEncodingName]): Ditto.
        (-[WebResource frameName]): Ditto.
        (-[WebResource _ignoreWhenUnarchiving]): Ditto.
        (-[WebResource _initWithData:URL:MIMEType:textEncodingName:frameName:response:copyData:]):
        Perform initialization on main thread if needMailThreadWorkaround is true.
        Also added WebCoreThreadViolationCheck.
        (-[WebResource _suggestedFilename]): Added. Helper for _fileWrapperRepresentation.
        (-[WebResource _fileWrapperRepresentation]): Rewrote to use methods instead of
        getting at coreResource directly.
        (-[WebResource _response]): Get property on main thread if
        needMailThreadWorkaround is true. Also added WebCoreThreadViolationCheck.
        (-[WebResource _stringValue]): Ditto.
        (+[WebResource _needMailThreadWorkaroundIfCalledOffMainThread]): Added.
        (-[WebResource _initWithArguments:]): Added. Used to implement the cross-thread
        version of _initWithData above.

        * WebView/WebResourceInternal.h: Changed to include WebResourcePrivate.h since internal
        clients have access to the SPI as well as the API. Added definition of MAIL_THREAD_WORKAROUND
        and the needMainThreadWorkaround helper function.

        * Misc/WebIconDatabase.mm: Removed include of now-defunct FoundationExtras.h
        file. This probably fixes clean builds.
        * WebCoreSupport/WebIconDatabaseClient.mm: Ditto.

        * WebCoreSupport/WebFrameLoaderClient.mm: Removed include of WebResourcePrivate.h,
        since it's not actually used.
        * WebView/WebDataSource.mm: Ditto.
        * WebView/WebHTMLRepresentation.mm: Ditto.

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

11 years ago2008-12-23 Darin Adler <darin@apple.com>
darin@apple.com [Tue, 23 Dec 2008 20:28:37 +0000 (20:28 +0000)]
2008-12-23  Darin Adler  <darin@apple.com>

        Reviewed by Dan Bernstein.

        * dom/Node.h: Tweak comments and order of bits that Sam moved
        here last night.
        * dom/Node.cpp: Ditto.

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

11 years agoWebCore:
jchaffraix@webkit.org [Tue, 23 Dec 2008 19:01:12 +0000 (19:01 +0000)]
WebCore:

2008-12-22  Julien Chaffraix  <jchaffraix@webkit.org>

        Reviewed by Darin Adler.

        Bug 11106: Some XMLHttpRequest URI resolving tests fail
        https://bugs.webkit.org/show_bug.cgi?id=11106

        Use the ScriptExecutionContext to resolve the URI when calling open in JavaScript.
        The previous code was using the containing DOMWindow to do so which would fail for
        XMLHttpRequest object being passed between iframe.

        Tests: http/tests/xmlhttprequest/uri-resolution-opera-open-004.html
               http/tests/xmlhttprequest/uri-resolution-opera-open-005.html
               http/tests/xmlhttprequest/uri-resolution-opera-open-006.html
               http/tests/xmlhttprequest/uri-resolution-opera-open-007.html
               http/tests/xmlhttprequest/uri-resolution-opera-open-008.html
               http/tests/xmlhttprequest/uri-resolution-opera-open-009.html
               http/tests/xmlhttprequest/uri-resolution-opera-open-010.html

        * bindings/js/JSXMLHttpRequestCustom.cpp:
        (WebCore::JSXMLHttpRequest::open): Use the ScriptExecutionContext
        to resolve the URL.

        * dom/Document.cpp:
        (WebCore::Document::virtualCompleteURL): Virtual method added to
        avoid performance hit on completeURL call.

        * dom/Document.h:
        * dom/ScriptExecutionContext.h:
        (WebCore::ScriptExecutionContext::completeURL): Non-virtual method
        that wrap the call to the virtual call.
        * dom/WorkerContext.cpp:
        (WebCore::WorkerContext::virtualCompleteURL): Pure virtual method.
        * dom/WorkerContext.h:

LayoutTests:

2008-12-22  Julien Chaffraix  <jchaffraix@webkit.org>

        Reviewed by Darin Adler.

        Test case for bug 11106: Some XMLHttpRequest URI resolving tests fail
        https://bugs.webkit.org/show_bug.cgi?id=11106

        These tests are borrowed from Opera's test case suite (http://tc.labs.opera.com/apis/XMLHttpRequest).
        They correspond to open/004.html - open/010.html which were previously failing.

        * http/tests/xmlhttprequest/resources/test-uri-resolution.txt: Added.
        * http/tests/xmlhttprequest/resources/uri-resolution-opera-open-004-iframe.html: Added.
        * http/tests/xmlhttprequest/resources/uri-resolution-opera-open-005-iframe.html: Added.
        * http/tests/xmlhttprequest/resources/uri-resolution-opera-open-006-iframe.html: Added.
        * http/tests/xmlhttprequest/resources/uri-resolution-opera-open-007-iframe.html: Added.
        * http/tests/xmlhttprequest/resources/uri-resolution-opera-open-008-iframe.html: Added.
        * http/tests/xmlhttprequest/resources/uri-resolution-opera-open-009-iframe.html: Added.
        * http/tests/xmlhttprequest/resources/uri-resolution-opera-open-010-iframe.html: Added.
        * http/tests/xmlhttprequest/test-uri-resolution.txt: Added.
        * http/tests/xmlhttprequest/uri-resolution-opera-open-004-expected.txt: Added.
        * http/tests/xmlhttprequest/uri-resolution-opera-open-004.html: Added.
        * http/tests/xmlhttprequest/uri-resolution-opera-open-005-expected.txt: Added.
        * http/tests/xmlhttprequest/uri-resolution-opera-open-005.html: Added.
        * http/tests/xmlhttprequest/uri-resolution-opera-open-006-expected.txt: Added.
        * http/tests/xmlhttprequest/uri-resolution-opera-open-006.html: Added.
        * http/tests/xmlhttprequest/uri-resolution-opera-open-007-expected.txt: Added.
        * http/tests/xmlhttprequest/uri-resolution-opera-open-007.html: Added.
        * http/tests/xmlhttprequest/uri-resolution-opera-open-008-expected.txt: Added.
        * http/tests/xmlhttprequest/uri-resolution-opera-open-008.html: Added.
        * http/tests/xmlhttprequest/uri-resolution-opera-open-009-expected.txt: Added.
        * http/tests/xmlhttprequest/uri-resolution-opera-open-009.html: Added.
        * http/tests/xmlhttprequest/uri-resolution-opera-open-010-expected.txt: Added.
        * http/tests/xmlhttprequest/uri-resolution-opera-open-010.html: Added.

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

11 years ago2008-12-23 Darin Adler <darin@apple.com>
darin@apple.com [Tue, 23 Dec 2008 17:25:30 +0000 (17:25 +0000)]
2008-12-23  Darin Adler  <darin@apple.com>

        Reviewed by Dan Bernstein.

        - fix https://bugs.webkit.org/show_bug.cgi?id=22979
          crash seen in -[WebView drawsBackground] when quitting
          <rdar://problem/6464601>

        * WebView/WebView.mm:
        (-[WebView drawsBackground]): Added comment and a null check for _private.

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

11 years ago2008-12-23 Darin Adler <darin@apple.com>
darin@apple.com [Tue, 23 Dec 2008 17:22:10 +0000 (17:22 +0000)]
2008-12-23  Darin Adler  <darin@apple.com>

        Reviewed by Dan Bernstein.

        - https://bugs.webkit.org/show_bug.cgi?id=22978
          a couple tweaks to the new strokeBoundingRect functions

        * platform/graphics/cairo/PathCairo.cpp:
        (WebCore::Path::strokeBoundingRect): Only create a GraphicsContext
        if the applier is non-null.

        * platform/graphics/cg/PathCG.cpp:
        (WebCore::putBytesNowhere): Added.
        (WebCore::createScratchContext): Changed to use a "/dev/null" type
        function to discard bytes rather than using a data object. This
        eliminates the possibility that memory will be used if someone draws
        into the scratch context by accident. Also moved to the top of the
        file; it was in a slightly strange place before.
        (WebCore::Path::strokeBoundingRect): Only create a GraphicsContext
        if the applier is non-null. Simplify the empty path special case.

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

11 years ago2008-12-22 Gavin Barraclough <barraclough@apple.com>
barraclough@apple.com [Tue, 23 Dec 2008 07:08:59 +0000 (07:08 +0000)]
2008-12-22  Gavin Barraclough  <barraclough@apple.com>

        Reviewed by Oliver Hunt.

        Fix rounding / bounds / signed comparison bug in ExecutableAllocator.

        ExecutableAllocator::alloc assumed that m_freePtr would be aligned.  This was
        not always true, since the first allocation from an additional pool would not
        be rounded up.  Subsequent allocations would be unaligned, and too much memory
        could be erroneously allocated from the pool, when the size requested was
        available, but the size rounded up to word granularity was not available in the
        pool.  This may result in the value of m_freePtr being greater than m_end.

        Under these circumstances, the unsigned check for space will always pass,
        resulting in pointers to memory outside of the arena being returned, and
        ultimately segfaulty goodness when attempting to memcpy the hot freshly jitted
        code from the AssemblerBuffer.

        https://bugs.webkit.org/show_bug.cgi?id=22974
        ... and probably many, many more.

        * jit/ExecutableAllocator.h:
        (JSC::ExecutablePool::alloc):
        (JSC::ExecutablePool::roundUpAllocationSize):
        (JSC::ExecutablePool::ExecutablePool):
        (JSC::ExecutablePool::poolAllocate):

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

11 years ago2008-12-22 Sam Weinig <sam@webkit.org>
weinig@apple.com [Tue, 23 Dec 2008 03:05:47 +0000 (03:05 +0000)]
2008-12-22  Sam Weinig  <sam@webkit.org>

        Reviewed by Mark Rowe.

        Save a word in all Elements by moving the 5 loose bits to Node,
        where we had 16 spare.

        * dom/Element.cpp:
        (WebCore::Element::Element):
        * dom/Element.h:
        * dom/Node.cpp:
        (WebCore::Node::Node):
        * dom/Node.h:

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

11 years agoReviewed by George Staikos.
zimmermann@webkit.org [Tue, 23 Dec 2008 02:14:09 +0000 (02:14 +0000)]
Reviewed by George Staikos.

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

Add WML <meta> element support. All needed functionality is present
in Document::processHttpEquiv, already covered by tests.

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

11 years agoRubber-stamped by Darin Adler.
zimmermann@webkit.org [Tue, 23 Dec 2008 01:55:21 +0000 (01:55 +0000)]
Rubber-stamped by Darin Adler.

Don't reference specific layout tests in comments.

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

11 years agoReviewed by George Staikos.
zimmermann@webkit.org [Tue, 23 Dec 2008 01:31:15 +0000 (01:31 +0000)]
Reviewed by George Staikos.

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

Add WML <head> element support. Doesn't require a WMLHeadElement.
No functional behaviour, as we already created a WMLElement for headTag, by default.
It's just cleaner to list <head> in WMLTagNames, forwarding to a WMLElement constructor.

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

11 years agoReviewed by George Staikos.
zimmermann@webkit.org [Tue, 23 Dec 2008 01:29:05 +0000 (01:29 +0000)]
Reviewed by George Staikos.

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

Fix regression caused by the HTMLFormElement refactorization.
File form elements without a name have to be included in multipart/form-data
submission. Cover this behaviour with a new test case.

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

11 years ago <rdar://problem/6438298> Bump schema version for app cache
ddkilzer@apple.com [Tue, 23 Dec 2008 01:06:58 +0000 (01:06 +0000)]
    <rdar://problem/6438298> Bump schema version for app cache

        Reviewed by Alexey Proskuryakov.

        * loader/appcache/ApplicationCacheStorage.cpp: Increment
        SchemaVersion from 2 to 3.

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

11 years ago Use Deque in CSSStyleSheet::addSubresourceStyleURLs()
ddkilzer@apple.com [Tue, 23 Dec 2008 00:49:34 +0000 (00:49 +0000)]
    Use Deque in CSSStyleSheet::addSubresourceStyleURLs()

        Reviewed by Darin Adler.

        * css/CSSStyleSheet.cpp:
        (WebCore::CSSStyleSheet::addSubresourceStyleURLs): Replaced
        use of ListHashSet with more efficient Deque.

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

11 years agoReviewed by Sam Weinig.
zimmermann@webkit.org [Tue, 23 Dec 2008 00:25:13 +0000 (00:25 +0000)]
Reviewed by Sam Weinig.

Fix obvious crash fix for WML enabled builds.

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

11 years ago Bug 11850: Webarchive fails to save images referenced in CSS
ddkilzer@apple.com [Tue, 23 Dec 2008 00:00:14 +0000 (00:00 +0000)]
    Bug 11850: Webarchive fails to save images referenced in CSS

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

        Reviewed by Darin Adler.

WebCore:

        This entry contains two parts since the tests for adding a
        completeURL() method to StyleSheet and CSSStyleSheet (part 1) depend
        on Bug 11850 being fixed (part 2).

        --

        Tests: http/tests/webarchive/test-css-url-encoding-shift-jis.html
               http/tests/webarchive/test-css-url-encoding-utf-8.html
               http/tests/webarchive/test-css-url-encoding.html

        Added completeURL() methods to StyleSheet and CSSStyleSheet that
        match the behavior of Document::completeURL().  Most notably,
        CSSStyleSheet::completeURL() uses the charset of the stylesheet
        (if it exists) to construct URLs, just like Document::completeURL().

        * css/CSSParser.cpp:
        (WebCore::CSSParser::parseValue): Use CSSStyleSheet::completeURL().
        (WebCore::CSSParser::parseContent): Ditto.
        (WebCore::CSSParser::parseFillImage): Ditto.
        (WebCore::CSSParser::parseFontFaceSrc): Ditto.
        (WebCore::CSSParser::parseBorderImage): Ditto.

        * css/CSSStyleSheet.cpp:
        (WebCore::CSSStyleSheet::completeURL): Added.
        * css/CSSStyleSheet.h:
        (WebCore::CSSStyleSheet::completeURL): Added declaration.

        * css/StyleSheet.cpp:
        (WebCore::StyleSheet::completeURL): Added.
        * css/StyleSheet.h:
        (WebCore::StyleSheet::completeURL): Added declaration.

        * dom/Document.cpp:
        (WebCore::Document::completeURL): Added comment referring to the new
        completeURL() methods in StyleSheet and CSSStyleSheet.

        --

        Tests: webarchive/test-css-url-resources-in-stylesheets.html
               webarchive/test-css-url-resources-inline-styles.html

        Walk stylesheets and inline style attributes for url() references
        when building a list of URLs to include in a webarchive.  Note that
        not all URLs found this way will be included in the webarchive if
        they were not used (and thus not downloaded) when laying out the
        page.

        The key method for CSS stylesheets is
        CSSStyleSheet::addSubresourceStyleURLs() which iterates over all
        CSSStyleSheet objects recursively referenced from its own stylesheet
        through @import rules.  Starting with the CSSRule objects in each
        sheet and continuing down through the CSSMutableStyleDeclaration and
        CSSValue objects, addSubresourceStyleURLs() methods are called to
        gather URLs.

        For inline style attributes in HTML DOM elements,
        StyledElement::addSubresourceAttributeURLs() calls
        CSSMutableStyleDeclaration::addSubresourceStyleURLs() to gather URLs
        from each element, hence the need to call
        addSubresourceAttributeURLs() on superclasses when the method is
        implemented on the element class itself.

        * css/CSSBorderImageValue.cpp:
        (WebCore::CSSBorderImageValue::addSubresourceStyleURLs): Added.
        * css/CSSBorderImageValue.h:
        (WebCore::CSSBorderImageValue::addSubresourceStyleURLs): Added
        declaration.

        * css/CSSFontFaceRule.cpp:
        (WebCore::CSSFontFaceRule::addSubresourceStyleURLs): Added.
        * css/CSSFontFaceRule.h:
        (WebCore::CSSFontFaceRule::addSubresourceStyleURLs): Added
        declaration.

        * css/CSSFontFaceSrcValue.cpp:
        (WebCore::CSSFontFaceSrcValue::addSubresourceStyleURLs): Added.
        * css/CSSFontFaceSrcValue.h:
        (WebCore::CSSFontFaceSrcValue::addSubresourceStyleURLs): Added
        declaration.

        * css/CSSImportRule.cpp:
        (WebCore::CSSImportRule::addSubresourceStyleURLs): Added.
        * css/CSSImportRule.h:
        (WebCore::CSSImportRule::addSubresourceStyleURLs): Added
        declaration.

        * css/CSSMutableStyleDeclaration.cpp:
        (WebCore::CSSMutableStyleDeclaration::addSubresourceStyleURLs): Added.
        Iterates over m_properties vector of CSSProperty objects calling
        addSubresourceStyleURLs() on each property's CSSValue object.
        * css/CSSMutableStyleDeclaration.h:
        (WebCore::CSSMutableStyleDeclaration::addSubresourceStyleURLs): Added
        declaration.

        * css/CSSPrimitiveValue.cpp:
        (WebCore::CSSPrimitiveValue::addSubresourceStyleURLs): Added.
        * css/CSSPrimitiveValue.h:
        (WebCore::CSSPrimitiveValue::addSubresourceStyleURLs): Added
        declaration.

        * css/CSSReflectValue.cpp:
        (WebCore::CSSReflectValue::addSubresourceStyleURLs): Added.
        * css/CSSReflectValue.h:
        (WebCore::CSSReflectValue::addSubresourceStyleURLs): Added
        declaration.

        * css/CSSRule.h:
        (WebCore::CSSRule::addSubresourceStyleURLs): Added.  Virtual
        method with empty implementation that's overridden by subclasses
        as needed.

        * css/CSSStyleRule.cpp:
        (WebCore::CSSStyleRule::addSubresourceStyleURLs): Added.
        * css/CSSStyleRule.h:
        (WebCore::CSSStyleRule::addSubresourceStyleURLs): Added
        declaration.

        * css/CSSStyleSheet.cpp:
        (WebCore::CSSStyleSheet::addSubresourceStyleURLs): Updated to
        call CSSRule::addSubresourceStyleURLs on each rule to extract
        URLs.  Removed unneeded baseURL parameter now that the
        completeURL() method exists.
        * css/CSSStyleSheet.h:
        (WebCore::CSSStyleSheet::addSubresourceStyleURLs): Updated
        declaration.

        * css/CSSValue.h:
        (WebCore::CSSValue::addSubresourceStyleURLs): Added.  Virtual
        method with empty implementation that's overridden by subclasses
        as needed.

        * css/CSSValueList.cpp:
        (WebCore::CSSValueList::addSubresourceStyleURLs): Added.
        Iterates over m_values vector of CSSValue objects calling
        addSubresourceStyleURLs() on each.
        * css/CSSValueList.h:
        (WebCore::CSSValueList::addSubresourceStyleURLs): Added
        declaration.

        * css/StyleSheet.h:
        (WebCore::StyleSheet::addSubresourceStyleURLs): Updated
        declaration to remove unneeded baseURL parameter.

        * dom/ProcessingInstruction.cpp:
        (WebCore::ProcessingInstruction::addSubresourceAttributeURLs):
        Fixed to use the StyleBase::baseURL() method to get the
        stylesheet's URL instead of calling Document::completeURL().

        * dom/StyledElement.cpp:
        (WebCore::StyledElement::addSubresourceAttributeURLs): Added method
        to extract URLs from inline style declarations.
        * dom/StyledElement.h:
        (WebCore::StyledElement::addSubresourceAttributeURLs): Added
        declaration.

        * html/HTMLBodyElement.cpp:
        (WebCore::HTMLBodyElement::addSubresourceAttributeURLs): Call
        addSubresourceAttributeURLs() in superclass to extract URLs
        from inline style declarations.
        * html/HTMLEmbedElement.cpp:
        (WebCore::HTMLEmbedElement::addSubresourceAttributeURLs): Ditto.
        * html/HTMLImageElement.cpp:
        (WebCore::HTMLImageElement::addSubresourceAttributeURLs): Ditto.
        * html/HTMLInputElement.cpp:
        (WebCore::HTMLInputElement::addSubresourceAttributeURLs): Ditto.
        * html/HTMLLinkElement.cpp:
        (WebCore::HTMLLinkElement::addSubresourceAttributeURLs): Ditto.
        * html/HTMLObjectElement.cpp:
        (WebCore::HTMLObjectElement::addSubresourceAttributeURLs): Ditto.
        * html/HTMLParamElement.cpp:
        (WebCore::HTMLParamElement::addSubresourceAttributeURLs): Ditto.
        * html/HTMLScriptElement.cpp:
        (WebCore::HTMLScriptElement::addSubresourceAttributeURLs): Ditto.
        * html/HTMLStyleElement.cpp:
        (WebCore::HTMLStyleElement::addSubresourceAttributeURLs): Ditto.
        * html/HTMLTableCellElement.cpp:
        (WebCore::HTMLTableCellElement::addSubresourceAttributeURLs): Ditto.
        * html/HTMLTableElement.cpp:
        (WebCore::HTMLTableElement::addSubresourceAttributeURLs): Ditto.
        * svg/SVGCursorElement.cpp:
        (WebCore::SVGCursorElement::addSubresourceAttributeURLs): Ditto.
        * svg/SVGFEImageElement.cpp:
        (WebCore::SVGFEImageElement::addSubresourceAttributeURLs): Ditto.
        * svg/SVGImageElement.cpp:
        (WebCore::SVGImageElement::addSubresourceAttributeURLs): Ditto.
        * svg/SVGScriptElement.cpp:
        (WebCore::SVGScriptElement::addSubresourceAttributeURLs): Ditto.

LayoutTests:

        The first set of files below tests that URLs are encoded properly
        based on the charset of the stylesheet.  Normally this behavior may
        only be tested by looking at web server logs with manual tests, but
        webarchives represent this information in such a way that they may
        be tested by DumpRenderTree.  Note that these tests depend on Bug
        11850 being fixed, so it's not possible to separate them.

        The second set of files below tests that all types of resources
        referenced by url() in CSS stylesheets are now saved in webarchives.

        * http/tests/webarchive/resources/.htaccess: Added.
        * http/tests/webarchive/resources/apple.gif: Copied from LayoutTests/fast/canvas/resources/apple.gif.
        * http/tests/webarchive/resources/test-no-charset.css: Added.
        * http/tests/webarchive/resources/test-shift-jis.css: Added.
        * http/tests/webarchive/resources/test-utf-8.css: Added.
        * http/tests/webarchive/test-css-url-encoding-expected.webarchive: Added.
        * http/tests/webarchive/test-css-url-encoding-shift-jis-expected.webarchive: Added.
        * http/tests/webarchive/test-css-url-encoding-shift-jis.html: Added.
        * http/tests/webarchive/test-css-url-encoding-utf-8-expected.webarchive: Added.
        * http/tests/webarchive/test-css-url-encoding-utf-8.html: Added.
        * http/tests/webarchive/test-css-url-encoding.html: Added.

        * webarchive/resources/Ahem.ttf: Copied from LayoutTests/fast/css/resources/Ahem.ttf.
        * webarchive/test-css-url-resources-in-stylesheets-expected.webarchive: Added.
        * webarchive/test-css-url-resources-in-stylesheets.html: Added.
        * webarchive/test-css-url-resources-inline-styles-expected.webarchive: Added.
        * webarchive/test-css-url-resources-inline-styles.html: Added.

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

11 years ago2008-12-22 Sam Weinig <sam@webkit.org>
weinig@apple.com [Mon, 22 Dec 2008 21:21:18 +0000 (21:21 +0000)]
2008-12-22  Sam Weinig  <sam@webkit.org>

        Reviewed by Gavin Barraclough.

        Rename all uses of the term "repatch" to "patch".

        * assembler/MacroAssembler.h:
        (JSC::MacroAssembler::DataLabelPtr::patch):
        (JSC::MacroAssembler::DataLabel32::patch):
        (JSC::MacroAssembler::Jump::patch):
        (JSC::MacroAssembler::PatchBuffer::PatchBuffer):
        (JSC::MacroAssembler::PatchBuffer::setPtr):
        (JSC::MacroAssembler::loadPtrWithAddressOffsetPatch):
        (JSC::MacroAssembler::storePtrWithAddressOffsetPatch):
        (JSC::MacroAssembler::storePtrWithPatch):
        (JSC::MacroAssembler::jnePtrWithPatch):
        * assembler/X86Assembler.h:
        (JSC::X86Assembler::patchAddress):
        (JSC::X86Assembler::patchImmediate):
        (JSC::X86Assembler::patchPointer):
        (JSC::X86Assembler::patchBranchOffset):
        * interpreter/Interpreter.cpp:
        (JSC::Interpreter::tryCTICachePutByID):
        (JSC::Interpreter::tryCTICacheGetByID):
        (JSC::Interpreter::cti_op_put_by_id):
        (JSC::Interpreter::cti_op_get_by_id):
        (JSC::Interpreter::cti_op_get_by_id_self_fail):
        (JSC::Interpreter::cti_op_get_by_id_proto_list):
        (JSC::Interpreter::cti_vm_dontLazyLinkCall):
        * jit/JIT.cpp:
        (JSC::ctiPatchCallByReturnAddress):
        (JSC::JIT::privateCompileMainPass):
        (JSC::JIT::privateCompile):
        (JSC::JIT::privateCompileCTIMachineTrampolines):
        * jit/JIT.h:
        * jit/JITCall.cpp:
        (JSC::JIT::unlinkCall):
        (JSC::JIT::linkCall):
        (JSC::JIT::compileOpCall):
        * jit/JITPropertyAccess.cpp:
        (JSC::JIT::compileGetByIdHotPath):
        (JSC::JIT::compilePutByIdHotPath):
        (JSC::JIT::compileGetByIdSlowCase):
        (JSC::JIT::compilePutByIdSlowCase):
        (JSC::JIT::privateCompilePutByIdTransition):
        (JSC::JIT::patchGetByIdSelf):
        (JSC::JIT::patchPutByIdReplace):
        (JSC::JIT::privateCompilePatchGetArrayLength):
        (JSC::JIT::privateCompileGetByIdSelf):
        (JSC::JIT::privateCompileGetByIdProto):
        (JSC::JIT::privateCompileGetByIdSelfList):
        (JSC::JIT::privateCompileGetByIdProtoList):
        (JSC::JIT::privateCompileGetByIdChainList):
        (JSC::JIT::privateCompileGetByIdChain):
        (JSC::JIT::privateCompilePutByIdReplace):

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

11 years ago2008-12-22 Dhananjoy Chutia <dhanrd@gmail.com>
ddkilzer@apple.com [Mon, 22 Dec 2008 21:20:26 +0000 (21:20 +0000)]
2008-12-22  Dhananjoy Chutia  <dhanrd@gmail.com>

        Reviewed by David Kilzer.

        Fixes: https://bugs.webkit.org/show_bug.cgi?id=22959
        Memory leak fixes for WebKit+soup

        * platform/network/soup/ResourceHandleSoup.cpp:
        (WebCore::finishedCallback):

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

11 years ago Reviewed by Anders Carlsson.
kdecker@apple.com [Mon, 22 Dec 2008 19:19:04 +0000 (19:19 +0000)]
    Reviewed by Anders Carlsson.

        <rdar://problem/6449588> REGRESSION (r38279-r38280): Minimize them remaximize a window with a flash plugin, plugin doesn't resume at full speed

        * Plugins/WebBaseNetscapePluginView.mm:
        (-[WebBaseNetscapePluginView windowDidDeminiaturize:]): Deminiaturizing should restart timers, not stop timers.

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

11 years ago Reviewed by Darin Adler.
ap@webkit.org [Mon, 22 Dec 2008 18:16:59 +0000 (18:16 +0000)]
    Reviewed by Darin Adler.

        <rdar://problem/6277060> ASSERTION FAILED: !m_cacheBeingUpdated if the manifest is not available

        Tests: http/tests/appcache/404-manifest.html
               http/tests/appcache/fail-on-update.html

        * loader/appcache/ApplicationCacheGroup.cpp: (WebCore::ApplicationCacheGroup::stopLoading):
        Removed the incorrect assertion.

        * loader/appcache/ApplicationCacheGroup.h: Added an explanation of somewhat nonintuitive
        m_currentHandle handling.

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

11 years agoReviewed by Alexey Proskuryakov & George Staikos.
zimmermann@webkit.org [Mon, 22 Dec 2008 16:00:34 +0000 (16:00 +0000)]
Reviewed by Alexey Proskuryakov & George Staikos.

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

Add WML <fieldset> element support.
Unlike HTML's <fieldset> element, WML doesn't provide a <legend> child element
to describe the <fieldset>. WML instead offers a 'title' attribute on the <fieldset>
element. To integrate within the existing RenderFieldset code, we just create an
internal <insertedLegend> element as first child for a WML <fieldset> element, containing
the title attribute value.

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

11 years ago Build fix after r39428
aroben@apple.com [Mon, 22 Dec 2008 14:28:48 +0000 (14:28 +0000)]
    Build fix after r39428

        * jit/JITCall.cpp:
        (JSC::JIT::compileOpCallSlowCase): Added a missing MacroAssembler::

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

11 years ago2008-12-21 David Levin <levin@chromium.org>
ap@webkit.org [Mon, 22 Dec 2008 07:31:37 +0000 (07:31 +0000)]
2008-12-21  David Levin  <levin@chromium.org>

        Reviewed by Darin Adler.

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

        Attempted fix for 4 failing XMLHttpReuqest tests on Tiger:
         access-control-basic-allow-preflight-cache-invalidation-by-header.html
         access-control-basic-allow-preflight-cache-invalidation-by-method.html
         access-control-basic-allow-preflight-cache-timeout.html
         access-control-basic-allow-preflight-cache.html

        * http/tests/xmlhttprequest/resources/access-control-basic-preflight-cache-invalidation.php:
        * http/tests/xmlhttprequest/resources/access-control-basic-preflight-cache-timeout.php:
        * http/tests/xmlhttprequest/resources/access-control-basic-preflight-cache.php:
        * http/tests/xmlhttprequest/resources/portabilityLayer.php:
        * http/tests/xmlhttprequest/resources/reset-temp-file.php:

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

11 years agoNot reviewed. Try to fix clean Mac builds, set role=private for FormDataBuilder.h
zimmermann@webkit.org [Mon, 22 Dec 2008 02:57:09 +0000 (02:57 +0000)]
Not reviewed. Try to fix clean Mac builds, set role=private for FormDataBuilder.h

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

11 years agoRubber-stamped by George Staikos.
zimmermann@webkit.org [Mon, 22 Dec 2008 02:22:10 +0000 (02:22 +0000)]
Rubber-stamped by George Staikos.

Unify all TorchMobile copyright lines. Consolidate in a single line, as requested by Mark Rowe, some time ago.

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

11 years agoReviewed by George Staikos.
zimmermann@webkit.org [Mon, 22 Dec 2008 02:04:51 +0000 (02:04 +0000)]
Reviewed by George Staikos.

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

Add POST method support to WMLGoElement. GET & POST over HTTP
covered by a new set of WML HTTP layout tests.

Tests: http/tests/wml/go-task-get-method-accept-charset.html
       http/tests/wml/go-task-get-method.html
       http/tests/wml/go-task-post-method-accept-charset.html
       http/tests/wml/go-task-post-method.html

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

11 years agoReviewed by Darin Adler and George Staikos.
zimmermann@webkit.org [Mon, 22 Dec 2008 01:45:35 +0000 (01:45 +0000)]
Reviewed by Darin Adler and George Staikos.

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

Refactor HTMLFormElement to share a maximum level of code between HTMLFormElement & WMLGoElement.
Create a new helper class 'FormDataBuilder', which is hold as member variable in those classes.
It encapsulates all functionality needed to generate a FormData object, usable for HTML/WML form
submission, including boundary string generation, multi-part form handling etc.

No functional changes, no test cases affected.
WMLGoElement will be converted in a follow-up patch.

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

11 years agoRubber-stamped by George Staikos.
zimmermann@webkit.org [Mon, 22 Dec 2008 01:42:03 +0000 (01:42 +0000)]
Rubber-stamped by George Staikos.
Fix copyright of the new RandomNumber* files.

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

11 years ago2008-12-21 Gavin Barraclough <barraclough@apple.com>
barraclough@apple.com [Mon, 22 Dec 2008 01:00:07 +0000 (01:00 +0000)]
2008-12-21  Gavin Barraclough  <barraclough@apple.com>

        Reviewed by Oliver Hunt & Cameron Zwarich.

        Add support for call and property access repatching on x86-64.

        No change in performance on current configurations (2x impovement on v8-tests with JIT enabled on x86-64).

        * assembler/MacroAssembler.h:
        (JSC::MacroAssembler::DataLabelPtr::repatch):
        (JSC::MacroAssembler::DataLabelPtr::operator X86Assembler::JmpDst):
        (JSC::MacroAssembler::DataLabel32::repatch):
        (JSC::MacroAssembler::RepatchBuffer::addressOf):
        (JSC::MacroAssembler::add32):
        (JSC::MacroAssembler::sub32):
        (JSC::MacroAssembler::loadPtrWithAddressOffsetRepatch):
        (JSC::MacroAssembler::storePtrWithAddressOffsetRepatch):
        (JSC::MacroAssembler::jePtr):
        (JSC::MacroAssembler::jnePtr):
        (JSC::MacroAssembler::jnePtrWithRepatch):
        (JSC::MacroAssembler::differenceBetween):
        * assembler/X86Assembler.h:
        (JSC::X86Assembler::addl_im):
        (JSC::X86Assembler::subl_im):
        (JSC::X86Assembler::cmpl_rm):
        (JSC::X86Assembler::movq_rm_disp32):
        (JSC::X86Assembler::movq_mr_disp32):
        (JSC::X86Assembler::repatchPointer):
        (JSC::X86Assembler::X86InstructionFormatter::oneByteOp64_disp32):
        * jit/JIT.cpp:
        (JSC::JIT::privateCompile):
        (JSC::JIT::privateCompileCTIMachineTrampolines):
        * jit/JIT.h:
        * jit/JITCall.cpp:
        (JSC::JIT::unlinkCall):
        (JSC::JIT::linkCall):
        (JSC::JIT::compileOpCall):
        (JSC::JIT::compileOpCallSlowCase):
        * jit/JITInlineMethods.h:
        (JSC::JIT::restoreArgumentReferenceForTrampoline):
        * jit/JITPropertyAccess.cpp:
        (JSC::JIT::compileGetByIdHotPath):
        (JSC::JIT::compileGetByIdSlowCase):
        (JSC::JIT::compilePutByIdHotPath):
        (JSC::JIT::compilePutByIdSlowCase):
        (JSC::resizePropertyStorage):
        (JSC::JIT::privateCompilePutByIdTransition):
        (JSC::JIT::privateCompileGetByIdProto):
        (JSC::JIT::privateCompileGetByIdProtoList):
        (JSC::JIT::privateCompileGetByIdChainList):
        (JSC::JIT::privateCompileGetByIdChain):
        * wtf/Platform.h:

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

11 years ago2008-12-21 Dirk Schulze <krit@webkit.org>
krit@webkit.org [Sun, 21 Dec 2008 23:44:16 +0000 (23:44 +0000)]
2008-12-21  Dirk Schulze  <krit@webkit.org>

        Reviewed by Darin Adler, Nikolas Zimmermann.

        Move the the platform dependent strokeBBox functionality out of RenderPath
        into Path with strokeBoundingRect.

        RenderPath clean-up for strokeBoundingBox
        [https://bugs.webkit.org/show_bug.cgi?id=22902]

        * GNUmakefile.am:
        * WebCore.xcodeproj/project.pbxproj:
        * platform/graphics/GraphicsContext.h:
        * platform/graphics/Path.h:
        * platform/graphics/StrokeStyleApplier.h: Added.
        (WebCore::StrokeStyleApplier::~StrokeStyleApplier):
        * platform/graphics/cairo/PathCairo.cpp:
        (WebCore::Path::strokeBoundingRect):
        * platform/graphics/cg/PathCG.cpp:
        (WebCore::createScratchContext):
        (WebCore::scratchContext):
        (WebCore::Path::strokeBoundingRect):
        * platform/graphics/qt/GraphicsContextQt.cpp:
        (WebCore::GraphicsContext::pen):
        * platform/graphics/qt/PathQt.cpp:
        (WebCore::Path::strokeBoundingRect):
        * rendering/RenderPath.cpp:
        (WebCore::StrokeBoundingRectStyleApplier::StrokeBoundingRectStyleApplier):
        (WebCore::StrokeBoundingRectStyleApplier::strokeStyle):
        (WebCore::RenderPath::relativeBBox):
        * rendering/RenderPath.h:
        * svg/graphics/cairo/RenderPathCairo.cpp:
        * svg/graphics/cg/RenderPathCg.cpp:
        * svg/graphics/qt/RenderPathQt.cpp:

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

11 years ago2008-12-21 Xan Lopez <xan@gnome.org>
christian@webkit.org [Sun, 21 Dec 2008 14:49:10 +0000 (14:49 +0000)]
2008-12-21  Xan Lopez  <xan@gnome.org>

        Reviewed by Holger Freyther.

        https://bugs.webkit.org/show_bug.cgi?id=16092
        [GTK] Middle-mouse click should allow opening a URL in a new tab

        Add mouse button and keyboard state modifiers info to navigation action.

        * WebCoreSupport/FrameLoaderClientGtk.cpp:
        (WebKit::FrameLoaderClient::dispatchDecidePolicyForNavigationAction):
        * webkit/webkitwebnavigationaction.cpp:
        (_WebKitWebNavigationActionPrivate::):
        (_WebKitWebNavigationActionPrivate::webkit_web_navigation_action_get_property):
        (_WebKitWebNavigationActionPrivate::webkit_web_navigation_action_set_property):
        (_WebKitWebNavigationActionPrivate::webkit_web_navigation_action_class_init):
        (_WebKitWebNavigationActionPrivate::webkit_web_navigation_action_get_button):
        (_WebKitWebNavigationActionPrivate::webkit_web_navigation_action_get_modifier_state):
        * webkit/webkitwebnavigationaction.h:

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

11 years ago Reviewed by Ada Chan.
mitz@apple.com [Sat, 20 Dec 2008 22:41:48 +0000 (22:41 +0000)]
    Reviewed by Ada Chan.

        - expose the new allItems() method via a new IWebHistoryPrivate
          interface

        * Interfaces/IWebHistoryPrivate.idl: Added.
        * Interfaces/WebKit.idl: Added IWebHistoryPrivate.idl.
        * WebHistory.cpp:
        (WebHistory::QueryInterface): Added IWebHistoryPrivate.
        (WebHistory::allItems):
        * WebHistory.h:

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

11 years ago Fix typo "CSSAferRuleValue" to "CSSAfterRuleValue"
ddkilzer@apple.com [Sat, 20 Dec 2008 20:52:46 +0000 (20:52 +0000)]
    Fix typo "CSSAferRuleValue" to "CSSAfterRuleValue"

        * html/PreloadScanner.cpp:
        (WebCore::PreloadScanner::tokenizeCSS):
        * html/PreloadScanner.h:
        (WebCore::PreloadScanner::CSSState):

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

11 years ago Reviewed by Geoff Garen.
ap@webkit.org [Sat, 20 Dec 2008 10:26:43 +0000 (10:26 +0000)]
    Reviewed by Geoff Garen.

        <rdar://problem/6454076> Random crashes on JS raytracer

        No test, because the crash is not readily reproducible.

        * platform/text/StringImpl.cpp:
        (WebCore::StringImpl::empty):
        * platform/text/StringImpl.h:
        Made empty string per-thread.

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

11 years ago2008-12-20 Gavin Barraclough <barraclough@apple.com>
barraclough@apple.com [Sat, 20 Dec 2008 10:11:31 +0000 (10:11 +0000)]
2008-12-20  Gavin Barraclough  <barraclough@apple.com>

        Reviewed by Oliver Hunt.

        Port optimized property access generation to the MacroAssembler.

        * assembler/MacroAssembler.h:
        (JSC::MacroAssembler::AbsoluteAddress::AbsoluteAddress):
        (JSC::MacroAssembler::DataLabelPtr::repatch):
        (JSC::MacroAssembler::DataLabel32::DataLabel32):
        (JSC::MacroAssembler::DataLabel32::repatch):
        (JSC::MacroAssembler::Label::operator X86Assembler::JmpDst):
        (JSC::MacroAssembler::Jump::repatch):
        (JSC::MacroAssembler::JumpList::empty):
        (JSC::MacroAssembler::RepatchBuffer::link):
        (JSC::MacroAssembler::add32):
        (JSC::MacroAssembler::and32):
        (JSC::MacroAssembler::sub32):
        (JSC::MacroAssembler::loadPtrWithAddressRepatch):
        (JSC::MacroAssembler::storePtrWithAddressRepatch):
        (JSC::MacroAssembler::push):
        (JSC::MacroAssembler::ja32):
        (JSC::MacroAssembler::jePtr):
        (JSC::MacroAssembler::jnePtr):
        (JSC::MacroAssembler::jnePtrWithRepatch):
        (JSC::MacroAssembler::align):
        (JSC::MacroAssembler::differenceBetween):
        * assembler/X86Assembler.h:
        (JSC::X86Assembler::movl_rm_disp32):
        (JSC::X86Assembler::movl_mr_disp32):
        (JSC::X86Assembler::X86InstructionFormatter::oneByteOp_disp32):
        (JSC::X86Assembler::X86InstructionFormatter::memoryModRM):
        * jit/JIT.cpp:
        (JSC::ctiRepatchCallByReturnAddress):
        (JSC::JIT::privateCompileMainPass):
        (JSC::JIT::privateCompile):
        (JSC::JIT::privateCompileCTIMachineTrampolines):
        * jit/JIT.h:
        * jit/JITPropertyAccess.cpp:
        (JSC::JIT::compileGetByIdHotPath):
        (JSC::JIT::compileGetByIdSlowCase):
        (JSC::JIT::compilePutByIdHotPath):
        (JSC::JIT::compilePutByIdSlowCase):
        (JSC::resizePropertyStorage):
        (JSC::JIT::privateCompilePutByIdTransition):
        (JSC::JIT::patchGetByIdSelf):
        (JSC::JIT::patchPutByIdReplace):
        (JSC::JIT::privateCompilePatchGetArrayLength):
        (JSC::JIT::privateCompileGetByIdSelf):
        (JSC::JIT::privateCompileGetByIdProto):
        (JSC::JIT::privateCompileGetByIdSelfList):
        (JSC::JIT::privateCompileGetByIdProtoList):
        (JSC::JIT::privateCompileGetByIdChainList):
        (JSC::JIT::privateCompileGetByIdChain):
        (JSC::JIT::privateCompilePutByIdReplace):
        * wtf/RefCounted.h:
        (WTF::RefCountedBase::addressOfCount):

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

11 years ago2008-12-19 Marco Barisione <marco.barisione@collabora.co.uk>
zecke@webkit.org [Sat, 20 Dec 2008 03:18:31 +0000 (03:18 +0000)]
2008-12-19  Marco Barisione  <marco.barisione@collabora.co.uk>

        Reviewed by Holger Freyther.

        http://bugs.webkit.org/show_bug.cgi?id=16562
        [gtk] Implement WebPolicyDelegate methods

        Original work by Pierre-Luc Beaudoin. Final touches by Gustavo
        Noronha.

        This implements the delegates methods of WebPolicyDelegate.
        Since Gtk+/C doesn't have delegate methods, they are replaced with
        signals.

        A new object WebKitWebPolicyDecision allows the browser to delay its
        response in certain cases. WebKitWebNavigationAction contains the
        information about what caused a navigation request.

        * WebCoreSupport/FrameLoaderClientGtk.cpp:
        (WebKit::FrameLoaderClient::FrameLoaderClient):
        (WebKit::FrameLoaderClient::~FrameLoaderClient):
        (WebKit::FrameLoaderClient::dispatchDecidePolicyForMIMEType):
        (WebKit::FrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
        (WebKit::FrameLoaderClient::dispatchDecidePolicyForNavigationAction):
        (WebKit::FrameLoaderClient::cancelPolicyCheck):
        (WebKit::FrameLoaderClient::canShowMIMEType):
        * WebCoreSupport/FrameLoaderClientGtk.h:
        * webkit/webkit.h:
        * webkit/webkitdefines.h:
        * webkit/webkitprivate.cpp:
        (WebKit::kit):
        (WebKit::core):
        * webkit/webkitprivate.h:
        * webkit/webkitwebnavigationaction.cpp: Added.
        (_WebKitWebNavigationActionPrivate::):
        (_WebKitWebNavigationActionPrivate::webkit_web_navigation_action_get_property):
        (_WebKitWebNavigationActionPrivate::webkit_web_navigation_action_set_property):
        (_WebKitWebNavigationActionPrivate::webkit_web_navigation_action_init):
        (_WebKitWebNavigationActionPrivate::webkit_web_navigation_action_finalize):
        (_WebKitWebNavigationActionPrivate::webkit_web_navigation_action_class_init):
        (_WebKitWebNavigationActionPrivate::webkit_web_navigation_action_get_reason):
        (_WebKitWebNavigationActionPrivate::webkit_web_navigation_action_set_reason):
        (_WebKitWebNavigationActionPrivate::webkit_web_navigation_action_get_original_uri):
        (_WebKitWebNavigationActionPrivate::webkit_web_navigation_action_set_original_uri):
        * webkit/webkitwebnavigationaction.h: Added.
        * webkit/webkitwebpolicydecision.cpp: Added.
        (_WebKitWebPolicyDecisionPrivate::webkit_web_policy_decision_class_init):
        (_WebKitWebPolicyDecisionPrivate::webkit_web_policy_decision_init):
        (_WebKitWebPolicyDecisionPrivate::webkit_web_policy_decision_new):
        (_WebKitWebPolicyDecisionPrivate::webkit_web_policy_decision_use):
        (_WebKitWebPolicyDecisionPrivate::webkit_web_policy_decision_ignore):
        (_WebKitWebPolicyDecisionPrivate::webkit_web_policy_decision_download):
        (_WebKitWebPolicyDecisionPrivate::webkit_web_policy_decision_cancel):
        * webkit/webkitwebpolicydecision.h: Added.

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

11 years ago2008-12-19 Zan Dobersek <zandobersek@gmail.com>
zecke@webkit.org [Sat, 20 Dec 2008 02:35:05 +0000 (02:35 +0000)]
2008-12-19  Zan Dobersek  <zandobersek@gmail.com>

        Reviewed by Holger Freyther.

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

        Enable more tests for testing on Gtk+ port.

        * platform/gtk/Skipped:

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

11 years ago2008-12-19 Anders Carlsson <andersca@apple.com>
andersca@apple.com [Sat, 20 Dec 2008 02:04:20 +0000 (02:04 +0000)]
2008-12-19  Anders Carlsson  <andersca@apple.com>

        Reviewed by Sam Weinig.

        Replace some uses of HardRetain etc with RetainPtr.

        * platform/mac/DragImageMac.mm:
        * platform/mac/SharedBufferMac.mm:
        (WebCore::SharedBuffer::createCFData):
        * rendering/RenderThemeMac.mm:
        * svg/graphics/cg/SVGResourceFilterCg.mm:
        (WebCore::SVGResourceFilter::prepareFilter):
        (WebCore::SVGResourceFilter::applyFilter):
        * svg/graphics/mac/SVGResourceFilterPlatformDataMac.h:
        * svg/graphics/mac/SVGResourceFilterPlatformDataMac.mm:
        (WebCore::SVGResourceFilterPlatformDataMac::SVGResourceFilterPlatformDataMac):

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

11 years ago2008-12-19 Geoffrey Garen <ggaren@apple.com>
ggaren@apple.com [Sat, 20 Dec 2008 01:39:02 +0000 (01:39 +0000)]
2008-12-19  Geoffrey Garen  <ggaren@apple.com>

        Build fix.

        * WebHistory.cpp:
        (WebHistory::allItems):

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

11 years agoWebKit/mac:
ggaren@apple.com [Sat, 20 Dec 2008 00:31:10 +0000 (00:31 +0000)]
WebKit/mac:

2008-12-19  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Darin Adler, Adele Peterson, Brady Eidson.

        Added SPI for getting an unsorted vector of all items in history.

        * History/WebHistory.h:
        * History/WebHistory.mm:
        (-[WebHistory allItems]):

WebKit/win:

2008-12-19  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Darin Adler, Adele Peterson, Brady Eidson.

        Added SPI for getting an unsorted vector of all items in history.

        * WebHistory.cpp:
        (WebHistory::orderedItemsLastVisitedOnDay):
        (WebHistory::allItems):
        * WebHistory.h:

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

11 years agoReviewed by Kevin Ollivier.
kevino@webkit.org [Sat, 20 Dec 2008 00:28:32 +0000 (00:28 +0000)]
Reviewed by Kevin Ollivier.

Add Context Menu support to wx bindings.

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

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

11 years ago2008-12-19 David Levin <levin@chromium.org>
eric@webkit.org [Sat, 20 Dec 2008 00:03:49 +0000 (00:03 +0000)]
2008-12-19  David Levin  <levin@chromium.org>

        Reviewed by Mark Rowe.

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

        Make the git diff command used for preparing the change log avoid using any external diff tools.

        * Scripts/prepare-ChangeLog:

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

11 years ago2008-12-19 Beth Dakin <bdakin@apple.com>
bdakin@apple.com [Fri, 19 Dec 2008 22:54:43 +0000 (22:54 +0000)]
2008-12-19  Beth Dakin  <bdakin@apple.com>

        Reviewed by Darin Adler.

        Temporary band-aide fix for <rdar://problem/6372481> In Gmail, a
        crash occurs at
        AccessibilityTable::isTableExposableThroughAccessibility() when
        attempting to create a link in a rich text message

        We need to disable Accessibility Tables until we get this fixed for
        real to prevent rampant crashing.

        * page/AccessibilityTable.cpp:
        (WebCore::AccessibilityTable::AccessibilityTable):

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

11 years ago2008-12-19 Simon Fraser <simon.fraser@apple.com>
simon.fraser@apple.com [Fri, 19 Dec 2008 22:44:10 +0000 (22:44 +0000)]
2008-12-19  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Darin Adler

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

        When the document element is transformed, we need to paint
        the view background to avoid unpainted areas.

        Test: fast/transforms/transformed-document-element.html

        * rendering/RenderView.cpp:
        (WebCore::RenderView::paintBoxDecorations):

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

11 years ago2008-12-19 Dean Jackson <dino@apple.com>
dino@apple.com [Fri, 19 Dec 2008 21:37:30 +0000 (21:37 +0000)]
2008-12-19  Dean Jackson  <dino@apple.com>

        Media queries that return <integer> but are really boolean
        are restricted to 0 and 1. This is in line with other
        media features.

        * specs/MediaQueriesExtensions.html:

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

11 years ago Fix build.
sfalken@apple.com [Fri, 19 Dec 2008 21:19:17 +0000 (21:19 +0000)]
    Fix build.

        * WebCore.vcproj/WebCore.vcproj:

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

11 years ago2008-12-19 Pamela Greene <pam@chromium.org>
pam@chromium.org [Fri, 19 Dec 2008 19:10:53 +0000 (19:10 +0000)]
2008-12-19  Pamela Greene  <pam@chromium.org>

        Reviewed by Darin Adler.

        https://bugs.webkit.org/show_bug.cgi?id=22612
        Add test to verify type enforcement in DOM setters.
        Resubmitting corrected copies; first submission had patching errors.

        * fast/dom/setter-type-enforcement-expected.txt: Added.
        * fast/dom/setter-type-enforcement.html: Added.

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

11 years agowx build fixes after recent changes.
kevino@webkit.org [Fri, 19 Dec 2008 18:52:50 +0000 (18:52 +0000)]
wx build fixes after recent changes.

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

11 years ago[GTK] Fix make distcheck again
zecke@webkit.org [Fri, 19 Dec 2008 18:34:39 +0000 (18:34 +0000)]
[GTK] Fix make distcheck again

These files were moved to WebCore/platform/animation
and WebCore/platform/graphics/transforms.

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

11 years ago2008-12-19 Gustavo Noronha Silva <gns@gnome.org>
zecke@webkit.org [Fri, 19 Dec 2008 16:54:50 +0000 (16:54 +0000)]
2008-12-19  Gustavo Noronha Silva  <gns@gnome.org>

        Reviewed by Holger Freyther.

        Use ustar tar format for WebKit/GTK+'s make dist target, so that
        storing files whose filenames are > 99 is possible.

        * configure.ac:

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

11 years ago2008-12-19 Gustavo Noronha Silva <gns@gnome.org>
zecke@webkit.org [Fri, 19 Dec 2008 16:53:21 +0000 (16:53 +0000)]
2008-12-19  Gustavo Noronha Silva  <gns@gnome.org>

        Reviewed by Holger Freyther.

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

        Fix AtomicString usage, so that building works.

        * platform/network/soup/ResourceHandleSoup.cpp:

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

11 years agoJavaScriptCore:
zecke@webkit.org [Fri, 19 Dec 2008 16:47:23 +0000 (16:47 +0000)]
JavaScriptCore:
2008-12-19  Gustavo Noronha Silva  <gns@gnome.org>

        Reviewed by Holger Freyther.

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

        Added file which was missing to the javascriptcore_sources
        variable, so that it shows up in the tarball created by `make
        dist'.

        * GNUmakefile.am:

WebKitTools
2008-12-19  Gustavo Noronha Silva  <gns@gnome.org>

        Reviewed by Holger Freyther.

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

        Added files which were missing from the TestNetscapePlugin
        directory to the SOURCES variable, so that they will be
        distributed in a make dist.

        * GNUMakefile.am:

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

11 years ago[GTK] Build fix by defining WTF_USE_JIT_STUB_ARGUMENT_VA_LIST
zecke@webkit.org [Fri, 19 Dec 2008 16:35:39 +0000 (16:35 +0000)]
[GTK] Build fix by defining WTF_USE_JIT_STUB_ARGUMENT_VA_LIST

Fix the jit compilation on i*686 on Linux by using the va_list
to pass arguments to the CTI. This is done on the MAC as well
and sunspider and javascriptcore seem to work with that.

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

11 years ago Windows build fix on older versions of CFNetwork after r39393
aroben@apple.com [Fri, 19 Dec 2008 15:32:03 +0000 (15:32 +0000)]
    Windows build fix on older versions of CFNetwork after r39393

        * platform/network/cf/ResourceHandleCFNet.cpp:
        (WebCore::highestSupportedCFURLConnectionClientVersion): Changed
        preprocessor directives not to leave in unreachable code on old
        versions of CFNetwork.

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

11 years ago2008-12-19 Antti Koivisto <antti@apple.com>
antti@apple.com [Fri, 19 Dec 2008 12:45:02 +0000 (12:45 +0000)]
2008-12-19  Antti Koivisto  <antti@apple.com>

        Comment fix.

        * platform/PurgeableBuffer.h:

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

11 years agoBuild fix when building JS API tests with a c89 c compiler
zecke@webkit.org [Fri, 19 Dec 2008 11:27:03 +0000 (11:27 +0000)]
Build fix when building JS API tests with a c89 c compiler

Do not use C++ style comments and convert them to C comments.

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

11 years ago[GTK] Build fix by adding the new files
zecke@webkit.org [Fri, 19 Dec 2008 11:26:49 +0000 (11:26 +0000)]
[GTK] Build fix by adding the new files

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

11 years ago2008-12-19 Jade Han <jade.han@nokia.com>
vestbo@webkit.org [Fri, 19 Dec 2008 10:41:57 +0000 (10:41 +0000)]
2008-12-19  Jade Han <jade.han@nokia.com>

        Reviewed by Tor Arne Vestbø.

        [Qt] Allow conversion of JavaScript Number and Boolean types to Qt types

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

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

11 years ago2008-12-19 Tor Arne Vestbø <tavestbo@trolltech.com>
vestbo@webkit.org [Fri, 19 Dec 2008 10:05:59 +0000 (10:05 +0000)]
2008-12-19  Tor Arne Vestbø  <tavestbo@trolltech.com>

        Reviewed by Holger Freyther.

        Implement ImageDecoder::filenameExtension() for Qt

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

11 years agoFix the Qt build after r39378
vestbo@webkit.org [Fri, 19 Dec 2008 09:14:12 +0000 (09:14 +0000)]
Fix the Qt build after r39378

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

11 years ago2008-12-18 Adam Barth <abarth@webkit.org>
abarth@webkit.org [Fri, 19 Dec 2008 09:03:07 +0000 (09:03 +0000)]
2008-12-18  Adam Barth  <abarth@webkit.org>

        Reviewed by Darin Adler.

        Implement ImageSource::filenameExtension for Cario
          https://bugs.webkit.org/show_bug.cgi?id=22905

        * platform/graphics/cairo/ImageSourceCairo.cpp:
        (WebCore::ImageSource::filenameExtension):
        * platform/image-decoders/ImageDecoder.h:
        * platform/image-decoders/bmp/BMPImageDecoder.h:
        (WebCore::BMPImageDecoder::filenameExtension):
        * platform/image-decoders/gif/GIFImageDecoder.h:
        (WebCore::GIFImageDecoder::filenameExtension):
        * platform/image-decoders/ico/ICOImageDecoder.h:
        (WebCore::ICOImageDecoder::filenameExtension):
        * platform/image-decoders/jpeg/JPEGImageDecoder.h:
        (WebCore::JPEGImageDecoder::filenameExtension):
        * platform/image-decoders/png/PNGImageDecoder.h:
        (WebCore::PNGImageDecoder::filenameExtension):
        * platform/image-decoders/xbm/XBMImageDecoder.h:
        (WebCore::XBMImageDecoder::filenameExtension):

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

11 years agoFix build break in Platform.h
vestbo@webkit.org [Fri, 19 Dec 2008 08:52:53 +0000 (08:52 +0000)]
Fix build break in Platform.h

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

11 years ago2008-12-18 Yael Aharon <yael.aharon@nokia.com>
vestbo@webkit.org [Fri, 19 Dec 2008 08:19:29 +0000 (08:19 +0000)]
2008-12-18  Yael Aharon  <yael.aharon@nokia.com>

        Reviewed by Tor Arne Vestbø.

        When Web Inspector is launched without an associated node,
        call show() instead of inspect().

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

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

11 years agoWebCore:
mitz@apple.com [Fri, 19 Dec 2008 07:34:52 +0000 (07:34 +0000)]
WebCore:

        Reviewed by Sam Weinig.

        - avoid using the ResourceHandle-level credential storage, if any,
          unless the client opts to use it; when use of the credential
          storage is disallowed, all authentication challenges are sent to
          the client.
        - let the FrameLoaderClient decide whether to use the credential
          storage.

        * loader/EmptyClients.h:
        (WebCore::EmptyFrameLoaderClient::shouldUseCredentialStorage): Added.
        Returns false.
        * loader/FrameLoader.cpp:
        (WebCore::FrameLoader::shouldUseCredentialStorage): Added. Calls through
        to the FrameLoaderClient.
        * loader/FrameLoader.h: Declared shouldUseCredentialStorage().
        * loader/FrameLoaderClient.h: Declared shouldUseCredentialStorage().
        * loader/ResourceLoader.cpp:
        (WebCore::ResourceLoader::shouldUseCredentialStorage): Added. Calls
        through to the FrameLoader.
        * loader/ResourceLoader.h:
        (WebCore::ResourceLoader::shouldUseCredentialStorage): Implemented this
        ResourceHandleClient method.
        * loader/SubresourceLoader.cpp:
        (WebCore::SubresourceLoader::shouldUseCredentialStorage): Added.
        Overrides the ResourceLoader implementation by letting the client
        supply the return value. If the client does not do this, continues
        with the ResourceLoader behavior of asking the FrameLoader.
        * loader/SubresourceLoader.h: Removed an unused #include and declared
        shouldUseCredentialStorage().
        * loader/SubresourceLoaderClient.h:
        (WebCore::SubresourceLoaderClient::getShouldUseCredentialStorage):
        Added a default implementation which returns false, meaning the client
        does not wish to decide whether the credential storage should be used.
        * platform/network/ResourceHandle.h: Removed unused forward declarations.
        Declared a new member function, shouldUseCredentialStorage(), on Mac and
        CFNetwork-using builds.
        * platform/network/ResourceHandleClient.h:
        (WebCore::ResourceHandleClient::shouldUseCredentialStorage): Added this
        default implementation that returns false.
        * platform/network/cf/ResourceHandleCFNet.cpp:
        (WebCore::findCFNetworkModule): Added. Returns a handle to the CFNetwork
        module.
        (WebCore::cfNetworkVersion): Added. Returns the high word of the
        CFNetwork library's product version.
        (WebCore::highestSupportedCFURLConnectionClientVersion): Added. Returns
        the highest version of the CFURLConnectionClient structure supported by
        the CFNetwork library. The only reason to check this at runtime is
        that WebKit may be linking at runtime against an older version of
        CFNetwork than the one it was built with, as is the case with nightly
        builds.
        (WebCore::shouldUseCredentialStorageCallback): Added this
        CFURLConnection callback which calls through to
        ResourceHandle::shouldUseCredentialStorage().
        (WebCore::ResourceHandle::start): Pass a version 3 CFURLConnectionClient
        including the shouldUseCredentialStorage callback. At runtime, clamp the
        client structure version down to the highest supported by CFNetwork.
        (WebCore::ResourceHandle::shouldUseCredentialStorage): Added. Calls through
        to the client if there is one. Otherwise returns false.
        * platform/network/mac/ResourceHandleMac.mm:
        (WebCore::ResourceHandle::shouldUseCredentialStorage): Ditto.
        (-[WebCoreResourceHandleAsDelegate connectionShouldUseCredentialStorage:]):
        Added this delegate method which callls through to
        ResourceHandle::shouldUseCredentialStorage().

WebKit/gtk:

        Reviewed by Sam Weinig.

        - stub out FrameLoaderClient::shouldUseCredentialStorage().

        * WebCoreSupport/FrameLoaderClientGtk.cpp:
        (WebKit::FrameLoaderClient::shouldUseCredentialStorage):
        * WebCoreSupport/FrameLoaderClientGtk.h:

WebKit/mac:

        Reviewed by Sam Weinig.

        - implement FrameLoaderClient::shouldUseCredentialStorage() by calling
          a new resource load delegae method.

        * WebCoreSupport/WebFrameLoaderClient.h:
        * WebCoreSupport/WebFrameLoaderClient.mm:
        (WebFrameLoaderClient::shouldUseCredentialStorage): Added. Calls the
        delegate method. If the method is unimplemented, returns true for
        backwards compatibility.
        * WebView/WebView.mm:
        (-[WebView _cacheResourceLoadDelegateImplementations]): Initialize the
        shouldUseCredentialStorageFunc member.
        (CallResourceLoadDelegateReturningBoolean): Added.
        * WebView/WebViewInternal.h:
        * WebView/WebResourceLoadDelegatePrivate.h: Declared the delegate method
        -webView:resource:shouldUseCredentialStorageForDataSource:.

WebKit/qt:

        Reviewed by Sam Weinig.

        - stub out FrameLoaderClient::shouldUseCredentialStorage().

        * WebCoreSupport/FrameLoaderClientQt.cpp:
        (WebCore::FrameLoaderClientQt::shouldUseCredentialStorage):
        * WebCoreSupport/FrameLoaderClientQt.h:

WebKit/win:

        Reviewed by Sam Weinig.

        - implement FrameLoaderClient::shouldUseCredentialStorage() by calling
          a new resource load delegae method.

        * Interfaces/IWebResourceLoadDelegatePrivate.idl: Added
        a ne interface, IWebResourceLoadDelegatePrivate2, including a new
        method, shouldUseCredentialStorage().
        * WebCoreSupport/WebFrameLoaderClient.cpp:
        (WebFrameLoaderClient::shouldUseCredentialStorage): Added. Calls the
        delegate method. If the method is unimplemented, returns true for
        backwards compatibility.
        * WebCoreSupport/WebFrameLoaderClient.h:

WebKit/wx:

        Reviewed by Sam Weinig.

        - stub out FrameLoaderClient::shouldUseCredentialStorage().

        * WebKitSupport/FrameLoaderClientWx.cpp:
        (WebCore::FrameLoaderClientWx::shouldUseCredentialStorage):
        * WebKitSupport/FrameLoaderClientWx.h:

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

11 years ago2008-12-18 Cameron Zwarich <zwarich@apple.com>
cwzwarich@webkit.org [Fri, 19 Dec 2008 06:54:34 +0000 (06:54 +0000)]
2008-12-18  Cameron Zwarich  <zwarich@apple.com>

        Reviewed by Jonathan Honeycutt.

        Fix an apparent typo in r39385 that is causing lots of crashes.

        * WebCoreSupport/WebFrameLoaderClient.mm:
        (WebFrameLoaderClient::dispatchDidFirstVisuallyNonEmptyLayout):

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

11 years ago2008-12-18 Gavin Barraclough <barraclough@apple.com>
barraclough@apple.com [Fri, 19 Dec 2008 03:21:52 +0000 (03:21 +0000)]
2008-12-18  Gavin Barraclough  <barraclough@apple.com>

        Reviewed by Sam Weinig.

        Same as last revision, adding cases for pre & post inc & dec.

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

        * jit/JIT.cpp:
        (JSC::JIT::privateCompileMainPass):

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

11 years agoRevert 39363 because the test doesn't pass.
abarth@webkit.org [Fri, 19 Dec 2008 02:58:19 +0000 (02:58 +0000)]
Revert 39363 because the test doesn't pass.

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

11 years ago2008-12-18 Gavin Barraclough <barraclough@apple.com>
barraclough@apple.com [Fri, 19 Dec 2008 02:30:41 +0000 (02:30 +0000)]
2008-12-18  Gavin Barraclough  <barraclough@apple.com>

        Reviewed by Sam Weinig.

        Fixes for the JIT's handling of JSImmediate values on x86-64.
        On 64-bit systems, the code in JSImmediate.h relies on the upper
        bits of a JSImmediate being a sign extension of the low 32-bits.
        This was not being enforced by the JIT, since a number of inline
        operations were being performed on 32-bit values in registers, and
        when a 32-bit result is written to a register on x86-64 the value
        is zero-extended to 64-bits.

        This fix honors previous behavoir.  A better fix in the long run
        (when the JIT is enabled by default) may be to change JSImmediate.h
        so it no longer relies on the upper bits of the pointer,... though
        if we're going to change JSImmediate.h for 64-bit, we probably may
        as well change the format so that the full range of 32-bit ints can
        be stored, rather than just 31-bits.

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

        * assembler/MacroAssembler.h:
        (JSC::MacroAssembler::addPtr):
        (JSC::MacroAssembler::andPtr):
        (JSC::MacroAssembler::orPtr):
        (JSC::MacroAssembler::or32):
        (JSC::MacroAssembler::xor32):
        (JSC::MacroAssembler::xorPtr):
        (JSC::MacroAssembler::signExtend32ToPtr):
        * assembler/X86Assembler.h:
        (JSC::X86Assembler::):
        (JSC::X86Assembler::andq_rr):
        (JSC::X86Assembler::andq_ir):
        (JSC::X86Assembler::orq_rr):
        (JSC::X86Assembler::xorq_ir):
        (JSC::X86Assembler::movsxd_rr):
        * jit/JIT.cpp:
        (JSC::JIT::privateCompileMainPass):
        * jit/JITInlineMethods.h:
        (JSC::JIT::emitFastArithReTagImmediate):
        (JSC::JIT::emitFastArithPotentiallyReTagImmediate):
        (JSC::JIT::emitFastArithImmToInt):

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

11 years ago Reset role to "Private" on 6 header files to fix clean builds after r39378
ddkilzer@apple.com [Fri, 19 Dec 2008 01:51:02 +0000 (01:51 +0000)]
    Reset role to "Private" on 6 header files to fix clean builds after r39378

        Reviewed by BUILD FIX.

        * WebCore.xcodeproj/project.pbxproj: Added back "Private" role
        that was lost on 6 headers when they were "moved":
        AffineTransform.h, Animation.h, AnimationList.h,
        TimingFunction.h, TransformOperation.h and
        TransformOperations.h.

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

11 years ago2008-12-18 Pamela Greene <pam@chromium.org>
pam@chromium.org [Fri, 19 Dec 2008 01:49:17 +0000 (01:49 +0000)]
2008-12-18  Pamela Greene  <pam@chromium.org>

        Reviewed by Dan Bernstein.

        Add initializer for m_textDirectionSubmenuInclusionBehavior.
        https://bugs.webkit.org/show_bug.cgi?id=22926

        * page/Settings.cpp:
        (WebCore::Settings::Settings): Initialize m_textDirectionSubmenuInclusionBehavior

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

11 years ago2008-12-18 Brady Eidson <beidson@apple.com>
beidson@apple.com [Fri, 19 Dec 2008 01:37:44 +0000 (01:37 +0000)]
2008-12-18  Brady Eidson  <beidson@apple.com>

        Reviewed by John Sullivan

        Initial visit to a website creates history items that start with a visit count of
        zero instead of one

        * History/WebHistory.mm:
        (-[WebHistoryPrivate visitedURL:withTitle:]): Set the visit count on new items

        * History/WebHistoryItem.mm:
        (-[WebHistoryItem _setVisitCount:]): Call through to the WebCore item
        * History/WebHistoryItemInternal.h:

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

11 years agoWebCore:
weinig@apple.com [Fri, 19 Dec 2008 01:15:00 +0000 (01:15 +0000)]
WebCore:

2008-12-18  Sam Weinig  <sam@webkit.org>

        Reviewed by John Sullivan.

        Add new FrameLoaderClient method to indicate the first visually
        non-empty layout based on an heuristic.  Right now that heuristic
        is the first layout after an image, text or plugin has been added
        to the render tree, but I can imagine it becoming much smarter.

        * loader/EmptyClients.h:
        (WebCore::EmptyFrameLoaderClient::dispatchDidFirstVisuallyNonEmptyLayout):
        * loader/FrameLoader.cpp:
        (WebCore::FrameLoader::didFirstVisuallyNonEmptyLayout):
        * loader/FrameLoader.h:
        * loader/FrameLoaderClient.h:
        * page/FrameView.cpp:
        (WebCore::FrameViewPrivate::reset):
        (WebCore::FrameView::layout):
        (WebCore::FrameView::performPostLayoutTasks):
        (WebCore::FrameView::setIsVisuallyNonEmpty):
        * page/FrameView.h:
        * rendering/RenderImage.cpp:
        (WebCore::RenderImage::RenderImage):
        * rendering/RenderPartObject.cpp:
        (WebCore::RenderPartObject::RenderPartObject):
        * rendering/RenderText.cpp:
        (WebCore::RenderText::RenderText):

WebKit/gtk:

2008-12-18  Sam Weinig  <sam@webkit.org>

        Reviewed by John Sullivan.

        Stub out FrameLoaderClient::dispatchDidFirstVisuallyNonEmptyLayout()

        * WebCoreSupport/FrameLoaderClientGtk.cpp:
        (WebKit::FrameLoaderClient::dispatchDidFirstVisuallyNonEmptyLayout):
        * WebCoreSupport/FrameLoaderClientGtk.h:

WebKit/mac:

2008-12-18  Sam Weinig  <sam@webkit.org>

        Reviewed by John Sullivan.

        Implement FrameLoaderClient::dispatchDidFirstVisuallyNonEmptyLayout() by calling
        a new private frame load delegate method.

        * WebCoreSupport/WebFrameLoaderClient.h:
        * WebCoreSupport/WebFrameLoaderClient.mm:
        (WebFrameLoaderClient::dispatchDidFirstVisuallyNonEmptyLayout):
        * WebView/WebView.mm:
        (-[WebView _cacheFrameLoadDelegateImplementations]):
        * WebView/WebViewInternal.h:
        * WebView/WebViewPrivate.h:

WebKit/qt:

2008-12-18  Sam Weinig  <sam@webkit.org>

        Reviewed by John Sullivan.

        Stub out FrameLoaderClient::dispatchDidFirstVisuallyNonEmptyLayout()

        * WebCoreSupport/FrameLoaderClientQt.cpp:
        (WebCore::FrameLoaderClientQt::dispatchDidFirstVisuallyNonEmptyLayout):
        * WebCoreSupport/FrameLoaderClientQt.h:

WebKit/win:

2008-12-18  Sam Weinig  <sam@webkit.org>

        Reviewed by John Sullivan.

        Implement FrameLoaderClient::dispatchDidFirstVisuallyNonEmptyLayout() by calling
        a new private frame load delegate method.

        * Interfaces/IWebFrameLoadDelegatePrivate.idl:
        * WebCoreSupport/WebFrameLoaderClient.cpp:
        (WebFrameLoaderClient::dispatchDidFirstVisuallyNonEmptyLayout):
        * WebCoreSupport/WebFrameLoaderClient.h:

WebKit/wx:

2008-12-18  Sam Weinig  <sam@webkit.org>

        Reviewed by John Sullivan.

        Stub out FrameLoaderClient::dispatchDidFirstVisuallyNonEmptyLayout()

        * WebKitSupport/FrameLoaderClientWx.cpp:
        (WebCore::FrameLoaderClientWx::dispatchDidFirstVisuallyNonEmptyLayout):
        * WebKitSupport/FrameLoaderClientWx.h:

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

11 years ago2008-12-18 Pierre-Olivier Latour <pol@apple.com>
pol@apple.com [Fri, 19 Dec 2008 00:39:21 +0000 (00:39 +0000)]
2008-12-18  Pierre-Olivier Latour  <pol@apple.com>

        Reviewed by Darin Adler.

        Rewrote some of the transition layout tests that were using setTimeout() to use the transition pause API in DRT when available.

        Rewrote the transition layout tests that were specifically testing the transition end event to use common JS code from transition-end-event-helpers.js.

        Fixed some typos.

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

        * transitions/end-event-helpers.js: Removed.
        * transitions/interrupt-transform-transition-expected.txt:
        * transitions/interrupt-transform-transition.html:
        * transitions/opacity-transition-zindex.html:
        * transitions/start-transform-transition.html:
        * transitions/transform-op-list-match-expected.txt:
        * transitions/transform-op-list-match.html:
        * transitions/transform-op-list-no-match-expected.txt:
        * transitions/transform-op-list-no-match.html:
        * transitions/transition-end-event-all-properties-expected.txt:
        * transitions/transition-end-event-all-properties.html:
        * transitions/transition-end-event-attributes-expected.txt:
        * transitions/transition-end-event-attributes.html:
        * transitions/transition-end-event-container-expected.txt:
        * transitions/transition-end-event-container.html:
        * transitions/transition-end-event-helpers.js: Copied from LayoutTests/transitions/end-event-helpers.js.
        (recordTransitionEndEvent):
        (runTransitionTest.processEndEvents.compareEventInfo):
        (runTransitionTest.processEndEvents.examineResults):
        (runTransitionTest.processEndEvents):
        (runTransitionTest.startTest):
        (runTransitionTest.window):
        (runTransitionTest):
        * transitions/transition-end-event-left-expected.txt:
        * transitions/transition-end-event-left.html:
        * transitions/transition-end-event-multiple-01-expected.txt:
        * transitions/transition-end-event-multiple-01.html:
        * transitions/transition-end-event-multiple-02-expected.txt:
        * transitions/transition-end-event-multiple-02.html:
        * transitions/transition-end-event-multiple-03-expected.txt:
        * transitions/transition-end-event-multiple-03.html:
        * transitions/transition-end-event-multiple-04-expected.txt:
        * transitions/transition-end-event-multiple-04.html:
        * transitions/transition-end-event-nested-expected.txt:
        * transitions/transition-end-event-nested.html:
        * transitions/transition-end-event-set-none-expected.txt:
        * transitions/transition-end-event-set-none.html:
        * transitions/transition-end-event-transform-expected.txt:
        * transitions/transition-end-event-transform.html:
        * transitions/transition-end-event-window-expected.txt:
        * transitions/transition-end-event-window.html:
        * transitions/transition-test-helpers.js: Added.
        (runTransitionTest.isCloseEnough):
        (runTransitionTest.checkExpectedValue):
        (runTransitionTest.endTest):
        (runTransitionTest.runTest):
        (runTransitionTest.startTest):
        (runTransitionTest.if):
        * transitions/transition-timing-function-expected.txt: Copied from LayoutTests/transitions/transition-timing-function-software-expected.txt.
        * transitions/transition-timing-function-software-expected.txt: Removed.
        * transitions/transition-timing-function-software.html: Removed.
        * transitions/transition-timing-function.html: Copied from LayoutTests/transitions/transition-timing-function-software.html.
        * transitions/zero-duration-in-list-expected.txt:
        * transitions/zero-duration-in-list.html:

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

11 years ago2008-12-18 Darin Adler <darin@apple.com>
darin@apple.com [Thu, 18 Dec 2008 23:58:53 +0000 (23:58 +0000)]
2008-12-18  Darin Adler  <darin@apple.com>

        Reviewed by Sam Weinig.

        - fix <rdar://problem/6449841> reduce memory use of ResourceResponseBase by removing two maps

        We were parsing the cache-control and pragma header field values into maps.
        I changed that so instead we only cache two bits with the data we were actually
        using. Later we might want to move this responsibility out of this class entirely;
        we can cache it at the higher level instead.

        * loader/CachedResource.cpp:
        (WebCore::CachedResource::mustRevalidate): Changed to call a specific API to get at
        the bits in quest instead of a general "cache control directives" API.

        * platform/network/ResourceResponseBase.cpp:
        (WebCore::ResourceResponseBase::setHTTPHeaderField): Remove the logic for the
        pragma header field since no one is using this for now.
        (WebCore::ResourceResponseBase::parseCacheControlDirectives): Eliminated the return
        value and made this function have side effects only. Changed it so it's the caller's
        responsibility to check m_haveParsedCacheControl. Set m_cacheControlContainsNoCache
        and m_cacheControlContainsMustRevalidate rather than keeping a map around.

        * platform/network/ResourceResponseBase.h:
        (WebCore::ResourceResponseBase::cacheControlContainsNoCache): Added.
        (WebCore::ResourceResponseBase::cacheControlContainsMustRevalidate): Added.
        (WebCore::ResourceResponseBase::ResourceResponseBase): Updated since I removed
        m_haveParsedCacheControl and renamed m_haveParsedCacheControlHeader to remove
        the imprecise use of the term "header".

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

11 years ago Build fix.
sfalken@apple.com [Thu, 18 Dec 2008 23:07:56 +0000 (23:07 +0000)]
    Build fix.
        Delete 2nd copy of code in these files.

        * platform/animation/Animation.cpp:
        * platform/animation/Animation.h:
        * platform/animation/AnimationList.cpp:
        * platform/animation/AnimationList.h:
        * platform/animation/TimingFunction.h:
        * platform/graphics/transforms/AffineTransform.cpp:
        * platform/graphics/transforms/AffineTransform.h:
        * platform/graphics/transforms/IdentityTransformOperation.h:
        * platform/graphics/transforms/MatrixTransformOperation.cpp:
        * platform/graphics/transforms/MatrixTransformOperation.h:
        * platform/graphics/transforms/RotateTransformOperation.cpp:
        * platform/graphics/transforms/RotateTransformOperation.h:
        * platform/graphics/transforms/ScaleTransformOperation.cpp:
        * platform/graphics/transforms/ScaleTransformOperation.h:
        * platform/graphics/transforms/SkewTransformOperation.cpp:
        * platform/graphics/transforms/SkewTransformOperation.h:
        * platform/graphics/transforms/TransformOperation.h:
        * platform/graphics/transforms/TransformOperations.cpp:
        * platform/graphics/transforms/TransformOperations.h:
        * platform/graphics/transforms/TranslateTransformOperation.cpp:
        * platform/graphics/transforms/TranslateTransformOperation.h:

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

11 years agoPartial build fix.
sfalken@apple.com [Thu, 18 Dec 2008 22:51:35 +0000 (22:51 +0000)]
Partial build fix.

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

11 years ago2008-12-18 Gavin Barraclough <barraclough@apple.com>
barraclough@apple.com [Thu, 18 Dec 2008 22:14:53 +0000 (22:14 +0000)]
2008-12-18  Gavin Barraclough  <barraclough@apple.com>

        Reviewed by Sam Weinig.

        Just a tidy up - rename & refactor some the #defines configuring the JIT.

        * interpreter/Interpreter.cpp:
        (JSC::Interpreter::cti_op_convert_this):
        (JSC::Interpreter::cti_op_end):
        (JSC::Interpreter::cti_op_add):
        (JSC::Interpreter::cti_op_pre_inc):
        (JSC::Interpreter::cti_timeout_check):
        (JSC::Interpreter::cti_register_file_check):
        (JSC::Interpreter::cti_op_loop_if_less):
        (JSC::Interpreter::cti_op_loop_if_lesseq):
        (JSC::Interpreter::cti_op_new_object):
        (JSC::Interpreter::cti_op_put_by_id_generic):
        (JSC::Interpreter::cti_op_get_by_id_generic):
        (JSC::Interpreter::cti_op_put_by_id):
        (JSC::Interpreter::cti_op_put_by_id_second):
        (JSC::Interpreter::cti_op_put_by_id_fail):
        (JSC::Interpreter::cti_op_get_by_id):
        (JSC::Interpreter::cti_op_get_by_id_second):
        (JSC::Interpreter::cti_op_get_by_id_self_fail):
        (JSC::Interpreter::cti_op_get_by_id_proto_list):
        (JSC::Interpreter::cti_op_get_by_id_proto_list_full):
        (JSC::Interpreter::cti_op_get_by_id_proto_fail):
        (JSC::Interpreter::cti_op_get_by_id_array_fail):
        (JSC::Interpreter::cti_op_get_by_id_string_fail):
        (JSC::Interpreter::cti_op_instanceof):
        (JSC::Interpreter::cti_op_del_by_id):
        (JSC::Interpreter::cti_op_mul):
        (JSC::Interpreter::cti_op_new_func):
        (JSC::Interpreter::cti_op_call_JSFunction):
        (JSC::Interpreter::cti_op_call_arityCheck):
        (JSC::Interpreter::cti_vm_dontLazyLinkCall):
        (JSC::Interpreter::cti_vm_lazyLinkCall):
        (JSC::Interpreter::cti_op_push_activation):
        (JSC::Interpreter::cti_op_call_NotJSFunction):
        (JSC::Interpreter::cti_op_create_arguments):
        (JSC::Interpreter::cti_op_create_arguments_no_params):
        (JSC::Interpreter::cti_op_tear_off_activation):
        (JSC::Interpreter::cti_op_tear_off_arguments):
        (JSC::Interpreter::cti_op_profile_will_call):
        (JSC::Interpreter::cti_op_profile_did_call):
        (JSC::Interpreter::cti_op_ret_scopeChain):
        (JSC::Interpreter::cti_op_new_array):
        (JSC::Interpreter::cti_op_resolve):
        (JSC::Interpreter::cti_op_construct_JSConstruct):
        (JSC::Interpreter::cti_op_construct_NotJSConstruct):
        (JSC::Interpreter::cti_op_get_by_val):
        (JSC::Interpreter::cti_op_resolve_func):
        (JSC::Interpreter::cti_op_sub):
        (JSC::Interpreter::cti_op_put_by_val):
        (JSC::Interpreter::cti_op_put_by_val_array):
        (JSC::Interpreter::cti_op_lesseq):
        (JSC::Interpreter::cti_op_loop_if_true):
        (JSC::Interpreter::cti_op_negate):
        (JSC::Interpreter::cti_op_resolve_base):
        (JSC::Interpreter::cti_op_resolve_skip):
        (JSC::Interpreter::cti_op_resolve_global):
        (JSC::Interpreter::cti_op_div):
        (JSC::Interpreter::cti_op_pre_dec):
        (JSC::Interpreter::cti_op_jless):
        (JSC::Interpreter::cti_op_not):
        (JSC::Interpreter::cti_op_jtrue):
        (JSC::Interpreter::cti_op_post_inc):
        (JSC::Interpreter::cti_op_eq):
        (JSC::Interpreter::cti_op_lshift):
        (JSC::Interpreter::cti_op_bitand):
        (JSC::Interpreter::cti_op_rshift):
        (JSC::Interpreter::cti_op_bitnot):
        (JSC::Interpreter::cti_op_resolve_with_base):
        (JSC::Interpreter::cti_op_new_func_exp):
        (JSC::Interpreter::cti_op_mod):
        (JSC::Interpreter::cti_op_less):
        (JSC::Interpreter::cti_op_neq):
        (JSC::Interpreter::cti_op_post_dec):
        (JSC::Interpreter::cti_op_urshift):
        (JSC::Interpreter::cti_op_bitxor):
        (JSC::Interpreter::cti_op_new_regexp):
        (JSC::Interpreter::cti_op_bitor):
        (JSC::Interpreter::cti_op_call_eval):
        (JSC::Interpreter::cti_op_throw):
        (JSC::Interpreter::cti_op_get_pnames):
        (JSC::Interpreter::cti_op_next_pname):
        (JSC::Interpreter::cti_op_push_scope):
        (JSC::Interpreter::cti_op_pop_scope):
        (JSC::Interpreter::cti_op_typeof):
        (JSC::Interpreter::cti_op_is_undefined):
        (JSC::Interpreter::cti_op_is_boolean):
        (JSC::Interpreter::cti_op_is_number):
        (JSC::Interpreter::cti_op_is_string):
        (JSC::Interpreter::cti_op_is_object):
        (JSC::Interpreter::cti_op_is_function):
        (JSC::Interpreter::cti_op_stricteq):
        (JSC::Interpreter::cti_op_nstricteq):
        (JSC::Interpreter::cti_op_to_jsnumber):
        (JSC::Interpreter::cti_op_in):
        (JSC::Interpreter::cti_op_push_new_scope):
        (JSC::Interpreter::cti_op_jmp_scopes):
        (JSC::Interpreter::cti_op_put_by_index):
        (JSC::Interpreter::cti_op_switch_imm):
        (JSC::Interpreter::cti_op_switch_char):
        (JSC::Interpreter::cti_op_switch_string):
        (JSC::Interpreter::cti_op_del_by_val):
        (JSC::Interpreter::cti_op_put_getter):
        (JSC::Interpreter::cti_op_put_setter):
        (JSC::Interpreter::cti_op_new_error):
        (JSC::Interpreter::cti_op_debug):
        (JSC::Interpreter::cti_vm_throw):
        * interpreter/Interpreter.h:
        * jit/JIT.cpp:
        (JSC::):
        (JSC::JIT::privateCompileMainPass):
        (JSC::JIT::privateCompile):
        * jit/JIT.h:
        * jit/JITInlineMethods.h:
        (JSC::JIT::restoreArgumentReference):
        (JSC::JIT::restoreArgumentReferenceForTrampoline):
        * wtf/Platform.h:

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

11 years ago2008-12-18 Dimitri Glazkov <dglazkov@chromium.org>
darin@chromium.org [Thu, 18 Dec 2008 21:21:13 +0000 (21:21 +0000)]
2008-12-18  Dimitri Glazkov  <dglazkov@chromium.org>

        Reviewed by Geoffrey Garen.

        https://bugs.webkit.org/show_bug.cgi?id=22859
        Abstract away the use of JSDOMWindow in CachedPage and introduce
        ScriptCachedPageData abstraction.

        * GNUmakefile.am: Added ScriptCachedPageData to project.
        * WebCore.pro: Added ScriptCachedPageData to project.
        * WebCore.vcproj/WebCore.vcproj: Added ScriptCachedPageData to project.
        * WebCore.xcodeproj/project.pbxproj: Added ScriptCachedPageData to
            project.
        * bindings/js/ScriptCachedPageData.cpp: Added.
        (WebCore::ScriptCachedPageData::ScriptCachedPageData):
        (WebCore::ScriptCachedPageData::~ScriptCachedPageData):
        (WebCore::ScriptCachedPageData::restore):
        (WebCore::ScriptCachedPageData::clear):
        * bindings/js/ScriptCachedPageData.h: Added.
        * history/CachedPage.cpp: Replaced JSDOMWindow and ProtectedPtr with
            ScriptCachedPageData.
        (WebCore::CachedPage::CachedPage):
        (WebCore::CachedPage::domWindow):
        (WebCore::CachedPage::restore):
        (WebCore::CachedPage::clear):
        * history/CachedPage.h: Replaced JSDOMWindow and ProtectedPtr with
            ScriptCachedPageData.

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

11 years ago Reviewed by Dave Hyatt.
cmarrin@apple.com [Thu, 18 Dec 2008 21:06:22 +0000 (21:06 +0000)]
    Reviewed by Dave Hyatt.

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

        To avoid future dependency issues, all the TransformOperations and Animation related files need to be moved to platform

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

11 years ago2008-12-18 Cameron Zwarich <zwarich@apple.com>
cwzwarich@webkit.org [Thu, 18 Dec 2008 18:19:06 +0000 (18:19 +0000)]
2008-12-18  Cameron Zwarich  <zwarich@apple.com>

        Reviewed by Geoff Garen.

        Bug 21855: REGRESSION (r37323): Gmail complains about popup blocking when opening a link
        <https://bugs.webkit.org/show_bug.cgi?id=21855>
        <rdar://problem/6278244>

        If JavaScript is not currently executing, the handleEvent member function
        of JSAbstractEventListener should set the dynamic global object to the
        global object of the context in which the event occurred.

        If this is not set, then JavaScriptCore will simply take the global object
        of the context where the event handler function was created, which may be
        a different frame. This will cause the popup blocker to incorrectly block
        windows opened from onclick events inside of an iframe whose handler was
        created in the outer frame, as it will check the outer frame and see that
        it is not processing any events.

        JavaScriptCore:

        * interpreter/Interpreter.cpp:
        * runtime/JSGlobalObject.h:
        (JSC::DynamicGlobalObjectScope::DynamicGlobalObjectScope):
        (JSC::DynamicGlobalObjectScope::~DynamicGlobalObjectScope):

        WebCore:

        * bindings/js/JSEventListener.cpp:
        (WebCore::JSAbstractEventListener::handleEvent):

        WebKitTools:

        * DumpRenderTree/mac/EventSendingController.h:
        * DumpRenderTree/mac/EventSendingController.mm:
        (+[EventSendingController isSelectorExcludedFromWebScript:]): Expose
        scheduleAsynchronousClick to JavaScript.
        (-[EventSendingController scheduleAsynchronousClick]): Add.

        LayoutTests:

        * fast/events/popup-blocking-click-in-iframe-expected.txt: Added.
        * fast/events/popup-blocking-click-in-iframe.html: Added.
        * fast/events/resources/popup-blocking-click-in-iframe-otherFrame.html: Added.
        * platform/gtk/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

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

11 years ago2008-12-18 Pamela Greene <pam@chromium.org>
pam@chromium.org [Thu, 18 Dec 2008 18:02:47 +0000 (18:02 +0000)]
2008-12-18  Pamela Greene  <pam@chromium.org>

        Submitted without review.
        Right, remove the whole misplaced directory, not just the tests.

        * fast: Removed.
        * fast/dom: Removed.

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

11 years agoRoot level:
pam@chromium.org [Thu, 18 Dec 2008 17:56:31 +0000 (17:56 +0000)]
Root level:

2008-12-18  Pamela Greene  <pam@chromium.org>

        Submitted without review.
        Moving layout test into LayoutTests where it belongs.

        * fast/dom/setter-type-enforcement-expected.txt: Removed.
        * fast/dom/setter-type-enforcement.html: Removed.

LayoutTests:

2008-12-18  Pamela Greene  <pam@chromium.org>

        Submitted without review.
        Moving layout test from root level into LayoutTests where it belongs.

        * fast/dom/setter-type-enforcement-expected.txt: Copied from fast/dom/setter-type-enforcement-expected.txt.
        * fast/dom/setter-type-enforcement.html: Copied from fast/dom/setter-type-enforcement.html.

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

11 years agoJavaScriptCore:
ggaren@apple.com [Thu, 18 Dec 2008 17:45:44 +0000 (17:45 +0000)]
JavaScriptCore:

2008-12-17  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Gavin Barraclough.

        Fixed https://bugs.webkit.org/show_bug.cgi?id=22393
        Segfault when caching property accesses to primitive cells.

        Changed some asObject casts to asCell casts in cases where a primitive
        value may be a cell and not an object.

        Re-enabled property caching for primitives in cases where it had been
        disabled because of this bug.

        Updated a comment to better explain something Darin thought needed
        explaining in an old patch review.

        * interpreter/Interpreter.cpp:
        (JSC::countPrototypeChainEntriesAndCheckForProxies):
        (JSC::Interpreter::tryCacheGetByID):
        (JSC::Interpreter::tryCTICacheGetByID):
        (JSC::Interpreter::cti_op_get_by_id_self_fail):
        (JSC::Interpreter::cti_op_get_by_id_proto_list):

LayoutTests:

2008-12-17  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Gavin Barraclough.

        Added a test for https://bugs.webkit.org/show_bug.cgi?id=22393
        Segfault when caching property accesses to primitive cells.

        * fast/js/primitive-property-access-edge-cases-expected.txt: Added.
        * fast/js/primitive-property-access-edge-cases.html: Added.
        * fast/js/resources/primitive-property-access-edge-cases.js: Added.
        ():

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

11 years ago2008-12-17 Simon Fraser <simon.fraser@apple.com>
simon.fraser@apple.com [Thu, 18 Dec 2008 17:42:27 +0000 (17:42 +0000)]
2008-12-17  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Dave Hyatt

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

        Add the ability to compute clip rects independently from
        caching them on the RenderLayer. When painting reflections, use
        such temporarily computed clipRects, otherwise the layer may cache
        clipRects which are invalid, since they have been computed with
        a rootLayer that is not the one usually used to paint.

        Test: fast/reflections/reflection-overflow-hidden.html

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

11 years ago2008-12-17 Laszlo Gombos <laszlo.1.gombos@nokia.com>
vestbo@webkit.org [Thu, 18 Dec 2008 14:37:51 +0000 (14:37 +0000)]
2008-12-17  Laszlo Gombos  <laszlo.1.gombos@nokia.com>

        Reviewed by Simon Hausmann.

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

        Fix MinGW QtWebKit linking problems and also make the
        QtWebKit build system more robust.

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

11 years ago2008-12-17 Gavin Barraclough <barraclough@apple.com>
barraclough@apple.com [Thu, 18 Dec 2008 07:02:29 +0000 (07:02 +0000)]
2008-12-17  Gavin Barraclough  <barraclough@apple.com>

        Reviewed by Cameron Zwarich.

        Fixes for Sunspider failures with the JIT enabled on x86-64.

        * assembler/MacroAssembler.h:
            Switch the order of the RegisterID & Address form of je32, to keep it consistent with jne32.
        * jit/JIT.cpp:
        * jit/JIT.h:
        * jit/JITInlineMethods.h:
            Port the m_ctiVirtualCall tramopline generation to use the MacroAssembler interface.
        * jit/JITCall.cpp:
            Fix bug in the non-optimizing code path, vptr check should have been to the memory address pointer
            to by the register, not to the register itself.
        * wrec/WRECGenerator.cpp:
            See assembler/MacroAssembler.h, above.

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

11 years ago2008-12-17 Gavin Barraclough <barraclough@apple.com>
barraclough@apple.com [Thu, 18 Dec 2008 03:38:10 +0000 (03:38 +0000)]
2008-12-17  Gavin Barraclough  <barraclough@apple.com>

        Reviewed by Sam Weinig.

        print("Hello, 64-bit jitted world!");
        Get hello-world working through the JIT, on x86-64.

        * assembler/X86Assembler.h:
            Fix encoding of opcode + RegisterID format instructions for 64-bit.
        * interpreter/Interpreter.cpp:
        * interpreter/Interpreter.h:
            Make VoidPtrPair actually be a pair of void*s.
            (Possibly should make this change for 32-bit Mac platforms, too - but won't change 32-bit behaviour in this patch).
        * jit/JIT.cpp:
        * jit/JIT.h:
            Provide names for the timeoutCheckRegister & callFrameRegister on x86-64,
            force x86-64 ctiTrampoline arguments onto the stack,
            implement the asm trampolines for x86-64,
            implement the restoreArgumentReference methods for x86-64 calling conventions.
        * jit/JITCall.cpp:
        * jit/JITInlineMethods.h:
        * wtf/Platform.h:
            Add switch settings to ENABLE(JIT), on PLATFORM(X86_64) (currently still disabled).

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

11 years agoReviewed by Maciej Stachowiak.
zimmermann@webkit.org [Thu, 18 Dec 2008 01:56:52 +0000 (01:56 +0000)]
Reviewed by Maciej Stachowiak.

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

wml.css is based on an older copy of html4.css. Synchronize them.
Remove all entries, that are irrelevant for WML.

Fix <do> appearance: should behave like HTMLs <button>.

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

11 years ago2008-12-17 Sam Weinig <sam@webkit.org>
weinig@apple.com [Thu, 18 Dec 2008 00:00:01 +0000 (00:00 +0000)]
2008-12-17  Sam Weinig  <sam@webkit.org>

        Reviewed by Gavin Barraclough.

        Add more CodeBlock statistics.

        * bytecode/CodeBlock.cpp:
        (JSC::CodeBlock::dumpStatistics):

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

11 years ago2008-12-17 Yury Semikhatsky <yurys@google.com>
abarth@webkit.org [Wed, 17 Dec 2008 22:16:52 +0000 (22:16 +0000)]
2008-12-17  Yury Semikhatsky <yurys@google.com>

        Reviewed by Timothy Hatcher.
        Landed by Adam Barth.

        Added more checks that WebInspector.panels.{resources,scripts} are
        defined where they are accessed from other panels and WebInspector
        (some panels are not yet supported in Chrome).

        * inspector/front-end/Console.js:
        (WebInspector.Console.prototype.addMessage):
        (WebInspector.Console.prototype.clearMessages):
        (WebInspector.Console.prototype.completions):
        * inspector/front-end/ObjectPropertiesSection.js:
        (WebInspector.ObjectPropertyTreeElement.prototype.evaluateExpression):
        * inspector/front-end/ScriptsPanel.js:
        (WebInspector.ScriptsPanel.prototype.get searchableViews):
        (WebInspector.ScriptsPanel.prototype._sourceViewForScriptOrResource):
        (WebInspector.ScriptsPanel.prototype._sourceFrameForScriptOrResource):
        (WebInspector.ScriptsPanel.prototype._showScriptOrResource):
        * inspector/front-end/SourceView.js:
        (WebInspector.SourceView.prototype._addBreakpoint):
        * inspector/front-end/inspector.js:
        (WebInspector.addResource):
        (WebInspector.removeResource):
        (WebInspector.showResourceForURL):

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

11 years ago2008-12-17 Sam Weinig <sam@webkit.org>
weinig@apple.com [Wed, 17 Dec 2008 21:25:40 +0000 (21:25 +0000)]
2008-12-17  Sam Weinig  <sam@webkit.org>

        Reviewed by Darin Adler.

        Fix for https://bugs.webkit.org/show_bug.cgi?id=22897
        <rdar://problem/6428342>
        Look into feasibility of discarding bytecode after native codegen

        Clear the bytecode Instruction vector at the end JIT generation.

        Saves 4.8 MB on Membuster head.

        * bytecode/CodeBlock.cpp:
        (JSC::CodeBlock::dump): Add logging for the case that someone tries
        to dump the instructions of a CodeBlock that has had its bytecode
        vector cleared.
        (JSC::CodeBlock::CodeBlock): Initialize the instructionCount
        (JSC::CodeBlock::handlerForBytecodeOffset): Use instructionCount instead
        of the size of the instruction vector in the assertion.
        (JSC::CodeBlock::lineNumberForBytecodeOffset): Ditto.
        (JSC::CodeBlock::expressionRangeForBytecodeOffset): Ditto.
        (JSC::CodeBlock::getByIdExceptionInfoForBytecodeOffset): Ditto.
        (JSC::CodeBlock::functionRegisterForBytecodeOffset): Ditto.
        * bytecode/CodeBlock.h:
        (JSC::CodeBlock::setInstructionCount): Store the instruction vector size
        in debug builds for assertions.
        * bytecompiler/BytecodeGenerator.cpp:
        (JSC::BytecodeGenerator::generate):
        * jit/JIT.cpp:
        (JSC::JIT::privateCompile): Clear the bytecode vector unless we
        have compiled with Opcode sampling where we will continue to require it

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

11 years ago2008-12-17 Feng Qian <feng@chromium.org>
abarth@webkit.org [Wed, 17 Dec 2008 21:12:57 +0000 (21:12 +0000)]
2008-12-17  Feng Qian <feng@chromium.org>

        Reviewed by Alexey Proskuryakov.
        Landed by Adam Barth.

        https://bugs.webkit.org/show_bug.cgi?id=21948
        Change two tests to use the host url in XMLHttpRequest so that
        it does not fail because of Chrome's file URL security policy.
        It does not affect the expected behaviors of tests.
        * fast/dom/null-document-xmlhttprequest-open.html:
        * fast/dom/xmlhttprequest-invalid-values.html:

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

11 years ago2008-12-17 Pamela Greene <pam@chromium.org>
abarth@webkit.org [Wed, 17 Dec 2008 21:12:27 +0000 (21:12 +0000)]
2008-12-17  Pamela Greene  <pam@chromium.org>

        Reviewed by Darin Adler.
        Landed by Adam Barth.

        https://bugs.webkit.org/show_bug.cgi?id=22577
        Add a test to ensure that checkboxes and radio buttons with duplicate
        names map to a collection.

        * fast/dom/HTMLInputElement/duplicate-element-names-expected.txt: Added.
        * fast/dom/HTMLInputElement/duplicate-element-names.html: Added.

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

11 years ago2008-12-17 Pamela Greene <pam@chromium.org>
abarth@webkit.org [Wed, 17 Dec 2008 21:11:57 +0000 (21:11 +0000)]
2008-12-17  Pamela Greene  <pam@chromium.org>

        Reviewed by Darin Adler.
        Landed by Adam Barth.

        https://bugs.webkit.org/show_bug.cgi?id=22612
        Add test to verify type enforcement in DOM setters.

        * fast/dom/setter-type-enforcement-expected.txt: Added.
        * fast/dom/setter-type-enforcement.html: Added.

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

11 years agoWebCore:
abarth@webkit.org [Wed, 17 Dec 2008 21:11:31 +0000 (21:11 +0000)]
WebCore:

2008-12-17  Cary Clark  < caryclark@google.com>

        Reviewed by Darin Adler.
        Landed by Adam Barth.

        Add ENABLE_TEXT_CARET to permit the ANDROID platform
        to invalidate and draw the caret in a separate thread.

        * page/Frame.cpp:
        (WebCore::Frame::clearCaretRectIfNeeded): Body of
        function does nothing if text caret is disabled.
        (WebCore::Frame::selectionLayoutChanged): Do nothing
        if text caret is disabled and the caret only blinked.
        (WebCore::Frame::caretBlinkTimerFired):
        (WebCore::Frame::paintCaret):
        (WebCore::Frame::paintDragCaret): Body of
        functions does nothing if text caret is disabled.

JavaScriptCore:

2008-12-17  Cary Clark  <caryclark@google.com>

        Reviewed by Darin Adler.
        Landed by Adam Barth.

        Add ENABLE_TEXT_CARET to permit the ANDROID platform
        to invalidate and draw the caret in a separate thread.

        * wtf/Platform.h:
        Default ENABLE_TEXT_CARET to 1.

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

11 years agoRubber-stamped by Timothy Hatcher.
zimmermann@webkit.org [Wed, 17 Dec 2008 19:01:41 +0000 (19:01 +0000)]
Rubber-stamped by Timothy Hatcher.

Fix wml/ tests, by doing s/</\&lt;/ and s/>/\&gt;/.
Not sure why this problem wasn't visible before, something has changed.

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

11 years ago Reviewed by Darin Adler.
ap@webkit.org [Wed, 17 Dec 2008 18:10:51 +0000 (18:10 +0000)]
    Reviewed by Darin Adler.

        Don't use unique context group in JSGlobalContextCreate() on Tiger or Leopard, take two.

        * API/JSContextRef.cpp: The previous patch that claimed to do this was making Tiger and
        Leopard always use unique context group instead.

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

11 years ago2008-12-16 Simon Hausmann <hausmann@webkit.org>
hausmann@webkit.org [Wed, 17 Dec 2008 13:41:36 +0000 (13:41 +0000)]
2008-12-16  Simon Hausmann  <hausmann@webkit.org>

        Reviewed by Holger Freyther.

        Added support for unload event counting to the Qt DRT.

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

11 years ago2008-12-16 Simon Hausmann <hausmann@webkit.org>
hausmann@webkit.org [Wed, 17 Dec 2008 13:41:19 +0000 (13:41 +0000)]
2008-12-16  Simon Hausmann  <hausmann@webkit.org>

        Reviewed by Holger Freyther.

        Added mac API specific loader test to the skip list for the Qt DRT.

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