WebKit-https.git
11 years ago[Gtk] add options for 3D transforms and HTML5 channel messaging to the build
jmalonzo@webkit.org [Tue, 24 Feb 2009 09:22:35 +0000 (09:22 +0000)]
[Gtk] add options for 3D transforms and HTML5 channel messaging to the build
https://bugs.webkit.org/show_bug.cgi?id=24072

Reviewed by Alexey Proskuryakov.

Add options for toggling 3D transforms and HTML5 channel messaging
support on or off.

Also fix the web-workers option. It should be web-workers and not workers.

    * configure.ac:

Allow toggling of 3D transforms and HTML5 channel messaging
support for the Autotools (Gtk) build.

Also add '--gtk' in the build-webkit help doc and fix autotools
option for web-workers support.

    * Scripts/build-webkit:

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

11 years ago2009-02-24 David Levin <levin@chromium.org>
levin@chromium.org [Tue, 24 Feb 2009 08:57:34 +0000 (08:57 +0000)]
2009-02-24  David Levin  <levin@chromium.org>

        Reviewed by Dave Hyatt.

        Update expected results due to better results introduced by r41090.

        * platform/mac/media/video-layer-crash-expected.txt:

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

11 years ago2009-02-23 Antti Koivisto <antti@apple.com>
antti@apple.com [Tue, 24 Feb 2009 07:47:48 +0000 (07:47 +0000)]
2009-02-23  Antti Koivisto  <antti@apple.com>

        Reviewed by Oliver Hunt.

        <rdar://problem/6613796> Extended text codecs registered on webview creation

        Comparing a text encoding with string "GBK" ended up constructing
        TextEncoding("GBK") which in turn initialized all extended
        text codecs.

        * platform/text/TextCodecICU.cpp:
        (WebCore::TextCodecICU::decode):

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

11 years ago2009-02-23 Sam Weinig <sam@webkit.org>
weinig@apple.com [Tue, 24 Feb 2009 04:29:10 +0000 (04:29 +0000)]
2009-02-23  Sam Weinig  <sam@webkit.org>

        Fix Qt build.

        * bridge/qt/qt_runtime.cpp:
        (JSC::Bindings::valueRealType):

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

11 years ago2009-02-23 Geoffrey Garen <ggaren@apple.com>
ggaren@apple.com [Tue, 24 Feb 2009 03:58:09 +0000 (03:58 +0000)]
2009-02-23  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Sam Weinig.

        Next step in splitting JIT functionality out of the Interpreter class:
        Moved vptr storage from Interpreter to JSGlobalData, so it could be shared
        between Interpreter and JITStubs, and moved the *Trampoline JIT stubs
        into the JITStubs class. Also added a VPtrSet class to encapsulate vptr
        hacks during JSGlobalData initialization.

        SunSpider says 0.4% faster. Meh.

        * JavaScriptCore.exp:
        * JavaScriptCore.xcodeproj/project.pbxproj:
        * interpreter/Interpreter.cpp:
        (JSC::Interpreter::Interpreter):
        (JSC::Interpreter::tryCacheGetByID):
        (JSC::Interpreter::privateExecute):
        * interpreter/Interpreter.h:
        * jit/JIT.cpp:
        (JSC::JIT::privateCompileMainPass):
        (JSC::JIT::privateCompile):
        (JSC::JIT::privateCompileCTIMachineTrampolines):
        * jit/JIT.h:
        (JSC::JIT::compileCTIMachineTrampolines):
        * jit/JITCall.cpp:
        (JSC::JIT::compileOpCall):
        (JSC::JIT::compileOpCallSlowCase):
        * jit/JITPropertyAccess.cpp:
        (JSC::JIT::privateCompilePatchGetArrayLength):
        * jit/JITStubs.cpp:
        (JSC::JITStubs::JITStubs):
        (JSC::JITStubs::tryCacheGetByID):
        (JSC::JITStubs::cti_vm_dontLazyLinkCall):
        (JSC::JITStubs::cti_op_get_by_val):
        (JSC::JITStubs::cti_op_get_by_val_byte_array):
        (JSC::JITStubs::cti_op_put_by_val):
        (JSC::JITStubs::cti_op_put_by_val_array):
        (JSC::JITStubs::cti_op_put_by_val_byte_array):
        (JSC::JITStubs::cti_op_is_string):
        * jit/JITStubs.h:
        (JSC::JITStubs::ctiArrayLengthTrampoline):
        (JSC::JITStubs::ctiStringLengthTrampoline):
        (JSC::JITStubs::ctiVirtualCallPreLink):
        (JSC::JITStubs::ctiVirtualCallLink):
        (JSC::JITStubs::ctiVirtualCall):
        * runtime/ArrayPrototype.cpp:
        (JSC::arrayProtoFuncPop):
        (JSC::arrayProtoFuncPush):
        * runtime/FunctionPrototype.cpp:
        (JSC::functionProtoFuncApply):
        * runtime/JSArray.h:
        (JSC::isJSArray):
        * runtime/JSByteArray.h:
        (JSC::asByteArray):
        (JSC::isJSByteArray):
        * runtime/JSCell.h:
        * runtime/JSFunction.h:
        * runtime/JSGlobalData.cpp:
        (JSC::VPtrSet::VPtrSet):
        (JSC::JSGlobalData::JSGlobalData):
        (JSC::JSGlobalData::create):
        (JSC::JSGlobalData::sharedInstance):
        * runtime/JSGlobalData.h:
        * runtime/JSString.h:
        (JSC::isJSString):
        * runtime/Operations.h:
        (JSC::jsLess):
        (JSC::jsLessEq):
        * wrec/WREC.cpp:
        (JSC::WREC::Generator::compileRegExp):

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

11 years agoWebCore:
jchaffraix@webkit.org [Tue, 24 Feb 2009 01:21:29 +0000 (01:21 +0000)]
WebCore:

2009-02-23  Julien Chaffraix  <jchaffraix@webkit.org>

        Reviewed by Darin Adler.

        Bug 23956: Safari crashes when cloneNode fails (cloning a XML element with an invalid nodeName)

        The crash occurred because Document::cloneNode would call Document::createElementNS. Unfortunately
        element created with createElement could have a wrong nodeName (createElement sets the string as the
        localName without checking for a prefix).

        The fix is to call Document::createElement(const QualifiedName&, bool) that will not do any checks on the QualifiedName
        and will always succeed.
        Also rolled-out the HTMLElement specialisation of clonedNode as it was equivalent to what is done now (added an ASSERT
        to ensure that).

        Test: fast/dom/cloneNode.html

        * dom/Element.cpp:
        (WebCore::Element::cloneNode): Call createElement(const QualifiedName&, bool) instead of createElementNS as it will
        always return an element.

        * html/HTMLElement.cpp:
        * html/HTMLElement.h: Removed HTMLElement::clonedNode as it is equivalent to what is now done.

LayoutTests:

2009-02-23  Julien Chaffraix  <jchaffraix@webkit.org>

        Reviewed by Darin Adler.

        Test for bug 23956: Safari crashes when cloneNode fails (cloning a XML element with an invalid nodeName)

        * fast/dom/cloneNode-expected.txt: Added.
        * fast/dom/cloneNode.html: Added.

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

11 years agoBug 23787: Allow JIT to generate SSE2 code if using GCC
oliver@apple.com [Tue, 24 Feb 2009 00:29:56 +0000 (00:29 +0000)]
Bug 23787: Allow JIT to generate SSE2 code if using GCC
<https://bugs.webkit.org/show_bug.cgi?id=23787>

Reviewed by Oliver Hunt
Contributed by Csaba Osztrogonac

GCC version of the cpuid check.

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

11 years ago2009-02-23 Dimitri Glazkov <dglazkov@chromium.org>
dglazkov@chromium.org [Tue, 24 Feb 2009 00:04:16 +0000 (00:04 +0000)]
2009-02-23  Dimitri Glazkov  <dglazkov@chromium.org>

        Reviewed by Eric Seidel.

        https://bugs.webkit.org/show_bug.cgi?id=24109
        Upstream V8 Script abstractions, all except ScriptController.

        * bindings/v8/ScriptCachedFrameData.h: Added.
        (WebCore::ScriptCachedFrameData::ScriptCachedFrameData):
        (WebCore::ScriptCachedFrameData::~ScriptCachedFrameData):
        (WebCore::ScriptCachedFrameData::restore):
        (WebCore::ScriptCachedFrameData::clear):
        (WebCore::ScriptCachedFrameData::domWindow):
        * bindings/v8/ScriptCallFrame.cpp: Added.
        (WebCore::ScriptCallFrame::ScriptCallFrame):
        (WebCore::ScriptCallFrame::~ScriptCallFrame):
        (WebCore::ScriptCallFrame::argumentAt):
        * bindings/v8/ScriptCallFrame.h: Added.
        (WebCore::ScriptCallFrame::functionName):
        (WebCore::ScriptCallFrame::sourceURL):
        (WebCore::ScriptCallFrame::lineNumber):
        (WebCore::ScriptCallFrame::argumentCount):
        * bindings/v8/ScriptCallStack.cpp: Added.
        (WebCore::ScriptCallStack::ScriptCallStack):
        (WebCore::ScriptCallStack::~ScriptCallStack):
        (WebCore::ScriptCallStack::at):
        * bindings/v8/ScriptCallStack.h: Added.
        (WebCore::ScriptCallStack::size):
        * bindings/v8/ScriptInstance.cpp: Added.
        (WebCore::V8ScriptInstance::V8ScriptInstance):
        (WebCore::V8ScriptInstance::~V8ScriptInstance):
        (WebCore::V8ScriptInstance::instance):
        (WebCore::V8ScriptInstance::clear):
        (WebCore::V8ScriptInstance::set):
        * bindings/v8/ScriptInstance.h: Added.
        (WebCore::V8ScriptInstance::create):
        * bindings/v8/ScriptSourceCode.h: Added.
        (WebCore::ScriptSourceCode::ScriptSourceCode):
        (WebCore::ScriptSourceCode::isEmpty):
        (WebCore::ScriptSourceCode::source):
        (WebCore::ScriptSourceCode::url):
        (WebCore::ScriptSourceCode::startLine):
        * bindings/v8/ScriptState.h: Added.
        (WebCore::ScriptState::hadException):
        (WebCore::ScriptState::setException):
        (WebCore::ScriptState::exception):
        * bindings/v8/ScriptString.h: Added.
        (WebCore::ScriptString::ScriptString):
        (WebCore::ScriptString::operator String):
        (WebCore::ScriptString::isNull):
        (WebCore::ScriptString::size):
        (WebCore::ScriptString::operator=):
        (WebCore::ScriptString::operator+=):
        * bindings/v8/ScriptValue.cpp: Added.
        (WebCore::ScriptValue::getString):
        * bindings/v8/ScriptValue.h: Added.
        (WebCore::ScriptValue::ScriptValue):
        (WebCore::ScriptValue::operator=):
        (WebCore::ScriptValue::operator==):
        (WebCore::ScriptValue::operator!=):
        (WebCore::ScriptValue::isNull):
        (WebCore::ScriptValue::isUndefined):
        (WebCore::ScriptValue::clear):
        (WebCore::ScriptValue::~ScriptValue):
        (WebCore::ScriptValue::v8Value):

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

11 years ago2009-02-23 Adam Treat <adam.treat@torchmobile.com>
treat@webkit.org [Mon, 23 Feb 2009 23:20:33 +0000 (23:20 +0000)]
2009-02-23  Adam Treat  <adam.treat@torchmobile.com>

        Reviewed by Timothy Hatcher.

        https://bugs.webkit.org/show_bug.cgi?id=24106
        The Qt port is crashing on exit because the tear down procedure involves
        the WebCore::InspectorController trying to access the JS execution context
        for a page that is being deleted.  This patch amends the inspector so
        that it does not try and access the execution context of the WebCore::Page
        in the midst of deletion.

        * inspector/InspectorController.cpp:
        (WebCore::InspectorController::inspectedPageDestroyed):
        (WebCore::InspectorController::stopUserInitiatedProfiling):

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

11 years ago2009-02-23 David Levin <levin@chromium.org>
levin@chromium.org [Mon, 23 Feb 2009 22:37:35 +0000 (22:37 +0000)]
2009-02-23  David Levin  <levin@chromium.org>

        Reviewed by Alexey Proskuryakov.

        Bug 24088: ThreadableLoaderClient::didFailWillSendRequestCheck isn't wired up completely for workers and could use a better name.
        <https://bugs.webkit.org/show_bug.cgi?id=24088>

        No observable change in behavior, so no test.

        * loader/DocumentThreadableLoader.cpp:
        (WebCore::DocumentThreadableLoader::create):
        * loader/ThreadableLoaderClient.h:
        (WebCore::ThreadableLoaderClient::didFailRedirectCheck):
        * loader/ThreadableLoaderClientWrapper.h:
        (WebCore::ThreadableLoaderClientWrapper::didFailRedirectCheck):
        * loader/WorkerThreadableLoader.cpp:
        (WebCore::workerContextDidFailRedirectCheck):
        (WebCore::WorkerThreadableLoader::MainThreadBridge::didFailRedirectCheck):
        * loader/WorkerThreadableLoader.h:
        * xml/XMLHttpRequest.cpp:
        (WebCore::XMLHttpRequest::didFinishLoading):
        * xml/XMLHttpRequest.h:

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

