Timeline



Jan 7, 2009:

10:15 PM Changeset in webkit [39698] by jhoneycutt@apple.com
  • 2 edits in trunk/WebKit/win

2009-01-07 Jon Honeycutt <jhoneycutt@apple.com>

Fix a crash with querying a WebView for its global history item when
its associated Page has no global history item.

Reviewed by Dan Bernstein.

  • WebView.cpp: (WebView::globalHistoryItem): If the Page has no global history item, report 0.
5:46 PM Changeset in webkit [39697] by weinig@apple.com
  • 14 edits in trunk/JavaScriptCore

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

Reviewed by Geoffrey Garen.

<rdar://problem/6469060> Don't store exception information for a CodeBlock until first exception is thrown

Don't initially store exception information (lineNumber/expressionRange/getByIdExcecptionInfo)
in CodeBlocks blocks. Instead, re-parse for the data on demand and cache it then.

One important change that was needed to make this work was to pad op_get_global_var with nops to
be the same length as op_resolve_global, since one could be replaced for the other on re-parsing,
and we want to keep the offsets bytecode offsets the same.

1.3MB improvement on Membuster head.

  • bytecode/CodeBlock.cpp: (JSC::CodeBlock::dump): Update op_get_global_var to account for the padding. (JSC::CodeBlock::dumpStatistics): Add more statistic dumping. (JSC::CodeBlock::CodeBlock): Initialize m_exceptionInfo. (JSC::CodeBlock::reparseForExceptionInfoIfNecessary): Re-parses the CodeBlocks associated SourceCode and steals the ExceptionInfo from it. (JSC::CodeBlock::lineNumberForBytecodeOffset): Creates the exception info on demand. (JSC::CodeBlock::expressionRangeForBytecodeOffset): Ditto. (JSC::CodeBlock::getByIdExceptionInfoForBytecodeOffset): Ditto.
  • bytecode/CodeBlock.h: (JSC::CodeBlock::numberOfExceptionHandlers): Updated to account for m_exceptionInfo indirection. (JSC::CodeBlock::addExceptionHandler): Ditto. (JSC::CodeBlock::exceptionHandler): Ditto. (JSC::CodeBlock::clearExceptionInfo): Ditto. (JSC::CodeBlock::addExpressionInfo): Ditto. (JSC::CodeBlock::addGetByIdExceptionInfo): Ditto. (JSC::CodeBlock::numberOfLineInfos): Ditto. (JSC::CodeBlock::addLineInfo): Ditto. (JSC::CodeBlock::lastLineInfo): Ditto.
  • bytecode/Opcode.h: Change length of op_get_global_var to match op_resolve_global.
  • bytecode/SamplingTool.cpp: (JSC::SamplingTool::dump): Add comment indicating why it is okay not to pass a CallFrame.
  • bytecompiler/BytecodeGenerator.cpp: (JSC::BytecodeGenerator::generate): Clear the exception info after generation for Function and Eval Code when not in regenerate for exception info mode. (JSC::BytecodeGenerator::BytecodeGenerator): Initialize m_regeneratingForExceptionInfo to false. (JSC::BytecodeGenerator::emitGetScopedVar): Pad op_get_global_var with 2 nops.
  • bytecompiler/BytecodeGenerator.h: (JSC::BytecodeGenerator::setRegeneratingForExcpeptionInfo): Added.
  • interpreter/Interpreter.cpp: (JSC::Interpreter::throwException): Pass the CallFrame to exception info accessors. (JSC::Interpreter::privateExecute): Ditto. (JSC::Interpreter::retrieveLastCaller): Ditto. (JSC::Interpreter::cti_op_new_error): Ditto.
  • jit/JIT.cpp: (JSC::JIT::privateCompileMainPass): Pass the current bytecode offset instead of hard coding the line number, the stub will do the accessing if it gets called.
  • parser/Nodes.cpp: (JSC::ProgramNode::emitBytecode): Moved. (JSC::ProgramNode::generateBytecode): Moved. (JSC::EvalNode::create): Moved. (JSC::EvalNode::bytecodeForExceptionInfoReparse): Added. (JSC::FunctionBodyNode::generateBytecode): Rename reparse to reparseInPlace. (JSC::FunctionBodyNode::bytecodeForExceptionInfoReparse): Addded.
  • parser/Nodes.h: (JSC::ScopeNode::features): Added getter.
  • parser/Parser.cpp: (JSC::Parser::reparseInPlace): Renamed from reparse.
  • parser/Parser.h: (JSC::Parser::reparse): Added. Re-parses the passed in Node into a new Node.
  • runtime/ExceptionHelpers.cpp: (JSC::createUndefinedVariableError): Pass along CallFrame. (JSC::createInvalidParamError): Ditto. (JSC::createNotAConstructorError): Ditto. (JSC::createNotAFunctionError): Ditto. (JSC::createNotAnObjectError): Ditto.
5:37 PM Changeset in webkit [39696] by cmarrin@apple.com
  • 7 edits in trunk/WebCore

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

This completes the removal of dependencies on WebKit from the platform code

5:28 PM Changeset in webkit [39695] by eric@webkit.org
  • 2 edits in trunk/WebKitTools

2009-01-07 Glenn Wilson <gwilson@chromium.org>

Reviewed by Eric Seidel.

Changed DumpRenderTree to re-enable Javascript in web preferences on every test.
This fixes the case when a user mistakenly disables Javascript, and all layout tests crash.

  • DumpRenderTree/mac/DumpRenderTree.mm: (testStringByEvaluatingJavaScriptFromString): (setDefaultsToConsistentValuesForTesting):
4:27 PM Changeset in webkit [39694] by pkasting@chromium.org
  • 7 edits in trunk/WebCore

2008-01-07 Peter Kasting <pkasting@google.com>

Reviewed by Sam Weinig.

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

Fix errors while decoding GIFs by not calling setData() repeatedly
when it's not necessary. Pushes the responsibility for calling
setData() after clear() into the ImageSource which presumably knows
better than BitmapImage what needs to be done.

NOTE: The above bug is mainly about a memory regression, which this
patch does not fix.

  • platform/graphics/BitmapImage.cpp: (WebCore::BitmapImage::destroyDecodedData):
  • platform/graphics/ImageSource.h:
  • platform/graphics/cairo/ImageSourceCairo.cpp: (WebCore::ImageSource::clear):
  • platform/graphics/cg/ImageSourceCG.cpp: (WebCore::ImageSource::clear):
  • platform/graphics/qt/ImageSourceQt.cpp: (WebCore::ImageSource::~ImageSource): (WebCore::ImageSource::clear):
  • platform/graphics/wx/ImageSourceWx.cpp: (WebCore::ImageSource::~ImageSource): (WebCore::ImageSource::clear):
4:23 PM Changeset in webkit [39693] by justin.garcia@apple.com
  • 3 edits
    2 adds in trunk

WebCore:

2009-01-07 Justin Garcia <justin.garcia@apple.com>

Reviewed by Darin Adler.

<rdar://problem/6355786> Find fails for queries that contain a line break

  • editing/TextIterator.cpp: (WebCore::findPlainText): Allow find with queries that contain newlines.

LayoutTests:

2009-01-07 Justin Garcia <justin.garcia@apple.com>

Reviewed by Darin Adler.


<rdar://problem/6355786> Find fails for queries that contain a line break

  • editing/execCommand/6355786-expected.txt: Added.
  • editing/execCommand/6355786.html: Added.
4:00 PM Changeset in webkit [39692] by dino@apple.com
  • 1 edit in trunk/WebCore/ChangeLog

2009-01-07 Dean Jackson <dino@apple.com>

Typo in ChangeLog. Don't want to offend mitz.

3:56 PM Changeset in webkit [39691] by dino@apple.com
  • 3 edits
    2 adds in trunk

2009-01-07 Dean Jackson <dino@apple.com>

Reviewed by Dan Berstein.

Allow removal of inline shorthand properties for
animation, transition and transform origin. Also
add getter for shorthand animation property.

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

Test: fast/css/transform-inline-style-remove.html

  • css/CSSMutableStyleDeclaration.cpp: (WebCore::CSSMutableStyleDeclaration::getPropertyValue):

Getter for animation property shorthand

(WebCore::initShorthandMap):

Adds initialisation for transform-origin, animation and transition

3:43 PM Changeset in webkit [39690] by zecke@webkit.org
  • 3 edits in trunk/WebCore

2009-01-07 Benjamin Otte <otte@gnome.org>

Reviewed by Holger Freyther.

  • platform/network/ResourceHandleInternal.h: (WebCore::ResourceHandleInternal::ResourceHandleInternal):
  • platform/network/soup/ResourceHandleSoup.cpp: (WebCore::ResourceHandleInternal::~ResourceHandleInternal): (WebCore::parseDataUrl): (WebCore::ResourceHandle::startData): keep track of the idle handler we add and remove it in the destructor
3:24 PM Changeset in webkit [39689] by zecke@webkit.org
  • 5 edits in trunk

Implement LayoutTestController::numberOfActiveAnimations for Gtk+.

Add private API to WebKitWebFrame to get the information. The
implementation is coming from WebFrame.mm.

3:02 PM Changeset in webkit [39688] by dino@apple.com
  • 9 edits
    4 moves in trunk/WebCore

2009-01-07 Dean Jackson <dino@apple.com>

Reviewed by Darin Adler.

Finish renaming of AffineTransform to TransformationMatrix, this
time ensuring that the platform implementations get the correct
name. Also, clean up some whitespace cruft in old content.

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

  • GNUmakefile.am:
  • WebCore.pro:
  • WebCore.scons:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/graphics/cairo/AffineTransformCairo.cpp: Removed.
  • platform/graphics/cairo/TransformationMatrixCairo.cpp: Copied from WebCore/platform/graphics/cairo/AffineTransformCairo.cpp.
  • platform/graphics/cg/AffineTransformCG.cpp: Removed.
  • platform/graphics/cg/TransformationMatrixCG.cpp: Copied from WebCore/platform/graphics/cg/AffineTransformCG.cpp.
  • platform/graphics/qt/AffineTransformQt.cpp: Removed.
  • platform/graphics/qt/TransformationMatrixQt.cpp: Copied from WebCore/platform/graphics/qt/AffineTransformQt.cpp.
  • platform/graphics/transforms/TransformationMatrix.cpp:
  • platform/graphics/transforms/TransformationMatrix.h:
  • platform/graphics/wx/AffineTransformWx.cpp: Removed.
  • platform/graphics/wx/TransformationMatrixWx.cpp: Copied from WebCore/platform/graphics/wx/AffineTransformWx.cpp.
  • webcore-wx.bkl:
2:57 PM Changeset in webkit [39687] by pol@apple.com
  • 3 edits in trunk/LayoutTests

2009-01-07 Pierre-Olivier Latour <pol@apple.com>

Improve DRT API existence test in animation-test-helpers.js & transition-test-helpers.js.

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

  • animations/animation-test-helpers.js:
  • transitions/transition-test-helpers.js:
2:33 PM Changeset in webkit [39686] by andersca@apple.com
  • 2 edits in trunk/WebCore

2009-01-07 Anders Carlsson <andersca@apple.com>

Another build fix.


  • WebCore.LP64.exp:
2:30 PM Changeset in webkit [39685] by andersca@apple.com
  • 3 edits in trunk/WebKit/mac

2009-01-07 Anders Carlsson <andersca@apple.com>

Reviewed by Dan Bernstein.

Fix build.


  • Plugins/Hosted/NetscapePluginInstanceProxy.h:
  • Plugins/Hosted/NetscapePluginInstanceProxy.mm: (WebKit::NetscapePluginInstanceProxy::idForObject):
2:03 PM Changeset in webkit [39684] by andersca@apple.com
  • 5 edits in trunk/WebKit/mac

2009-01-07 Anders Carlsson <andersca@apple.com>

Reviewed by Dan Bernstein.

Add a way for a plug-in to get a reference to the Window JS object.

  • Plugins/Hosted/NetscapePluginHostProxy.mm: (WKPCGetWindowNPObject): Call the appropriate instance.


  • Plugins/Hosted/NetscapePluginInstanceProxy.h: Add object ID counter.


  • Plugins/Hosted/NetscapePluginInstanceProxy.mm: (WebKit::NetscapePluginInstanceProxy::destroy): Clear the object ID map.


(WebKit::NetscapePluginInstanceProxy::idForObject):
New method that returns a unique ID for a given JS object.


(WebKit::NetscapePluginInstanceProxy::getWindowNPObject):
Return the object ID for the window JS object.


  • Plugins/Hosted/WebKitPluginClient.defs: Add GetWindowNPObject.
12:24 PM Changeset in webkit [39683] by hyatt@apple.com
  • 4 edits in trunk/WebCore

2008-12-16 David Hyatt <hyatt@apple.com>

Make Safari RSS behave nicely with full page zoom. Need to add a new value to enable resetting of zoom
back to the document-level default.

Reviewed by Darin Adler

  • css/CSSParser.cpp: (WebCore::CSSParser::parseValue):
  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::applyProperty):
  • css/CSSValueKeywords.in:
7:58 AM Changeset in webkit [39682] by Adam Roben
  • 3 edits in trunk/WebKit/win

Fix Bug 22262: Clicking close ("X") button in docked Web Inspector clears Web Inspector but doesn't close it

<https://bugs.webkit.org/show_bug.cgi?id=22262>
<rdar://problem/6371873>

Reviewed by Darin Adler.

  • WebCoreSupport/WebInspectorClient.cpp: (WebInspectorClient::WebInspectorClient): Initialize new member. (WebInspectorClient::showWindow): Moved code from here to showWindowWithoutNotifications. (WebInspectorClient::closeWindow): Moved code from here to closeWindowWithoutNotifications.

(WebInspectorClient::attachWindow):
(WebInspectorClient::detachWindow):
Record whether or not we should be attached, then close and reopen the
window without notifying the InspectorController. Code that was in
these functions moved to showWindowWithoutNotifications and
closeWindowWithoutNotifications, respectively.

(WebInspectorClient::closeWindowWithoutNotifications): Added. Code
came from closeWindow and detachWindow.
(WebInspectorClient::showWindowWithoutNotifications): Added. Code came
from showWindow and attachWindow.

  • WebCoreSupport/WebInspectorClient.h: Added {close,show}WindowWithoutNotifications and m_shouldAttachWhenShown.
7:40 AM Changeset in webkit [39681] by Darin Adler
  • 12 edits in trunk

WebCore:

2009-01-07 Darin Adler <Darin Adler>

Reviewed by Oliver Hunt.

Bug 23160: add setMemoryCacheClientCallsEnabled SPI so Safari can be faster with activity window closed
https://bugs.webkit.org/show_bug.cgi?id=23160

  • WebCore.base.exp: Added Page::setMemoryCacheClientCallsEnabled.
  • inspector/InspectorController.cpp: (WebCore::InspectorController::didLoadResourceFromMemoryCache): Updated to take a CachedResource so that there's no extra work the caller has to do when the inspector is disabled.
  • inspector/InspectorController.h: Ditto.
  • loader/DocumentLoader.h: Added recordMemoryCacheLoadForFutureClientNotification, takeMemoryCacheLoadsForClientNotification, and m_resourcesLoadedFromMemoryCacheForClientNotification.
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::loadedResourceFromMemoryCache): Streamlined code so less work is done when there's no inspector or client call needed. Added code to check areMemoryCacheClientCallsEnabled and if it's false, use recordMemoryCacheLoadForFutureClientNotification. (WebCore::FrameLoader::tellClientAboutPastMemoryCacheLoads): Added.
  • loader/FrameLoader.h: Ditto.
  • page/Page.cpp: (WebCore::Page::Page): Initialize m_areMemoryCacheClientCallsEnabled to be compatible with old behavior. (WebCore::Page::setMemoryCacheClientCallsEnabled): Added.
  • page/Page.h: Added setMemoryCacheClientCallsEnabled, areMemoryCacheClientCallsEnabled, and m_areMemoryCacheClientCallsEnabled.

WebKit/mac:

2009-01-07 Darin Adler <Darin Adler>

Reviewed by Oliver Hunt.

Bug 23160: add setMemoryCacheClientCallsEnabled SPI so Safari can be faster with activity window closed
https://bugs.webkit.org/show_bug.cgi?id=23160

  • WebView/WebView.mm: (-[WebView setMemoryCacheDelegateCallsEnabled:]): Added. (-[WebView areMemoryCacheDelegateCallsEnabled]): Added
  • WebView/WebViewPrivate.h: Ditto.
7:35 AM Changeset in webkit [39680] by treat@webkit.org
  • 4 edits in trunk/WebKit/qt

Add Qt API to QWebHitTestResult::isScrollBar method

7:35 AM Changeset in webkit [39679] by treat@webkit.org
  • 3 edits in trunk/WebKit/qt

Add Qt API for QWebFrame::scrollBarGeometry method

7:24 AM Changeset in webkit [39678] by treat@webkit.org
  • 7 edits in trunk

Fix unused variable warnings

7:15 AM Changeset in webkit [39677] by Simon Hausmann
  • 9 edits in trunk

2009-01-07 Ariya Hidayat <ariya.hidayat@trolltech.com>

Rubber-stamped by Simon Hausmann.

Qt build fix after r39670.

  • bridge/qt/qt_class.cpp: (JSC::Bindings::QtClass::fallbackObject):
  • bridge/qt/qt_class.h:
  • bridge/qt/qt_instance.cpp: (JSC::Bindings::QtInstance::mark): (JSC::Bindings::QtInstance::invokeMethod): (JSC::Bindings::QtInstance::defaultValue): (JSC::Bindings::QtInstance::stringValue): (JSC::Bindings::QtInstance::numberValue): (JSC::Bindings::QtInstance::booleanValue): (JSC::Bindings::QtInstance::valueOf): (JSC::Bindings::QtField::valueFromInstance): (JSC::Bindings::QtField::setValueToInstance):
  • bridge/qt/qt_instance.h:
  • bridge/qt/qt_runtime.cpp: (JSC::Bindings::valueRealType): (JSC::Bindings::convertValueToQVariant): (JSC::Bindings::convertQVariantToValue): (JSC::Bindings::findMethodIndex): (JSC::Bindings::QtRuntimeMetaMethod::call): (JSC::Bindings::QtRuntimeMetaMethod::lengthGetter): (JSC::Bindings::QtRuntimeMetaMethod::connectGetter): (JSC::Bindings::QtRuntimeMetaMethod::disconnectGetter): (JSC::Bindings::QtRuntimeConnectionMethod::call): (JSC::Bindings::QtRuntimeConnectionMethod::lengthGetter): (JSC::Bindings::::setValueAt): (JSC::Bindings::::valueAt):
  • bridge/qt/qt_runtime.h: (JSC::Bindings::QtRuntimeMethod::createStructure):

