Timeline


and

02/23/09:

23:47 Changeset [41170] by antti@apple.com
  • 2 edits in trunk/WebCore

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):
20:29 Changeset [41169] by weinig@apple.com
  • 2 edits in trunk/WebCore

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

Fix Qt build.

  • bridge/qt/qt_runtime.cpp: (JSC::Bindings::valueRealType):
19:58 Changeset [41168] by ggaren@apple.com
  • 22 edits in trunk/JavaScriptCore

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):
18:57 Changeset [41167] by mrowe@apple.com
  • 1 edit in tags/Safari-6530.1/WebCore/page/AccessibilityTable.cpp

Work around <rdar://problem/6610801>.

17:47 Changeset [41166] by mrowe@apple.com
  • 5 edits
    1 add in tags/Safari-6530.1/WebKit/mac

Merge r41148.

17:46 Changeset [41165] by mrowe@apple.com
  • 1 add in tags/Safari-6530.1/WebKit/mac/Plugins/Hosted/WebTextInputWindowController.m

Merge r41124.

17:46 Changeset [41164] by mrowe@apple.com
  • 1 edit in tags/Safari-6530.1/WebKit/mac/ChangeLog

Merge r41124.

17:45 Changeset [41163] by mrowe@apple.com
  • 3 edits in tags/Safari-6530.1/WebKit

Merge r41123.

17:21 Changeset [41162] by jchaffraix@webkit.org
  • 5 edits
    2 adds in trunk

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.
16:53 Changeset [41161] by mrowe@apple.com
  • 1 copy in tags/Safari-6530.1

New tag.

16:29 Changeset [41160] by oliver@apple.com
  • 2 edits in trunk/JavaScriptCore

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.

16:04 Changeset [41159] by dglazkov@chromium.org
  • 1 edit
    12 adds in trunk/WebCore

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):
15:20 Changeset [41158] by treat@webkit.org
  • 2 edits in trunk/WebCore

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):
14:37 Changeset [41157] by levin@chromium.org
  • 8 edits in trunk/WebCore

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:
14:37 Changeset [41156] by levin@chromium.org
  • 7 edits in trunk

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:
14:08 Changeset [41155] by andersca@apple.com
  • 2 edits in trunk/WebKit/mac

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.

12:40 Changeset [41154] by hyatt@apple.com
  • 4 edits in trunk/WebCore

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):
12:16 Changeset [41153] by hyatt@apple.com
  • 4 edits
    4 adds in trunk

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.
12:11 Changeset [41152] by treat@webkit.org
  • 3 edits in trunk/WebCore

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):
11:52 Changeset [41151] by treat@webkit.org
  • 4 edits in trunk/WebKit/qt

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:
11:35 Changeset [41150] by dglazkov@chromium.org
  • 3 edits
    3 adds in trunk/WebCore

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):
09:48 Changeset [41149] by dglazkov@chromium.org
  • 2 edits in trunk/JavaScriptCore

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:
09:20 Changeset [41148] by andersca@apple.com
  • 5 edits in trunk/WebKit/mac

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.
08:19 Changeset [41147] by hausmann@webkit.org
  • 4 edits in trunk

2009-02-23 Thiago Macieira <thiago.macieira@nokia.com>

Reviewed by Simon Hausmann.

Fix the Copyright notices in a few files

07:08 Changeset [41146] by kov@webkit.org
  • 2 edits
    3 adds in trunk

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.

06:46 Changeset [41145] by ap@webkit.org
  • 708 edits in trunk/LayoutTests/dom/xhtml/level3/core

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.

06:23 Changeset [41144] by ap@webkit.org
  • 723 edits in trunk/LayoutTests/dom/xhtml/level2

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.

06:03 Changeset [41143] by ap@webkit.org
  • 238 edits in trunk/LayoutTests/dom/xhtml/level1/core

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.

05:56 Changeset [41142] by ap@webkit.org
  • 721 edits in trunk/LayoutTests/dom/html/level2

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.

05:34 Changeset [41141] by ap@webkit.org
  • 238 edits in trunk/LayoutTests/dom/html/level1/core

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.