11 years agoJavaScriptCore:
levin@chromium.org [Mon, 23 Feb 2009 22:37:17 +0000 (22:37 +0000)]
JavaScriptCore:

2009-02-23  David Levin  <levin@chromium.org>

        Reviewed by Alexey Proskuryakov.

        Bug 24047: Need to simplify nested if's in WorkerRunLoop::runInMode
        <https://bugs.webkit.org/show_bug.cgi?id=24047>

        * wtf/MessageQueue.h:
        (WTF::MessageQueue::infiniteTime):
        Allows for one to call waitForMessageFilteredWithTimeout and wait forever.

        (WTF::MessageQueue::alwaysTruePredicate):
        (WTF::MessageQueue::waitForMessage):
        Made waitForMessage call waitForMessageFilteredWithTimeout, so that there is less
        duplicate code.

        (WTF::MessageQueue::waitForMessageFilteredWithTimeout):

        * wtf/ThreadingQt.cpp:
        (WTF::ThreadCondition::timedWait):
        * wtf/ThreadingWin.cpp:
        (WTF::ThreadCondition::timedWait):
        Made these two implementations consistent with the pthread and gtk implementations.
        Currently, the time calculations would overflow when passed large values.

WebCore:

2009-02-23  David Levin  <levin@chromium.org>

        Reviewed by Alexey Proskuryakov.

        Bug 24047: Need to simplify nested if's in WorkerRunLoop::runInMode
        <https://bugs.webkit.org/show_bug.cgi?id=24047>

        Made a nested if inside of WorkerRunLoop::runInMode a lot simpler by
        using only MessageQueue::waitForMessageFilteredWithTimeout instead
        of three different MessageQueue methods.

        No observable change in behavior, so no test.

        * dom/WorkerRunLoop.cpp:
        (WebCore::ModePredicate::operator()):
        Minor clean-up to able to pass a const ref point for ModePredicate into runInMode.
        (WebCore::WorkerRunLoop::runInMode):
        * dom/WorkerRunLoop.h:

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

11 years ago2009-02-23 Anders Carlsson <andersca@apple.com>
andersca@apple.com [Mon, 23 Feb 2009 22:08:43 +0000 (22:08 +0000)]
2009-02-23  Anders Carlsson  <andersca@apple.com>

        Reviewed by Geoffrey Garen and Darin Adler.

        WebKit side of <rdar://problem/6613151>.

        Make sure to vm_deallocate all memory we get from MIG callbacks.

        * Plugins/Hosted/NetscapePluginHostProxy.mm:
        (DataDeallocator::DataDeallocator):
        (DataDeallocator::~DataDeallocator):
        Add a simple deallocator class.

        (WKPCStatusText):
        (WKPCLoadURL):
        (WKPCBooleanAndDataReply):
        (WKPCEvaluate):
        (WKPCGetStringIdentifier):
        (WKPCInvoke):
        (WKPCInvokeDefault):
        (WKPCConstruct):
        (WKPCSetProperty):
        Use the new deallocator class.

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

11 years ago2009-02-23 David Hyatt <hyatt@apple.com>
hyatt@apple.com [Mon, 23 Feb 2009 20:40:23 +0000 (20:40 +0000)]
2009-02-23  David Hyatt  <hyatt@apple.com>

        In preparation for making layers for multicol objects (so that they can properly split child layers
        into multiple columns), rename all of the "overflowOnly" and "overflowList" members and functions
        of RenderLayer to use the term "normal flow" instead.

        Reviewed by Cameron Zwarich

        * rendering/RenderLayer.cpp:
        (WebCore::RenderLayer::RenderLayer):
        (WebCore::RenderLayer::~RenderLayer):
        (WebCore::RenderLayer::setHasVisibleContent):
        (WebCore::RenderLayer::enclosingCompositingLayer):
        (WebCore::RenderLayer::addChild):
        (WebCore::RenderLayer::removeChild):
        (WebCore::RenderLayer::paintLayer):
        (WebCore::RenderLayer::hitTestLayer):
        (WebCore::RenderLayer::dirtyNormalFlowList):
        (WebCore::RenderLayer::updateNormalFlowList):
        (WebCore::RenderLayer::collectLayers):
        (WebCore::RenderLayer::updateLayerListsIfNeeded):
        (WebCore::RenderLayer::shouldBeNormalFlowOnly):
        (WebCore::RenderLayer::styleChanged):
        * rendering/RenderLayer.h:
        (WebCore::RenderLayer::isNormalFlowOnly):
        (WebCore::RenderLayer::normalFlowList):
        * rendering/RenderTreeAsText.cpp:
        (WebCore::writeLayers):

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

11 years agoWebCore:
hyatt@apple.com [Mon, 23 Feb 2009 20:16:43 +0000 (20:16 +0000)]
WebCore:

2009-02-23  David Hyatt  <hyatt@apple.com>

        Fix the stacking order for column rules in multi-column layout.  Column rules should paint as part of the background of an element, just
        after all other components of the background have been painted.  This allows negative z-index children to still paint on top of the
        column rules (rather than ending up above the background of the box but behind the column rules).

        Reviewed by Eric Seidel

        Added fast/multicol/column-rules-stacking.html

        * rendering/RenderBlock.cpp:
        (WebCore::RenderBlock::paintColumnRules):
        (WebCore::RenderBlock::paintColumnContents):
        (WebCore::RenderBlock::paintObject):
        * rendering/RenderBlock.h:

LayoutTests:

2009-02-23  David Hyatt  <hyatt@apple.com>

        Fix the stacking order for column rules in multi-column layout.  Column rules should paint as part of the background of an element, just
        after all other components of the background have been painted.  This allows negative z-index children to still paint on top of the
        column rules (rather than ending up above the background of the box but behind the column rules).

        Reviewed by Eric Seidel

        * fast/multicol/column-rules-stacking.html: Added.
        * platform/mac/fast/multicol/column-rules-stacking-expected.checksum: Added.
        * platform/mac/fast/multicol/column-rules-stacking-expected.png: Added.
        * platform/mac/fast/multicol/column-rules-stacking-expected.txt: Added.

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

11 years ago2009-02-23 Adam Treat <adam.treat@torchmobile.com>
treat@webkit.org [Mon, 23 Feb 2009 20:11:05 +0000 (20:11 +0000)]
2009-02-23  Adam Treat  <adam.treat@torchmobile.com>

        Reviewed by David Hyatt.

        No testcases have been added or modified since this patch should not result in
        a behavior change for ports that have layout tests enabled.

        Currently, the implementation of GraphicsContext::drawLineForText amongst
        the various ports differ in that some of them are honoring the context's
        strokeStyle when drawing a text-decoration and some of them are not.
        For instance, Apple's Mac port *does not* honor the context's strokeStyle(),
        but the Cairo implementation does and has an explicit workaround that
        sets the strokeStyle() temporarily.

        This patch fixes so that all ports are consistent by explicitly making sure
        to set the GraphicsContext strokeStyle to SolidStroke whenever
        painting the text-decoration of an InlineFlowBox or InlineTextBox as these
        should always use a solid stroke.

        This patch addresses these bugs:
        https://bugs.webkit.org/show_bug.cgi?id=19364
        https://bugs.webkit.org/show_bug.cgi?id=15659

        * rendering/InlineFlowBox.cpp:
        (WebCore::InlineFlowBox::paintTextDecorations):
        * rendering/InlineTextBox.cpp:
        (WebCore::InlineTextBox::paintDecoration):

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

11 years ago2009-02-23 Adam Treat <adam.treat@torchmobile.com>
treat@webkit.org [Mon, 23 Feb 2009 19:52:52 +0000 (19:52 +0000)]
2009-02-23  Adam Treat  <adam.treat@torchmobile.com>

        Reviewed by Darin Adler.

        https://bugs.webkit.org/show_bug.cgi?id=24094
        Make sure to empty the cache on exit to get rid of superfluous leak messages
        for CachedResource's in order to keep the leak messages accurate.  This
        is analagous to what the Mac port is doing on application exit when all
        WebView's have been closed.

        * Api/qwebpage.cpp:
        (QWebPagePrivate::_q_cleanupLeakMessages):
        (QWebPage::QWebPage):
        * Api/qwebpage.h:
        * Api/qwebpage_p.h:

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

11 years ago2009-02-23 Scott Violet <sky@google.com>
dglazkov@chromium.org [Mon, 23 Feb 2009 19:35:42 +0000 (19:35 +0000)]
2009-02-23  Scott Violet  <sky@google.com>

        Reviewed by Eric Seidel.

        https://bugs.webkit.org/show_bug.cgi?id=24098
        Bugs in ClipboardChromium

        Fixes the following bugs in ClipboardChromium:
        * It's possible for the extension to be empty, resulting in a bad file
          name, for example, 'foo.' or just '.'.
        * We weren't restricting the size of the file to MAX_PATH.
        * We weren't removing characters that are invalid for file system names.

        * platform/chromium/ClipboardChromium.cpp:
        (WebCore::writeImageToDataObject):
        * platform/chromium/ClipboardChromium.h:
        * platform/chromium/ClipboardChromiumLinux.cpp: Added.
        (WebCore::ClipboardChromium::validateFileName):
        * platform/chromium/ClipboardChromiumMac.cpp: Added.
        (WebCore::ClipboardChromium::validateFileName):
        * platform/chromium/ClipboardChromiumWin.cpp: Added.
        (WebCore::isInvalidFileCharacter):
        (WebCore::ClipboardChromium::validateFileName):

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

11 years ago2009-02-23 Jeremy Moskovich <jeremy@chromium.org>
dglazkov@chromium.org [Mon, 23 Feb 2009 17:48:25 +0000 (17:48 +0000)]
2009-02-23  Jeremy Moskovich  <jeremy@chromium.org>

        Reviewed by Adam Roben.

        https://bugs.webkit.org/show_bug.cgi?id=24096
        PLATFORM(MAC)->PLATFORM(CF) since we want to use the CF functions in Chrome on OS X.

        * wtf/CurrentTime.cpp:

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

11 years ago2009-02-23 Anders Carlsson <andersca@apple.com>
andersca@apple.com [Mon, 23 Feb 2009 17:20:29 +0000 (17:20 +0000)]
2009-02-23  Anders Carlsson  <andersca@apple.com>

        Reviewed by Darin Adler.

        Fix <rdar://problem/6450656>.

        * Plugins/Hosted/NetscapePluginInstanceProxy.h:
        * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
        (WebKit::NetscapePluginInstanceProxy::insertText):
        Add insert text which just calls the new WKPH function.

        * Plugins/Hosted/WebHostedNetscapePluginView.mm:
        (-[WebHostedNetscapePluginView inputContext]):
        Get the input context from the shared input panel.

        (-[WebHostedNetscapePluginView keyDown:]):
        Let the shared input panel have a go at the event first.

        * Plugins/Hosted/WebKitPluginHost.defs:
        Add new InsertText function.

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

11 years ago2009-02-23 Thiago Macieira <thiago.macieira@nokia.com>
hausmann@webkit.org [Mon, 23 Feb 2009 16:19:31 +0000 (16:19 +0000)]
2009-02-23  Thiago Macieira  <thiago.macieira@nokia.com>

        Reviewed by Simon Hausmann.

        Fix the Copyright notices in a few files

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

11 years ago2009-02-23 Gustavo Noronha Silva <gns@gnome.org>
kov@webkit.org [Mon, 23 Feb 2009 15:08:10 +0000 (15:08 +0000)]
2009-02-23  Gustavo Noronha Silva  <gns@gnome.org>

        Reviewed by Alexey Proskuryakov.

        https://bugs.webkit.org/show_bug.cgi?id=24011
        KURL's setPort doesn't unset port if 0 is given

        Adding regression tests for change done on KURL's setPort in
        r41076. It is worth noting that Firefox doesn't render this test
        correctly since it raises an exception when javascript tries to
        change the iframe's contentWindow.location.port, though other
        properties are modifiable.

        * fast/loader/location-port-expected.txt: Added.
        * fast/loader/location-port.html: Added.
        * fast/loader/resources/location-port-iframe.html: Added.

Also added bug URL to the WebCore entry for the r41076 change.

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

11 years ago Rubber-stamped by Mark Rowe.
ap@webkit.org [Mon, 23 Feb 2009 14:46:00 +0000 (14:46 +0000)]
    Rubber-stamped by Mark Rowe.

        https://bugs.webkit.org/show_bug.cgi?id=15690
        Bug in layout test framework (setUpPage vs. setUpPageStatus)

        * (Many JS files in dom/):
        (setUpPage): Replaced setUpPage with setUpPageStatus where appropriate, downstreaming
        a W3C fix.

        Committing dom/xhtml/level3.

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