2009-01-07 Ariya Hidayat <ariya.hidayat@trolltech.com>

Rubber-stamped by Simon Hausmann.

Qt build fix after r39670.

  • Api/qwebframe.cpp: (QWebFrame::evaluateJavaScript):
2:01 AM QtWebKitJournal edited by ariya.hidayat@trolltech.com
(diff)
2:01 AM QtWebKitJournal edited by ariya.hidayat@trolltech.com
(diff)
2:00 AM QtWebKitJournal edited by ariya.hidayat@trolltech.com
(diff)
2:00 AM QtWebKitJournal edited by ariya.hidayat@trolltech.com
(diff)
12:45 AM Changeset in webkit [39676] by Simon Hausmann
  • 2 edits in trunk/WebKit/qt

2009-01-06 Ariya Hidayat <ariya.hidayat@trolltech.com>

Reviewed by Holger Freyther.

Allow building QtWebKit statically (within Qt).

http://trolltech.com/developer/task-tracker/index_html?id=211273&method=entry

  • Api/qwebkitglobal.h:
12:16 AM Changeset in webkit [39675] by barraclough@apple.com
  • 2 edits in trunk/JavaScriptCore

2009-01-06 Gavin Barraclough <baraclough@apple.com>

Reviewed by Maciej Stachowiak.

Replace accidentally removed references in BytecodeGenerator, deleting these
will be hindering the sharing of constant numbers and strings.

The code to add a new constant (either number or string) to their respective
map works by attempting to add a null entry, then checking the result of the
add for null. The first time, this should return the null (or noValue).
The code checks for null (to see if this is the initial add), and then allocates
a new number / string object. This code relies on the result returned from
the add to the map being stored as a reference, such that the allocated object
will be stored in the map, and will be resused if the same constant is encountered
again. By failing to use a reference we will be leaking GC object for each
additional entry added to the map. As GC objects they should be clollected,
be we should no be allocatin them in the first place.

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

  • bytecompiler/BytecodeGenerator.cpp: (JSC::BytecodeGenerator::emitLoad):
12:07 AM Changeset in webkit [39674] by justin.garcia@apple.com
  • 2 edits in trunk/WebCore

2009-01-06 Justin Garcia <justin.garcia@apple.com>

Reviewed by Oliver Hunt.

<rdar://problem/6391734> SnowLeopard: Crash doing Copy Image from context menu


Can't create an automated test case for specific contextual menu items yet and
a normal Copy doesn't cause a crash.

  • platform/mac/PasteboardMac.mm: (WebCore::fileWrapperForImage): The SharedBuffer may not have platform data. It may, for example, have a purgeable or regular buffer.

Jan 6, 2009:

11:41 PM Changeset in webkit [39673] by oliver@apple.com
  • 3 edits in trunk/JavaScriptCore

<rdar://problem/6040850> JavaScript register file should use VirtualAlloc on Windows

Reviewed by Gavin Barraclough.

Fairly simple, just reserve 4Mb of address space for the
register file, and then commit one section at a time. We
don't release committed memory as we drop back, but then
mac doesn't either so this probably not too much of a
problem.

11:24 PM Changeset in webkit [39672] by ap@webkit.org
  • 3 edits in trunk/JavaScriptCore

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=23142
ThreadGlobalData leaks seen on buildbot

  • wtf/ThreadSpecific.h: (WTF::ThreadSpecific::destroy): Temporarily reset the thread specific value to make getter work on Mac OS X.
  • wtf/Platform.h: Touch this file again to make sure all Windows builds use the most recent version of ThreadSpecific.h.
10:29 PM Changeset in webkit [39671] by mrowe@apple.com
  • 2 edits in trunk/WebCore

Fix <https://bugs.webkit.org/show_bug.cgi?id=23157>.
Bug 23157: Crashes on Acid 3

Reviewed by Geoff Garen.

  • dom/Document.cpp:

(WebCore::Document::recalcStyle): Null-check the frame.

9:11 PM Changeset in webkit [39670] by barraclough@apple.com
  • 297 edits in trunk

JavaScriptCore:

2009-01-05 Gavin Barraclough <baraclough@apple.com>

Reviewed by Oliver Hunt.

Replace all uses of JSValue* with a new smart pointer type, JSValuePtr.


A JavaScript value may be a heap object or boxed primitive, represented by a
pointer, or may be an unboxed immediate value, such as an integer. Since a
value may dynamically need to contain either a pointer value or an immediate,
we encode immediates as pointer values (since all valid JSCell pointers are
allocated at alligned addesses, unaligned addresses are available to encode
immediates). As such all JavaScript values are represented using a JSValue*.

This implementation is encumbered by a number of constraints. It ties the
JSValue representation to the size of pointer on the platform, which, for
example, means that we currently can represent different ranges of integers
as immediates on x86 and x86-64. It also prevents us from overloading the
to-boolean conversion used to test for noValue() - effectively forcing us
to represent noValue() as 0. This would potentially be problematic were we
to wish to encode integer values differently (e.g. were we to use the v8
encoding, where pointers are tagged with 1 and integers with 0, then the
immediate integer 0 would conflict with noValue()).

This patch replaces all usage of JSValue* with a new class, JSValuePtr,
which encapsulates the pointer. JSValuePtr maintains the same interface as
JSValue*, overloading operator-> and operator bool such that previous
operations in the code on variables of type JSValue* are still supported.

In order to provide a ProtectPtr<> type with support for the new value
representation (without using the internal JSValue type directly), a new
ProtectJSValuePtr type has been added, equivalent to the previous type
ProtectPtr<JSValue>.