05:27 Changeset [41140] by ap@webkit.org
  • 66 edits in trunk/LayoutTests

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.

03:24 Changeset [41139] by christian@webkit.org
  • 8 edits in trunk

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.

03:15 Changeset [41138] by christian@webkit.org
  • 9 edits in trunk

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.

02:00 Changeset [41137] by jmalonzo@webkit.org
  • 3 edits in trunk/WebKit/gtk

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):
01:44 Changeset [41136] by ap@webkit.org
  • 6 edits
    2 adds in trunk

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.
01:21 Changeset [41135] by ap@webkit.org
  • 3 edits
    2 adds in trunk

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.
01:10 Changeset [41134] by ap@webkit.org
  • 2 edits in trunk/WebCore

Apply review comments for the previous check-in (forgot to save the file, oops).

  • dom/ContainerNode.cpp: (WebCore::ContainerNode::removeChildren):
01:03 Changeset [41133] by ap@webkit.org
  • 3 edits
    3 adds in trunk

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.
00:58 Changeset [41132] by mrowe@apple.com
  • 2 edits in trunk/WebKit/mac

Fix the build after r41126.

  • Plugins/Hosted/NetscapePluginInstanceProxy.mm:

(WebKit::NetscapePluginInstanceProxy::invoke):
(WebKit::NetscapePluginInstanceProxy::invokeDefault):
(WebKit::NetscapePluginInstanceProxy::construct):

00:52 Changeset [41131] by ap@webkit.org
  • 3 edits
    2 adds in trunk

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.
00:44 Changeset [41130] by ap@webkit.org
  • 11 edits in trunk/WebCore

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.

02/22/09:

22:22 Changeset [41129] by mitz@apple.com
  • 2 edits in trunk/WebKit/mac

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.
16:53 Changeset [41128] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

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

Build fix?

  • GNUmakefile.am:
16:34 Changeset [41127] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

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

Build fix.

  • GNUmakefile.am:
15:26 Changeset [41126] by ggaren@apple.com
  • 40 edits
    2 copies in trunk

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):
02:37 Changeset [41125] by mrowe@apple.com
  • 2 edits in trunk/WebKitTools

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.

02/21/09:

11:32 Changeset [41124] by andersca@apple.com
  • 2 edits in trunk/WebKit/mac

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

Fix build.


  • Plugins/Hosted/WebTextInputWindowController.m:
11:20 Changeset [41123] by andersca@apple.com
  • 3 edits
    2 adds in trunk/WebKit

..:

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.
01:25 Changeset [41122] by dimich@chromium.org
  • 3 edits
    12 adds in trunk

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.

02/20/09:

18:05 Changeset [41121] by kdecker@apple.com
  • 2 edits in trunk/WebKit/mac

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
16:15 Changeset [41120] by jchaffraix@webkit.org
  • 15 edits in trunk/WebCore

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.
13:19 Changeset [41119] by dglazkov@chromium.org
  • 2 edits in trunk/WebCore

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.
13:12 Changeset [41118] by eric.carlson@apple.com
  • 3 edits in trunk/WebCore

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.
13:10 Changeset [41117] by eric.carlson@apple.com
  • 3 edits in trunk/WebCore

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.
13:08 Changeset [41116] by darin@chromium.org
  • 2 edits in trunk/WebCore

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):
12:55 Changeset [41115] by dglazkov@chromium.org
  • 3 edits in trunk/WebCore

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:
12:52 Changeset [41114] by weinig@apple.com
  • 2 edits in trunk/LayoutTests

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

  • fast/dom/SelectorAPI/resig-SelectorsAPI-test-expected.txt: Update results.