11 years ago Rubber-stamped by Mark Rowe.
ap@webkit.org [Mon, 23 Feb 2009 14:23:20 +0000 (14:23 +0000)]
    Rubber-stamped by Mark Rowe.

        https://bugs.webkit.org/show_bug.cgi?id=15690
        Bug in layout test framework (setUpPage vs. setUpPageStatus)

        * (Many JS files in dom/):
        (setUpPage): Replaced setUpPage with setUpPageStatus where appropriate, downstreaming
        a W3C fix.

        Committing dom/xhtml/level2.

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

11 years ago Rubber-stamped by Mark Rowe.
ap@webkit.org [Mon, 23 Feb 2009 14:03:34 +0000 (14:03 +0000)]
    Rubber-stamped by Mark Rowe.

        https://bugs.webkit.org/show_bug.cgi?id=15690
        Bug in layout test framework (setUpPage vs. setUpPageStatus)

        * (Many JS files in dom/):
        (setUpPage): Replaced setUpPage with setUpPageStatus where appropriate, downstreaming
        a W3C fix.

        Committing dom/xhtml/level1.

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

11 years ago Rubber-stamped by Mark Rowe.
ap@webkit.org [Mon, 23 Feb 2009 13:56:16 +0000 (13:56 +0000)]
    Rubber-stamped by Mark Rowe.

        https://bugs.webkit.org/show_bug.cgi?id=15690
        Bug in layout test framework (setUpPage vs. setUpPageStatus)

        * (Many JS files in dom/):
        (setUpPage): Replaced setUpPage with setUpPageStatus where appropriate, downstreaming
        a W3C fix.

        Committing dom/html/level2.

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

11 years ago Rubber-stamped by Mark Rowe.
ap@webkit.org [Mon, 23 Feb 2009 13:34:52 +0000 (13:34 +0000)]
    Rubber-stamped by Mark Rowe.

        https://bugs.webkit.org/show_bug.cgi?id=15690
        Bug in layout test framework (setUpPage vs. setUpPageStatus)

        * (Many JS files in dom/):
        (setUpPage): Replaced setUpPage with setUpPageStatus where appropriate, downstreaming
        a W3C fix.

        Committing  dom/html/level1.

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

11 years ago Rubber-stamped by Mark Rowe.
ap@webkit.org [Mon, 23 Feb 2009 13:27:32 +0000 (13:27 +0000)]
    Rubber-stamped by Mark Rowe.

        https://bugs.webkit.org/show_bug.cgi?id=15690
        Bug in layout test framework (setUpPage vs. setUpPageStatus)

        * (Many JS files in dom/):
        (setUpPage): Replaced setUpPage with setUpPageStatus where appropriate, downstreaming
        a W3C fix.

        First part: dom/svg.

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

11 years agoAllow retrieving the Soup session and modify the code to take
christian@webkit.org [Mon, 23 Feb 2009 11:24:02 +0000 (11:24 +0000)]
Allow retrieving the Soup session and modify the code to take
into account users changing features on it.

https://bugs.webkit.org/show_bug.cgi?id=22624
[SOUP][GTK] Need API to get SoupSession from WebKit.

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

11 years agoRemove CURL support in the Gtk port, the HTTP backend is SOUP now.
christian@webkit.org [Mon, 23 Feb 2009 11:15:30 +0000 (11:15 +0000)]
Remove CURL support in the Gtk port, the HTTP backend is SOUP now.

https://bugs.webkit.org/show_bug.cgi?id=22624
[SOUP][GTK] Need API to get SoupSession from WebKit.

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

11 years ago2009-02-23 Jan Michael Alonzo <jmalonzo@webkit.org>
jmalonzo@webkit.org [Mon, 23 Feb 2009 10:00:23 +0000 (10:00 +0000)]
2009-02-23  Jan Michael Alonzo  <jmalonzo@webkit.org>

        Reviewed by Mark Rowe.

        [GTK] Back / Forward history menus are flipped
        https://bugs.webkit.org/show_bug.cgi?id=22694

        Don't call g_list_reverse when returning the back or forward list.

        * tests/main.c:
        (test_webkit_web_back_forward_list_order):
        (main):
        * webkit/webkitwebbackforwardlist.cpp:
        (_WebKitWebBackForwardListPrivate::webkit_web_back_forward_list_get_forward_list_with_limit):
        (_WebKitWebBackForwardListPrivate::webkit_web_back_forward_list_get_back_list_with_limit):

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

11 years ago Reviewed by Mark Rowe.
ap@webkit.org [Mon, 23 Feb 2009 09:44:16 +0000 (09:44 +0000)]
    Reviewed by Mark Rowe.

        Test: fast/dom/empty-hash-and-search.html

        https://bugs.webkit.org/show_bug.cgi?id=21147
        hash property returns incorrect value for links w/o hash

        Make hash() and search() behavior for empty and missing parts match IE and Firefox.

        * platform/KURL.cpp:
        (WebCore::KURL::query): Changed to return query without '?', as it is already done for ref().
        (WebCore::KURL::prettyURL): Append the query with the question mark.

        * page/Location.cpp:
        (WebCore::Location::search): Return an empty string if query is empty or missing.
        (WebCore::Location::hash): Return an empty string for empty hashes, not only missing ones.

        * dom/WorkerLocation.cpp:
        (WebCore::WorkerLocation::search):
        (WebCore::WorkerLocation::hash):
        Match document.location fixes above.

        * html/HTMLAnchorElement.cpp:
        (WebCore::HTMLAnchorElement::hash):
        (WebCore::HTMLAnchorElement::search):
        Return an empty string for empty and missing parts.

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

11 years ago Reviewed by Darin Adler.
ap@webkit.org [Mon, 23 Feb 2009 09:21:54 +0000 (09:21 +0000)]
    Reviewed by Darin Adler.

        https://bugs.webkit.org/show_bug.cgi?id=20184
        SELECT with no name generates invalid query string

        Test: fast/forms/select-no-name.html

        * html/HTMLSelectElement.cpp:
        (WebCore::HTMLSelectElement::appendFormData): Added a check for empty name.

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

11 years ago Apply review comments for the previous check-in (forgot to save the file...
ap@webkit.org [Mon, 23 Feb 2009 09:10:59 +0000 (09:10 +0000)]
    Apply review comments for the previous check-in (forgot to save the file, oops).

        * dom/ContainerNode.cpp: (WebCore::ContainerNode::removeChildren):

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

11 years ago Reviewed by Darin Adler.
ap@webkit.org [Mon, 23 Feb 2009 09:03:15 +0000 (09:03 +0000)]
    Reviewed by Darin Adler.

        https://bugs.webkit.org/show_bug.cgi?id=15707
        Crash when manipulating document from within an iframe onload function

        Test: fast/dom/onload-open.html

        * dom/ContainerNode.cpp: (WebCore::ContainerNode::removeChildren): Protect the container and
        the current node, because anything can happen when dispatching events.

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

11 years agoFix the build after r41126.
mrowe@apple.com [Mon, 23 Feb 2009 08:58:00 +0000 (08:58 +0000)]
Fix the build after r41126.

* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::invoke):
(WebKit::NetscapePluginInstanceProxy::invokeDefault):
(WebKit::NetscapePluginInstanceProxy::construct):

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

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

        https://bugs.webkit.org/show_bug.cgi?id=18970
        Numerically named input fields cause document.forms loop problems

        Test: fast/forms/numeric-input-name.html

        * bindings/scripts/CodeGeneratorJS.pm: Try index getter before name getter, even if the
        latter overrides properties.

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

11 years ago Reviewed by Sam Weinig.
ap@webkit.org [Mon, 23 Feb 2009 08:44:57 +0000 (08:44 +0000)]
    Reviewed by Sam Weinig.

        https://bugs.webkit.org/show_bug.cgi?id=24059
        Tokenizer::write() return value is never used

        * dom/Tokenizer.h:
        * dom/XMLTokenizer.cpp:
        (WebCore::XMLTokenizer::write):
        * dom/XMLTokenizer.h:
        * html/HTMLTokenizer.cpp:
        (WebCore::HTMLTokenizer::write):
        * html/HTMLTokenizer.h:
        * loader/FTPDirectoryDocument.cpp:
        (WebCore::FTPDirectoryTokenizer::write):
        * loader/ImageDocument.cpp:
        (WebCore::ImageTokenizer::write):
        * loader/MediaDocument.cpp:
        (WebCore::MediaTokenizer::write):
        * loader/PluginDocument.cpp:
        (WebCore::PluginTokenizer::write):
        * loader/TextDocument.cpp:
        (WebCore::TextTokenizer::write):
        Made write() return void, not bool.

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

11 years ago Reviewed by Darin Adler.
mitz@apple.com [Mon, 23 Feb 2009 06:22:34 +0000 (06:22 +0000)]
    Reviewed by Darin Adler.

        - fix <rdar://problem/5966123> REGRESSION (r30741): Generic Sun Applet loading logo appears half off screen

        * WebCoreSupport/WebFrameLoaderClient.mm: Correct a copy & paste error
        in r30741, and assign the height value, rather than the width, to the
        "height" parameter.

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

11 years ago2009-02-22 Geoffrey Garen <ggaren@apple.com>
ggaren@apple.com [Mon, 23 Feb 2009 00:53:05 +0000 (00:53 +0000)]
2009-02-22  Geoffrey Garen  <ggaren@apple.com>

        Build fix?

        * GNUmakefile.am:

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

11 years ago2009-02-22 Geoffrey Garen <ggaren@apple.com>
ggaren@apple.com [Mon, 23 Feb 2009 00:34:49 +0000 (00:34 +0000)]
2009-02-22  Geoffrey Garen  <ggaren@apple.com>

        Build fix.

        * GNUmakefile.am:

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

11 years agoJavaScriptCore:
ggaren@apple.com [Sun, 22 Feb 2009 23:26:07 +0000 (23:26 +0000)]
JavaScriptCore:

2009-02-22  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Sam Weinig.

        Next step in splitting JIT functionality out of the Interpreter class:
        Created a JITStubs class and renamed Interpreter::cti_* to JITStubs::cti_*.

        Also, moved timeout checking into its own class, located in JSGlobalData,
        so both the Interpreter and the JIT could have access to it.

        * JavaScriptCore.exp:
        * JavaScriptCore.pri:
        * JavaScriptCore.scons:
        * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
        * JavaScriptCore.xcodeproj/project.pbxproj:
        * JavaScriptCoreSources.bkl:
        * interpreter/CallFrame.h:
        * interpreter/Interpreter.cpp:
        (JSC::Interpreter::Interpreter):
        (JSC::Interpreter::privateExecute):
        * interpreter/Interpreter.h:
        * interpreter/Register.h:
        * jit/JIT.cpp:
        (JSC::):
        (JSC::JIT::emitTimeoutCheck):
        (JSC::JIT::privateCompileMainPass):
        (JSC::JIT::privateCompileSlowCases):
        (JSC::JIT::privateCompile):
        (JSC::JIT::privateCompileCTIMachineTrampolines):
        * jit/JIT.h:
        * jit/JITArithmetic.cpp:
        (JSC::JIT::compileFastArithSlow_op_lshift):
        (JSC::JIT::compileFastArithSlow_op_rshift):
        (JSC::JIT::compileFastArithSlow_op_bitand):
        (JSC::JIT::compileFastArithSlow_op_mod):
        (JSC::JIT::compileFastArith_op_mod):
        (JSC::JIT::compileFastArithSlow_op_post_inc):
        (JSC::JIT::compileFastArithSlow_op_post_dec):
        (JSC::JIT::compileFastArithSlow_op_pre_inc):
        (JSC::JIT::compileFastArithSlow_op_pre_dec):
        (JSC::JIT::compileFastArith_op_add):
        (JSC::JIT::compileFastArith_op_mul):
        (JSC::JIT::compileFastArith_op_sub):
        (JSC::JIT::compileBinaryArithOpSlowCase):
        (JSC::JIT::compileFastArithSlow_op_add):
        (JSC::JIT::compileFastArithSlow_op_mul):
        * jit/JITCall.cpp:
        (JSC::JIT::compileOpCall):
        (JSC::JIT::compileOpCallSlowCase):
        * 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::privateCompileGetByIdChain):
        (JSC::JIT::privateCompilePutByIdReplace):
        * jit/JITStubs.cpp:
        (JSC::JITStubs::tryCachePutByID):
        (JSC::JITStubs::tryCacheGetByID):
        (JSC::JITStubs::cti_op_convert_this):
        (JSC::JITStubs::cti_op_end):
        (JSC::JITStubs::cti_op_add):
        (JSC::JITStubs::cti_op_pre_inc):
        (JSC::JITStubs::cti_timeout_check):
        (JSC::JITStubs::cti_register_file_check):
        (JSC::JITStubs::cti_op_loop_if_less):
        (JSC::JITStubs::cti_op_loop_if_lesseq):
        (JSC::JITStubs::cti_op_new_object):
        (JSC::JITStubs::cti_op_put_by_id_generic):
        (JSC::JITStubs::cti_op_get_by_id_generic):
        (JSC::JITStubs::cti_op_put_by_id):
        (JSC::JITStubs::cti_op_put_by_id_second):
        (JSC::JITStubs::cti_op_put_by_id_fail):
        (JSC::JITStubs::cti_op_get_by_id):
        (JSC::JITStubs::cti_op_get_by_id_second):
        (JSC::JITStubs::cti_op_get_by_id_self_fail):
        (JSC::JITStubs::cti_op_get_by_id_proto_list):
        (JSC::JITStubs::cti_op_get_by_id_proto_list_full):
        (JSC::JITStubs::cti_op_get_by_id_proto_fail):
        (JSC::JITStubs::cti_op_get_by_id_array_fail):
        (JSC::JITStubs::cti_op_get_by_id_string_fail):
        (JSC::JITStubs::cti_op_instanceof):
        (JSC::JITStubs::cti_op_del_by_id):
        (JSC::JITStubs::cti_op_mul):
        (JSC::JITStubs::cti_op_new_func):
        (JSC::JITStubs::cti_op_call_JSFunction):
        (JSC::JITStubs::cti_op_call_arityCheck):
        (JSC::JITStubs::cti_vm_dontLazyLinkCall):
        (JSC::JITStubs::cti_vm_lazyLinkCall):
        (JSC::JITStubs::cti_op_push_activation):
        (JSC::JITStubs::cti_op_call_NotJSFunction):
        (JSC::JITStubs::cti_op_create_arguments):
        (JSC::JITStubs::cti_op_create_arguments_no_params):
        (JSC::JITStubs::cti_op_tear_off_activation):
        (JSC::JITStubs::cti_op_tear_off_arguments):
        (JSC::JITStubs::cti_op_profile_will_call):
        (JSC::JITStubs::cti_op_profile_did_call):
        (JSC::JITStubs::cti_op_ret_scopeChain):
        (JSC::JITStubs::cti_op_new_array):
        (JSC::JITStubs::cti_op_resolve):
        (JSC::JITStubs::cti_op_construct_JSConstruct):
        (JSC::JITStubs::cti_op_construct_NotJSConstruct):
        (JSC::JITStubs::cti_op_get_by_val):
        (JSC::JITStubs::cti_op_get_by_val_byte_array):
        (JSC::JITStubs::cti_op_resolve_func):
        (JSC::JITStubs::cti_op_sub):
        (JSC::JITStubs::cti_op_put_by_val):
        (JSC::JITStubs::cti_op_put_by_val_array):
        (JSC::JITStubs::cti_op_put_by_val_byte_array):
        (JSC::JITStubs::cti_op_lesseq):
        (JSC::JITStubs::cti_op_loop_if_true):
        (JSC::JITStubs::cti_op_negate):
        (JSC::JITStubs::cti_op_resolve_base):
        (JSC::JITStubs::cti_op_resolve_skip):
        (JSC::JITStubs::cti_op_resolve_global):
        (JSC::JITStubs::cti_op_div):
        (JSC::JITStubs::cti_op_pre_dec):
        (JSC::JITStubs::cti_op_jless):
        (JSC::JITStubs::cti_op_not):
        (JSC::JITStubs::cti_op_jtrue):
        (JSC::JITStubs::cti_op_post_inc):
        (JSC::JITStubs::cti_op_eq):
        (JSC::JITStubs::cti_op_lshift):
        (JSC::JITStubs::cti_op_bitand):
        (JSC::JITStubs::cti_op_rshift):
        (JSC::JITStubs::cti_op_bitnot):
        (JSC::JITStubs::cti_op_resolve_with_base):
        (JSC::JITStubs::cti_op_new_func_exp):
        (JSC::JITStubs::cti_op_mod):
        (JSC::JITStubs::cti_op_less):
        (JSC::JITStubs::cti_op_neq):
        (JSC::JITStubs::cti_op_post_dec):
        (JSC::JITStubs::cti_op_urshift):
        (JSC::JITStubs::cti_op_bitxor):
        (JSC::JITStubs::cti_op_new_regexp):
        (JSC::JITStubs::cti_op_bitor):
        (JSC::JITStubs::cti_op_call_eval):
        (JSC::JITStubs::cti_op_throw):
        (JSC::JITStubs::cti_op_get_pnames):
        (JSC::JITStubs::cti_op_next_pname):
        (JSC::JITStubs::cti_op_push_scope):
        (JSC::JITStubs::cti_op_pop_scope):
        (JSC::JITStubs::cti_op_typeof):
        (JSC::JITStubs::cti_op_is_undefined):
        (JSC::JITStubs::cti_op_is_boolean):
        (JSC::JITStubs::cti_op_is_number):
        (JSC::JITStubs::cti_op_is_string):
        (JSC::JITStubs::cti_op_is_object):
        (JSC::JITStubs::cti_op_is_function):
        (JSC::JITStubs::cti_op_stricteq):
        (JSC::JITStubs::cti_op_nstricteq):
        (JSC::JITStubs::cti_op_to_jsnumber):
        (JSC::JITStubs::cti_op_in):
        (JSC::JITStubs::cti_op_push_new_scope):
        (JSC::JITStubs::cti_op_jmp_scopes):
        (JSC::JITStubs::cti_op_put_by_index):
        (JSC::JITStubs::cti_op_switch_imm):
        (JSC::JITStubs::cti_op_switch_char):
        (JSC::JITStubs::cti_op_switch_string):
        (JSC::JITStubs::cti_op_del_by_val):
        (JSC::JITStubs::cti_op_put_getter):
        (JSC::JITStubs::cti_op_put_setter):
        (JSC::JITStubs::cti_op_new_error):
        (JSC::JITStubs::cti_op_debug):
        (JSC::JITStubs::cti_vm_throw):
        * jit/JITStubs.h:
        (JSC::):
        * runtime/JSFunction.h:
        * runtime/JSGlobalData.cpp:
        (JSC::JSGlobalData::JSGlobalData):
        * runtime/JSGlobalData.h:
        * runtime/JSGlobalObject.cpp:
        * runtime/JSGlobalObject.h:
        * runtime/TimeoutChecker.cpp: Copied from interpreter/Interpreter.cpp.
        (JSC::TimeoutChecker::TimeoutChecker):
        (JSC::TimeoutChecker::reset):
        (JSC::TimeoutChecker::didTimeOut):
        * runtime/TimeoutChecker.h: Copied from interpreter/Interpreter.h.
        (JSC::TimeoutChecker::setTimeoutInterval):
        (JSC::TimeoutChecker::ticksUntilNextCheck):
        (JSC::TimeoutChecker::start):
        (JSC::TimeoutChecker::stop):

WebCore:

2009-02-20  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Sam Weinig.

        Updated for JavaScriptCore changes to timeout checking.

        * bindings/js/JSCustomPositionCallback.cpp:
        (WebCore::JSCustomPositionCallback::handleEvent):
        * bindings/js/JSCustomPositionErrorCallback.cpp:
        (WebCore::JSCustomPositionErrorCallback::handleEvent):
        * bindings/js/JSCustomSQLStatementCallback.cpp:
        (WebCore::JSCustomSQLStatementCallback::handleEvent):
        * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
        (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
        * bindings/js/JSCustomSQLTransactionCallback.cpp:
        (WebCore::JSCustomSQLTransactionCallback::handleEvent):
        * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
        (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
        * bindings/js/JSCustomVoidCallback.cpp:
        (WebCore::JSCustomVoidCallback::handleEvent):
        * bindings/js/JSCustomXPathNSResolver.cpp:
        (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
        * bindings/js/JSDOMWindowBase.cpp:
        (WebCore::JSDOMWindowBase::JSDOMWindowBase):
        (WebCore::JSDOMWindowBase::commonJSGlobalData):
        * bindings/js/JSEventListener.cpp:
        (WebCore::JSAbstractEventListener::handleEvent):
        * bindings/js/ScheduledAction.cpp:
        (WebCore::ScheduledAction::executeFunctionInContext):
        * bindings/js/ScriptController.cpp:
        (WebCore::ScriptController::evaluate):
        * bindings/js/WorkerScriptController.cpp:
        (WebCore::WorkerScriptController::evaluate):
        (WebCore::WorkerScriptController::forbidExecution):
        * bindings/objc/WebScriptObject.mm:
        (-[WebScriptObject callWebScriptMethod:withArguments:]):
        (-[WebScriptObject evaluateWebScript:]):
        * bridge/NP_jsobject.cpp:
        (_NPN_InvokeDefault):
        (_NPN_Invoke):
        (_NPN_Evaluate):
        (_NPN_Construct):
        * bridge/jni/jni_jsobject.mm:
        (JavaJSObject::call):
        (JavaJSObject::eval):

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

11 years agoFix assertion failures in editing/pasteboard/paste-RTFD.html and editing/pasteboard...
mrowe@apple.com [Sun, 22 Feb 2009 10:37:59 +0000 (10:37 +0000)]
Fix assertion failures in editing/pasteboard/paste-RTFD.html and editing/pasteboard/paste-TIFF.html in 64-bit.

Reviewed by Oliver Hunt.

* DumpRenderTree/mac/DumpRenderTree.mm:
(swizzleAllMethods): When adding a new method to a class, use the implementation and type of the new method rather
than of an arbitrary existing method on the class.

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

11 years ago2009-02-21 Anders Carlsson <andersca@apple.com>
andersca@apple.com [Sat, 21 Feb 2009 19:32:05 +0000 (19:32 +0000)]
2009-02-21  Anders Carlsson  <andersca@apple.com>

        Fix build.

        * Plugins/Hosted/WebTextInputWindowController.m:

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

11 years ago..:
andersca@apple.com [Sat, 21 Feb 2009 19:20:28 +0000 (19:20 +0000)]
..:

2009-02-20  Anders Carlsson  <andersca@apple.com>

        Reviewed by Dan Bernstein.

        Add new files.

        * WebKit.xcodeproj/project.pbxproj:

../mac:

2009-02-20  Anders Carlsson  <andersca@apple.com>

        Reviewed by Dan Bernstein.

        Add a shared floating text input window implementation, to be used by the hosted plug-in view.

        * Plugins/Hosted/WebTextInputWindowController.h: Added.
        * Plugins/Hosted/WebTextInputWindowController.m: Added.

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

11 years agoWebCore:
dimich@chromium.org [Sat, 21 Feb 2009 09:25:00 +0000 (09:25 +0000)]
WebCore:
2009-02-21  Hironori Bono  <hbono@chromium.org>

        Reviewed by Alexey Proskuryakov.

        https://bugs.webkit.org/show_bug.cgi?id=23786
        [Chromium] line-break characters in a complex text are treated as zero-width spaces

        This change prevents the UniscribeHelper class from treating the line-break characters
        as whitespaces.

        * platform/graphics/chromium/UniscribeHelper.cpp:
        (WebCore::UniscribeHelper::adjustSpaceAdvances):
        Make the UniscribeHelper::adjustSpaceAdvances() function treat all characters in
        the treatAsSpace() function (e.g. U+0020, U+000A, U+000D, U+00A0) as whitespaces,
        so does when Chromium renders a simple text.

LayoutTests:
2009-02-21  Hironori Bono  <hbono@chromium.org>

        Reviewed by Alexey Proskuryakov.

        https://bugs.webkit.org/show_bug.cgi?id=23786
        [Chromium] line-break characters in a complex text are treated as zero-width spaces

        Added tests which verifies line-break characters in a complex text are treated as defined in CSS 2.1.

        * fast/text/international/bidi-linebreak-001.html: Added.
        * fast/text/international/bidi-linebreak-002.html: Added.
        * fast/text/international/bidi-linebreak-003.html: Added.
        * platform/mac/fast/text/international/bidi-linebreak-001-expected.checksum: Added.
        * platform/mac/fast/text/international/bidi-linebreak-001-expected.png: Added.
        * platform/mac/fast/text/international/bidi-linebreak-001-expected.txt: Added.
        * platform/mac/fast/text/international/bidi-linebreak-002-expected.checksum: Added.
        * platform/mac/fast/text/international/bidi-linebreak-002-expected.png: Added.
        * platform/mac/fast/text/international/bidi-linebreak-002-expected.txt: Added.
        * platform/mac/fast/text/international/bidi-linebreak-003-expected.checksum: Added.
        * platform/mac/fast/text/international/bidi-linebreak-003-expected.png: Added.
        * platform/mac/fast/text/international/bidi-linebreak-003-expected.txt: Added.

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

11 years ago Reviewed by andersca.
kdecker@apple.com [Sat, 21 Feb 2009 02:05:52 +0000 (02:05 +0000)]
    Reviewed by andersca.

        <rdar://problem/6496140> Safari sometimes hangs in WKSetMetadataURL for several seconds after downloading a file

         Spawn a background thread for WKSetMetadataURL because this function will not return until mds has journaled the data
         we are trying to set. Depending on what other I/O is going on, it can take some time.

        * Misc/WebNSFileManagerExtras.m: Import pthread.h and FoundationExtras.h
        (setMetaData): Added. Calls WKSetMetadataURL().
        (-[NSFileManager _webkit_setMetadataURL:referrer:atPath:]): Call setMetaData on a background thread

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

11 years ago2009-02-20 Julien Chaffraix <jchaffraix@webkit.org>
jchaffraix@webkit.org [Sat, 21 Feb 2009 00:15:33 +0000 (00:15 +0000)]
2009-02-20  Julien Chaffraix  <jchaffraix@webkit.org>

        Reviewed by Alexey Proskuryakov.

        Bug 23940: Use Document::createElement(const QualifiedName&, bool) when creating a known element inside WebCore

        Document::createElement(const QualifiedName&, bool) does not check for the prefix as opposed the the one taking an AtomicString
        or Document::createElementNS. This is perfectly fine internally because we know the type of element created and the check is
        unneeded.

        It also removes the use of an ExceptionCode argument which was here only to check that the prefix check was fine. Finally it
        enables us to use some generated QualifiedName.

        * bindings/js/JSOptionConstructor.cpp:
        (WebCore::constructHTMLOptionElement):
        * dom/Document.cpp:
        (WebCore::Document::setTitle):
        * dom/XMLTokenizer.cpp:
        (WebCore::createXHTMLParserErrorHeader):
        (WebCore::XMLTokenizer::insertErrorMessageBlock):
        * editing/CompositeEditCommand.cpp:
        (WebCore::createBlockPlaceholderElement):
        * editing/htmlediting.cpp:
        (WebCore::createTabSpanElement):
        * html/HTMLSelectElement.cpp:
        (WebCore::HTMLSelectElement::setLength):
        * loader/FTPDirectoryDocument.cpp:
        (WebCore::FTPDirectoryTokenizer::appendEntry):
        (WebCore::FTPDirectoryTokenizer::createTDForFilename):
        (WebCore::FTPDirectoryTokenizer::loadDocumentTemplate):
        (WebCore::FTPDirectoryTokenizer::createBasicDocument):
        * loader/ImageDocument.cpp:
        (WebCore::ImageDocument::createDocumentStructure):
        * loader/MediaDocument.cpp:
        (WebCore::MediaTokenizer::createDocumentStructure):
        * loader/PluginDocument.cpp:
        (WebCore::PluginTokenizer::createDocumentStructure):
        * loader/TextDocument.cpp:
        (WebCore::TextTokenizer::write):
        * page/Frame.cpp:
        (WebCore::Frame::selectionComputedStyle):
        (WebCore::Frame::styleForSelectionStart):
        Document::createElement(const AtomicString&, ...) to Document::createElement(const QualifiedName&, ...) switch.

        * xml/XPathFunctions.cpp:
        (WebCore::XPath::FunLang::evaluate): Re-use langAttr instead of creating a new attribute.
        * page/DragController.cpp:
        (WebCore::documentFragmentFromDragData): Use the HTMLAnchorElement directly to get rid of the static cast.

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

11 years ago2009-02-19 Dimitri Glazkov <dglazkov@chromium.org>
dglazkov@chromium.org [Fri, 20 Feb 2009 21:19:28 +0000 (21:19 +0000)]
2009-02-19  Dimitri Glazkov  <dglazkov@chromium.org>

        Reviewed by Eric Seidel.

        https://bugs.webkit.org/show_bug.cgi?id=24060
        Fix up to accommodate for CanvasPixelArray return.

        * platform/graphics/skia/ImageBufferSkia.cpp:
        (WebCore::ImageBuffer::getImageData): Added an extra data() to call.
        (WebCore::ImageBuffer::putImageData): Ditto.

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

11 years ago2009-02-19 Eric Carlson <eric.carlson@apple.com>
eric.carlson@apple.com [Fri, 20 Feb 2009 21:12:56 +0000 (21:12 +0000)]
2009-02-19  Eric Carlson  <eric.carlson@apple.com>

        Simon Fraser

        https://bugs.webkit.org/show_bug.cgi?id=24042
        Bug 24042: MediaPlayer should cache plug-in proxy

        The changes in https://bugs.webkit.org/show_bug.cgi?id=23917 assume that
        MediaPlayer will always have created the private media player object before
        the plug-in is instantiated and calls back with the proxy object. This is not
        true on all platforms because of threading latency, so MediaPlayer should
        cache the plug-in proxy so it can pass it to the media engine at a later time.

        * platform/graphics/MediaPlayer.cpp:
        (WebCore::NullMediaPlayerPrivate::setPoster): Null media engine implementation of proxy methods.
        (WebCore::NullMediaPlayerPrivate::deliverNotification): Ditto.
        (WebCore::NullMediaPlayerPrivate::setMediaPlayerProxy): Ditto.
        (WebCore::MediaPlayer::MediaPlayer): Initialize m_playerProxy.
        (WebCore::MediaPlayer::load): Pass m_playerProxy to newly created engine.
        (WebCore::MediaPlayer::setMediaPlayerProxy): Cache m_playerProxy.
        * platform/graphics/MediaPlayer.h: Declare m_playerProxy.

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

11 years ago2009-02-20 Eric Carlson <eric.carlson@apple.com>
eric.carlson@apple.com [Fri, 20 Feb 2009 21:10:24 +0000 (21:10 +0000)]
2009-02-20  Eric Carlson  <eric.carlson@apple.com>

        Simon Fraser.

        https://bugs.webkit.org/show_bug.cgi?id=24063
        Make it possible for a port to require a user gesture to play/pause an <audio> or <video> element

        * html/HTMLMediaElement.cpp:
        (WebCore::HTMLMediaElement::HTMLMediaElement):  Rename m_loadRestrictions to m_Restrictions.
        Initialize m_internalCall.
        (WebCore::HTMLMediaElement::loadTimerFired): Increment m_internalCall around call to load().
        (WebCore::HTMLMediaElement::load): Call loadInternal if restrictions check out.
        (WebCore::HTMLMediaElement::loadInternal): New, guts of old load()
        (WebCore::HTMLMediaElement::setNetworkState): Fix bug introduced in r40943
        (WebCore::HTMLMediaElement::play): Call playInternal if restrictions check out.
        (WebCore::HTMLMediaElement::playInternal): New, guts of old play()
        (WebCore::HTMLMediaElement::pause): Call pauseInternal if restrictions check out.
        (WebCore::HTMLMediaElement::pauseInternal): New, guts of old pause()
        (WebCore::HTMLMediaElement::togglePlayState): Call playInternal/pauseInternal
        (WebCore::HTMLMediaElement::deliverNotification): Remove unnecessary white space.
        * html/HTMLMediaElement.h: Rename m_loadRestrictions to m_Restrictions, add m_internalCall,
        add RequireUserGestureRateChangeRestriction.

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

11 years ago2009-02-20 Darin Fisher <darin@chromium.org>
darin@chromium.org [Fri, 20 Feb 2009 21:08:25 +0000 (21:08 +0000)]
2009-02-20  Darin Fisher  <darin@chromium.org>

        Fix build bustage in FileSystemWin.cpp.

        Need to return CString() instead of 0 since there are now two CString
        constructors that take a pointer type.

        * platform/win/FileSystemWin.cpp:
        (WebCore::openTemporaryFile):

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

11 years ago2009-02-20 Dimitri Glazkov <dglazkov@chromium.org>
dglazkov@chromium.org [Fri, 20 Feb 2009 20:55:58 +0000 (20:55 +0000)]
2009-02-20  Dimitri Glazkov  <dglazkov@chromium.org>

        Reviewed by Sam Weinig.

        https://bugs.webkit.org/show_bug.cgi?id=23999
        Change license headers to accurately reflect code history.

        * platform/ContentType.cpp:
        * platform/ContentType.h:

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

11 years ago2009-02-20 Sam Weinig <sam@webkit.org>
weinig@apple.com [Fri, 20 Feb 2009 20:52:46 +0000 (20:52 +0000)]
2009-02-20  Sam Weinig  <sam@webkit.org>

        * fast/dom/SelectorAPI/resig-SelectorsAPI-test-expected.txt: Update results.

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

11 years ago2009-02-18 Dimitri Glazkov <dglazkov@chromium.org>
dglazkov@chromium.org [Fri, 20 Feb 2009 20:36:21 +0000 (20:36 +0000)]
2009-02-18  Dimitri Glazkov  <dglazkov@chromium.org>

        Reviewed by Antti Koivisto.

        https://bugs.webkit.org/show_bug.cgi?id=23999
        Split off MIME type parsing into its own class.

        * GNUmakefile.am: Added ContentType sources.
        * WebCore.pro: Ditto.
        * WebCore.scons: Ditto.
        * WebCore.vcproj/WebCore.vcproj: Ditto.
        * WebCore.xcodeproj/project.pbxproj: Ditto.
        * WebCoreSources.bkl: Ditto.
        * html/HTMLMediaElement.cpp: Changed to use ContentType.
        (WebCore::HTMLMediaElement::selectMediaURL):
        * platform/ContentType.cpp: Added.
        (WebCore::ContentType::ContentType):
        (WebCore::ContentType::parameter):
        (WebCore::ContentType::type):
        * platform/ContentType.h: Added.
        (WebCore::ContentType::raw):
        * platform/MIMETypeRegistry.cpp:
        * platform/MIMETypeRegistry.h:
        * platform/graphics/MediaPlayer.cpp:
        (WebCore::MediaPlayer::load):
        * rendering/style/ContentData.h: Renamed ContentType to StyleContentType.
        * rendering/style/RenderStyleConstants.h: Ditto.
        (WebCore::):

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

11 years ago2009-02-20 Holger Hans Peter Freyther <zecke@selfish.org>
zecke@webkit.org [Fri, 20 Feb 2009 20:32:43 +0000 (20:32 +0000)]
2009-02-20  Holger Hans Peter Freyther  <zecke@selfish.org>

        Unreviewed build fix.

        Use CString() instead of 0.

        * platform/gtk/FileSystemGtk.cpp:
        (WebCore::openTemporaryFile):
        * platform/qt/FileSystemQt.cpp:
        (WebCore::openTemporaryFile):

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

11 years ago2009-02-20 Gustavo Noronha Silva <gns@gnome.org>
kov@webkit.org [Fri, 20 Feb 2009 20:10:44 +0000 (20:10 +0000)]
2009-02-20  Gustavo Noronha Silva  <gns@gnome.org>

        Reviewed by Holger Freyther.

        When dealing with local files, use a path instead of an URI. GFile
        has problems decoding URIs with percent signs on them.

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

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

11 years ago2009-02-20 Gustavo Noronha Silva <gns@gnome.org>
kov@webkit.org [Fri, 20 Feb 2009 19:41:24 +0000 (19:41 +0000)]
2009-02-20  Gustavo Noronha Silva  <gns@gnome.org>

        Reviewed by Holger Freyther.

        Protect the ResourceHandle instance from being destroyed by
        didReceiveData inside the GIO readCallback call, so that
        cancelling caused by scripts is handled correctly.

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

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

11 years ago Make IconDatabaseNone.cpp compile with -Wunused and pass check-for-exit-time...
ddkilzer@apple.com [Fri, 20 Feb 2009 19:27:13 +0000 (19:27 +0000)]
    Make IconDatabaseNone.cpp compile with -Wunused and pass check-for-exit-time-destructors

        Reviewed by Sam Weinig.

        * loader/icon/IconDatabaseNone.cpp:
        (WebCore::IconDatabase::defaultDatabaseFilename): Use DEFINE_STATIC_LOCAL().
        (WebCore::IconDatabase::open): Commented out unused parameter.
        (WebCore::IconDatabase::setPrivateBrowsingEnabled): Ditto.
        (WebCore::IconDatabase::iconForPageURL): Ditto.
        (WebCore::IconDatabase::iconURLForPageURL): Ditto.
        (WebCore::IconDatabase::defaultIcon): Ditto.
        (WebCore::IconDatabase::retainIconForPageURL): Ditto.
        (WebCore::IconDatabase::releaseIconForPageURL): Ditto.
        (WebCore::IconDatabase::setIconDataForIconURL): Ditto.
        (WebCore::IconDatabase::setIconURLForPageURL): Ditto.
        (WebCore::IconDatabase::setEnabled): Ditto.
        (WebCore::IconDatabase::pageURLMappingCount): Added stub.
        (WebCore::IconDatabase::retainedPageURLCount): Ditto.
        (WebCore::IconDatabase::iconRecordCount): Ditto.
        (WebCore::IconDatabase::iconRecordCountWithData): Ditto.

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

11 years ago Bug 23983: Remove illegal HTML tags from Sunspider web pages
ddkilzer@apple.com [Fri, 20 Feb 2009 16:27:11 +0000 (16:27 +0000)]
    Bug 23983: Remove illegal HTML tags from Sunspider web pages

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

        Reviewed by Alexey Proskuryakov.

        * perf/sunspider-0.9/3d-cube.html: Removed </link> tag.
        * perf/sunspider-0.9/3d-morph.html: Ditto.
        * perf/sunspider-0.9/3d-raytrace.html: Ditto.
        * perf/sunspider-0.9/access-binary-trees.html: Ditto.
        * perf/sunspider-0.9/access-fannkuch.html: Ditto.
        * perf/sunspider-0.9/access-nbody.html: Ditto.
        * perf/sunspider-0.9/access-nsieve.html: Ditto.
        * perf/sunspider-0.9/bitops-3bit-bits-in-byte.html: Ditto.
        * perf/sunspider-0.9/bitops-bits-in-byte.html: Ditto.
        * perf/sunspider-0.9/bitops-bitwise-and.html: Ditto.
        * perf/sunspider-0.9/bitops-nsieve-bits.html: Ditto.
        * perf/sunspider-0.9/controlflow-recursive.html: Ditto.
        * perf/sunspider-0.9/crypto-aes.html: Ditto.
        * perf/sunspider-0.9/crypto-md5.html: Ditto.
        * perf/sunspider-0.9/crypto-sha1.html: Ditto.
        * perf/sunspider-0.9/date-format-tofte.html: Ditto.
        * perf/sunspider-0.9/date-format-xparb.html: Ditto.
        * perf/sunspider-0.9/math-cordic.html: Ditto.
        * perf/sunspider-0.9/math-partial-sums.html: Ditto.
        * perf/sunspider-0.9/math-spectral-norm.html: Ditto.
        * perf/sunspider-0.9/regexp-dna.html: Ditto.
        * perf/sunspider-0.9/string-base64.html: Ditto.
        * perf/sunspider-0.9/string-fasta.html: Ditto.
        * perf/sunspider-0.9/string-tagcloud.html: Ditto.
        * perf/sunspider-0.9/string-unpack-code.html: Ditto.
        * perf/sunspider-0.9/string-validate-input.html: Ditto.
        * perf/sunspider-0.9/sunspider-driver.html: Ditto.
        * perf/sunspider-0.9/sunspider-results.html: Removed </link> and </input> tags.
        * perf/sunspider-0.9/sunspider.html: Removed </link> tag.

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

11 years ago Add comment to generated code when shadowing a built-in object
ddkilzer@apple.com [Fri, 20 Feb 2009 16:23:35 +0000 (16:23 +0000)]
    Add comment to generated code when shadowing a built-in object

        Reviewed by Sam Weinig.

        * bindings/scripts/CodeGeneratorJS.pm: Added comment to
        generated code output.

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

11 years ago2009-02-20 Avi Drissman <avi@chromium.org>
darin@chromium.org [Fri, 20 Feb 2009 15:34:42 +0000 (15:34 +0000)]
2009-02-20  Avi Drissman  <avi@chromium.org>

        Reviewed by Eric Seidel.

        https://bugs.webkit.org/show_bug.cgi?id=24036
        Keyboard events need disambiguation on the Linux platform too.

        * platform/chromium/PlatformKeyboardEventChromium.cpp:
        (WebCore::PlatformKeyboardEvent::disambiguateKeyDownEvent):

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

11 years ago2009-02-19 Darin Fisher <darin@chromium.org>
darin@chromium.org [Fri, 20 Feb 2009 15:31:35 +0000 (15:31 +0000)]
2009-02-19  Darin Fisher  <darin@chromium.org>

        Reviewed by Eric Seidel.

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

        Several improvements to CString:
        1- Make it possible to initialize a CString from a CStringBuffer
        2- Make it possible to get a CStringBuffer from a CString
        3- Change CStringBuffer::data() to return a const pointer to ward off mutation
        4- Remove unused releaseBuffer() methods.
        5- Make CStringBuffer::create() private to force consumers to get a CStringBuffer from a CString.

        * platform/text/CString.cpp:
        (WebCore::CString::init):
        (WebCore::CString::mutableData):
        (WebCore::CString::newUninitialized):
        (WebCore::CString::copyBufferIfNeeded):
        * platform/text/CString.h:
        (WebCore::CStringBuffer::data):
        (WebCore::CStringBuffer::length):
        (WebCore::CStringBuffer::create):
        (WebCore::CStringBuffer::mutableData):
        (WebCore::CString::CString):
        (WebCore::CString::buffer):

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

11 years ago2009-02-20 Gustavo Noronha Silva <gns@gnome.org>
kov@webkit.org [Fri, 20 Feb 2009 13:25:01 +0000 (13:25 +0000)]
2009-02-20  Gustavo Noronha Silva  <gns@gnome.org>

        Unreviewed build fix after r41100.

        * GNUmakefile.am:

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

11 years ago<rdar://problem/6606660> 2==null returns true in 64bit jit
oliver@apple.com [Fri, 20 Feb 2009 13:14:28 +0000 (13:14 +0000)]
<rdar://problem/6606660> 2==null returns true in 64bit jit

Reviewed by Mark Rowe

Code for op_eq_null and op_neq_null was incorrectly performing
a 32bit compare, which truncated the type tag from an integer
immediate, leading to incorrect behaviour.

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

11 years ago2009-02-19 Dmitry Titov <dimich@chromium.org>
dimich@chromium.org [Fri, 20 Feb 2009 07:23:00 +0000 (07:23 +0000)]
2009-02-19  Dmitry Titov  <dimich@chromium.org>

        Reviewed by Alexey Proskuryakov.

        https://bugs.webkit.org/show_bug.cgi?id=24017
        Remove some usage of Document in Worker.

        * dom/WorkerContext.h:
        (WebCore::WorkerContext::userAgent):
        * dom/Document.cpp:
        (WebCore::Document::userAgent):
        * dom/Document.h:
        * dom/ScriptExecutionContext.h:
        Added virtual ScriptExecutionContext::userAgent(const KURL&).
        Document implementation uses FrameLoader::userAgent and
        WorkerContext receives the string on creation and stores it in a member.

        * dom/Worker.cpp:
        (WebCore::Worker::Worker):
        (WebCore::Worker::notifyFinished):
        * dom/Worker.h:
        (WebCore::Worker::create):
        Instead of Document the Worker constructor now gets a ScriptExecutionContext.
        Start using some methods on SEC (like completeURL() and userAgent()).
        For others, explicitly case to Document and add a FIXME.
        Remove Worker::document() too.

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

11 years ago2009-02-20 Gustavo Noronha Silva <gns@gnome.org>
kov@webkit.org [Fri, 20 Feb 2009 06:20:38 +0000 (06:20 +0000)]
2009-02-20  Gustavo Noronha Silva  <gns@gnome.org>

        Rubber-stamped by Holger Freyther.

        Do not set httpStatus to SOUP_STATUS_OK when serving local files
        to match other ports' behavior, fixing xmlhttprequest test
        regressions.

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

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

11 years ago2009-02-19 Geoffrey Garen <ggaren@apple.com>
ggaren@apple.com [Fri, 20 Feb 2009 06:04:21 +0000 (06:04 +0000)]
2009-02-19  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Gavin Barraclough.

        First step in splitting JIT functionality out of the Interpreter class:
        Created JITStubs.h/.cpp, and moved Interpreter::cti_* into JITStubs.cpp.

        Functions that the Interpreter and JITStubs share moved to Operations.h/.cpp.

        * GNUmakefile.am:
        * JavaScriptCore.pri:
        * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
        * JavaScriptCore.xcodeproj/project.pbxproj:
        * interpreter/Interpreter.cpp:
        (JSC::Interpreter::resolveBase):
        (JSC::Interpreter::checkTimeout):
        (JSC::Interpreter::privateExecute):
        * interpreter/Interpreter.h:
        * jit/JITStubs.cpp: Copied from interpreter/Interpreter.cpp.
        (JSC::Interpreter::cti_op_resolve_base):
        * jit/JITStubs.h: Copied from interpreter/Interpreter.h.
        * runtime/Operations.cpp:
        (JSC::jsAddSlowCase):
        (JSC::jsTypeStringForValue):
        (JSC::jsIsObjectType):
        (JSC::jsIsFunctionType):
        * runtime/Operations.h:
        (JSC::jsLess):
        (JSC::jsLessEq):
        (JSC::jsAdd):
        (JSC::cachePrototypeChain):
        (JSC::countPrototypeChainEntriesAndCheckForProxies):
        (JSC::resolveBase):

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

11 years agoWebCore:
mitz@apple.com [Fri, 20 Feb 2009 01:41:55 +0000 (01:41 +0000)]
WebCore:

        Reviewed by Sam Weinig.

        - WebCore part of fixing https://bugs.webkit.org/show_bug.cgi?id=24027
          Do not send loader callbacks during CSS styling

        Undo the iChat-specific quirk added in
        <http://trac.webkit.org/changeset/41071>. Instead, always suspend memory
        cache client callbacks during attach() and recalcStyle().

        * WebCore.base.exp: Removed
        Settings::setNeedsIChatMemoryCacheCallsQuirk().
        * dom/ContainerNode.cpp:
        (WebCore::ContainerNode::suspendPostAttachCallbacks): Disable memory
        cache client callbacks and remember to enable them afterwards if needed.
        (WebCore::ContainerNode::resumePostAttachCallbacks): Re-enable memory
        cache client callbacks if they were disabled in
        suspendPostAttachCallbacks().
        (WebCore::ContainerNode::attach): Use suspendPostAttachCallbacks() and
        resumePostAttachCallbacks().
        * dom/ContainerNode.h: Made suspendPostAttachCallbacks()
        and resumePostAttachCallbacks() non-static.
        * dom/Document.cpp:
        (WebCore::Document::dispatchImageLoadEventsNow): Reverted iChat-specific
        workaround.
        * page/Settings.cpp: Removed m_needsIChatMemoryCacheCallsQuirk and
        related code.
        (WebCore::Settings::Settings):
        * page/Settings.h:

WebKit/mac:

        Reviewed by Sam Weinig.

        - WebKit part of fixing https://bugs.webkit.org/show_bug.cgi?id=24027
          Do not send loader callbacks during CSS styling

        * WebView/WebView.mm:
        (-[WebView _preferencesChangedNotification:]): Reverted the
        iChat-specific quirk added in <http://trac.webkit.org/changeset/41071>.

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

11 years ago2009-02-19 Holger Hans Peter Freyther <zecke@selfish.org>
zecke@webkit.org [Fri, 20 Feb 2009 01:38:24 +0000 (01:38 +0000)]
2009-02-19  Holger Hans Peter Freyther  <zecke@selfish.org>

        Unreviewed build fix.

        Build fix after r41092. Make the memoryUsage method
        public. It will be shadowed by cf/mac and for curl/soup/qt
        the implementation from ResourceResponseBase will be used.

        * platform/network/ResourceResponseBase.h:
        (WebCore::ResourceResponseBase::memoryUsage):

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

11 years ago2009-02-19 Beth Dakin <bdakin@apple.com>
bdakin@apple.com [Fri, 20 Feb 2009 01:23:58 +0000 (01:23 +0000)]
2009-02-19  Beth Dakin  <bdakin@apple.com>

        Reviewed by Dave Hyatt.

        Fix for <rdar://problem/6077775> Should be able to specify
        inactive ::selection color

        This patch makes the ::selction pseudo-element work with
        the :window-inactive pseudo type. This was, a user can specify a
        different ::selection style when a window is inactive.

        * css/CSSStyleSelector.cpp:
        (WebCore::CSSStyleSelector::SelectorChecker::checkSelector):
        (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
        * rendering/RenderObject.cpp:
        (WebCore::RenderObject::selectionBackgroundColor):
        (WebCore::RenderObject::selectionForegroundColor):

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

11 years agoWebCore:
weinig@apple.com [Fri, 20 Feb 2009 00:38:17 +0000 (00:38 +0000)]
WebCore:

2009-02-19  Sam Weinig  <sam@webkit.org>

        Reviewed by Beth Dakin.

        Patch for https://bugs.webkit.org/show_bug.cgi?id=24044
        Update querySelector/querySelectorAll to match the latest spec

        Update querySelector and querySelectorAll to match the latest version
        of the Selectors API spec.  We now stringify null and undefined to "null"
        and "undefined" respectively instead of to "".

        Test: fast/dom/SelectorAPI/undefined-null-stringify.html

        * dom/Document.idl:
        * dom/DocumentFragment.idl:
        * dom/Element.idl:

LayoutTests:

2009-02-19  Sam Weinig  <sam@webkit.org>

        Reviewed by Beth Dakin.

        Tests for https://bugs.webkit.org/show_bug.cgi?id=24044
        Update querySelector/querySelectorAll to match the latest spec

        * fast/dom/SelectorAPI/dumpNodeList-almost-strict-expected.txt:
        * fast/dom/SelectorAPI/dumpNodeList-expected.txt:
        * fast/dom/SelectorAPI/resig-SelectorsAPI-test-expected.txt:
        * fast/dom/SelectorAPI/resig-SelectorsAPI-test.xhtml: Updated.  We now fail 17 tests
        due to not throwing an exception when no arguments are passed to querySelector
        or querySelectorAll.
        * fast/dom/SelectorAPI/resources/undefined-null-stringify.js: Added.
        * fast/dom/SelectorAPI/undefined-null-stringify-expected.txt: Added.
        * fast/dom/SelectorAPI/undefined-null-stringify.html: Added.

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

11 years ago2009-02-19 Dimitri Glazkov <dglazkov@chromium.org>
dglazkov@chromium.org [Fri, 20 Feb 2009 00:31:48 +0000 (00:31 +0000)]
2009-02-19  Dimitri Glazkov  <dglazkov@chromium.org>

        Reviewed by Geoffrey Garen.

        https://bugs.webkit.org/show_bug.cgi?id=23732
        Rework CachedResource overhead accounting to allow platforms to diverge
        in numbers.

        * loader/CachedResource.cpp:
        (WebCore::CachedResource::overheadSize): Changed to ask ResourceResponse
        for its size and to use actual URL size.
        * platform/network/ResourceResponseBase.h:
        (WebCore::ResourceResponseBase::size): Added default size method.
        * platform/network/cf/ResourceResponse.h:
        (WebCore::ResourceResponse::size): Added Win/CF size method
        * platform/network/mac/ResourceResponse.h:
        (WebCore::ResourceResponse::size): Added Mac size method.

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

11 years ago2009-02-19 Anders Carlsson <andersca@apple.com>
andersca@apple.com [Thu, 19 Feb 2009 23:53:14 +0000 (23:53 +0000)]
2009-02-19  Anders Carlsson  <andersca@apple.com>

        Reviewed by Kevin Decker.

        - Fix for <rdar://problem/6604968>

        On Tiger, create an autorelease pool before creating the NSGraphicsContext and drain it immediately
        after the call to -[NSView displayRectIgnoringOpacity:inContext:].

        * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
        (WebCore::MediaPlayerPrivate::paint):

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

11 years agoWebCore:
hyatt@apple.com [Thu, 19 Feb 2009 22:52:37 +0000 (22:52 +0000)]
WebCore:

2009-02-19  David Hyatt  <hyatt@apple.com>

        Fix a bug where reflections didn't work properly if opacity was < 1.  Make sure that replaced elements
        also consider reflections to be part of their visual overflow.  This had already been done for blocks
        and lines, but it wasn't being done yet for replaced elements.

        Also make sure that when the object being reflected has opacity < 1 that we don't end up popping the outer
        transparency layer early.  Since the reflected object paints twice, we don't want to end the transparency
        layer it pushed until we're done painting the real object (rather than the reflection).

        Reviewed by Dan Bernstein

        Added fast/reflections/reflection-masks-opacity.html

        * rendering/RenderLayer.cpp:
        (WebCore::RenderLayer::paintLayer):
        * rendering/RenderPartObject.cpp:
        (WebCore::RenderPartObject::layout):
        * rendering/RenderReplaced.cpp:
        (WebCore::RenderReplaced::layout):
        (WebCore::RenderReplaced::adjustOverflowForBoxShadowAndReflect):
        * rendering/RenderReplaced.h:

LayoutTests:

2009-02-19  David Hyatt  <hyatt@apple.com>

        Fix a bug where reflections didn't work properly if opacity was < 1.  Make sure that replaced elements
        also consider reflections to be part of their visual overflow.  This had already been done for blocks
        and lines, but it wasn't being done yet for replaced elements.

        Also make sure that when the object being reflected has opacity < 1 that we don't end up popping the outer
        transparency layer early.  Since the reflected object paints twice, we don't want to end the transparency
        layer it pushed until we're done painting the real object (rather than the reflection).

        Reviewed by Dan Bernstein

        * fast/reflections/reflection-masks-opacity.html: Added.
        * platform/mac/fast/reflections/reflection-direction-expected.txt:
        * platform/mac/fast/reflections/reflection-masks-expected.txt:
        * platform/mac/fast/reflections/reflection-masks-opacity-expected.checksum: Added.
        * platform/mac/fast/reflections/reflection-masks-opacity-expected.png: Added.
        * platform/mac/fast/reflections/reflection-masks-opacity-expected.txt: Added.

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

11 years ago2009-02-19 Gavin Barraclough <barraclough@apple.com>
barraclough@apple.com [Thu, 19 Feb 2009 22:51:40 +0000 (22:51 +0000)]
2009-02-19  Gavin Barraclough  <barraclough@apple.com>

        Reviewed by Oliver Hunt.

        Fix for x86-64. Where the JavaScriptCore text segment lies outside
        a 2gb range of the heap containing JIT generated code, callbacks
        from JIT code to the stub functions in Interpreter will be incorrectly
        linked.

        No performance impact on Sunspider, 1% regression on v8-tests,
        due to a 3% regression on richards.

        * assembler/AbstractMacroAssembler.h:
        (JSC::AbstractMacroAssembler::Call::Call):
        (JSC::AbstractMacroAssembler::Jump::link):
        (JSC::AbstractMacroAssembler::Jump::linkTo):
        (JSC::AbstractMacroAssembler::CodeLocationJump::relink):
        (JSC::AbstractMacroAssembler::CodeLocationCall::relink):
        (JSC::AbstractMacroAssembler::ProcessorReturnAddress::relinkCallerToFunction):
        (JSC::AbstractMacroAssembler::PatchBuffer::link):
        (JSC::AbstractMacroAssembler::PatchBuffer::linkTailRecursive):
        (JSC::AbstractMacroAssembler::differenceBetween):
        * assembler/MacroAssembler.h:
        (JSC::MacroAssembler::tailRecursiveCall):
        (JSC::MacroAssembler::makeTailRecursiveCall):
        * assembler/MacroAssemblerX86.h:
        (JSC::MacroAssemblerX86::call):
        * assembler/MacroAssemblerX86Common.h:
        * assembler/MacroAssemblerX86_64.h:
        (JSC::MacroAssemblerX86_64::call):
        (JSC::MacroAssemblerX86_64::moveWithPatch):
        (JSC::MacroAssemblerX86_64::branchPtrWithPatch):
        (JSC::MacroAssemblerX86_64::storePtrWithPatch):
        * assembler/X86Assembler.h:
        (JSC::X86Assembler::jmp_r):
        (JSC::X86Assembler::linkJump):
        (JSC::X86Assembler::patchJump):
        (JSC::X86Assembler::patchCall):
        (JSC::X86Assembler::linkCall):
        (JSC::X86Assembler::patchAddress):
        * interpreter/Interpreter.cpp:
        (JSC::Interpreter::tryCTICachePutByID):
        * jit/JIT.cpp:
        (JSC::JIT::privateCompile):
        (JSC::JIT::privateCompileCTIMachineTrampolines):
        * jit/JIT.h:
        * jit/JITArithmetic.cpp:
        (JSC::JIT::putDoubleResultToJSNumberCellOrJSImmediate):
        (JSC::JIT::compileBinaryArithOp):
        * jit/JITPropertyAccess.cpp:
        (JSC::JIT::privateCompilePutByIdTransition):
        (JSC::JIT::privateCompileGetByIdSelf):
        (JSC::JIT::privateCompilePutByIdReplace):

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

11 years ago2009-02-19 David Levin <levin@chromium.org>
levin@chromium.org [Thu, 19 Feb 2009 22:35:40 +0000 (22:35 +0000)]
2009-02-19  David Levin  <levin@chromium.org>

        Reviewed by Alexey Proskuryakov.

        Bug 23980: WorkerRunLoop needs a way to run in a given mode similar to CFRunLoopInMode.
        <https://bugs.webkit.org/show_bug.cgi?id=23980>

        WorkerRunLoop has the ability to run in a mode which filters the tasks to be run.
        * When WorkerRunLoop::runInMode is called, only task for that mode will run.
        * When WorkerRunLoop::run is called (or the default mode is used), then all tasks
          will run regardless of their posted mode.

        Here's a demonstration of the api:

            RefPtr<NameResolution> nameResolution = NameResolution::create(workerRunLoop);

            //  Internally nameResolution will do workerRunLoop.postTaskForMode(task, "MyCoolMode")
            //  for any tasks that need to be run during this loop.
            nameResolution->setTaskMode("MyCoolMode");

            nameResolution->start();
            while (!nameResolution->done()) {
                // Only tasks which are posted for "MyCoolMode" will run.
                workerRunLoop.runInMode(context, "MyCoolMode");
            }

        No observable change in behavior, so no test.

        * dom/WorkerRunLoop.cpp:
        (WebCore::ModePredicate::ModePredicate):
        (WebCore::ModePredicate::operator()):
        (WebCore::WorkerRunLoop::WorkerRunLoop):
        (WebCore::WorkerRunLoop::~WorkerRunLoop):
        (WebCore::WorkerRunLoop::setSharedTimer):
        (WebCore::WorkerRunLoop::resetSharedTimer):
        (WebCore::WorkerRunLoop::run):
        (WebCore::WorkerRunLoop::runInMode):
        (WebCore::WorkerRunLoop::postTask):
        (WebCore::WorkerRunLoop::postTaskForMode):
        * dom/WorkerRunLoop.h:
        (WebCore::WorkerRunLoop::Task::create):
        (WebCore::WorkerRunLoop::Task::mode):
        (WebCore::WorkerRunLoop::Task::performTask):
        (WebCore::WorkerRunLoop::Task::Task):

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

11 years ago2009-02-19 Jay Campan <jcampan@google.com>
dimich@chromium.org [Thu, 19 Feb 2009 22:13:28 +0000 (22:13 +0000)]
2009-02-19  Jay Campan  <jcampan@google.com>

        Reviewed by Alexey Proskuryakov.

        https://bugs.webkit.org/show_bug.cgi?id=23959
        LayoutTests/fast/dom/navigator-detached-no-crash.html may fail with other JS engines.

        * fast/dom/navigator-detached-no-crash-expected.txt:
        * fast/dom/navigator-detached-no-crash.html:

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

11 years agoAdd GLIB_LIBS to unit test library flags.
christian@webkit.org [Thu, 19 Feb 2009 21:41:25 +0000 (21:41 +0000)]
Add GLIB_LIBS to unit test library flags.

Rubber-stamped by Holger Freyther.

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

11 years ago2009-02-19 Dimitri Glazkov <dglazkov@chromium.org>
dglazkov@chromium.org [Thu, 19 Feb 2009 21:36:06 +0000 (21:36 +0000)]
2009-02-19  Dimitri Glazkov  <dglazkov@chromium.org>

        Reviewed by Eric Seidel.

        https://bugs.webkit.org/show_bug.cgi?id=24034
        Fix up Selection->VisibleSelection change.

        * page/chromium/EventHandlerChromium.cpp:
        (WebCore::EventHandler::passMousePressEventToSubframe): Renamed Selection
        to VisibleSelection.

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

11 years ago2009-02-19 Dimitri Glazkov <dglazkov@chromium.org>
dglazkov@chromium.org [Thu, 19 Feb 2009 21:33:03 +0000 (21:33 +0000)]
2009-02-19  Dimitri Glazkov  <dglazkov@chromium.org>

        Reviewed by Eric Seidel.

        https://bugs.webkit.org/show_bug.cgi?id=24041
        Correct Skia type conversion issues, fix Chromium Linux build.

        * platform/graphics/chromium/FontLinux.cpp:
        (WebCore::Font::drawGlyphs): changed parameters to RGBA32, not WebCore::Color.

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

11 years ago2009-02-18 Geoffrey Garen <ggaren@apple.com>
ggaren@apple.com [Thu, 19 Feb 2009 20:35:55 +0000 (20:35 +0000)]
2009-02-18  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Oliver Hunt.

        Simplified .call and .apply in preparation for optimizing them. Also,
        a little cleanup.

        * runtime/FunctionPrototype.cpp:
        (JSC::functionProtoFuncApply):
        (JSC::functionProtoFuncCall): No need to do any specific conversion on
        'this' -- op_convert_this will do it if necessary.

        * runtime/JSImmediate.cpp:
        (JSC::JSImmediate::toThisObject): Slightly relaxed the rules on
        toThisObject to allow for 'undefined', which can be passed through
        .call and .apply.

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

11 years ago2009-02-19 Jungshik Shin <jshin@chromium.org>
dglazkov@chromium.org [Thu, 19 Feb 2009 20:12:58 +0000 (20:12 +0000)]
2009-02-19  Jungshik Shin <jshin@chromium.org>

        Reviewed by Eric Seidel.

        https://bugs.webkit.org/show_bug.cgi?id=20531
        Chromium-part follow-up to the patch landed in r40636
        for bug 20531.
        Remove a static member function alternateFamilyName
        from Chromium's Win/Linux ports of FontCache. In r40636,
        alternateFamilyName was customized using #ifdef PLATFORM(WIN_OS).
        So, there's no more need for the static member function per
        platform.

        * platform/graphics/chromium/FontCacheChromiumWin.cpp:
        * platform/graphics/chromium/FontCacheLinux.cpp:

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

11 years ago2009-02-19 David Levin <levin@chromium.org>
levin@chromium.org [Thu, 19 Feb 2009 19:40:07 +0000 (19:40 +0000)]
2009-02-19  David Levin  <levin@chromium.org>

        Reviewed by Alexey Proskuryakov.

        Bug 23976: MessageQueue needs a way to wait for a message that satisfies an arbitrary criteria.
        <https://bugs.webkit.org/show_bug.cgi?id=23976>

        * wtf/Deque.h:
        (WTF::Deque<T>::findIf):
        * wtf/MessageQueue.h:
        (WTF::MessageQueue<T>::waitForMessageFiltered):

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

11 years ago2009-02-19 Simon Fraser <simon.fraser@apple.com>
simon.fraser@apple.com [Thu, 19 Feb 2009 19:20:33 +0000 (19:20 +0000)]
2009-02-19  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Adele Peterson.

        Call documentWillBecomeInactive() from Document::detach to ensure that
        media elements are shut down, because they may be kept alive by references
        from JS past document teardown.

        documentWillBecomeInactive() calls  renderView()->willMoveOffscreen(), so no
        need to do that in detach() as well.

        We no longer need to call documentWillBecomeInactive() from ~Page() (which
        was added for <https://bugs.webkit.org/show_bug.cgi?id=21116>), since this
        supersedes that change.

        * dom/Document.cpp:
        (WebCore::Document::detach):
        * page/Page.cpp:
        (WebCore::Page::~Page):

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

11 years ago2009-02-19 Dimitri Glazkov <dglazkov@chromium.org>
dglazkov@chromium.org [Thu, 19 Feb 2009 19:19:46 +0000 (19:19 +0000)]
2009-02-19  Dimitri Glazkov  <dglazkov@chromium.org>

        Reviewed by Dave Hyatt.

        https://bugs.webkit.org/show_bug.cgi?id=24012
        Clarify objective of the test and clean up.

        * fast/forms/inline-ignored-on-legend-expected.txt:
        * fast/forms/inline-ignored-on-legend.html:

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

11 years ago2009-02-19 Dimitri Glazkov <dglazkov@chromium.org>
dglazkov@chromium.org [Thu, 19 Feb 2009 19:14:58 +0000 (19:14 +0000)]
2009-02-19  Dimitri Glazkov  <dglazkov@chromium.org>

        Reviewed by Eric Seidel.

        https://bugs.webkit.org/show_bug.cgi?id=24028
        Fix up Skia path changes.

        * platform/graphics/skia/GraphicsContextSkia.cpp:
        (WebCore::GraphicsContext::strokePath): Removed illegal indirection.
        * platform/graphics/skia/PathSkia.cpp:
        (WebCore::boundingBoxForCurrentStroke): Changed call name.

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

11 years ago2009-02-19 Gustavo Noronha Silva <gns@gnome.org>
kov@webkit.org [Thu, 19 Feb 2009 15:37:14 +0000 (15:37 +0000)]
2009-02-19  Gustavo Noronha Silva  <gns@gnome.org>

        Reviewed by Alexey Proskuryakov.

        Ignore ports on local URLs. This fixes a regression in
        fast/loader/file-URL-with-port-number.html

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

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

11 years ago2009-02-19 Gustavo Noronha Silva <gns@gnome.org>
kov@webkit.org [Thu, 19 Feb 2009 15:18:33 +0000 (15:18 +0000)]
2009-02-19  Gustavo Noronha Silva  <gns@gnome.org>

        Reviewed by Alexey Proskuryakov.

        Make setPort remove port if 0 is given to it, as promised by the
        comment in KURL's header.

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

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

11 years agoWebCore:
mitz@apple.com [Thu, 19 Feb 2009 02:04:23 +0000 (02:04 +0000)]
WebCore:

        Reviewed by Brady Eidson.

        - WebCore part of fixing <rdar://problem/6507512> Crash in iChat at CSSStyleSelector::adjustRenderStyle

        The crash results from re-entry into
        CSSMutableStyleDeclaration::setCssText, which in turn is caused by
        the first style change causing a cached image to load from the memory
        cache, causing load delegate dispatch, and iChat's delegate method
        calling back into WebKit.

        The workaround is to use defer delegate callbacks for memory cache. In
        this case, deferring callbacks during image load event dispatch was
        found to be sufficient.

        The crash is a regression. See also the discussion in
        <https://bugs.webkit.org/show_bug.cgi?id=22521>.

        * WebCore.base.exp: Added
        Settings::setNeedsIChatMemoryCacheCallsQuirk().
        * dom/Document.cpp:
        (WebCore::Document::dispatchImageLoadEventsNow): If the quirk is
        enabled, defer memory cache callbacks during image load event dispatch.
        * page/Settings.cpp:
        (WebCore::Settings::Settings): Initialize
        m_needsIChatMemoryCacheCallsQuirk.
        (WebCore::Settings::setNeedsIChatMemoryCacheCallsQuirk): Added this
        setter.
        * page/Settings.h:
        (WebCore::Settings::needsIChatMemoryCacheCallsQuirk): Added this getter.

WebKit/mac:

        Reviewed by Brady Eidson.

        - WebKit part of fixing <rdar://problem/6507512> Crash in iChat at CSSStyleSelector::adjustRenderStyle

        * WebView/WebView.mm:
        (-[WebView _preferencesChangedNotification:]): Activate the WebCore
        workaround for this crash in iChat.

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

11 years ago2009-02-18 Anders Carlsson <andersca@apple.com>
andersca@apple.com [Thu, 19 Feb 2009 01:46:58 +0000 (01:46 +0000)]
2009-02-18  Anders Carlsson  <andersca@apple.com>

        Reviewed by Sam Weinig.

        Fix for <rdar://problem/6542390>

        There's no need to call setDefersLoading here - we already defer anything a plug-in can do that
        would cause a load to begin.

        * Plugins/WebNetscapePluginView.mm:
        (-[WebNetscapePluginView sendEvent:isDrawRect:]):

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

11 years ago2009-02-18 Dimitri Glazkov <dglazkov@chromium.org>
dglazkov@chromium.org [Thu, 19 Feb 2009 00:13:03 +0000 (00:13 +0000)]
2009-02-18  Dimitri Glazkov  <dglazkov@chromium.org>

        Reviewed by Eric Seidel.

        https://bugs.webkit.org/show_bug.cgi?id=24012
        Convert inline-ignored-on-legend to text-only test.

        * fast/forms/inline-ignored-on-legend-expected.txt: Added.
        * fast/forms/inline-ignored-on-legend.html: Changed to text-only.
        * platform/mac/fast/forms/inline-ignored-on-legend-expected.checksum: Removed.
        * platform/mac/fast/forms/inline-ignored-on-legend-expected.png: Removed.
        * platform/mac/fast/forms/inline-ignored-on-legend-expected.txt: Removed.

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

11 years ago2009-02-18 David Levin <levin@chromium.org>
levin@chromium.org [Wed, 18 Feb 2009 23:26:35 +0000 (23:26 +0000)]
2009-02-18  David Levin  <levin@chromium.org>

        Reviewed by Alexey Proskuryakov.

        Bug 23974: Deque::Remove would be a useful method.
        <https://bugs.webkit.org/show_bug.cgi?id=23974>

        Add Deque::remove and DequeIteratorBase<T>::operator=.

        Why was operator= added? Every concrete iterator (DequeIterator..DequeConstReverseIterator)
        was calling DequeIteratorBase::assign(), which called Base::operator=(). Base::operator=()
        was not implemented. This went unnoticed because the iterator copy code has been unused.

        * wtf/Deque.h:
        (WTF::Deque<T>::remove):
        (WTF::DequeIteratorBase<T>::removeFromIteratorsList):
        (WTF::DequeIteratorBase<T>::operator=):
        (WTF::DequeIteratorBase<T>::~DequeIteratorBase):

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

11 years agoAdd SPI to get WebKit's custom pointing-hand cursor
aroben@apple.com [Wed, 18 Feb 2009 22:59:34 +0000 (22:59 +0000)]
Add SPI to get WebKit's custom pointing-hand cursor

WebCore:

        Export WebCore::handCursor and Cursor.h

        Reviewed by John Sullivan.

        * WebCore.base.exp: Added WebCore::handCursor.
        * WebCore.xcodeproj/project.pbxproj: Made Cursor.h private.

WebKit/mac:

        Add SPI to get WebKit's custom pointing-hand cursor

        Reviewed by John Sullivan.

        * WebView/WebView.mm:
        (+[WebView _pointingHandCursor]): Added. Returns the custom
        pointing-hand cursor that WebKit uses.
        * WebView/WebViewPrivate.h: Added +_pointingHandCursor.

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

11 years ago2009-02-18 Ojan Vafai <ojan@chromium.org>
darin@chromium.org [Wed, 18 Feb 2009 22:12:02 +0000 (22:12 +0000)]
2009-02-18  Ojan Vafai  <ojan@chromium.org>

        Reviewed by Alexey Proskuryakov.

        https://bugs.webkit.org/show_bug.cgi?id=23992
        REGRESSION: crash on windows loading http://www.stickam.com/liveStreams.do

        Unable to reduce to a layout test.

        * page/Frame.cpp:
        (WebCore::Frame::contentRenderer):

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

11 years ago2009-02-18 Evan Stade <estade@chromium.org>
darin@chromium.org [Wed, 18 Feb 2009 22:07:10 +0000 (22:07 +0000)]
2009-02-18  Evan Stade  <estade@chromium.org>

        Reviewed by Eric Seidel.

        https://bugs.webkit.org/show_bug.cgi?id=23861
        Stroke font outlines on chromium linux

        TEST=LayoutTests/svg/custom/pointer-events-text.svg

        * platform/graphics/chromium/FontLinux.cpp:
        (WebCore::Font::drawGlyphs):

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

11 years ago2009-02-18 Evan Stade <estade@chromium.org>
darin@chromium.org [Wed, 18 Feb 2009 22:05:25 +0000 (22:05 +0000)]
2009-02-18  Evan Stade  <estade@chromium.org>

        Reviewed by Eric Seidel.

        https://bugs.webkit.org/show_bug.cgi?id=23860
        Resync some graphics/skia files with their chromium counterparts

        This comes from chromium patches <http://codereview.chromium.org/17633>
        and <http://codereview.chromium.org/17454>

        * platform/graphics/skia/GraphicsContextSkia.cpp:
        (WebCore::GraphicsContext::clipPath):
        (WebCore::GraphicsContext::fillPath):
        * platform/graphics/skia/PlatformContextSkia.cpp:
        (PlatformContextSkia::addPath):
        (PlatformContextSkia::currentPath):
        * platform/graphics/skia/PlatformContextSkia.h:

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

11 years ago2009-02-18 Gustavo Noronha Silva <gns@gnome.org>
kov@webkit.org [Wed, 18 Feb 2009 21:56:51 +0000 (21:56 +0000)]
2009-02-18  Gustavo Noronha Silva  <gns@gnome.org>

        Unreviewed.

        Build fix after r41060.

        * GNUmakefile.am:

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

11 years ago Rubber-stamped by Alexey Proskuryakov.
eric@webkit.org [Wed, 18 Feb 2009 20:19:21 +0000 (20:19 +0000)]
    Rubber-stamped by Alexey Proskuryakov.

        Add a few ignores to make-js-test-wrappers.

        * Scripts/make-js-test-wrappers:

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

11 years ago2009-02-18 Dimitri Glazkov <dglazkov@chromium.org>
dglazkov@chromium.org [Wed, 18 Feb 2009 19:20:08 +0000 (19:20 +0000)]
2009-02-18  Dimitri Glazkov  <dglazkov@chromium.org>

        Reviewed by Eric Seidel.

        https://bugs.webkit.org/show_bug.cgi?id=24005
        Add an include to fix Chromium build.

        * page/animation/AnimationController.cpp: Add UnusedParam.h include.

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

11 years ago2009-02-18 Gustavo Noronha Silva <gns@gnome.org>
kov@webkit.org [Wed, 18 Feb 2009 19:18:28 +0000 (19:18 +0000)]
2009-02-18  Gustavo Noronha Silva  <gns@gnome.org>

        Reviewed by Holger Freyther.

        Fix symbols.filter location, and add other missing files to the
        autotools build, so that make dist works.

        * GNUmakefile.am:

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