This patch is likely the first in a sequence of three changes. With the
value now encapsulated it will likely make sense to migrate the functionality
from JSValue into JSValuePtr, such that the internal pointer representation
need not be exposed. Through migrating the functionality to the wrapper
class the existing JSValue should be rendered redundant, and the class is
likely to be removed (the JSValuePtr now wrapping a pointer to a JSCell).
At this stage it will likely make sense to rename JSValuePtr to JSValue.

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

  • API/APICast.h: (toJS): (toRef):
  • API/JSBase.cpp: (JSEvaluateScript):
  • API/JSCallbackConstructor.h: (JSC::JSCallbackConstructor::createStructure):
  • API/JSCallbackFunction.cpp: (JSC::JSCallbackFunction::call):
  • API/JSCallbackFunction.h: (JSC::JSCallbackFunction::createStructure):
  • API/JSCallbackObject.h: (JSC::JSCallbackObject::createStructure):
  • API/JSCallbackObjectFunctions.h: (JSC::::asCallbackObject): (JSC::::put): (JSC::::hasInstance): (JSC::::call): (JSC::::staticValueGetter): (JSC::::staticFunctionGetter): (JSC::::callbackGetter):
  • API/JSContextRef.cpp:
  • API/JSObjectRef.cpp: (JSObjectMakeConstructor): (JSObjectSetPrototype): (JSObjectGetProperty): (JSObjectSetProperty): (JSObjectGetPropertyAtIndex): (JSObjectSetPropertyAtIndex):
  • API/JSValueRef.cpp: (JSValueGetType): (JSValueIsUndefined): (JSValueIsNull): (JSValueIsBoolean): (JSValueIsNumber): (JSValueIsString): (JSValueIsObject): (JSValueIsObjectOfClass): (JSValueIsEqual): (JSValueIsStrictEqual): (JSValueIsInstanceOfConstructor): (JSValueToBoolean): (JSValueToNumber): (JSValueToStringCopy): (JSValueToObject): (JSValueProtect): (JSValueUnprotect):
  • JavaScriptCore.exp:
  • bytecode/CodeBlock.cpp: (JSC::valueToSourceString): (JSC::constantName): (JSC::CodeBlock::dump):
  • bytecode/CodeBlock.h: (JSC::CodeBlock::getConstant): (JSC::CodeBlock::addUnexpectedConstant): (JSC::CodeBlock::unexpectedConstant):
  • bytecode/EvalCodeCache.h: (JSC::EvalCodeCache::get):
  • bytecompiler/BytecodeGenerator.cpp: (JSC::BytecodeGenerator::BytecodeGenerator): (JSC::BytecodeGenerator::addConstant): (JSC::BytecodeGenerator::addUnexpectedConstant): (JSC::BytecodeGenerator::emitLoad): (JSC::BytecodeGenerator::emitLoadJSV): (JSC::BytecodeGenerator::emitGetScopedVar): (JSC::BytecodeGenerator::emitPutScopedVar): (JSC::BytecodeGenerator::emitNewError): (JSC::keyForImmediateSwitch):
  • bytecompiler/BytecodeGenerator.h: (JSC::BytecodeGenerator::JSValueHashTraits::constructDeletedValue): (JSC::BytecodeGenerator::JSValueHashTraits::isDeletedValue):
  • debugger/DebuggerCallFrame.cpp: (JSC::DebuggerCallFrame::evaluate):
  • debugger/DebuggerCallFrame.h: (JSC::DebuggerCallFrame::DebuggerCallFrame): (JSC::DebuggerCallFrame::exception):
  • interpreter/CallFrame.cpp: (JSC::CallFrame::thisValue):
  • interpreter/CallFrame.h: (JSC::ExecState::setException): (JSC::ExecState::exception): (JSC::ExecState::exceptionSlot): (JSC::ExecState::hadException):
  • interpreter/Interpreter.cpp: (JSC::fastIsNumber): (JSC::fastToInt32): (JSC::fastToUInt32): (JSC::jsLess): (JSC::jsLessEq): (JSC::jsAddSlowCase): (JSC::jsAdd): (JSC::jsTypeStringForValue): (JSC::jsIsObjectType): (JSC::jsIsFunctionType): (JSC::Interpreter::resolve): (JSC::Interpreter::resolveSkip): (JSC::Interpreter::resolveGlobal): (JSC::inlineResolveBase): (JSC::Interpreter::resolveBase): (JSC::Interpreter::resolveBaseAndProperty): (JSC::Interpreter::resolveBaseAndFunc): (JSC::isNotObject): (JSC::Interpreter::callEval): (JSC::Interpreter::unwindCallFrame): (JSC::Interpreter::throwException): (JSC::Interpreter::execute): (JSC::Interpreter::checkTimeout): (JSC::Interpreter::createExceptionScope): (JSC::cachePrototypeChain): (JSC::Interpreter::tryCachePutByID): (JSC::countPrototypeChainEntriesAndCheckForProxies): (JSC::Interpreter::tryCacheGetByID): (JSC::Interpreter::privateExecute): (JSC::Interpreter::retrieveArguments): (JSC::Interpreter::retrieveCaller): (JSC::Interpreter::retrieveLastCaller): (JSC::Interpreter::tryCTICachePutByID): (JSC::Interpreter::tryCTICacheGetByID): (JSC::returnToThrowTrampoline): (JSC::Interpreter::cti_op_convert_this): (JSC::Interpreter::cti_op_add): (JSC::Interpreter::cti_op_pre_inc): (JSC::Interpreter::cti_op_loop_if_less): (JSC::Interpreter::cti_op_loop_if_lesseq): (JSC::Interpreter::cti_op_get_by_id_generic): (JSC::Interpreter::cti_op_get_by_id): (JSC::Interpreter::cti_op_get_by_id_second): (JSC::Interpreter::cti_op_get_by_id_self_fail): (JSC::Interpreter::cti_op_get_by_id_proto_list): (JSC::Interpreter::cti_op_get_by_id_proto_list_full): (JSC::Interpreter::cti_op_get_by_id_proto_fail): (JSC::Interpreter::cti_op_get_by_id_array_fail): (JSC::Interpreter::cti_op_get_by_id_string_fail): (JSC::Interpreter::cti_op_instanceof): (JSC::Interpreter::cti_op_del_by_id): (JSC::Interpreter::cti_op_mul): (JSC::Interpreter::cti_op_call_NotJSFunction): (JSC::Interpreter::cti_op_resolve): (JSC::Interpreter::cti_op_construct_NotJSConstruct): (JSC::Interpreter::cti_op_get_by_val): (JSC::Interpreter::cti_op_resolve_func): (JSC::Interpreter::cti_op_sub): (JSC::Interpreter::cti_op_put_by_val): (JSC::Interpreter::cti_op_put_by_val_array): (JSC::Interpreter::cti_op_lesseq): (JSC::Interpreter::cti_op_loop_if_true): (JSC::Interpreter::cti_op_negate): (JSC::Interpreter::cti_op_resolve_base): (JSC::Interpreter::cti_op_resolve_skip): (JSC::Interpreter::cti_op_resolve_global): (JSC::Interpreter::cti_op_div): (JSC::Interpreter::cti_op_pre_dec): (JSC::Interpreter::cti_op_jless): (JSC::Interpreter::cti_op_not): (JSC::Interpreter::cti_op_jtrue): (JSC::Interpreter::cti_op_post_inc): (JSC::Interpreter::cti_op_eq): (JSC::Interpreter::cti_op_lshift): (JSC::Interpreter::cti_op_bitand): (JSC::Interpreter::cti_op_rshift): (JSC::Interpreter::cti_op_bitnot): (JSC::Interpreter::cti_op_resolve_with_base): (JSC::Interpreter::cti_op_mod): (JSC::Interpreter::cti_op_less): (JSC::Interpreter::cti_op_neq): (JSC::Interpreter::cti_op_post_dec): (JSC::Interpreter::cti_op_urshift): (JSC::Interpreter::cti_op_bitxor): (JSC::Interpreter::cti_op_bitor): (JSC::Interpreter::cti_op_call_eval): (JSC::Interpreter::cti_op_throw): (JSC::Interpreter::cti_op_next_pname): (JSC::Interpreter::cti_op_typeof): (JSC::Interpreter::cti_op_is_undefined): (JSC::Interpreter::cti_op_is_boolean): (JSC::Interpreter::cti_op_is_number): (JSC::Interpreter::cti_op_is_string): (JSC::Interpreter::cti_op_is_object): (JSC::Interpreter::cti_op_is_function): (JSC::Interpreter::cti_op_stricteq): (JSC::Interpreter::cti_op_nstricteq): (JSC::Interpreter::cti_op_to_jsnumber): (JSC::Interpreter::cti_op_in): (JSC::Interpreter::cti_op_switch_imm): (JSC::Interpreter::cti_op_switch_char): (JSC::Interpreter::cti_op_switch_string): (JSC::Interpreter::cti_op_del_by_val): (JSC::Interpreter::cti_op_new_error): (JSC::Interpreter::cti_vm_throw):
  • interpreter/Interpreter.h: (JSC::Interpreter::isJSArray): (JSC::Interpreter::isJSString):
  • interpreter/Register.h: (JSC::Register::): (JSC::Register::Register): (JSC::Register::jsValue): (JSC::Register::getJSValue):
  • jit/JIT.cpp: (JSC::): (JSC::JIT::compileOpStrictEq): (JSC::JIT::privateCompileMainPass): (JSC::JIT::privateCompileSlowCases):
  • jit/JIT.h: (JSC::): (JSC::JIT::execute):
  • jit/JITArithmetic.cpp: (JSC::JIT::compileFastArith_op_rshift): (JSC::JIT::compileFastArithSlow_op_rshift):
  • jit/JITCall.cpp: (JSC::JIT::unlinkCall): (JSC::JIT::compileOpCallInitializeCallFrame): (JSC::JIT::compileOpCall):
  • jit/JITInlineMethods.h: (JSC::JIT::emitGetVirtualRegister): (JSC::JIT::getConstantOperand): (JSC::JIT::isOperandConstant31BitImmediateInt): (JSC::JIT::emitPutJITStubArgFromVirtualRegister): (JSC::JIT::emitInitRegister):
  • jit/JITPropertyAccess.cpp: (JSC::resizePropertyStorage): (JSC::JIT::privateCompilePutByIdTransition): (JSC::JIT::patchGetByIdSelf): (JSC::JIT::patchPutByIdReplace): (JSC::JIT::privateCompileGetByIdSelf): (JSC::JIT::privateCompileGetByIdProto): (JSC::JIT::privateCompileGetByIdSelfList): (JSC::JIT::privateCompileGetByIdProtoList): (JSC::JIT::privateCompileGetByIdChainList): (JSC::JIT::privateCompileGetByIdChain): (JSC::JIT::privateCompilePutByIdReplace):
  • jsc.cpp: (functionPrint): (functionDebug): (functionGC): (functionVersion): (functionRun): (functionLoad): (functionReadline): (functionQuit):
  • parser/Nodes.cpp: (JSC::NullNode::emitBytecode): (JSC::ArrayNode::emitBytecode): (JSC::FunctionCallValueNode::emitBytecode): (JSC::FunctionCallResolveNode::emitBytecode): (JSC::VoidNode::emitBytecode): (JSC::ConstDeclNode::emitCodeSingle): (JSC::ReturnNode::emitBytecode): (JSC::processClauseList): (JSC::EvalNode::emitBytecode): (JSC::FunctionBodyNode::emitBytecode): (JSC::ProgramNode::emitBytecode):
  • profiler/ProfileGenerator.cpp: (JSC::ProfileGenerator::addParentForConsoleStart):
  • profiler/Profiler.cpp: (JSC::Profiler::willExecute): (JSC::Profiler::didExecute): (JSC::Profiler::createCallIdentifier):
  • profiler/Profiler.h:
  • runtime/ArgList.cpp: (JSC::ArgList::slowAppend):
  • runtime/ArgList.h: (JSC::ArgList::at): (JSC::ArgList::append):
  • runtime/Arguments.cpp: (JSC::Arguments::put):
  • runtime/Arguments.h: (JSC::Arguments::createStructure): (JSC::asArguments):
  • runtime/ArrayConstructor.cpp: (JSC::callArrayConstructor):
  • runtime/ArrayPrototype.cpp: (JSC::getProperty): (JSC::putProperty): (JSC::arrayProtoFuncToString): (JSC::arrayProtoFuncToLocaleString): (JSC::arrayProtoFuncJoin): (JSC::arrayProtoFuncConcat): (JSC::arrayProtoFuncPop): (JSC::arrayProtoFuncPush): (JSC::arrayProtoFuncReverse): (JSC::arrayProtoFuncShift): (JSC::arrayProtoFuncSlice): (JSC::arrayProtoFuncSort): (JSC::arrayProtoFuncSplice): (JSC::arrayProtoFuncUnShift): (JSC::arrayProtoFuncFilter): (JSC::arrayProtoFuncMap): (JSC::arrayProtoFuncEvery): (JSC::arrayProtoFuncForEach): (JSC::arrayProtoFuncSome): (JSC::arrayProtoFuncIndexOf): (JSC::arrayProtoFuncLastIndexOf):
  • runtime/BooleanConstructor.cpp: (JSC::callBooleanConstructor): (JSC::constructBooleanFromImmediateBoolean):
  • runtime/BooleanConstructor.h:
  • runtime/BooleanObject.h: (JSC::asBooleanObject):
  • runtime/BooleanPrototype.cpp: (JSC::booleanProtoFuncToString): (JSC::booleanProtoFuncValueOf):
  • runtime/CallData.cpp: (JSC::call):
  • runtime/CallData.h:
  • runtime/Collector.cpp: (JSC::Heap::protect): (JSC::Heap::unprotect): (JSC::Heap::heap): (JSC::Heap::collect):
  • runtime/Collector.h:
  • runtime/Completion.cpp: (JSC::evaluate):
  • runtime/Completion.h: (JSC::Completion::Completion): (JSC::Completion::value): (JSC::Completion::setValue): (JSC::Completion::isValueCompletion):
  • runtime/ConstructData.cpp: (JSC::construct):
  • runtime/ConstructData.h:
  • runtime/DateConstructor.cpp: (JSC::constructDate): (JSC::callDate): (JSC::dateParse): (JSC::dateNow): (JSC::dateUTC):
  • runtime/DateInstance.h: (JSC::asDateInstance):
  • runtime/DatePrototype.cpp: (JSC::dateProtoFuncToString): (JSC::dateProtoFuncToUTCString): (JSC::dateProtoFuncToDateString): (JSC::dateProtoFuncToTimeString): (JSC::dateProtoFuncToLocaleString): (JSC::dateProtoFuncToLocaleDateString): (JSC::dateProtoFuncToLocaleTimeString): (JSC::dateProtoFuncValueOf): (JSC::dateProtoFuncGetTime): (JSC::dateProtoFuncGetFullYear): (JSC::dateProtoFuncGetUTCFullYear): (JSC::dateProtoFuncToGMTString): (JSC::dateProtoFuncGetMonth): (JSC::dateProtoFuncGetUTCMonth): (JSC::dateProtoFuncGetDate): (JSC::dateProtoFuncGetUTCDate): (JSC::dateProtoFuncGetDay): (JSC::dateProtoFuncGetUTCDay): (JSC::dateProtoFuncGetHours): (JSC::dateProtoFuncGetUTCHours): (JSC::dateProtoFuncGetMinutes): (JSC::dateProtoFuncGetUTCMinutes): (JSC::dateProtoFuncGetSeconds): (JSC::dateProtoFuncGetUTCSeconds): (JSC::dateProtoFuncGetMilliSeconds): (JSC::dateProtoFuncGetUTCMilliseconds): (JSC::dateProtoFuncGetTimezoneOffset): (JSC::dateProtoFuncSetTime): (JSC::setNewValueFromTimeArgs): (JSC::setNewValueFromDateArgs): (JSC::dateProtoFuncSetMilliSeconds): (JSC::dateProtoFuncSetUTCMilliseconds): (JSC::dateProtoFuncSetSeconds): (JSC::dateProtoFuncSetUTCSeconds): (JSC::dateProtoFuncSetMinutes): (JSC::dateProtoFuncSetUTCMinutes): (JSC::dateProtoFuncSetHours): (JSC::dateProtoFuncSetUTCHours): (JSC::dateProtoFuncSetDate): (JSC::dateProtoFuncSetUTCDate): (JSC::dateProtoFuncSetMonth): (JSC::dateProtoFuncSetUTCMonth): (JSC::dateProtoFuncSetFullYear): (JSC::dateProtoFuncSetUTCFullYear): (JSC::dateProtoFuncSetYear): (JSC::dateProtoFuncGetYear):
  • runtime/DatePrototype.h: (JSC::DatePrototype::createStructure):
  • runtime/ErrorConstructor.cpp: (JSC::callErrorConstructor):
  • runtime/ErrorPrototype.cpp: (JSC::errorProtoFuncToString):
  • runtime/ExceptionHelpers.cpp: (JSC::createInterruptedExecutionException): (JSC::createError): (JSC::createStackOverflowError): (JSC::createUndefinedVariableError): (JSC::createErrorMessage): (JSC::createInvalidParamError): (JSC::createNotAConstructorError): (JSC::createNotAFunctionError):
  • runtime/ExceptionHelpers.h:
  • runtime/FunctionConstructor.cpp: (JSC::callFunctionConstructor):
  • runtime/FunctionPrototype.cpp: (JSC::callFunctionPrototype): (JSC::functionProtoFuncToString): (JSC::functionProtoFuncApply): (JSC::functionProtoFuncCall):
  • runtime/FunctionPrototype.h: (JSC::FunctionPrototype::createStructure):
  • runtime/GetterSetter.cpp: (JSC::GetterSetter::toPrimitive): (JSC::GetterSetter::getPrimitiveNumber):
  • runtime/GetterSetter.h: (JSC::asGetterSetter):
  • runtime/InitializeThreading.cpp:
  • runtime/InternalFunction.h: (JSC::InternalFunction::createStructure): (JSC::asInternalFunction):
  • runtime/JSActivation.cpp: (JSC::JSActivation::getOwnPropertySlot): (JSC::JSActivation::put): (JSC::JSActivation::putWithAttributes): (JSC::JSActivation::argumentsGetter):
  • runtime/JSActivation.h: (JSC::JSActivation::createStructure): (JSC::asActivation):
  • runtime/JSArray.cpp: (JSC::storageSize): (JSC::JSArray::JSArray): (JSC::JSArray::getOwnPropertySlot): (JSC::JSArray::put): (JSC::JSArray::putSlowCase): (JSC::JSArray::deleteProperty): (JSC::JSArray::getPropertyNames): (JSC::JSArray::setLength): (JSC::JSArray::pop): (JSC::JSArray::push): (JSC::JSArray::mark): (JSC::JSArray::sort): (JSC::JSArray::compactForSorting): (JSC::JSArray::checkConsistency): (JSC::constructArray):
  • runtime/JSArray.h: (JSC::JSArray::getIndex): (JSC::JSArray::setIndex): (JSC::JSArray::createStructure): (JSC::asArray):
  • runtime/JSCell.cpp: (JSC::JSCell::put): (JSC::JSCell::getJSNumber):
  • runtime/JSCell.h: (JSC::asCell): (JSC::JSValue::asCell): (JSC::JSValue::toPrimitive): (JSC::JSValue::getPrimitiveNumber): (JSC::JSValue::getJSNumber):
  • runtime/JSFunction.cpp: (JSC::JSFunction::call): (JSC::JSFunction::argumentsGetter): (JSC::JSFunction::callerGetter): (JSC::JSFunction::lengthGetter): (JSC::JSFunction::getOwnPropertySlot): (JSC::JSFunction::put): (JSC::JSFunction::construct):
  • runtime/JSFunction.h: (JSC::JSFunction::createStructure): (JSC::asFunction):
  • runtime/JSGlobalData.h:
  • runtime/JSGlobalObject.cpp: (JSC::markIfNeeded): (JSC::JSGlobalObject::put): (JSC::JSGlobalObject::putWithAttributes): (JSC::JSGlobalObject::reset): (JSC::JSGlobalObject::resetPrototype):
  • runtime/JSGlobalObject.h: (JSC::JSGlobalObject::createStructure): (JSC::JSGlobalObject::GlobalPropertyInfo::GlobalPropertyInfo): (JSC::asGlobalObject): (JSC::Structure::prototypeForLookup):
  • runtime/JSGlobalObjectFunctions.cpp: (JSC::encode): (JSC::decode): (JSC::globalFuncEval): (JSC::globalFuncParseInt): (JSC::globalFuncParseFloat): (JSC::globalFuncIsNaN): (JSC::globalFuncIsFinite): (JSC::globalFuncDecodeURI): (JSC::globalFuncDecodeURIComponent): (JSC::globalFuncEncodeURI): (JSC::globalFuncEncodeURIComponent): (JSC::globalFuncEscape): (JSC::globalFuncUnescape): (JSC::globalFuncJSCPrint):
  • runtime/JSGlobalObjectFunctions.h:
  • runtime/JSImmediate.cpp: (JSC::JSImmediate::toThisObject): (JSC::JSImmediate::toObject): (JSC::JSImmediate::prototype): (JSC::JSImmediate::toString):
  • runtime/JSImmediate.h: (JSC::JSImmediate::isImmediate): (JSC::JSImmediate::isNumber): (JSC::JSImmediate::isPositiveNumber): (JSC::JSImmediate::isBoolean): (JSC::JSImmediate::isUndefinedOrNull): (JSC::JSImmediate::isNegative): (JSC::JSImmediate::isEitherImmediate): (JSC::JSImmediate::isAnyImmediate): (JSC::JSImmediate::areBothImmediate): (JSC::JSImmediate::areBothImmediateNumbers): (JSC::JSImmediate::andImmediateNumbers): (JSC::JSImmediate::xorImmediateNumbers): (JSC::JSImmediate::orImmediateNumbers): (JSC::JSImmediate::rightShiftImmediateNumbers): (JSC::JSImmediate::canDoFastAdditiveOperations): (JSC::JSImmediate::addImmediateNumbers): (JSC::JSImmediate::subImmediateNumbers): (JSC::JSImmediate::incImmediateNumber): (JSC::JSImmediate::decImmediateNumber): (JSC::JSImmediate::makeValue): (JSC::JSImmediate::makeInt): (JSC::JSImmediate::makeBool): (JSC::JSImmediate::makeUndefined): (JSC::JSImmediate::makeNull): (JSC::JSImmediate::intValue): (JSC::JSImmediate::uintValue): (JSC::JSImmediate::boolValue): (JSC::JSImmediate::rawValue): (JSC::JSImmediate::trueImmediate): (JSC::JSImmediate::falseImmediate): (JSC::JSImmediate::undefinedImmediate): (JSC::JSImmediate::nullImmediate): (JSC::JSImmediate::zeroImmediate): (JSC::JSImmediate::oneImmediate): (JSC::JSImmediate::impossibleValue): (JSC::JSImmediate::toBoolean): (JSC::JSImmediate::getTruncatedUInt32): (JSC::JSImmediate::from): (JSC::JSImmediate::getTruncatedInt32): (JSC::JSImmediate::toDouble): (JSC::JSImmediate::getUInt32): (JSC::jsNull): (JSC::jsBoolean): (JSC::jsUndefined): (JSC::JSValue::isUndefined): (JSC::JSValue::isNull): (JSC::JSValue::isUndefinedOrNull): (JSC::JSValue::isBoolean): (JSC::JSValue::getBoolean): (JSC::JSValue::toInt32): (JSC::JSValue::toUInt32): (JSC::toInt32): (JSC::toUInt32):
  • runtime/JSNotAnObject.cpp: (JSC::JSNotAnObject::toPrimitive): (JSC::JSNotAnObject::getPrimitiveNumber): (JSC::JSNotAnObject::put):
  • runtime/JSNotAnObject.h: (JSC::JSNotAnObject::createStructure):
  • runtime/JSNumberCell.cpp: (JSC::JSNumberCell::toPrimitive): (JSC::JSNumberCell::getPrimitiveNumber): (JSC::JSNumberCell::getJSNumber): (JSC::jsNumberCell): (JSC::jsNaN):
  • runtime/JSNumberCell.h: (JSC::JSNumberCell::createStructure): (JSC::asNumberCell): (JSC::jsNumber): (JSC::JSValue::toJSNumber):
  • runtime/JSObject.cpp: (JSC::JSObject::mark): (JSC::JSObject::put): (JSC::JSObject::putWithAttributes): (JSC::callDefaultValueFunction): (JSC::JSObject::getPrimitiveNumber): (JSC::JSObject::defaultValue): (JSC::JSObject::defineGetter): (JSC::JSObject::defineSetter): (JSC::JSObject::lookupGetter): (JSC::JSObject::lookupSetter): (JSC::JSObject::hasInstance): (JSC::JSObject::toNumber): (JSC::JSObject::toString): (JSC::JSObject::fillGetterPropertySlot):
  • runtime/JSObject.h: (JSC::JSObject::getDirect): (JSC::JSObject::getDirectLocation): (JSC::JSObject::offsetForLocation): (JSC::JSObject::locationForOffset): (JSC::JSObject::getDirectOffset): (JSC::JSObject::putDirectOffset): (JSC::JSObject::createStructure): (JSC::asObject): (JSC::JSObject::prototype): (JSC::JSObject::setPrototype): (JSC::JSObject::inlineGetOwnPropertySlot): (JSC::JSObject::getOwnPropertySlotForWrite): (JSC::JSObject::getPropertySlot): (JSC::JSObject::get): (JSC::JSObject::putDirect): (JSC::JSObject::putDirectWithoutTransition): (JSC::JSObject::toPrimitive): (JSC::JSValue::get): (JSC::JSValue::put): (JSC::JSObject::allocatePropertyStorageInline):
  • runtime/JSPropertyNameIterator.cpp: (JSC::JSPropertyNameIterator::toPrimitive): (JSC::JSPropertyNameIterator::getPrimitiveNumber):
  • runtime/JSPropertyNameIterator.h: (JSC::JSPropertyNameIterator::create): (JSC::JSPropertyNameIterator::next):
  • runtime/JSStaticScopeObject.cpp: (JSC::JSStaticScopeObject::put): (JSC::JSStaticScopeObject::putWithAttributes):
  • runtime/JSStaticScopeObject.h: (JSC::JSStaticScopeObject::JSStaticScopeObject): (JSC::JSStaticScopeObject::createStructure):
  • runtime/JSString.cpp: (JSC::JSString::toPrimitive): (JSC::JSString::getPrimitiveNumber): (JSC::JSString::getOwnPropertySlot):
  • runtime/JSString.h: (JSC::JSString::createStructure): (JSC::asString):
  • runtime/JSValue.h: (JSC::JSValuePtr::makeImmediate): (JSC::JSValuePtr::immediateValue): (JSC::JSValuePtr::JSValuePtr): (JSC::JSValuePtr::operator->): (JSC::JSValuePtr::hasValue): (JSC::JSValuePtr::operator==): (JSC::JSValuePtr::operator!=): (JSC::JSValuePtr::encode): (JSC::JSValuePtr::decode): (JSC::JSValue::asValue): (JSC::noValue): (JSC::operator==): (JSC::operator!=):
  • runtime/JSVariableObject.h: (JSC::JSVariableObject::symbolTablePut): (JSC::JSVariableObject::symbolTablePutWithAttributes):
  • runtime/JSWrapperObject.cpp: (JSC::JSWrapperObject::mark):
  • runtime/JSWrapperObject.h: (JSC::JSWrapperObject::internalValue): (JSC::JSWrapperObject::setInternalValue):
  • runtime/Lookup.cpp: (JSC::setUpStaticFunctionSlot):
  • runtime/Lookup.h: (JSC::lookupPut):
  • runtime/MathObject.cpp: (JSC::mathProtoFuncAbs): (JSC::mathProtoFuncACos): (JSC::mathProtoFuncASin): (JSC::mathProtoFuncATan): (JSC::mathProtoFuncATan2): (JSC::mathProtoFuncCeil): (JSC::mathProtoFuncCos): (JSC::mathProtoFuncExp): (JSC::mathProtoFuncFloor): (JSC::mathProtoFuncLog): (JSC::mathProtoFuncMax): (JSC::mathProtoFuncMin): (JSC::mathProtoFuncPow): (JSC::mathProtoFuncRandom): (JSC::mathProtoFuncRound): (JSC::mathProtoFuncSin): (JSC::mathProtoFuncSqrt): (JSC::mathProtoFuncTan):
  • runtime/MathObject.h: (JSC::MathObject::createStructure):
  • runtime/NativeErrorConstructor.cpp: (JSC::callNativeErrorConstructor):
  • runtime/NumberConstructor.cpp: (JSC::numberConstructorNaNValue): (JSC::numberConstructorNegInfinity): (JSC::numberConstructorPosInfinity): (JSC::numberConstructorMaxValue): (JSC::numberConstructorMinValue): (JSC::callNumberConstructor):
  • runtime/NumberConstructor.h: (JSC::NumberConstructor::createStructure):
  • runtime/NumberObject.cpp: (JSC::NumberObject::getJSNumber): (JSC::constructNumberFromImmediateNumber):
  • runtime/NumberObject.h:
  • runtime/NumberPrototype.cpp: (JSC::numberProtoFuncToString): (JSC::numberProtoFuncToLocaleString): (JSC::numberProtoFuncValueOf): (JSC::numberProtoFuncToFixed): (JSC::numberProtoFuncToExponential): (JSC::numberProtoFuncToPrecision):
  • runtime/ObjectConstructor.cpp: (JSC::constructObject): (JSC::callObjectConstructor):
  • runtime/ObjectPrototype.cpp: (JSC::objectProtoFuncValueOf): (JSC::objectProtoFuncHasOwnProperty): (JSC::objectProtoFuncIsPrototypeOf): (JSC::objectProtoFuncDefineGetter): (JSC::objectProtoFuncDefineSetter): (JSC::objectProtoFuncLookupGetter): (JSC::objectProtoFuncLookupSetter): (JSC::objectProtoFuncPropertyIsEnumerable): (JSC::objectProtoFuncToLocaleString): (JSC::objectProtoFuncToString):
  • runtime/ObjectPrototype.h:
  • runtime/Operations.cpp: (JSC::equal): (JSC::equalSlowCase): (JSC::strictEqual): (JSC::strictEqualSlowCase): (JSC::throwOutOfMemoryError):
  • runtime/Operations.h: (JSC::equalSlowCaseInline): (JSC::strictEqualSlowCaseInline):
  • runtime/PropertySlot.cpp: (JSC::PropertySlot::functionGetter):
  • runtime/PropertySlot.h: (JSC::PropertySlot::PropertySlot): (JSC::PropertySlot::getValue): (JSC::PropertySlot::putValue): (JSC::PropertySlot::setValueSlot): (JSC::PropertySlot::setValue): (JSC::PropertySlot::setCustom): (JSC::PropertySlot::setCustomIndex): (JSC::PropertySlot::slotBase): (JSC::PropertySlot::setBase): (JSC::PropertySlot::):
  • runtime/Protect.h: (JSC::gcProtect): (JSC::gcUnprotect): (JSC::ProtectedPtr::ProtectedPtr): (JSC::ProtectedPtr::operator JSValuePtr): (JSC::ProtectedJSValuePtr::ProtectedJSValuePtr): (JSC::ProtectedJSValuePtr::get): (JSC::ProtectedJSValuePtr::operator JSValuePtr): (JSC::ProtectedJSValuePtr::operator->): (JSC::::ProtectedPtr): (JSC::::~ProtectedPtr): (JSC::::operator): (JSC::ProtectedJSValuePtr::~ProtectedJSValuePtr): (JSC::ProtectedJSValuePtr::operator=): (JSC::operator==): (JSC::operator!=):
  • runtime/RegExpConstructor.cpp: (JSC::RegExpConstructor::getBackref): (JSC::RegExpConstructor::getLastParen): (JSC::RegExpConstructor::getLeftContext): (JSC::RegExpConstructor::getRightContext): (JSC::regExpConstructorDollar1): (JSC::regExpConstructorDollar2): (JSC::regExpConstructorDollar3): (JSC::regExpConstructorDollar4): (JSC::regExpConstructorDollar5): (JSC::regExpConstructorDollar6): (JSC::regExpConstructorDollar7): (JSC::regExpConstructorDollar8): (JSC::regExpConstructorDollar9): (JSC::regExpConstructorInput): (JSC::regExpConstructorMultiline): (JSC::regExpConstructorLastMatch): (JSC::regExpConstructorLastParen): (JSC::regExpConstructorLeftContext): (JSC::regExpConstructorRightContext): (JSC::RegExpConstructor::put): (JSC::setRegExpConstructorInput): (JSC::setRegExpConstructorMultiline): (JSC::constructRegExp): (JSC::callRegExpConstructor):
  • runtime/RegExpConstructor.h: (JSC::RegExpConstructor::createStructure): (JSC::asRegExpConstructor):
  • runtime/RegExpMatchesArray.h: (JSC::RegExpMatchesArray::put):
  • runtime/RegExpObject.cpp: (JSC::regExpObjectGlobal): (JSC::regExpObjectIgnoreCase): (JSC::regExpObjectMultiline): (JSC::regExpObjectSource): (JSC::regExpObjectLastIndex): (JSC::RegExpObject::put): (JSC::setRegExpObjectLastIndex): (JSC::RegExpObject::test): (JSC::RegExpObject::exec): (JSC::callRegExpObject):
  • runtime/RegExpObject.h: (JSC::RegExpObject::createStructure): (JSC::asRegExpObject):
  • runtime/RegExpPrototype.cpp: (JSC::regExpProtoFuncTest): (JSC::regExpProtoFuncExec): (JSC::regExpProtoFuncCompile): (JSC::regExpProtoFuncToString):
  • runtime/StringConstructor.cpp: (JSC::stringFromCharCodeSlowCase): (JSC::stringFromCharCode): (JSC::callStringConstructor):
  • runtime/StringObject.cpp: (JSC::StringObject::put):
  • runtime/StringObject.h: (JSC::StringObject::createStructure): (JSC::asStringObject):
  • runtime/StringObjectThatMasqueradesAsUndefined.h: (JSC::StringObjectThatMasqueradesAsUndefined::createStructure):
  • runtime/StringPrototype.cpp: (JSC::stringProtoFuncReplace): (JSC::stringProtoFuncToString): (JSC::stringProtoFuncCharAt): (JSC::stringProtoFuncCharCodeAt): (JSC::stringProtoFuncConcat): (JSC::stringProtoFuncIndexOf): (JSC::stringProtoFuncLastIndexOf): (JSC::stringProtoFuncMatch): (JSC::stringProtoFuncSearch): (JSC::stringProtoFuncSlice): (JSC::stringProtoFuncSplit): (JSC::stringProtoFuncSubstr): (JSC::stringProtoFuncSubstring): (JSC::stringProtoFuncToLowerCase): (JSC::stringProtoFuncToUpperCase): (JSC::stringProtoFuncLocaleCompare): (JSC::stringProtoFuncBig): (JSC::stringProtoFuncSmall): (JSC::stringProtoFuncBlink): (JSC::stringProtoFuncBold): (JSC::stringProtoFuncFixed): (JSC::stringProtoFuncItalics): (JSC::stringProtoFuncStrike): (JSC::stringProtoFuncSub): (JSC::stringProtoFuncSup): (JSC::stringProtoFuncFontcolor): (JSC::stringProtoFuncFontsize): (JSC::stringProtoFuncAnchor): (JSC::stringProtoFuncLink):
  • runtime/Structure.cpp: (JSC::Structure::Structure): (JSC::Structure::changePrototypeTransition): (JSC::Structure::createCachedPrototypeChain):
  • runtime/Structure.h: (JSC::Structure::create): (JSC::Structure::setPrototypeWithoutTransition): (JSC::Structure::storedPrototype):