12:36 Changeset [41113] by dglazkov@chromium.org
  • 13 edits
    2 adds in trunk/WebCore

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::):
12:32 Changeset [41112] by zecke@webkit.org
  • 3 edits in trunk/WebCore

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):
12:10 Changeset [41111] by kov@webkit.org
  • 2 edits in trunk/WebCore

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):
11:41 Changeset [41110] by kov@webkit.org
  • 2 edits in trunk/WebCore

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):
11:27 Changeset [41109] by ddkilzer@apple.com
  • 2 edits in trunk/WebCore

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.
08:27 Changeset [41108] by ddkilzer@apple.com
  • 30 edits in trunk/WebKitSite

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.
08:23 Changeset [41107] by ddkilzer@apple.com
  • 2 edits in trunk/WebCore

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.
07:34 Changeset [41106] by darin@chromium.org
  • 2 edits in trunk/WebCore

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):
07:31 Changeset [41105] by darin@chromium.org
  • 3 edits in trunk/WebCore

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):
05:25 Changeset [41104] by kov@webkit.org
  • 2 edits in trunk/JavaScriptCore

2009-02-20 Gustavo Noronha Silva <gns@gnome.org>

Unreviewed build fix after r41100.

  • GNUmakefile.am:
05:14 Changeset [41103] by oliver@apple.com
  • 7 edits in trunk

<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.

02/19/09:

23:23 Changeset [41102] by dimich@chromium.org
  • 8 edits in trunk/WebCore

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.
22:20 Changeset [41101] by kov@webkit.org
  • 2 edits in trunk/WebCore

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):
22:04 Changeset [41100] by ggaren@apple.com
  • 9 edits
    2 copies in trunk/JavaScriptCore

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):
18:02 Changeset [41099] by mrowe@apple.com
  • 4 edits in branches/Safari-6528

Versioning.

18:02 Changeset [41098] by mrowe@apple.com
  • 1 copy in tags/Safari-6528.16

New tag.

17:54 Changeset [41097] by mrowe@apple.com
  • 2 edits in branches/Safari-6528/WebCore

Merge r41091.

17:41 Changeset [41096] by mitz@apple.com
  • 9 edits in trunk

WebCore:

Reviewed by Sam Weinig.

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.

17:38 Changeset [41095] by zecke@webkit.org
  • 2 edits in trunk/WebCore

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):
17:23 Changeset [41094] by bdakin@apple.com
  • 3 edits in trunk/WebCore

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):
16:38 Changeset [41093] by weinig@apple.com
  • 9 edits
    3 adds in trunk

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.
16:31 Changeset [41092] by dglazkov@chromium.org
  • 5 edits in trunk/WebCore

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.
15:53 Changeset [41091] by andersca@apple.com
  • 2 edits in trunk/WebCore

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):
14:52 Changeset [41090] by hyatt@apple.com
  • 8 edits
    4 adds in trunk

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.
14:51 Changeset [41089] by barraclough@apple.com
  • 14 edits in trunk/JavaScriptCore

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):
14:35 Changeset [41088] by levin@chromium.org
  • 3 edits in trunk/WebCore

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):
14:13 Changeset [41087] by dimich@chromium.org
  • 3 edits in trunk/LayoutTests

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:
13:41 Changeset [41086] by christian@webkit.org
  • 2 edits in trunk

Add GLIB_LIBS to unit test library flags.

Rubber-stamped by Holger Freyther.

13:36 Changeset [41085] by dglazkov@chromium.org
  • 2 edits in trunk/WebCore

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.
13:33 Changeset [41084] by dglazkov@chromium.org
  • 2 edits in trunk/WebCore

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.
12:35 Changeset [41083] by ggaren@apple.com
  • 3 edits in trunk/JavaScriptCore

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.
12:12 Changeset [41082] by dglazkov@chromium.org
  • 3 edits in trunk/WebCore

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:
11:40 Changeset [41081] by levin@chromium.org
  • 3 edits in trunk/JavaScriptCore

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):
11:20 Changeset [41080] by simon.fraser@apple.com
  • 3 edits in trunk/WebCore

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):
11:19 Changeset [41079] by dglazkov@chromium.org
  • 3 edits in trunk/LayoutTests

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:
11:14 Changeset [41078] by dglazkov@chromium.org
  • 3 edits in trunk/WebCore

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.
07:37 Changeset [41077] by kov@webkit.org
  • 2 edits in trunk/WebCore

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):
07:18 Changeset [41076] by kov@webkit.org
  • 2 edits in trunk/WebCore

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):
Note: See TracTimeline for information about the timeline view.