JavaScriptGlue:

2009-01-05 Gavin Barraclough <baraclough@apple.com>

Rubber Stamped by Oliver Hunt.

Replace all uses of JSValue* with new wrapper class, JSValuePtr.
See JavaScriptCore/ChangeLog for more detailed description.

  • JSObject.cpp: (nativeCallFunction):
  • JSUtils.cpp: (KJSValueToJSObject): (JSObjectKJSValue): (KJSValueToCFTypeInternal): (KJSValueToCFType):
  • JSUtils.h:
  • JSValueWrapper.cpp: (JSValueWrapper::JSValueWrapper): (JSValueWrapper::GetValue): (JSValueWrapper::JSObjectCopyProperty): (JSValueWrapper::JSObjectSetProperty): (JSValueWrapper::JSObjectCallFunction):
  • JSValueWrapper.h:
  • UserObjectImp.cpp: (UserObjectImp::callAsFunction): (UserObjectImp::userObjectGetter): (UserObjectImp::getOwnPropertySlot): (UserObjectImp::put): (UserObjectImp::toPrimitive):
  • UserObjectImp.h: (UserObjectImp::createStructure):

WebCore:

2009-01-05 Gavin Barraclough <baraclough@apple.com>

Rubber Stamped by Oliver Hunt.

Replace all uses of JSValue* with new wrapper class, JSValuePtr.
See JavaScriptCore/ChangeLog for more detailed description.

  • bindings/js/JSAttrCustom.cpp: (WebCore::JSAttr::setValue):
  • bindings/js/JSCSSRuleCustom.cpp: (WebCore::toJS):
  • bindings/js/JSCSSStyleDeclarationCustom.cpp: (WebCore::JSCSSStyleDeclaration::nameGetter): (WebCore::JSCSSStyleDeclaration::customPut):
  • bindings/js/JSCSSValueCustom.cpp: (WebCore::toJS):
  • bindings/js/JSCanvasPixelArrayCustom.h: (WebCore::JSCanvasPixelArray::getByIndex): (WebCore::JSCanvasPixelArray::indexSetter):
  • bindings/js/JSCanvasRenderingContext2DCustom.cpp: (WebCore::toJS): (WebCore::toHTMLCanvasStyle): (WebCore::JSCanvasRenderingContext2D::strokeStyle): (WebCore::JSCanvasRenderingContext2D::setStrokeStyle): (WebCore::JSCanvasRenderingContext2D::fillStyle): (WebCore::JSCanvasRenderingContext2D::setFillStyle): (WebCore::JSCanvasRenderingContext2D::setFillColor): (WebCore::JSCanvasRenderingContext2D::setStrokeColor): (WebCore::JSCanvasRenderingContext2D::strokeRect): (WebCore::JSCanvasRenderingContext2D::drawImage): (WebCore::JSCanvasRenderingContext2D::drawImageFromRect): (WebCore::JSCanvasRenderingContext2D::setShadow): (WebCore::JSCanvasRenderingContext2D::createPattern): (WebCore::JSCanvasRenderingContext2D::putImageData): (WebCore::JSCanvasRenderingContext2D::fillText): (WebCore::JSCanvasRenderingContext2D::strokeText):
  • bindings/js/JSClipboardCustom.cpp: (WebCore::JSClipboard::types): (WebCore::JSClipboard::clearData): (WebCore::JSClipboard::getData): (WebCore::JSClipboard::setData): (WebCore::JSClipboard::setDragImage):
  • bindings/js/JSConsoleCustom.cpp: (WebCore::JSConsole::profiles):
  • 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): (WebCore::toVoidCallback):
  • bindings/js/JSCustomVoidCallback.h:
  • bindings/js/JSCustomXPathNSResolver.cpp: (WebCore::JSCustomXPathNSResolver::create): (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
  • bindings/js/JSCustomXPathNSResolver.h:
  • bindings/js/JSDOMApplicationCacheCustom.cpp: (WebCore::JSDOMApplicationCache::add): (WebCore::JSDOMApplicationCache::remove): (WebCore::JSDOMApplicationCache::addEventListener): (WebCore::JSDOMApplicationCache::removeEventListener):
  • bindings/js/JSDOMBinding.cpp: (WebCore::jsStringOrNull): (WebCore::jsOwnedStringOrNull): (WebCore::jsStringOrUndefined): (WebCore::jsStringOrFalse): (WebCore::valueToStringWithNullCheck): (WebCore::valueToStringWithUndefinedOrNullCheck): (WebCore::reportException): (WebCore::reportCurrentException): (WebCore::setDOMException): (WebCore::objectToStringFunctionGetter):
  • bindings/js/JSDOMBinding.h: (WebCore::getDOMObjectWrapper): (WebCore::getDOMNodeWrapper): (WebCore::toJS):
  • bindings/js/JSDOMGlobalObject.cpp: (WebCore::JSDOMGlobalObject::findJSEventListener): (WebCore::JSDOMGlobalObject::findOrCreateJSEventListener): (WebCore::JSDOMGlobalObject::findJSUnprotectedEventListener): (WebCore::JSDOMGlobalObject::findOrCreateJSUnprotectedEventListener):
  • bindings/js/JSDOMGlobalObject.h:
  • bindings/js/JSDOMWindowBase.cpp: (WebCore::createWindow): (WebCore::showModalDialog): (jsDOMWindowBaseCrypto): (jsDOMWindowBaseEvent): (jsDOMWindowBaseImage): (jsDOMWindowBaseMessageChannel): (jsDOMWindowBaseOption): (jsDOMWindowBaseXMLHttpRequest): (jsDOMWindowBaseAudio): (jsDOMWindowBaseWorker): (jsDOMWindowBaseXSLTProcessor): (setJSDOMWindowBaseEvent): (setJSDOMWindowBaseAudio): (setJSDOMWindowBaseImage): (setJSDOMWindowBaseMessageChannel): (setJSDOMWindowBaseOption): (setJSDOMWindowBaseWorker): (setJSDOMWindowBaseXMLHttpRequest): (setJSDOMWindowBaseXSLTProcessor): (WebCore::JSDOMWindowBase::childFrameGetter): (WebCore::JSDOMWindowBase::indexGetter): (WebCore::JSDOMWindowBase::namedItemGetter): (WebCore::JSDOMWindowBase::getOwnPropertySlot): (WebCore::JSDOMWindowBase::put): (WebCore::JSDOMWindowBase::clear): (windowProtoFuncOpen): (windowProtoFuncShowModalDialog): (windowProtoFuncNotImplemented): (WebCore::JSDOMWindowBase::setReturnValueSlot): (WebCore::JSDOMWindowBase::installTimeout): (WebCore::toJS): (WebCore::toJSDOMWindow):
  • bindings/js/JSDOMWindowBase.h:
  • bindings/js/JSDOMWindowCustom.cpp: (WebCore::JSDOMWindow::lookupGetter): (WebCore::JSDOMWindow::lookupSetter): (WebCore::JSDOMWindow::setLocation): (WebCore::JSDOMWindow::postMessage): (WebCore::setTimeoutOrInterval): (WebCore::JSDOMWindow::setTimeout): (WebCore::JSDOMWindow::clearTimeout): (WebCore::JSDOMWindow::setInterval): (WebCore::JSDOMWindow::clearInterval): (WebCore::JSDOMWindow::atob): (WebCore::JSDOMWindow::btoa): (WebCore::JSDOMWindow::addEventListener): (WebCore::JSDOMWindow::removeEventListener): (WebCore::toDOMWindow): (WebCore::nonCachingStaticCloseFunctionGetter): (WebCore::nonCachingStaticBlurFunctionGetter): (WebCore::nonCachingStaticFocusFunctionGetter): (WebCore::nonCachingStaticPostMessageFunctionGetter):
  • bindings/js/JSDOMWindowCustom.h: (WebCore::JSDOMWindow::customPut):
  • bindings/js/JSDOMWindowShell.cpp: (WebCore::JSDOMWindowShell::put): (WebCore::JSDOMWindowShell::putWithAttributes): (WebCore::JSDOMWindowShell::lookupGetter): (WebCore::JSDOMWindowShell::lookupSetter): (WebCore::toJS):
  • bindings/js/JSDOMWindowShell.h: (WebCore::JSDOMWindowShell::createStructure):
  • bindings/js/JSDatabaseCustom.cpp: (WebCore::JSDatabase::changeVersion): (WebCore::JSDatabase::transaction):
  • bindings/js/JSDocumentCustom.cpp: (WebCore::JSDocument::location): (WebCore::JSDocument::setLocation): (WebCore::toJS):
  • bindings/js/JSElementCustom.cpp: (WebCore::JSElement::setAttribute): (WebCore::JSElement::setAttributeNode): (WebCore::JSElement::setAttributeNS): (WebCore::JSElement::setAttributeNodeNS): (WebCore::toJSNewlyCreated):
  • bindings/js/JSEventCustom.cpp: (WebCore::JSEvent::clipboardData): (WebCore::toJS):
  • bindings/js/JSEventListener.cpp: (WebCore::JSAbstractEventListener::handleEvent): (WebCore::eventParameterName): (WebCore::JSLazyEventListener::parseCode):
  • bindings/js/JSEventTarget.cpp: (WebCore::toJS):
  • bindings/js/JSEventTarget.h:
  • bindings/js/JSEventTargetBase.h:
  • bindings/js/JSEventTargetNodeCustom.cpp: (WebCore::JSEventTargetNode::addEventListener): (WebCore::JSEventTargetNode::removeEventListener):
  • bindings/js/JSGeolocationCustom.cpp: (WebCore::createPositionOptions): (WebCore::JSGeolocation::getCurrentPosition): (WebCore::JSGeolocation::watchPosition):
  • bindings/js/JSHTMLAllCollection.h: (WebCore::JSHTMLAllCollection::createStructure):
  • bindings/js/JSHTMLAppletElementCustom.cpp: (WebCore::JSHTMLAppletElement::customPut): (WebCore::JSHTMLAppletElement::nameGetter):
  • bindings/js/JSHTMLCollectionCustom.cpp: (WebCore::getNamedItems): (WebCore::callHTMLCollection): (WebCore::JSHTMLCollection::nameGetter): (WebCore::JSHTMLCollection::item): (WebCore::JSHTMLCollection::namedItem): (WebCore::toJS):
  • bindings/js/JSHTMLDocumentCustom.cpp: (WebCore::JSHTMLDocument::nameGetter): (WebCore::JSHTMLDocument::all): (WebCore::JSHTMLDocument::setAll): (WebCore::JSHTMLDocument::open): (WebCore::JSHTMLDocument::write): (WebCore::JSHTMLDocument::writeln):
  • bindings/js/JSHTMLEmbedElementCustom.cpp: (WebCore::JSHTMLEmbedElement::customPut): (WebCore::JSHTMLEmbedElement::nameGetter):
  • bindings/js/JSHTMLFormElementCustom.cpp: (WebCore::JSHTMLFormElement::nameGetter):
  • bindings/js/JSHTMLFrameElementCustom.cpp: (WebCore::JSHTMLFrameElement::setSrc): (WebCore::JSHTMLFrameElement::setLocation):
  • bindings/js/JSHTMLFrameSetElementCustom.cpp: (WebCore::JSHTMLFrameSetElement::nameGetter):
  • bindings/js/JSHTMLIFrameElementCustom.cpp: (WebCore::JSHTMLIFrameElement::setSrc):
  • bindings/js/JSHTMLInputElementCustom.cpp: (WebCore::JSHTMLInputElement::selectionStart): (WebCore::JSHTMLInputElement::selectionEnd):
  • bindings/js/JSHTMLObjectElementCustom.cpp: (WebCore::JSHTMLObjectElement::customPut): (WebCore::JSHTMLObjectElement::nameGetter):
  • bindings/js/JSHTMLOptionsCollectionCustom.cpp: (WebCore::JSHTMLOptionsCollection::length): (WebCore::JSHTMLOptionsCollection::setLength): (WebCore::JSHTMLOptionsCollection::indexSetter): (WebCore::JSHTMLOptionsCollection::add): (WebCore::JSHTMLOptionsCollection::remove):
  • bindings/js/JSHTMLSelectElementCustom.cpp: (WebCore::JSHTMLSelectElement::remove): (WebCore::selectIndexSetter): (WebCore::JSHTMLSelectElement::indexSetter):
  • bindings/js/JSHTMLSelectElementCustom.h:
  • bindings/js/JSHistoryCustom.cpp: (WebCore::nonCachingStaticBackFunctionGetter): (WebCore::nonCachingStaticForwardFunctionGetter): (WebCore::nonCachingStaticGoFunctionGetter): (WebCore::JSHistory::customPut):
  • bindings/js/JSImageDataCustom.cpp: (WebCore::toJS):
  • bindings/js/JSInspectedObjectWrapper.cpp: (WebCore::JSInspectedObjectWrapper::wrap): (WebCore::JSInspectedObjectWrapper::prepareIncomingValue):
  • bindings/js/JSInspectedObjectWrapper.h: (WebCore::JSInspectedObjectWrapper::wrapOutgoingValue):
  • bindings/js/JSInspectorCallbackWrapper.cpp: (WebCore::JSInspectorCallbackWrapper::wrap): (WebCore::JSInspectorCallbackWrapper::prepareIncomingValue):
  • bindings/js/JSInspectorCallbackWrapper.h: (WebCore::JSInspectorCallbackWrapper::wrapOutgoingValue):
  • bindings/js/JSJavaScriptCallFrameCustom.cpp: (WebCore::JSJavaScriptCallFrame::evaluate): (WebCore::JSJavaScriptCallFrame::thisObject): (WebCore::JSJavaScriptCallFrame::type): (WebCore::JSJavaScriptCallFrame::scopeChain):
  • bindings/js/JSLocationCustom.cpp: (WebCore::nonCachingStaticReplaceFunctionGetter): (WebCore::nonCachingStaticReloadFunctionGetter): (WebCore::nonCachingStaticAssignFunctionGetter): (WebCore::JSLocation::customPut): (WebCore::JSLocation::setHref): (WebCore::JSLocation::setProtocol): (WebCore::JSLocation::setHost): (WebCore::JSLocation::setHostname): (WebCore::JSLocation::setPort): (WebCore::JSLocation::setPathname): (WebCore::JSLocation::setSearch): (WebCore::JSLocation::setHash): (WebCore::JSLocation::replace): (WebCore::JSLocation::reload): (WebCore::JSLocation::assign): (WebCore::JSLocation::toString):
  • bindings/js/JSMessageChannelConstructor.h:
  • bindings/js/JSMessagePortCustom.cpp: (WebCore::JSMessagePort::startConversation): (WebCore::JSMessagePort::addEventListener): (WebCore::JSMessagePort::removeEventListener):
  • bindings/js/JSMimeTypeArrayCustom.cpp: (WebCore::JSMimeTypeArray::nameGetter):
  • bindings/js/JSNamedNodeMapCustom.cpp: (WebCore::JSNamedNodeMap::nameGetter):
  • bindings/js/JSNamedNodesCollection.cpp: (WebCore::JSNamedNodesCollection::lengthGetter): (WebCore::JSNamedNodesCollection::indexGetter):
  • bindings/js/JSNamedNodesCollection.h: (WebCore::JSNamedNodesCollection::createStructure):
  • bindings/js/JSNavigatorCustom.cpp: (WebCore::needsYouTubeQuirk): (WebCore::JSNavigator::appVersion):
  • bindings/js/JSNodeCustom.cpp: (WebCore::JSNode::insertBefore): (WebCore::JSNode::replaceChild): (WebCore::JSNode::removeChild): (WebCore::JSNode::appendChild): (WebCore::createWrapper): (WebCore::toJSNewlyCreated): (WebCore::toJS):
  • bindings/js/JSNodeFilterCondition.cpp: (WebCore::JSNodeFilterCondition::JSNodeFilterCondition): (WebCore::JSNodeFilterCondition::acceptNode):
  • bindings/js/JSNodeFilterCondition.h: (WebCore::JSNodeFilterCondition::create):
  • bindings/js/JSNodeFilterCustom.cpp: (WebCore::JSNodeFilter::acceptNode): (WebCore::toNodeFilter):
  • bindings/js/JSNodeIteratorCustom.cpp: (WebCore::JSNodeIterator::nextNode): (WebCore::JSNodeIterator::previousNode):
  • bindings/js/JSNodeListCustom.cpp: (WebCore::callNodeList): (WebCore::JSNodeList::nameGetter):
  • bindings/js/JSPluginArrayCustom.cpp: (WebCore::JSPluginArray::nameGetter):
  • bindings/js/JSPluginCustom.cpp: (WebCore::JSPlugin::nameGetter):
  • bindings/js/JSPluginElementFunctions.cpp: (WebCore::runtimeObjectGetter): (WebCore::runtimeObjectPropertyGetter): (WebCore::runtimeObjectCustomPut): (WebCore::callPlugin):
  • bindings/js/JSPluginElementFunctions.h:
  • bindings/js/JSQuarantinedObjectWrapper.cpp: (WebCore::JSQuarantinedObjectWrapper::asWrapper): (WebCore::JSQuarantinedObjectWrapper::cachedValueGetter): (WebCore::JSQuarantinedObjectWrapper::getOwnPropertySlot): (WebCore::JSQuarantinedObjectWrapper::put): (WebCore::JSQuarantinedObjectWrapper::construct): (WebCore::JSQuarantinedObjectWrapper::hasInstance): (WebCore::JSQuarantinedObjectWrapper::call):
  • bindings/js/JSQuarantinedObjectWrapper.h: (WebCore::JSQuarantinedObjectWrapper::createStructure):
  • bindings/js/JSRGBColor.cpp: (WebCore::getJSRGBColor): (jsRGBColorRed): (jsRGBColorGreen): (jsRGBColorBlue):
  • bindings/js/JSRGBColor.h: (WebCore::JSRGBColor::createStructure):
  • bindings/js/JSSQLResultSetRowListCustom.cpp: (WebCore::JSSQLResultSetRowList::item):
  • bindings/js/JSSQLTransactionCustom.cpp: (WebCore::JSSQLTransaction::executeSql):
  • bindings/js/JSSVGElementInstanceCustom.cpp: (WebCore::JSSVGElementInstance::addEventListener): (WebCore::JSSVGElementInstance::removeEventListener):
  • bindings/js/JSSVGLengthCustom.cpp: (WebCore::JSSVGLength::value): (WebCore::JSSVGLength::convertToSpecifiedUnits):
  • bindings/js/JSSVGMatrixCustom.cpp: (WebCore::JSSVGMatrix::multiply): (WebCore::JSSVGMatrix::inverse): (WebCore::JSSVGMatrix::translate): (WebCore::JSSVGMatrix::scale): (WebCore::JSSVGMatrix::scaleNonUniform): (WebCore::JSSVGMatrix::rotate): (WebCore::JSSVGMatrix::rotateFromVector): (WebCore::JSSVGMatrix::flipX): (WebCore::JSSVGMatrix::flipY): (WebCore::JSSVGMatrix::skewX): (WebCore::JSSVGMatrix::skewY):
  • bindings/js/JSSVGPathSegCustom.cpp: (WebCore::toJS):
  • bindings/js/JSSVGPathSegListCustom.cpp: (WebCore::JSSVGPathSegList::clear): (WebCore::JSSVGPathSegList::initialize): (WebCore::JSSVGPathSegList::getItem): (WebCore::JSSVGPathSegList::insertItemBefore): (WebCore::JSSVGPathSegList::replaceItem): (WebCore::JSSVGPathSegList::removeItem): (WebCore::JSSVGPathSegList::appendItem):
  • bindings/js/JSSVGPointListCustom.cpp: (WebCore::finishGetter): (WebCore::finishSetter): (WebCore::finishSetterReadOnlyResult): (WebCore::JSSVGPointList::clear): (WebCore::JSSVGPointList::initialize): (WebCore::JSSVGPointList::getItem): (WebCore::JSSVGPointList::insertItemBefore): (WebCore::JSSVGPointList::replaceItem): (WebCore::JSSVGPointList::removeItem): (WebCore::JSSVGPointList::appendItem):
  • bindings/js/JSSVGTransformListCustom.cpp: (WebCore::finishGetter): (WebCore::finishSetter): (WebCore::finishSetterReadOnlyResult): (WebCore::JSSVGTransformList::clear): (WebCore::JSSVGTransformList::initialize): (WebCore::JSSVGTransformList::getItem): (WebCore::JSSVGTransformList::insertItemBefore): (WebCore::JSSVGTransformList::replaceItem): (WebCore::JSSVGTransformList::removeItem): (WebCore::JSSVGTransformList::appendItem):
  • bindings/js/JSStorageCustom.cpp: (WebCore::JSStorage::nameGetter): (WebCore::JSStorage::deleteProperty): (WebCore::JSStorage::customPut):
  • bindings/js/JSStyleSheetCustom.cpp: (WebCore::toJS):
  • bindings/js/JSStyleSheetListCustom.cpp: (WebCore::JSStyleSheetList::nameGetter):
  • bindings/js/JSTextCustom.cpp: (WebCore::toJSNewlyCreated):
  • bindings/js/JSTreeWalkerCustom.cpp: (WebCore::JSTreeWalker::parentNode): (WebCore::JSTreeWalker::firstChild): (WebCore::JSTreeWalker::lastChild): (WebCore::JSTreeWalker::nextSibling): (WebCore::JSTreeWalker::previousSibling): (WebCore::JSTreeWalker::previousNode): (WebCore::JSTreeWalker::nextNode):
  • bindings/js/JSWorkerContextBase.cpp: (WebCore::JSWorkerContextBase::put):
  • bindings/js/JSWorkerContextBase.h:
  • bindings/js/JSWorkerContextCustom.cpp: (WebCore::JSWorkerContext::self): (WebCore::JSWorkerContext::setSelf): (WebCore::JSWorkerContext::addEventListener): (WebCore::JSWorkerContext::removeEventListener):
  • bindings/js/JSWorkerCustom.cpp: (WebCore::JSWorker::addEventListener): (WebCore::JSWorker::removeEventListener):
  • bindings/js/JSXMLHttpRequestCustom.cpp: (WebCore::JSXMLHttpRequest::open): (WebCore::JSXMLHttpRequest::setRequestHeader): (WebCore::JSXMLHttpRequest::send): (WebCore::JSXMLHttpRequest::getResponseHeader): (WebCore::JSXMLHttpRequest::overrideMimeType): (WebCore::JSXMLHttpRequest::addEventListener): (WebCore::JSXMLHttpRequest::removeEventListener): (WebCore::JSXMLHttpRequest::responseText):
  • bindings/js/JSXMLHttpRequestUploadCustom.cpp: (WebCore::JSXMLHttpRequestUpload::addEventListener): (WebCore::JSXMLHttpRequestUpload::removeEventListener):
  • bindings/js/JSXSLTProcessorCustom.cpp: (WebCore::JSXSLTProcessor::importStylesheet): (WebCore::JSXSLTProcessor::transformToFragment): (WebCore::JSXSLTProcessor::transformToDocument): (WebCore::JSXSLTProcessor::setParameter): (WebCore::JSXSLTProcessor::getParameter): (WebCore::JSXSLTProcessor::removeParameter):
  • bindings/js/ScheduledAction.cpp: (WebCore::ScheduledAction::ScheduledAction): (WebCore::ScheduledAction::execute):
  • bindings/js/ScheduledAction.h:
  • bindings/js/ScriptCallStack.cpp: (WebCore::ScriptCallStack::ScriptCallStack): (WebCore::ScriptCallStack::initialize):
  • bindings/js/ScriptController.cpp: (WebCore::ScriptController::createScriptObjectForPluginElement):
  • bindings/js/ScriptValue.cpp: (WebCore::ScriptValue::getString): (WebCore::ScriptValue::isNull): (WebCore::ScriptValue::isUndefined):
  • bindings/js/ScriptValue.h: (WebCore::ScriptValue::ScriptValue): (WebCore::ScriptValue::jsValue):
  • bindings/objc/WebScriptObject.mm: (-[WebScriptObject callWebScriptMethod:withArguments:]): (-[WebScriptObject evaluateWebScript:]): (-[WebScriptObject valueForKey:]): (-[WebScriptObject webScriptValueAtIndex:]): (+[WebScriptObject _convertValueToObjcValue:originRootObject:rootObject:]):
  • bindings/objc/WebScriptObjectPrivate.h:
  • bindings/scripts/CodeGeneratorJS.pm:
  • bridge/NP_jsobject.cpp: (_NPN_InvokeDefault): (_NPN_Invoke): (_NPN_Evaluate): (_NPN_GetProperty): (_NPN_HasMethod): (_NPN_Construct):
  • bridge/c/c_instance.cpp: (JSC::Bindings::CInstance::invokeMethod): (JSC::Bindings::CInstance::invokeDefaultMethod): (JSC::Bindings::CInstance::invokeConstruct): (JSC::Bindings::CInstance::defaultValue): (JSC::Bindings::CInstance::stringValue): (JSC::Bindings::CInstance::numberValue): (JSC::Bindings::CInstance::booleanValue): (JSC::Bindings::CInstance::valueOf):
  • bridge/c/c_instance.h:
  • bridge/c/c_runtime.cpp: (JSC::Bindings::CField::valueFromInstance): (JSC::Bindings::CField::setValueToInstance):
  • bridge/c/c_runtime.h:
  • bridge/c/c_utility.cpp: (JSC::Bindings::convertValueToNPVariant): (JSC::Bindings::convertNPVariantToValue):
  • bridge/c/c_utility.h:
  • bridge/jni/jni_instance.cpp: (JavaInstance::stringValue): (JavaInstance::numberValue): (JavaInstance::booleanValue): (JavaInstance::invokeMethod): (JavaInstance::defaultValue): (JavaInstance::valueOf):
  • bridge/jni/jni_instance.h:
  • bridge/jni/jni_jsobject.h:
  • bridge/jni/jni_jsobject.mm: (JavaJSObject::call): (JavaJSObject::eval): (JavaJSObject::getMember): (JavaJSObject::getSlot): (JavaJSObject::convertValueToJObject): (JavaJSObject::convertJObjectToValue):
  • bridge/jni/jni_objc.mm: (JSC::Bindings::dispatchJNICall):
  • bridge/jni/jni_runtime.cpp: (JavaArray::convertJObjectToArray): (JavaField::dispatchValueFromInstance): (JavaField::valueFromInstance): (JavaField::dispatchSetValueToInstance): (JavaField::setValueToInstance): (JavaArray::setValueAt): (JavaArray::valueAt):
  • bridge/jni/jni_runtime.h:
  • bridge/jni/jni_utility.cpp: (JSC::Bindings::convertArrayInstanceToJavaArray): (JSC::Bindings::convertValueToJValue):
  • bridge/jni/jni_utility.h:
  • bridge/objc/WebScriptObject.h:
  • bridge/objc/objc_class.h:
  • bridge/objc/objc_class.mm: (JSC::Bindings::ObjcClass::fallbackObject):
  • bridge/objc/objc_instance.h:
  • bridge/objc/objc_instance.mm: (ObjcInstance::invokeMethod): (ObjcInstance::invokeDefaultMethod): (ObjcInstance::setValueOfUndefinedField): (ObjcInstance::getValueOfUndefinedField): (ObjcInstance::defaultValue): (ObjcInstance::stringValue): (ObjcInstance::numberValue): (ObjcInstance::booleanValue): (ObjcInstance::valueOf):
  • bridge/objc/objc_runtime.h: (JSC::Bindings::ObjcFallbackObjectImp::createStructure):
  • bridge/objc/objc_runtime.mm: (JSC::Bindings::ObjcField::valueFromInstance): (JSC::Bindings::convertValueToObjcObject): (JSC::Bindings::ObjcField::setValueToInstance): (JSC::Bindings::ObjcArray::setValueAt): (JSC::Bindings::ObjcArray::valueAt): (JSC::Bindings::ObjcFallbackObjectImp::put): (JSC::Bindings::callObjCFallbackObject): (JSC::Bindings::ObjcFallbackObjectImp::defaultValue):
  • bridge/objc/objc_utility.h:
  • bridge/objc/objc_utility.mm: (JSC::Bindings::convertValueToObjcValue): (JSC::Bindings::convertNSStringToString): (JSC::Bindings::convertObjcValueToValue):
  • bridge/runtime.cpp: (JSC::Bindings::Instance::getValueOfField): (JSC::Bindings::Instance::setValueOfField):
  • bridge/runtime.h: (JSC::Bindings::Class::fallbackObject): (JSC::Bindings::Instance::getValueOfUndefinedField): (JSC::Bindings::Instance::setValueOfUndefinedField): (JSC::Bindings::Instance::invokeDefaultMethod): (JSC::Bindings::Instance::invokeConstruct): (JSC::Bindings::Instance::valueOf):
  • bridge/runtime_array.cpp: (JSC::RuntimeArray::lengthGetter): (JSC::RuntimeArray::indexGetter): (JSC::RuntimeArray::put):
  • bridge/runtime_array.h: (JSC::RuntimeArray::createStructure):
  • bridge/runtime_method.cpp: (JSC::RuntimeMethod::lengthGetter): (JSC::callRuntimeMethod):
  • bridge/runtime_method.h: (JSC::RuntimeMethod::createStructure):
  • bridge/runtime_object.cpp: (JSC::RuntimeObjectImp::fallbackObjectGetter): (JSC::RuntimeObjectImp::fieldGetter): (JSC::RuntimeObjectImp::methodGetter): (JSC::RuntimeObjectImp::put): (JSC::RuntimeObjectImp::defaultValue): (JSC::callRuntimeObject): (JSC::callRuntimeConstructor):
  • bridge/runtime_object.h: (JSC::RuntimeObjectImp::createStructure):
  • inspector/InspectorController.cpp:
  • inspector/JavaScriptCallFrame.cpp: (WebCore::JavaScriptCallFrame::evaluate):
  • inspector/JavaScriptCallFrame.h:
  • inspector/JavaScriptProfile.cpp: (WebCore::toJS):
  • inspector/JavaScriptProfile.h:
  • inspector/JavaScriptProfileNode.cpp: (WebCore::toJS):
  • inspector/JavaScriptProfileNode.h:
  • xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::dropProtection):

WebKit/mac:

2009-01-05 Gavin Barraclough <baraclough@apple.com>

Rubber Stamped by Oliver Hunt.

Replace all uses of JSValue* with new wrapper class, JSValuePtr.
See JavaScriptCore/ChangeLog for more detailed description.

  • WebView/WebFrame.mm: (-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
  • WebView/WebScriptDebugDelegate.mm: (-[WebScriptCallFrame _convertValueToObjcValue:]): (-[WebScriptCallFrame exception]): (-[WebScriptCallFrame evaluateWebScript:]):
  • WebView/WebView.mm: (aeDescFromJSValue): (-[WebView aeDescByEvaluatingJavaScriptFromString:]):
5:59 PM Changeset in webkit [39669] by pol@apple.com
  • 16 edits
    2 adds in trunk

2009-01-06 Pierre-Olivier Latour <pol@apple.com>

Reviewed by Darin Adler.

Added new API on AnimationController::numberOfActiveAnimations() to be used by DRT.

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

Test: animations/animation-controller-drt-api.html

  • WebCore.base.exp:
  • page/animation/AnimationController.cpp: (WebCore::AnimationControllerPrivate::numberOfActiveAnimations): (WebCore::AnimationController::numberOfActiveAnimations):
  • page/animation/AnimationController.h:
  • page/animation/CompositeAnimation.cpp: (WebCore::CompositeAnimationPrivate::numberOfActiveAnimations): (WebCore::CompositeAnimation::numberOfActiveAnimations):
  • page/animation/CompositeAnimation.h:

Exposed through WebFrame private interface the new WebCore API AnimationController::numberOfActiveAnimations() to be used by DRT.

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

  • WebView/WebFrame.mm: (-[WebFrame _numberOfActiveAnimations]):
  • WebView/WebFramePrivate.h:

Added new JS API numberOfActiveAnimations() that returns the number of active CSS transitions & animations.
This effectively exposes the new AnimationController::numberOfActiveAnimations() API from WebCore.

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

  • DumpRenderTree/LayoutTestController.cpp: (numberOfActiveAnimationsCallback): (LayoutTestController::staticFunctions):
  • DumpRenderTree/LayoutTestController.h:
  • DumpRenderTree/mac/LayoutTestControllerMac.mm: (LayoutTestController::numberOfActiveAnimations):
  • DumpRenderTree/win/LayoutTestControllerWin.cpp: (LayoutTestController::numberOfActiveAnimations):

Reviewed by Darin Adler.

Added layout test for new DRT API numberOfActiveAnimations().

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

  • animations/animation-controller-drt-api-expected.txt: Added.
  • animations/animation-controller-drt-api.html: Added.
  • platform/win/Skipped:
5:07 PM Changeset in webkit [39668] by eric@webkit.org
  • 2 edits
    4 adds in trunk/WebCore

Reviewed by Gavin Barraclough.

Upstream 3 more files to get the WebCore-Chromium build a bit further.

  • WebCore.scons:
  • page/chromium/AccessibilityObjectChromium.cpp: Added. (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
  • page/chromium/AccessibilityObjectWrapper.h: Added. (WebCore::AccessibilityObjectWrapper::~AccessibilityObjectWrapper): (WebCore::AccessibilityObjectWrapper::attached): (WebCore::AccessibilityObjectWrapper::accessibilityObject): (WebCore::AccessibilityObjectWrapper::AccessibilityObjectWrapper):
  • platform/chromium/PasteboardPrivate.h: Added. (WebCore::PasteboardPrivate::):
4:35 PM Changeset in webkit [39667] by cmarrin@apple.com
  • 9 edits
    4 adds in trunk

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


I added calls beginAnimationUpdate() and endAnimationUpdate() calls
to AnimationController. These are called by Document at the start
and end of the recalcStyle cycle. Right now, I'm just using the
beginAnimationUpdate() method to reset an animation time value.
The first time the animation time is accessed after this reset I set
it to the currentTime. So all animations in that cycle get the same
start time.

The test cases checked in test this, but in the case of the 'left'
test it actually doesn't make any difference in most cases. This is
because values are clamped to whole pixels, so the start times would
have to be pretty far off for the test to fail using the old
currentTime() model. Still, under really heavy load, it's possible for
the test to fail without these changes.

The 'transform' test is another story. It animates to the full resolution
of a floating point number, so the test fails miserably without this
fix.

3:15 PM Changeset in webkit [39666] by jchaffraix@webkit.org
  • 3 edits in trunk/WebCore

2009-01-06 Julien Chaffraix <jchaffraix@webkit.org>

Reviewed by Nikolas Zimmermann.

Bug 22858: Simplify make_names.pl code for avoiding multiple definitions or inclusions
https://bugs.webkit.org/show_bug.cgi?id=22858

I had introduced an awkward situation using hasCustomJSWrapper and
sometimes boolean parameter in order to ensure JS wrapper generated once
or header included once.

Simplified the code by using a %seenTag hash to detect multiple definitions
or inclusions and skipping it.

Also cleaned up a bit make_names.pl by using more explicit names and moving
code to where it belongs.

  • dom/make_names.pl:
  • html/HTMLTagNames.in: Necessary changes that were not detected by the previous syntax but will be required for autogenerating HTMLElementFactory.
2:58 PM Changeset in webkit [39665] by andersca@apple.com
  • 9 edits in trunk/WebKit/win

2009-01-06 Anders Carlsson <andersca@apple.com>

Reviewed by Sam Weinig.

Add a way for application to provide custom, full frame, views for certain MIME types.


  • Interfaces/IWebEmbeddedView.idl: Add loading related methods.


  • Interfaces/IWebViewPrivate.idl: Add new registerEmbeddedViewMIMEType method.


  • WebCoreSupport/EmbeddedWidget.cpp: (EmbeddedWidget::didReceiveResponse): (EmbeddedWidget::didReceiveData): (EmbeddedWidget::didFinishLoading): (EmbeddedWidget::didFail): Implement these and call the IEmbeddedView methods.


  • WebCoreSupport/EmbeddedWidget.h: Inherit from PluginManualLoader.


  • WebCoreSupport/WebFrameLoaderClient.cpp: (WebFrameLoaderClient::redirectDataToPlugin): Handle the case where the widget is an EnbeddedWidget.


(WebFrameLoaderClient::shouldUsePluginDocument):
Have this call WebView::shouldUseEmbeddedView.


  • WebView.cpp: (WebView::canShowMIMEType): Have this call WebView::shouldUseEmbeddedView.


(WebView::registerEmbeddedViewMIMEType):
Add the MIME type to the set.


(WebView::shouldUseEmbeddedView):
Given a MIME type, returns whether an embedded view should be used or not.

2:57 PM Changeset in webkit [39664] by andersca@apple.com
  • 3 edits in trunk/WebCore

2009-01-06 Anders Carlsson <andersca@apple.com>

Reviewed by Sam Weinig.

Add a way for frame loader clients to always create a PluginDocument, regardless of
the real document MIME type.


  • loader/FrameLoader.cpp: (WebCore::FrameLoader::begin): (WebCore::FrameLoader::shouldUsePlugin):
  • loader/FrameLoaderClient.h: (WebCore::FrameLoaderClient::shouldUsePluginDocument):
2:19 PM Changeset in webkit [39663] by dino@apple.com
  • 4 edits
    12 adds in trunk

2009-01-06 Dean Jackson <dino@apple.com>

Reviewed by Dave Hyatt.

Extend Media Queries to cover transitions,
animations, transform-2d and transform-3d
http://webkit.org/specs/MediaQueriesExtensions.html
Note that the implementation uses -webkit- prefixes
even though the spec doesn't have them.
https://bugs.webkit.org/show_bug.cgi?id=22494

Tests: fast/media/mq-animation.html

fast/media/mq-transform-01.html
fast/media/mq-transform-02.html
fast/media/mq-transform-03.html
fast/media/mq-transform-04.html
fast/media/mq-transition.html

  • css/MediaFeatureNames.h:
  • css/MediaQueryEvaluator.cpp: (WebCore::animationMediaFeatureEval): (WebCore::transitionMediaFeatureEval): (WebCore::transform_2dMediaFeatureEval): (WebCore::transform_3dMediaFeatureEval):
1:56 PM Changeset in webkit [39662] by justin.garcia@apple.com
  • 1 edit
    4 adds in trunk/LayoutTests

2009-01-06 Justin Garcia <justin.garcia@apple.com>

Reviewed by Oliver Hunt.


Tests for:
<rdar://problem/4059423> DOM operations performed on editable HTML can cause a crash later during Undo (19703)


A few more may able to be written after <rdar://problem/6468156> is fixed.

  • editing/undo/4059423-1-expected.txt: Added.
  • editing/undo/4059423-1.html: Added.
  • editing/undo/4059423-2-expected.txt: Added.
  • editing/undo/4059423-2.html: Added.
1:50 PM Changeset in webkit [39661] by eric@webkit.org
  • 2 edits
    1 add in trunk/WebCore

Reviewed by Oliver Hunt.

Bring the Chromium-WebCore build closer to building
by upstreaming PlatformWidget.h add adding the JSC
plugin bridge files to the build.

  • WebCore.scons:
  • platform/chromium/PlatformWidget.h: Added.
12:33 PM Changeset in webkit [39660] by oliver@apple.com
  • 5 edits in trunk

<https://bugs.webkit.org/show_bug.cgi?id=23085> [jsfunfuzz] Over released ScopeChainNode
<rdar://problem/6474110>

Reviewed by Cameron Zwarich

So this delightful bug was caused by our unwind code using a ScopeChain to perform
the unwind. The ScopeChain would ref the initial top of the scope chain, then deref
the resultant top of scope chain, which is incorrect.

This patch removes the dependency on ScopeChain for the unwind, and i've filed
<https://bugs.webkit.org/show_bug.cgi?id=23144> to look into the unintuitive
ScopeChain behaviour.

12:16 PM Changeset in webkit [39659] by eric@webkit.org
  • 2 edits in trunk/WebCore

Build fix only, no review.

Bring the Chromium-WebCore build back closer to building
by adding files from recent commits.

  • WebCore.scons:
11:49 AM Changeset in webkit [39658] by Adam Roben
  • 2 edits in trunk/JavaScriptCore

Hopeful Windows crash-on-launch fix

  • wtf/Platform.h: Force a world rebuild by touching this file.
10:19 AM Changeset in webkit [39657] by zecke@webkit.org
  • 2 edits in trunk/JavaScriptCore

Build fix by building ByteArray.cpp as well

10:12 AM Changeset in webkit [39656] by ap@webkit.org
  • 2 edits in trunk/WebCore

Reviewed by Darin Adler.

<rdar://problem/6474973> REGRESSION: PLT ~2% slower due to 39465 (consolidate thread data)

I could not reproduce the slowdown on my PowerPC test machine, but the change should bring
performance back.

  • platform/ThreadGlobalData.cpp: (WebCore::threadGlobalData): Don't use AtomicallyInitializedStatic. Prior to r39465, it was only used for cached converters, which was necessary because the first access to ICU or TEC one could happen on a secondary thread, but now they are all initialized from ThreadGlobalData constructor.
9:08 AM Changeset in webkit [39655] by treat@webkit.org
  • 3 edits in trunk/WebKit/qt

Update the documentation to reflect when these API changes will land in
upstream Qt

8:14 AM Changeset in webkit [39654] by dsmith@webkit.org
  • 2 edits in trunk/WebCore

2009-01-06 David Smith <catfish.man@gmail.com>

Reviewed by Darin Adler.


https://bugs.webkit.org/show_bug.cgi?id=23129
Devirtualize Node::childNodes().

8:13 AM Changeset in webkit [39653] by zecke@webkit.org
  • 2 edits in trunk/JavaScriptCore

Speculative build fix for Gtk+

6:54 AM Changeset in webkit [39652] by ddkilzer@apple.com
  • 3 edits in trunk/WebKit/win

BUILD FIX (r39641): Try to fix WebIconDatabase build errors #4

  • WebIconDatabase.cpp: (WebIconDatabase::isEnabled): Added 'WebIconDatabase::' to method signature. (Another copy-paste error.) (WebIconDatabase::setEnabled): Ditto.
  • WebIconDatabase.h: (WebIconDatabase::startUpIconDatabase): Make private again. (WebIconDatabase::shutDownIconDatabase): Ditto.
6:49 AM Changeset in webkit [39651] by Simon Hausmann
  • 2 edits in trunk/WebCore

2009-01-06 Simon Hausmann <simon.hausmann@nokia.com>

Unreviewed build fix.

Fix the Qt build with Qt 4.4.x, the HTTP-only cookie support was
added in Qt 4.5.

6:38 AM Changeset in webkit [39650] by ddkilzer@apple.com
  • 2 edits in trunk/WebCore

2009-01-06 Zalan Bujtas <zbujtas@gmail.com>

Reviewed by David Kilzer.

https://bugs.webkit.org/show_bug.cgi?id=23133
Fix SVG disabled build. Move 'pointer-events' from SVGCSSPropertyNames.in to
CSSPropertyNames.in and move PointerEvents functions out of #if ENABLE(SVG)

NOTE: Property name fixes landed as part of r39648.

  • css/CSSPrimitiveValueMappings.h: (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): (WebCore::CSSPrimitiveValue::operator EPointerEvents):
  • css/CSSPropertyNames.in:
  • css/SVGCSSPropertyNames.in:
6:29 AM Changeset in webkit [39649] by ddkilzer@apple.com
  • 3 edits in trunk/WebKit/win

BUILD FIX (r39641): Try to fix build errors #3

Try to fix the following (more specific) build errors:

WebIconDatabase.cpp
..\WebIconDatabase.cpp(255) : error C2248: 'WebIconDatabase::shutDownIconDatabase' : cannot access private member declared in class 'WebIconDatabase'

...\webkit\win\WebIconDatabase.h(61) : see declaration of 'WebIconDatabase::shutDownIconDatabase'
...\webkit\win\WebIconDatabase.h(51) : see declaration of 'WebIconDatabase'

..\WebIconDatabase.cpp(255) : error C2352: 'WebIconDatabase::shutDownIconDatabase' : illegal call of non-static member function

...\webkit\win\WebIconDatabase.h(61) : see declaration of 'WebIconDatabase::shutDownIconDatabase'

..\WebIconDatabase.cpp(258) : error C2248: 'WebIconDatabase::startUpIconDatabase' : cannot access private member declared in class 'WebIconDatabase'

...\webkit\win\WebIconDatabase.h(60) : see declaration of 'WebIconDatabase::startUpIconDatabase'
...\webkit\win\WebIconDatabase.h(51) : see declaration of 'WebIconDatabase'

..\WebIconDatabase.cpp(258) : error C2352: 'WebIconDatabase::startUpIconDatabase' : illegal call of non-static member function

...\webkit\win\WebIconDatabase.h(60) : see declaration of 'WebIconDatabase::startUpIconDatabase'

  • WebIconDatabase.cpp: (setEnabled): Get instance of shared WebIconDatabase, then call startUp/shutDown methods on it.
  • WebIconDatabase.h: (WebIconDatabase::startUpIconDatabase): Make protected again. (WebIconDatabase::shutDownIconDatabase): Ditto.
6:06 AM Changeset in webkit [39648] by ddkilzer@apple.com
  • 3 edits in trunk/WebCore

BUILD FIX (r39634): Fix build for non-SVG builds (Wx)

  • css/CSSPropertyNames.in: Added 'pointer-events'.
  • css/SVGCSSPropertyNames.in: Commented out pointer-events since it's now a plain CSS property.
5:59 AM Changeset in webkit [39647] by ddkilzer@apple.com
  • 3 edits in trunk/WebKit/win

BUILD FIX (r39641): Try to fix build errors again

Try to fix the following build errors:

WebIconDatabase.cpp
..\WebIconDatabase.cpp(255) : error C3861: 'shutDownIconDatabase': identifier not found
..\WebIconDatabase.cpp(258) : error C3861: 'startUpIconDatabase': identifier not found

  • WebIconDatabase.cpp: (setEnabled): Add class prefix to startUpIconDatabase() and shutDownIconDatabase().
  • WebIconDatabase.h: (WebIconDatabase::startUpIconDatabase): Make private again. (WebIconDatabase::shutDownIconDatabase): Ditto.
5:45 AM Changeset in webkit [39646] by ddkilzer@apple.com
  • 2 edits in trunk/WebKit/win

BUILD FIX (r39641): Try to fix build error

Try to fix the following build errors:

WebIconDatabase.cpp
..\WebIconDatabase.cpp(255) : error C3861: 'shutDownIconDatabase': identifier not found
..\WebIconDatabase.cpp(258) : error C3861: 'startUpIconDatabase': identifier not found

  • WebIconDatabase.h: (WebIconDatabase::startUpIconDatabase): Make protected. (WebIconDatabase::shutDownIconDatabase): Ditto.
5:07 AM Changeset in webkit [39645] by ddkilzer@apple.com
  • 2 edits in trunk/WebKit/win

BUILD FIX (r39641): Fix more silly errors

Fixes the following compilation errors:

WebIconDatabase.cpp
..\WebIconDatabase.cpp(85) : error C2065: 'standardPrefs' : undeclared identifier
..\WebIconDatabase.cpp(85) : error C2227: left of '->iconDatabaseLocation' must point to class/struct/union/generic type

type is unknown-type

..\WebIconDatabase.cpp(241) : error C2575: 'isEnabled' : only member functions and bases can be virtual
..\WebIconDatabase.cpp(248) : error C2575: 'setEnabled' : only member functions and bases can be virtual
..\WebIconDatabase.cpp(253) : error C3861: 'shutDownIconDatabase': identifier not found
..\WebIconDatabase.cpp(256) : error C3861: 'startUpIconDatabase': identifier not found

  • WebIconDatabase.cpp: (WebIconDatabase::startUpIconDatabase): Redeclare standardPrefs since this was in init() but not in this method after it was extracted from init(). (isEnabled): Don't use "virtual" in method implementation (silly copy-paste error). (setEnabled): Ditto.
4:40 AM Changeset in webkit [39644] by ddkilzer@apple.com
  • 2 edits in trunk/WebKit/win

BUILD FIX (r39641): Remove STDMETHODCALLTYPE from method declarations in IWebIconDatabase.idl

  • Interfaces/IWebIconDatabase.idl: Removed "STDMETHODCALLTYPE" from silly copy-paste error in two method declarations.
1:35 AM Changeset in webkit [39643] by Simon Hausmann
  • 2 edits in trunk/WebCore

2009-01-06 Simon Hausmann <simon.hausmann@nokia.com>

Reviewed by Lars Knoll.

Added support for HTTP-only cookies to the Qt build.

Jan 5, 2009:

11:39 PM Changeset in webkit [39642] by dsmith@webkit.org
  • 3 edits in trunk/WebCore

2009-01-05 David Smith <catfish.man@gmail.com>

Reviewed by Oliver Hunt.

https://bugs.webkit.org/show_bug.cgi?id=23084
Avoid redundant AtomicString conversions

  • dom/Node.cpp: Create an AtomicString early to avoid converting twice (WebCore::Node::getElementsByTagNameNS):
  • dom/QualifiedName.h: Use the appropriate AtomicString constructor instead of converting from a String
10:13 PM Changeset in webkit [39641] by ddkilzer@apple.com
  • 8 edits in trunk/WebKit

WebKit/mac:

2009-01-05 David Kilzer <ddkilzer@apple.com>

Add SPI to enable, disable and check state of WebIconDatabase

Reviewed by Darin Adler & Timothy Hatcher.

Add -[WebIconDatabase isEnabled] and -[WebIconDatabase setEnabled:]
SPI to make it possible to enable, disable and check the state of
the icon database.

  • Misc/WebIconDatabase.mm: (-[WebIconDatabase init]): Extracted code into -_startUpIconDatabase. (-[WebIconDatabase iconForURL:withSize:cache:]): Switched to use -isEnabled instead of -_isEnabled. (-[WebIconDatabase iconURLForURL:]): Ditto. (-[WebIconDatabase retainIconForURL:]): Ditto. (-[WebIconDatabase releaseIconForURL:]): Ditto. (-[WebIconDatabase isEnabled]): Renamed from -_isEnabled in WebInternal category. (-[WebIconDatabase setEnabled:]): Added. Takes care of changing the enabled/disabled state of the icon database. (-[WebIconDatabase removeAllIcons]): Switched to use -isEnabled instead of -_isEnabled. (-[WebIconDatabase _startUpIconDatabase]): Added. Extrated from -init. (-[WebIconDatabase _shutDownIconDatabase]): Added. Remove observers when the icon database is disabled.
  • Misc/WebIconDatabaseInternal.h: Added declarations for -_startUpIconDatabase and -_shutDownIconDatabase.
  • Misc/WebIconDatabasePrivate.h: Added declarations for -isEnabled and -setEnabled:.

WebKit/win:

2009-01-05 David Kilzer <ddkilzer@apple.com>

Add API to enable, disable and check state of WebIconDatabase

Reviewed by Darin Adler & Timothy Hatcher.

Add WebIconDatabase::isEnabled() and WebIconDatabase::setEnabled()
API to make it possible to enable, disable and check the state of
the icon database.

  • Interfaces/IWebIconDatabase.idl: Declared isEnabled() and setEnabled() methods.
  • WebIconDatabase.cpp: (WebIconDatabase::init): Extracted code into startUpIconDatabase(). (WebIconDatabase::startUpIconDatabase): Added. Extracted from init(). (WebIconDatabase::shutDownIconDatabase): Added. Method is empty since there is nothing to do yet on Windows. (isEnabled): Added. (setEnabled): Added.
  • WebIconDatabase.h: Added method declarations.
9:37 PM Changeset in webkit [39640] by Simon Fraser
  • 4 edits in trunk/WebCore

2009-01-05 Simon Fraser <Simon Fraser>

Reviewed by Dave Hyatt

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

Add an assertion that clip rects are being used when painting with the same
rootLayer that they were computed with.

Fix two issues detected by the assertion:

RenderLayer::updateClipRects() should not unconditionally update the clip rects
on its parent, but stop when reaching rootLayer (just like calculateClipRects()).

We need to pass the temporaryClipRects flag down through reflection painting
to handle the case of nested reflections.

Also use temporary clip rects in RenderTreeAsText, since that code does not
reset the painting root for transformed layers, so cached clip rects will not
match those used for painting.

  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::RenderLayer): (WebCore::RenderLayer::paintLayer): (WebCore::RenderLayer::updateClipRects): (WebCore::RenderLayer::clearClipRects):
  • rendering/RenderLayer.h:
  • rendering/RenderTreeAsText.cpp: (WebCore::writeLayers):
9:15 PM Changeset in webkit [39639] by treat@webkit.org
  • 2 edits in trunk/WebCore

Fix the Qt build

9:12 PM Changeset in webkit [39638] by mrowe@apple.com
  • 2 edits in trunk/WebCore

Fix the build some more.

  • platform/graphics/cairo/AffineTransformCairo.cpp:

(WebCore::TransformationMatrix::TransformationMatrix):

8:20 PM Changeset in webkit [39637] by oliver@apple.com
  • 2 edits in trunk/WebCore

Fix gtk build

8:08 PM Changeset in webkit [39636] by beidson@apple.com
  • 3 edits in trunk/WebKit/mac

2009-01-05 Brady Eidson <beidson@apple.com>

Reviewed by Jon Honeycutt

Expose setting the last-visit-was-failure flag on a history items in preparation for <rdar://problem/6173319>

  • History/WebHistoryItem.mm: (-[WebHistoryItem _setLastVisitWasFailure:]):
  • History/WebHistoryItemPrivate.h:
7:00 PM Changeset in webkit [39635] by dino@apple.com
  • 141 edits
    2 moves in trunk/WebCore

2009-01-05 Dean Jackson <dino@apple.com>

Reviewed by Darin Adler.

Rename AffineTransform to TransformationMatrix in
preparation for future enhancements (non-affine matrices)

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

  • GNUmakefile.am:
  • WebCore.pro:
  • WebCore.scons:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • WebCoreSources.bkl:
  • platform/graphics/transforms/AffineTransform.cpp: Removed.
  • platform/graphics/transforms/AffineTransform.h: Removed.
  • platform/graphics/transforms/TransformationMatrix.cpp: Copied from WebCore/platform/graphics/transforms/AffineTransform.cpp.
  • platform/graphics/transforms/TransformationMatrix.h: Copied from WebCore/platform/graphics/transforms/AffineTransform.h.
  • lots of other files with s/AffineTransform/TransformationMatrix/g
6:35 PM Changeset in webkit [39634] by dino@apple.com
  • 43 edits
    5 adds in trunk

2008-01-05 Dean Jackson <dino@apple.com>

Reviewed by David Hyatt.

Implement 'pointer-events' for HTML content. This involved
adding a new value 'auto' which behaves as 'visiblePainted'
in SVG content.

Moved the property out of the SVG CSS code and into
the general CSS (both parsing and RenderStyle).

Changes to the hit testing functionality of the Render tree,
specifically the nodeAtPoint methods. Where they used to
test for visibility, they now use a helper function defined
on base classes (RenderObject and InlineBox) that checks both
visibility and pointer-events.

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

Tests: fast/events/pointer-events-2.html

fast/events/pointer-events.html

  • css/CSSComputedStyleDeclaration.cpp: (WebCore::): (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
  • css/CSSParser.cpp: (WebCore::CSSParser::parseValue):
  • css/CSSPrimitiveValueMappings.h: (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): (WebCore::CSSPrimitiveValue::operator EPointerEvents):
  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::applyProperty):
  • css/SVGCSSComputedStyleDeclaration.cpp: (WebCore::CSSComputedStyleDeclaration::getSVGPropertyCSSValue):
  • css/SVGCSSStyleSelector.cpp: (WebCore::CSSStyleSelector::applySVGProperty):
  • manual-tests/pointer-events.html: Added.
  • rendering/EllipsisBox.cpp: (WebCore::EllipsisBox::nodeAtPoint):
  • rendering/InlineBox.h: (WebCore::InlineBox::visibleToHitTesting):
  • rendering/InlineFlowBox.cpp: (WebCore::InlineFlowBox::nodeAtPoint):
  • rendering/InlineTextBox.cpp: (WebCore::InlineTextBox::nodeAtPoint):
  • rendering/PointerEventsHitRules.cpp: (WebCore::PointerEventsHitRules::PointerEventsHitRules):
  • rendering/PointerEventsHitRules.h: (WebCore::PointerEventsHitRules::):
  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::nodeAtPoint):
  • rendering/RenderBox.cpp: (WebCore::RenderBox::nodeAtPoint):
  • rendering/RenderObject.h: (WebCore::RenderObject::visibleToHitTesting):
  • rendering/RenderPath.cpp: (WebCore::RenderPath::nodeAtPoint):
  • rendering/RenderSVGImage.cpp: (WebCore::RenderSVGImage::nodeAtPoint):
  • rendering/RenderSVGText.cpp: (WebCore::RenderSVGText::nodeAtPoint):
  • rendering/RootInlineBox.cpp: (WebCore::RootInlineBox::nodeAtPoint):
  • rendering/TextControlInnerElements.cpp: (WebCore::SearchFieldCancelButtonElement::defaultEventHandler):
  • rendering/style/RenderStyle.h: (WebCore::): (WebCore::InheritedFlags::setBitDefaults): (WebCore::InheritedFlags::pointerEvents): (WebCore::InheritedFlags::setPointerEvents): (WebCore::InheritedFlags::initialPointerEvents):
  • rendering/style/RenderStyleConstants.h: (WebCore::):
  • rendering/style/SVGRenderStyle.h: (WebCore::SVGRenderStyle::InheritedFlags::operator==): (WebCore::SVGRenderStyle::setBitDefaults):
  • rendering/style/SVGRenderStyleDefs.h:
  • css/CSSValueKeywords.in:
  • css/SVGCSSValueKeywords.in:
5:50 PM Changeset in webkit [39633] by alice.liu@apple.com
  • 1 edit in trunk/WebCore/DerivedSources.cpp

Build fix from 39625

5:37 PM Changeset in webkit [39632] by oliver@apple.com
  • 2 edits in trunk/JavaScriptCore

Fix Wx build.

5:34 PM Changeset in webkit [39631] by alice.liu@apple.com
  • 4 edits in trunk/JavaScriptCore

2009-01-05 Oliver Hunt <oliver@apple.com>

Windows build fixes

Rubber-stamped by Alice Liu.

  • interpreter/Interpreter.cpp: (JSC::Interpreter::Interpreter):
  • runtime/ByteArray.cpp: (JSC::ByteArray::create):
  • runtime/ByteArray.h:
5:27 PM Changeset in webkit [39630] by andersca@apple.com
  • 3 edits in trunk/WebKit/win

2009-01-05 Anders Carlsson <andersca@apple.com>

Reviewed by Jon Honeycutt.

Pass more information in the property bag passed to embeddedViewWithArguments.


  • Interfaces/IWebUIDelegatePrivate.idl: Declare new keys.


  • WebCoreSupport/WebFrameLoaderClient.cpp: (WebFrameLoaderClient::createPlugin): Pass the base URL, MIME type and the containing element to embeddedViewWithArguments.
5:16 PM Changeset in webkit [39629] by andersca@apple.com
  • 2 edits in trunk/WebKit/win

2009-01-05 Anders Carlsson <andersca@apple.com>

Reviewed by Darin Adler, Jon Honeycutt.

Add a templatized COMVariant constructor so we can make COMVariants out of
everything that has a COMVariantSetter specialization.


Add a COMVariantSetter specialization for COMVariant.


  • COMVariantSetter.h: (COMVariant::COMVariant):
5:04 PM Changeset in webkit [39628] by pewtermoose@webkit.org
  • 2 edits
    2 adds in trunk/WebKit/win

2009-01-05 Brent Fulgham <bfulgham@gmail.com>

Reviewed by Oliver Hunt.

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

Removes the WebKitGraphics files from the Cairo build, as well
as excluding their link definitions. These are not used outside
of Safari, and should not be part of the 'Redistributable API.'

  • WebKit.vcproj/WebKit.vcproj: Update *_Cairo targets to exclude the WebKitGraphics.cpp/.h files.
  • WebKit.vcproj/WebKit_Cairo.def: Added. File without Safari link definitions.
  • WebKit.vcproj/WebKit_Cairo_debug.def: Added. File without Safari link definitions.
4:19 PM Changeset in webkit [39627] by andersca@apple.com
  • 2 edits in trunk/WebKit/win

2009-01-05 Anders Carlsson <andersca@apple.com>

Reviewed by Jon Honeycutt.

Add a simple, memory managed, wrapper around a VARIANT struuct.


  • COMVariantSetter.h: (COMVariant::COMVariant): (COMVariant::~COMVariant): (COMVariant::operator=): (COMVariant::copyTo): (COMVariant::variantType):
4:06 PM Changeset in webkit [39626] by oliver@apple.com
  • 2 edits in trunk/WebCore

Fix Cairo/Gtk build

3:57 PM Changeset in webkit [39625] by oliver@apple.com
  • 23 edits
    1 copy
    1 move
    4 adds
    3 deletes in trunk

CanvasPixelArray performance is too slow
<https://bugs.webkit.org/show_bug.cgi?id=23123>

Reviewed by Gavin Barraclough

JavaScriptCore:
The fix to this is to devirtualise get and put in a manner similar to
JSString and JSArray. To do this I've added a ByteArray implementation
and JSByteArray wrapper to JSC. We can then do vptr comparisons to
devirtualise the calls.

This devirtualisation improves performance by 1.5-2x in my somewhat ad
hoc tests.

WebCore:
Remove the WebCore CanvasPixelArray implementation and replace
CPA usage with JSC::ByteArray. Replace the JSCanvasPixelArray
wrapper with an explicitly instantiated JSByteArray put on the
JSImageData object as an ordinary ReadOnly, DontDelete property.

3:36 PM Changeset in webkit [39624] by adele@apple.com
  • 2 edits in trunk/WebKit/win

2009-01-05 Adele Peterson <adele@apple.com>

Windows build fix.

  • WebCoreSupport/WebChromeClient.cpp:
3:32 PM Changeset in webkit [39623] by andersca@apple.com
  • 3 edits in trunk/WebKit/win

2009-01-05 Anders Carlsson <andersca@apple.com>

Reviewed by Adam Roben.

Make it possible to have per value variant types.


  • COMPropertyBag.h: (::Read): Call variantType here, passing in the value.


(::GetPropertyInfo):
Ditto.


  • COMVariantSetter.h: (COMVariantSetterBase::variantType): Add COMVariantSetterBase, whose variantType implementation just returns the VariantType variable. Make all existing classes inherit from COMVariantSetterBase.
3:31 PM Changeset in webkit [39622] by treat@webkit.org
  • 2 edits in trunk/WebKit/mac

Another blind mac build fix

3:18 PM Changeset in webkit [39621] by treat@webkit.org
  • 2 edits in trunk/WebKit/mac

Blind mac build fix

3:11 PM Changeset in webkit [39620] by treat@webkit.org
  • 2 edits in trunk/WebKit/mac

Fix mac build

3:09 PM Changeset in webkit [39619] by treat@webkit.org
  • 2 edits in trunk/WebKit/win

Fix win build

3:08 PM Changeset in webkit [39618] by treat@webkit.org
  • 2 edits in trunk/WebKit/gtk

Fix build

2:53 PM Changeset in webkit [39617] by treat@webkit.org
  • 26 edits in trunk

Add new API for contentsSizeChanged which Qt will introduce

2:27 PM Changeset in webkit [39616] by andersca@apple.com
  • 2 edits in trunk/WebCore

2009-01-05 Anders Carlsson <andersca@apple.com>

Build fix.


  • plugins/PluginView.h: (WebCore::PluginManualLoader::~PluginManualLoader):
2:25 PM Changeset in webkit [39615] by treat@webkit.org
  • 4 edits in trunk

Fix ChangeLogs to reflect work done by Torchmobile

2:02 PM Changeset in webkit [39614] by andersca@apple.com
  • 3 edits in trunk/WebKit/win

2009-01-05 Anders Carlsson <andersca@apple.com>

Reviewed by Kevin Decker.

Use the ManualLoader class instead of assuming that the manual loader
is a plug-in view.


  • WebCoreSupport/WebFrameLoaderClient.cpp: (WebFrameLoaderClient::WebFrameLoaderClient): (WebFrameLoaderClient::setMainDocumentError): (WebFrameLoaderClient::committedLoad): (WebFrameLoaderClient::finishedLoading): (WebFrameLoaderClient::redirectDataToPlugin):
  • WebCoreSupport/WebFrameLoaderClient.h:
1:46 PM Changeset in webkit [39613] by andersca@apple.com
  • 3 edits in trunk/WebCore

2009-01-05 Anders Carlsson <andersca@apple.com>

Reviewed by Kevin Decker.


Add an abstract PluginManualLoader class and make PluginView inherit from it.


Add some error checking that currently exists in WebKit (but not for long!)


  • plugins/PluginView.cpp: (WebCore::PluginView::didReceiveResponse): (WebCore::PluginView::didReceiveData): (WebCore::PluginView::didFinishLoading): (WebCore::PluginView::didFail):
  • plugins/PluginView.h:
1:33 PM Changeset in webkit [39612] by Darin Adler
  • 3 edits in trunk/LayoutTests

2009-01-05 Darin Adler <Darin Adler>

Reviewed by Oliver Hunt.

Fix failing set-colors test.

  • fast/canvas/resources/set-colors.js: Change the CMYK test cases to use the black channel only.
  • fast/canvas/set-colors-expected.txt: Updated. The old version I checked in accidentally expected failure for the bug I fixed. Also need new results for the CMYK test cases.
1:14 PM Changeset in webkit [39611] by treat@webkit.org
  • 8 edits in trunk

Fixes QWebFrame::setScrollBarPolicy(..) to actually work. Also happens
to fix 192 layout tests that were previously failing for Qt.

11:53 AM Changeset in webkit [39610] by ap@webkit.org
  • 2 edits in trunk/WebCore

Reviewed by Sam Weinig.

Fix platforms that don't have Workers enabled.

  • platform/ThreadGlobalData.cpp: (WebCore::threadGlobalData): Create ThreadGlobalData in two stages, so that EventNames constructor can access the just-created atomic string table. This matches what happens in ThreadSpecific case.
11:50 AM Changeset in webkit [39609] by Darin Adler
  • 3 edits
    1 copy
    3 adds in trunk

WebCore:

2009-01-05 Darin Adler <Darin Adler>

Reviewed by Dan Bernstein.

Bug 23109: REGRESSION: Backwards search in a long document matches incorrectly
https://bugs.webkit.org/show_bug.cgi?id=23109

Test: fast/text/find-backwards.html

  • editing/TextIterator.cpp: (WebCore::SearchBuffer::append): Fix incorrect size passed to memcpy. (WebCore::SearchBuffer::search): Handle case where we have an empty buffer but we're at a break; must not try to search because ICU will give us an error. Fix incorrect size passed to memcpy and memmove. (WebCore::findPlainText): Fix case where we found a match and need to search again because we want to find the last match. We need to try again without adding any more text or handling the break before moving on.

LayoutTests:

2009-01-05 Darin Adler <Darin Adler>

Reviewed by Dan Bernstein.

Bug 23109: REGRESSION: Backwards search in a long document matches incorrectly
https://bugs.webkit.org/show_bug.cgi?id=23109

  • fast/text/find-backwards-expected.txt: Added.
  • fast/text/find-backwards.html: Added.
  • fast/text/resources/TEMPLATE.html: Copied from fast/js/resources/TEMPLATE.html.
  • fast/text/resources/find-backwards.js: Added.
11:45 AM Changeset in webkit [39608] by treat@webkit.org
  • 2 edits in trunk/WebCore

Fix the Qt build

11:13 AM Changeset in webkit [39607] by ap@webkit.org
  • 2 edits in trunk/WebCore

Suggested by Dave Levin.

Mac release build fix.

  • WebCore.base.exp: Remove ThreadGlobalData::eventNames(), which is now inline.
10:24 AM Changeset in webkit [39606] by Darin Adler
  • 2 edits in trunk/WebCore

2009-01-05 Darin Adler <Darin Adler>

  • dom/Document.cpp: Fix build. Oops again.
10:19 AM Changeset in webkit [39605] by Darin Adler
  • 2 edits in trunk/WebCore

2009-01-05 Darin Adler <Darin Adler>

Reviewed by Anders Carlsson.

Fix hang whenever following an anchor.

  • dom/Document.cpp: (WebCore::Document::findAnchor): Oops!
10:13 AM Changeset in webkit [39604] by ap@webkit.org
  • 6 edits in trunk

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=23073
<rdar://problem/6471129> Workers crash on Windows Release builds

JavaScriptCore:

  • wtf/ThreadSpecific.h: (WTF::ThreadSpecific::destroy): Changed to clear the pointer only after data object destruction is finished - otherwise, WebCore::ThreadGlobalData destructor was re-creating the object in order to access atomic string table. (WTF::ThreadSpecific::operator T*): Symmetrically, set up the per-thread pointer before data constructor is called.
  • wtf/ThreadingWin.cpp: (WTF::wtfThreadEntryPoint): Remove a Windows-only hack to finalize a thread - pthreadVC2 is a DLL, so it gets thread detached messages, and cleans up thread specific data automatically. Besides, this code wasn't even compiled in for some time now.

WebCore:

  • platform/ThreadGlobalData.cpp: (WebCore::ThreadGlobalData::ThreadGlobalData):
  • platform/ThreadGlobalData.h: (WebCore::ThreadGlobalData::eventNames): Now that ThreadSpecific sets up the pointer before invoking data constructor, we can initialize EventNames right away.
9:32 AM Changeset in webkit [39603] by Darin Adler
  • 13 edits in trunk/WebCore

2009-01-05 Darin Adler <Darin Adler>

Reviewed by Anders Carlsson.

Bug 23106: HTMLFormCollection::namedItem ignores caseSensitive argument
https://bugs.webkit.org/show_bug.cgi?id=23106

This led me to a bunch of dead code. It turns out that HTML collections
were carrying the case-insensitive code just so they could be used to
find anchors, something we can do more simply and efficiently without
creating a DOM HTMLCollection object.

No behavior change. Just adding a new function findAnchor function and
removing some dead code.

  • dom/Document.cpp: (WebCore::Document::findAnchor): Added.
  • dom/Document.h: Ditto.
  • html/HTMLAnchorElement.cpp: (WebCore::HTMLAnchorElement::accessKey): Take and return AtomicString references for better efficiency. (WebCore::HTMLAnchorElement::setAccessKey): Ditto. (WebCore::HTMLAnchorElement::charset): Ditto. (WebCore::HTMLAnchorElement::setCharset): Ditto. (WebCore::HTMLAnchorElement::coords): Ditto. (WebCore::HTMLAnchorElement::setCoords): Ditto. (WebCore::HTMLAnchorElement::setHref): Ditto. (WebCore::HTMLAnchorElement::hreflang): Ditto. (WebCore::HTMLAnchorElement::setHreflang): Ditto. (WebCore::HTMLAnchorElement::name): Ditto. (WebCore::HTMLAnchorElement::setName): Ditto. (WebCore::HTMLAnchorElement::rel): Ditto. (WebCore::HTMLAnchorElement::setRel): Ditto. (WebCore::HTMLAnchorElement::rev): Ditto. (WebCore::HTMLAnchorElement::setRev): Ditto. (WebCore::HTMLAnchorElement::shape): Ditto. (WebCore::HTMLAnchorElement::setShape): Ditto. (WebCore::HTMLAnchorElement::setTarget): Ditto. (WebCore::HTMLAnchorElement::type): Ditto. (WebCore::HTMLAnchorElement::setType): Ditto.
  • html/HTMLAnchorElement.h: Ditto.
  • html/HTMLCollection.cpp: (WebCore::HTMLCollection::checkForNameMatch): Changed argument to an AtomicString and removed the caseSensitive boolean, since we're now always case sensitive. (WebCore::HTMLCollection::namedItem): Ditto. (WebCore::HTMLCollection::nextNamedItem): Ditto.
  • html/HTMLCollection.h: Ditto.
  • html/HTMLFormCollection.cpp: (WebCore::HTMLFormCollection::getNamedItem): Ditto. (WebCore::HTMLFormCollection::getNamedFormItem): Ditto. (WebCore::HTMLFormCollection::nextNamedItemInternal): Ditto. (WebCore::HTMLFormCollection::namedItem): Ditto. (WebCore::HTMLFormCollection::nextNamedItem): Ditto.
  • html/HTMLFormCollection.h: Ditto.
  • html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::namedItem): Ditto.
  • html/HTMLSelectElement.h: Ditto.
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::gotoAnchor): Use the new findAnchor function.
  • page/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::internalLinkElement): Ditto.
9:29 AM Changeset in webkit [39602] by Darin Adler
  • 7 edits
    3 adds in trunk

WebCore:

2009-01-05 Darin Adler <Darin Adler>

Reviewed by Anders Carlsson.

Bug 23104: minor mistakes in init functions for animation and transition events
https://bugs.webkit.org/show_bug.cgi?id=23104

Test: fast/events/init-events.html

Also fixed two StorageEvent problems the test case uncovered:

Made document.createEvent("StorageEvent") work.
Allow null values for StorageEvent.oldValue and StorageEvent.newValue.

  • dom/Document.cpp: (WebCore::Document::createEvent): Sorted alphabetically by the name of the event class. Added StorageEvent.
  • dom/UIEvent.idl: Fixed typo in a comment.
  • dom/WebKitAnimationEvent.cpp: (WebCore::WebKitAnimationEvent::initWebKitAnimationEvent): Use all the arguments.
  • dom/WebKitTransitionEvent.cpp: (WebCore::WebKitTransitionEvent::initWebKitTransitionEvent): Ditto.
  • storage/StorageEvent.idl: Use the ConvertNullToNullString keyword on the arguments to initStorageEvent so it can create events with null values for the oldValue and newValue, just like the real storage events. Note that the properties already had ConvertNullStringTo=Null, so this is just the other half of that.

LayoutTests:

2009-01-05 Darin Adler <Darin Adler>

Reviewed by Anders Carlsson.

Bug 23104: minor mistakes in init functions for animation and transition events
https://bugs.webkit.org/show_bug.cgi?id=23104

  • fast/events/init-events-expected.txt: Added.
  • fast/events/init-events.html: Added.
  • fast/events/resources/init-events.js: Added.
9:26 AM Changeset in webkit [39601] by Darin Adler
  • 192 edits in trunk/WebCore

2009-01-05 Darin Adler <Darin Adler>

Reviewed by Alexey Proskuryakov.

Bug 23102: turn on unused parameter warnings in WebCore
https://bugs.webkit.org/show_bug.cgi?id=23102

First step: Fix the simple cases where we can just remove an argument name.
Also made a few more things protected and private.

  • many files
9:21 AM Changeset in webkit [39600] by ap@webkit.org
  • 8 edits in trunk

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=23115
Create a version of ASSERT for use with otherwise unused variables

JavaScriptCore:

  • wtf/Assertions.h: Added ASSERT_UNUSED.
  • jit/ExecutableAllocatorPosix.cpp: (JSC::ExecutablePool::systemRelease):
  • runtime/Collector.cpp: (JSC::Heap::destroy): (JSC::Heap::heapAllocate):
  • runtime/JSNotAnObject.cpp: (JSC::JSNotAnObject::toPrimitive): (JSC::JSNotAnObject::getPrimitiveNumber): (JSC::JSNotAnObject::toBoolean): (JSC::JSNotAnObject::toNumber): (JSC::JSNotAnObject::toString): (JSC::JSNotAnObject::getOwnPropertySlot): (JSC::JSNotAnObject::put): (JSC::JSNotAnObject::deleteProperty): (JSC::JSNotAnObject::getPropertyNames):
  • wtf/TCSystemAlloc.cpp: (TCMalloc_SystemRelease): Use it in some places that used other idioms for this purpose.

WebCore:

  • loader/appcache/ApplicationCacheStorage.cpp: (WebCore::ApplicationCacheStorage::verifySchemaVersion): Use the new ASSERT_UNUSED macro.
9:18 AM Changeset in webkit [39599] by ap@webkit.org
  • 2 edits in trunk/WebCore

Non-Mac build fix.

  • loader/appcache/ApplicationCacheStorage.cpp: Include wtf/StringExtras.h for snprintf.
9:15 AM Changeset in webkit [39598] by treat@webkit.org
  • 2 edits in trunk/WebCore

Remove unnecessary methods from EmptyFrameLoaderClient

12:55 AM Changeset in webkit [39597] by ap@webkit.org
  • 3 edits in trunk/WebCore

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=23077
Make application cache use SQLite built-in user_version

  • loader/appcache/ApplicationCacheStorage.cpp: (WebCore::ApplicationCacheStorage::verifySchemaVersion): Changed to track versions with PRAGMA user_version.
  • loader/appcache/ApplicationCacheResource.h: (WebCore::ApplicationCacheResource::): Used the occasion to get rid of the hole in bitmask that was a leftover from opportunistic cache entries.
12:39 AM Changeset in webkit [39596] by dsmith@webkit.org
  • 3 edits in trunk/WebCore

2009-01-04 David Smith <catfish.man@gmail.com>

Reviewed by Oliver Hunt.

Avoid redundant AtomicString conversions

  • dom/Node.cpp: (WebCore::Node::getElementsByTagName): Pass starAtom instead of "*" (WebCore::Node::getElementsByTagNameNS): Take an AtomicString for the namespace URI (WebCore::Node::isDefaultNamespace): Ditto (WebCore::Node::lookupPrefix): Ditto (WebCore::Node::lookupNamespacePrefix): Ditto
  • dom/Node.h: Ditto

Jan 4, 2009:

11:25 PM Changeset in webkit [39595] by Darin Adler
  • 4 edits
    3 adds in trunk

WebCore:

2009-01-04 Darin Adler <Darin Adler>

Reviewed by Oliver Hunt.

Bug 23105: canvas setFillColor function ignores alpha argument
https://bugs.webkit.org/show_bug.cgi?id=23105

Test: fast/canvas/set-colors.html

  • html/CanvasRenderingContext2D.cpp: (WebCore::CanvasRenderingContext2D::setFillColor): Pass alpha value through instead of ignoring it and always passing 1.
  • html/CanvasStyle.cpp: (WebCore::CanvasStyle::applyStrokeColor): Fix spelling of transparent in comments. (WebCore::CanvasStyle::applyFillColor): Ditto.

LayoutTests:

2009-01-04 Darin Adler <Darin Adler>

Reviewed by Oliver Hunt.

Bug 23105: canvas setFillColor function ignores alpha argument
https://bugs.webkit.org/show_bug.cgi?id=23105

  • fast/canvas/resources/set-colors.js: Added.
  • fast/canvas/set-colors-expected.txt: Added.
  • fast/canvas/set-colors.html: Added.
9:41 PM Changeset in webkit [39594] by Darin Adler
  • 2 edits in trunk/WebCore

2009-01-04 Darin Adler <Darin Adler>

Bug 23086: REGRESSION(r39540/r39541): Windows build fails due to ICU errors
https://bugs.webkit.org/show_bug.cgi?id=23086

  • editing/TextIterator.cpp: Check UCONFIG_NO_COLLATION and don't compile in the new search path if it's 0.
4:18 PM Changeset in webkit [39593] by alice.liu@apple.com
  • 3 edits in trunk/JavaScriptCore

2009-01-04 Alice Liu <alice.liu@apple.com>

<rdar://problem/6341776> Merge m_transitionCount and m_offset in Structure.

Reviewed by Darin Adler.

  • runtime/Structure.cpp: (JSC::Structure::Structure): Remove m_transitionCount (JSC::Structure::addPropertyTransitionToExistingStructure): No need to wait until after the assignment to offset to assert if it's notFound; move it up. (JSC::Structure::addPropertyTransition): Use method for transitionCount instead of m_transitionCount. Remove line that maintains the m_transitionCount. (JSC::Structure::changePrototypeTransition): Remove line that maintains the m_transitionCount. (JSC::Structure::getterSetterTransition): Remove line that maintains the m_transitionCount.
  • runtime/Structure.h: Changed s_maxTransitionLength and m_offset from size_t to signed char. m_offset will never become greater than 64 because the structure transitions to a dictionary at that time. (JSC::Structure::transitionCount): method to replace the data member
1:09 PM Changeset in webkit [39592] by ddkilzer@apple.com
  • 4 edits
    4 adds in trunk

Don't install internal headers in WebKit framework

Reviewed by Darin Adler.

WebKit:

  • WebKit.xcodeproj/project.pbxproj: Remove roles from internal headers so they're not installed.

WebKitTools:

Since WebHTMLRepresentationInternal.h and WebTypesInternal.h are
no longer installed in WebKit.framework/PrivateHeaders, use the
special relationship of DumpRenderTree within the WebKit source
tree to include the internal headers through relative paths.
Created the concept of mac/InternalHeaders to hide the ugly
paths.

  • DumpRenderTree/mac/Configurations/Base.xcconfig: Added mac/InternalHeaders to HEADER_SEARCH_PATHS.
  • DumpRenderTree/mac/InternalHeaders/WebKit/WebHTMLRepresentationInternal.h: Added.
  • DumpRenderTree/mac/InternalHeaders/WebKit/WebTypesInternal.h: Added.
12:14 PM Changeset in webkit [39591] by mitz@apple.com
  • 4 edits in trunk

Fixed change log entry dates.

11:57 AM Changeset in webkit [39590] by ddkilzer@apple.com
  • 2 edits in trunk/WebCore

Don't install *.idl and *.in files as resources

Reviewed by Oliver Hunt.

Don't install these files as resources in the WebCore framework:

  • WMLAttributeNames.in
  • WMLTagNames.in
  • WorkerContext.idl
  • WorkerLocation.idl
  • WorkerNavigator.idl
  • WebCore.xcodeproj/project.pbxproj: Removed resources.
11:10 AM Changeset in webkit [39589] by Simon Fraser
  • 3 edits in trunk/LayoutTests

2009-01-04 Simon Fraser <Simon Fraser>

Fix the expected image to account for a typo fix done on 2008-12-23.

  • platform/mac/fast/transforms/identity-matrix-expected.checksum:
  • platform/mac/fast/transforms/identity-matrix-expected.png:
10:38 AM Changeset in webkit [39588] by Simon Fraser
  • 3 edits
    4 adds in trunk

2009-01-04 Simon Fraser <Simon Fraser>

Reviewed by Darin Adler

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

If an object gets a Layout hint, and the style change will result in
the creation of a RenderLayer, then we need to repaint the old position
of the object. This was done for transform, but we have to test opacity too.

Test: fast/repaint/create-layer-repaint.html

  • rendering/RenderObject.cpp: (WebCore::RenderObject::styleWillChange):
10:24 AM Changeset in webkit [39587] by Darin Adler
  • 2 edits in trunk/WebCore

2009-01-04 Darin Adler <Darin Adler>

Reviewed by Dan Bernstein.

Bug 23103: Safari's auto-fill no longer works for <select> elements
https://bugs.webkit.org/show_bug.cgi?id=23103
rdar://problem/6472061

  • bindings/objc/DOMHTML.mm: (-[DOMHTMLSelectElement _activateItemAtIndex:]): Implemented this.
10:23 AM Changeset in webkit [39586] by Darin Adler
  • 4 edits in trunk

Fixed change log entry dates.

10:00 AM Changeset in webkit [39585] by Darin Adler
  • 2 edits in trunk/JavaScriptCore

2009-01-04 Darin Adler <Darin Adler>

Reviewed by David Kilzer.

Bug 15114: Provide compile-time assertions for sizeof(UChar), sizeof(DeprecatedChar), etc.
https://bugs.webkit.org/show_bug.cgi?id=15114

  • wtf/unicode/Unicode.h: Assert size of UChar. There is no DeprecatedChar any more.
9:39 AM Changeset in webkit [39584] by treat@webkit.org
  • 4 edits in trunk/WebKit/qt

Add new API to QWebHitTestResult to return a rect for the smallest enclosing
block element of the hit test

9:28 AM Changeset in webkit [39583] by treat@webkit.org
  • 2 edits in trunk/WebKit/win

Make the apple windows port build with the new fixedLayoutSize feature

9:26 AM Changeset in webkit [39582] by treat@webkit.org
  • 2 edits in trunk/WebKit/gtk

Make the gtk port build with the new fixedLayoutSize feature

9:25 AM Changeset in webkit [39581] by treat@webkit.org
  • 9 edits
    3 adds in trunk

Make the qt port build and work with the new fixedLayoutSize feature

9:25 AM Changeset in webkit [39580] by treat@webkit.org
  • 10 edits in trunk/WebCore

Add fixedLayoutSize feature to ScrollView to allow for controlling the
layout beyond the constraint of the current viewports dynamic size

6:26 AM Changeset in webkit [39579] by Darin Adler
  • 2 edits in trunk/LayoutTests

2009-01-04 Darin Adler <Darin Adler>

Suggested by Dan Bernstein.

  • platform/mac/editing/selection/move-left-right-expected.txt: Remove WARNING lines that are no longer showing up. Dan said he didn't know why we were seeing those before and why they're gone now, but it's good that they're gone.
6:12 AM Changeset in webkit [39578] by Darin Adler
  • 2 edits in trunk/LayoutTests

2009-01-03 Darin Adler <Darin Adler>

Reviewed by Dan Bernstein.

Bug 23095: REGRESSION: fast/text/find-case-folding.html regression test failing when ICU used for text search
https://bugs.webkit.org/show_bug.cgi?id=23095

  • fast/text/find-case-folding.html: Work around this ICU bug in the test for now. Later we might want to work around it in our search code instead, or in addition, if we can figure out how to do that.

Jan 3, 2009:

10:19 PM Changeset in webkit [39577] by weinig@apple.com
  • 3 edits in trunk/JavaScriptCore

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

Reviewed by Oliver Hunt.

Change the pcVector from storing native code pointers to storing offsets
from the base pointer. This will allow us to generate the pcVector on demand
for exceptions.

  • bytecode/CodeBlock.h: (JSC::PC::PC): (JSC::getNativePCOffset): (JSC::CodeBlock::getBytecodeIndex):
  • jit/JIT.cpp: (JSC::JIT::privateCompile):
7:22 PM Changeset in webkit [39576] by ddkilzer@apple.com
  • 7 edits in trunk

Bug 23091: Some webarchive http tests intermittently fail due to Connection/Keep-Alive header differences

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

Reviewed by Darin Adler.

WebKitTools:

  • DumpRenderTree/mac/DumpRenderTree.mm: (normalizeHTTPResponseHeaderFields): Remove Keep-Alive and Connection headers from webarchive results.

LayoutTests:

Updated test results after removing Keep-Alive and Connection
headers from webarchive tests.

  • http/tests/webarchive/test-css-url-encoding-expected.webarchive:
  • http/tests/webarchive/test-css-url-encoding-shift-jis-expected.webarchive:
  • http/tests/webarchive/test-css-url-encoding-utf-8-expected.webarchive:
  • http/tests/webarchive/test-preload-resources-expected.webarchive:
12:00 PM Applications using WebKit edited by andrejohn.mas@gmail.com
formatting correction (diff)
11:59 AM Applications using WebKit edited by andrejohn.mas@gmail.com
Added Google Chrome (diff)
11:52 AM Changeset in webkit [39575] by zecke@webkit.org
  • 7 edits in trunk/WebKit/gtk

[GTK] Fix the reference counting of WebKitWebFrames

The ownership is the following: WebKitWebView owns a WebCore::Page.
WebKitWebView is creating one WebKitWebFrame which will be the
mainFrame of the WebCore::Page (having the reference on the Frame).

The FrameLoaderClient has the reference of the WebKitWebFrame for
the main frame and also any other frame. This means when the
WebCore::Frame goes away the FrameLoaderClient will go away which
will normally remove the last reference of the WebKitWebFrame. Because
an API user might have g_object_ref'ed the WebKitWebFrame null
checks had to be added to WebKitWebFrame.

For WebCore::Frames created by the FrameLoaderClient the ownership
will be passed down to the FrameTree, the WebKitWebFrame is not holding
a reference to the WebCore::Frame.

Do not g_object_unref the mainFrame in the destructor of the
WebKitWebFrame as this will happen from within the WebCore::Page
destruction. Do not hold a reference to the WebCore::Frame (circle) in
WebKitWebFrame, add null checks as the WebCore::Frame might have gone
away. Do not keep track of the FrameLoaderClient in the private
structures as it was mostly unusued.

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

8:48 AM Changeset in webkit [39574] by rwlbuis@webkit.org
  • 4 edits
    4 adds in trunk

Reviewed by Darin.

https://bugs.webkit.org/show_bug.cgi?id=22660
SVG elements that are moved are nor fully invalidated/earsed

Mark the SVG root as needing a layout when its position changes.

Tests: svg/custom/circle-move-invalidation.svg

12:21 AM Changeset in webkit [39573] by sfalken@apple.com
  • 2 edits in trunk/WebCore

Build fix.

  • loader/FrameLoader.h:
Note: See TracTimeline for information about the timeline view.