Timeline
Jun 24, 2008:
- 11:34 PM Changeset in webkit [34790] by
-
- 2 edits in trunk/JavaScriptCore
2008-06-24 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Alexey Proskuryakov.
Make the JavaScript shell collect the heap from main() instead of
jscmain() to suppress leak messages in debug builds.
- kjs/Shell.cpp: (main): (jscmain):
- 9:35 PM Changeset in webkit [34789] by
-
- 4 edits2 adds in trunk
WebCore:
2008-06-24 Anonymous
Reviewed by Darin Adler. Committed by Adam Barth.
Check for a null documentElement() to fix four crashes.
- WebCore/dom/Document.cpp:
- WebCore/dom/Node.cpp:
LayoutTests:
2008-06-24 Anonymous
Reviewed by Darin Adler. Committed by Adam Barth.
Check for a null documentElement() to fix four crashes.
- LayoutTests/fast/dom/documentElement-null-expected.txt: Added.
- LayoutTests/fast/dom/documentElement-null.html: Added.
- 9:32 PM Changeset in webkit [34788] by
-
- 2 edits in trunk/LayoutTests/platform/mac/fast/parser
Fix png mime-type
- 9:14 PM Changeset in webkit [34787] by
-
- 3 edits12 adds in trunk
WebCore:
2008-06-24 Adam Barth <abarth@webkit.org>
Reviewed by Darin Adler.
Correctly parse <!-- </textarea> --> inside a <textarea>, matching
Internet Explorer, Firefox, Opera, and HTML 5.
Tests: fast/parser/comment-in-script-tricky.html
fast/parser/comment-in-style.html
fast/parser/comment-in-textarea.html
fast/parser/comment-in-title.html
- html/HTMLTokenizer.cpp: (WebCore::HTMLTokenizer::parseSpecial):
LayoutTests:
2008-06-24 Adam Barth <abarth@webkit.org>
Reviewed by Darin Adler.
Test that we correctly parse comments containing end tags in CDATA and
RCDATA contexts.
- fast/parser/comment-in-script-tricky-expected.txt: Added.
- fast/parser/comment-in-script-tricky.html: Added.
- fast/parser/comment-in-style.html: Added.
- fast/parser/comment-in-textarea.html: Added.
- fast/parser/comment-in-title-expected.txt: Added.
- fast/parser/comment-in-title.html: Added.
- platform/mac/fast/parser/comment-in-style-expected.checksum: Added.
- platform/mac/fast/parser/comment-in-style-expected.png: Added.
- platform/mac/fast/parser/comment-in-style-expected.txt: Added.
- platform/mac/fast/parser/comment-in-textarea-expected.checksum: Added.
- platform/mac/fast/parser/comment-in-textarea-expected.png: Added.
- platform/mac/fast/parser/comment-in-textarea-expected.txt: Added.
- 7:41 PM Changeset in webkit [34786] by
-
- 2 edits in trunk/LayoutTests
Reviewed by Mark Rowe.
- add another test using remote fonts to the Tiger skipped list
- platform/mac-tiger/Skipped: Added fast/css/font-weight-1.html.
- 7:04 PM Changeset in webkit [34785] by
-
- 2 edits in trunk/LayoutTests
2008-06-24 Mark Rowe <mrowe@apple.com>
Exclude the newly-added accessibilityController from the dumped window properties.
- fast/dom/Window/window-properties.html:
- 5:41 PM Changeset in webkit [34784] by
-
- 4 edits in trunk/JavaScriptCore
2008-06-24 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Maciej.
Make the conversion of the pair (less, jtrue) to jless use register
reference counting information for safety instead of requiring callers
to decide whether it is safe.
No changes on SunSpider codegen.
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitJumpIfTrue):
- VM/CodeGenerator.h:
- kjs/nodes.cpp: (KJS::DoWhileNode::emitCode): (KJS::WhileNode::emitCode): (KJS::ForNode::emitCode): (KJS::CaseBlockNode::emitCodeForBlock):
- 5:36 PM Changeset in webkit [34783] by
-
- 3 edits in trunk/WebKitTools
Reviewed by Stephanie Lewis.
- move the linker flags from the debug configuration in the project to the shared configuration
- DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
- DumpRenderTree/mac/Configurations/DumpRenderTree.xcconfig:
- 5:03 PM Changeset in webkit [34782] by
-
- 2 edits in trunk/WebKitTools
- try to fix the Tiger build
- DumpRenderTree/mac/AccessibilityControllerMac.mm:
- 4:03 PM Changeset in webkit [34781] by
-
- 6 edits in trunk/JavaScriptCore
2008-06-24 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Rubber stamped by Oliver.
Roll out r34777 due to multiple assertion failures on tests.
- ChangeLog:
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitJump): (KJS::CodeGenerator::emitJumpIfTrueMayCombine): (KJS::CodeGenerator::emitJumpIfTrue): (KJS::CodeGenerator::emitJumpIfFalse): (KJS::CodeGenerator::emitJumpScopes):
- VM/LabelID.h:
- VM/Machine.cpp: (KJS::Machine::privateExecute):
- VM/Machine.h:
- VM/Opcode.h:
- 3:31 PM Changeset in webkit [34780] by
-
- 5 edits2 adds in trunk
WebCore:
2008-06-24 Justin Garcia <justin.garcia@apple.com>
Reviewed by John.
<rdar://problem/6026335> REGRESSION: Caret disappears after deleting a particular selection involving a ToDo
- editing/CompositeEditCommand.cpp: (WebCore::CompositeEditCommand::moveParagraphs): If asked to preserveStyle, we apply styles from the moved paragraph to the destination with applyStyle, which does selection preservation when it needs to apply block styles. Selection preservation uses relatively untested code in TextIterator to count VisiblePositions which fails in this particular test case because it doesn't handle changes in editability properly. We can avoid this bug by not applying block styles from moved paragraphs. This is something that should be done anyway, since the moved paragraph should assume the block styles of the destination.
- editing/EditCommand.cpp: (WebCore::EditCommand::styleAtPosition): Added a FIXME about how it is misleading for this function to also include the typing style.
- editing/TextIterator.h: Added a FIXME about how the code path used for selection preservation is buggy and should be phased out when we rewrite moveParagraphs.
LayoutTests:
2008-06-24 Justin Garcia <justin.garcia@apple.com>
Reviewed by John.
<rdar://problem/6026335> REGRESSION: Caret disappears after deleting a particular selection involving a ToDo
- editing/deleting/6026335-expected.txt: Added.
- editing/deleting/6026335.html: Added.
- 2:30 PM Changeset in webkit [34779] by
-
- 1 edit1 add in trunk/WebCore
2008-06-24 Kevin McCullough <kmccullough@apple.com>
-Added a manual test for the profiler.
- manual-tests/inspector/profiler-test-compare-multiple-profiles.html: Added.
- 2:22 PM Changeset in webkit [34778] by
-
- 4 edits in trunk/JavaScriptCore
2008-06-24 Kevin McCullough <kmccullough@apple.com>
Reviewed by Tim.
<rdar://problem/6031594> JSProfiler: Profiler goes into an infinite
loop sometimes.
<rdar://problem/6031603> JSProfiler: Profiler asserts in debug and
give the wrong times in release
Fixed two issues found by Tim in the same test.
- profiler/Profile.cpp: (KJS::Profile::removeProfileStart): No longer take profile's time from all ancestors, but instead attribute it to its parent. Also add an Assert to ensure we only delete the child we mean to. (KJS::Profile::removeProfileEnd): Ditto for profileEnd. (KJS::Profile::didExecute): Cleaned up the execution order and correctly attribute all of the parent's time to the new node.
- profiler/ProfileNode.cpp: If this node does not have a startTime it should not get a giant total time, but instead be 0. (KJS::ProfileNode::endAndRecordCall):
- profiler/ProfileNode.h: (KJS::ProfileNode::removeChild): Should reset the sibling pointers since one of them has been removed.
- 2:19 PM Changeset in webkit [34777] by
-
- 6 edits in trunk/JavaScriptCore
Groundwork for reimplementing the slow script dialog
Reviewed by Cameron.
Add special loop opcodes as groundwork for slow script
termination. Also added a few assertions to prevent us
from accidentally coalescing conditional jump operands
in a way that might bypass the slow script opcodes.
- 2:02 PM Changeset in webkit [34776] by
-
- 9 edits6 adds in trunk
WebKitTools:
2008-06-24 Sam Weinig and Beth Dakin <Beth Dakin and sam@webkit.org>
Reviewed by Darin.
Fix for <rdar://problem/5884881> Make DumpRenderTree support
accessibility tests
This patch adds some basic support for accessibility layout tests
on the Mac.
- DumpRenderTree/AccessibilityController.cpp: Added. (AccessibilityController::AccessibilityController): (AccessibilityController::~AccessibilityController): (dumpCurrentAttributesCallback): (AccessibilityController::makeWindowObject): (AccessibilityController::getJSClass): (AccessibilityController::staticFunctions):
- DumpRenderTree/AccessibilityController.h: Added.
- DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
- DumpRenderTree/mac/AccessibilityControllerMac.mm: Added. (descriptionOfValue): (AccessibilityController::dumpCurrentAttributes):
- DumpRenderTree/mac/DumpRenderTree.mm:
- DumpRenderTree/mac/FrameLoadDelegate.h:
- DumpRenderTree/mac/FrameLoadDelegate.mm: (-[FrameLoadDelegate init]): (-[FrameLoadDelegate webView:didClearWindowObject:forFrame:]):
LayoutTests:
2008-06-24 Sam Weinig and Beth Dakin <Beth Dakin and sam@webkit.org>
Reviewed by Darin.
First test for <rdar://problem/5884881> Make DumpRenderTree support
accessibility tests
- accessibility: Added.
- accessibility/document-attributes-expected.txt: Added.
- accessibility/document-attributes.html: Added.
- platform/gtk/Skipped:
- platform/qt/Skipped:
- platform/win/Skipped:
- 1:09 PM Changeset in webkit [34775] by
-
- 7 edits7 adds in trunk
WebCore:
2008-06-24 Sam Weinig <sam@webkit.org>
Reviewed by Anders Carlsson.
Add support for loadstart, abort and error events for XMLHttpRequests.
Tests: http/tests/xmlhttprequest/onabort-event.html
http/tests/xmlhttprequest/onerror-event.html
http/tests/xmlhttprequest/onloadstart-event.html
- bindings/js/JSXMLHttpRequestCustom.cpp: (WebCore::JSXMLHttpRequest::mark): (WebCore::JSXMLHttpRequest::onreadystatechange): (WebCore::JSXMLHttpRequest::onabort): (WebCore::JSXMLHttpRequest::setOnabort): (WebCore::JSXMLHttpRequest::onerror): (WebCore::JSXMLHttpRequest::setOnerror): (WebCore::JSXMLHttpRequest::onload): (WebCore::JSXMLHttpRequest::onloadstart): (WebCore::JSXMLHttpRequest::setOnloadstart): (WebCore::JSXMLHttpRequest::onprogress):
- dom/EventNames.h:
- xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::callReadyStateChangeListener): (WebCore::XMLHttpRequest::createRequest): (WebCore::XMLHttpRequest::abort): (WebCore::XMLHttpRequest::networkError): (WebCore::XMLHttpRequest::abortError): (WebCore::XMLHttpRequest::didFail): (WebCore::XMLHttpRequest::updateAndDispatchOnProgress): (WebCore::XMLHttpRequest::dispatchReadyStateChangeEvent): (WebCore::XMLHttpRequest::dispatchXMLHttpRequestProgressEvent): (WebCore::XMLHttpRequest::dispatchAbortEvent): (WebCore::XMLHttpRequest::dispatchErrorEvent): (WebCore::XMLHttpRequest::dispatchLoadEvent): (WebCore::XMLHttpRequest::dispatchLoadStartEvent): (WebCore::XMLHttpRequest::dispatchProgressEvent):
- xml/XMLHttpRequest.h: (WebCore::XMLHttpRequest::setOnAbortListener): (WebCore::XMLHttpRequest::onAbortListener): (WebCore::XMLHttpRequest::setOnErrorListener): (WebCore::XMLHttpRequest::onErrorListener): (WebCore::XMLHttpRequest::setOnLoadStartListener): (WebCore::XMLHttpRequest::onLoadStartListener):
- xml/XMLHttpRequest.idl:
LayoutTests:
2008-06-24 Sam Weinig <sam@webkit.org>
Reviewed by Anders Carlsson.
Add tests for loadstart, abort and error events for XMLHttpRequests
- http/tests/xmlhttprequest/onabort-event-expected.txt: Added.
- http/tests/xmlhttprequest/onabort-event.html: Added.
- http/tests/xmlhttprequest/onerror-event-expected.txt: Added.
- http/tests/xmlhttprequest/onerror-event.html: Added.
- http/tests/xmlhttprequest/onloadstart-event-expected.txt: Added.
- http/tests/xmlhttprequest/onloadstart-event.html: Added.
- http/tests/xmlhttprequest/resources/get.txt: Added.
- 1:03 PM Changeset in webkit [34774] by
-
- 2 edits in trunk/WebKitTools
2008-06-24 John Sullivan <sullivan@apple.com>
Reviewed by Dan Bernstein
- Scripts/extract-localizable-strings: add UI_STRING_LOCALIZE_LATER, LPCTSTR_UI_STRING_LOCALIZE_LATER, and LOG_WARNING to the list of debugging macros, to avoid noise when keeping the list of localized string exceptions up to date
- 1:00 PM Changeset in webkit [34773] by
-
- 2 edits in trunk/JavaScriptCore
2008-06-24 Darin Adler <Darin Adler>
Reviewed by Cameron.
- fix https://bugs.webkit.org/show_bug.cgi?id=19739 REGRESSION: fast/js/property-getters-and-setters.html fails
- kjs/JSObject.cpp: (KJS::JSObject::put): Remove an untested optimization I checked in by accident. The two loops up the prototype chain both need to start from this; instead the second loop was starting where the first loop left off.
- 12:56 PM Changeset in webkit [34772] by
-
- 2 edits in trunk/WebCore
2008-06-24 Anders Carlsson <andersca@apple.com>
Reviewed by Mitz.
<rdar://problem/5957606>
CrashTracer: [USER] 2 crashes in Safari at com.apple.WebCore: WebCore::DocumentLoader::cancelPendingSubstituteLoad + 23
Remove the loader from the document loader after calling didFail, so that the loader will be deferred corectly
in case the call do didFail starts a new run loop.
- loader/NetscapePlugInStreamLoader.cpp: (WebCore::NetscapePlugInStreamLoader::didCancel):
- 12:54 PM Changeset in webkit [34771] by
-
- 5 edits14 adds in trunk
WebKitTools:
Rubber-stamped by Darin Adler.
- add a font family for testing font-weight
- DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj: Added linker flags to create data sections for the WeightWatcher fonts.
- DumpRenderTree/fonts: Added.
- DumpRenderTree/fonts/WebKitWeightWatcher100.ttf: Added.
- DumpRenderTree/fonts/WebKitWeightWatcher200.ttf: Added.
- DumpRenderTree/fonts/WebKitWeightWatcher300.ttf: Added.
- DumpRenderTree/fonts/WebKitWeightWatcher400.ttf: Added.
- DumpRenderTree/fonts/WebKitWeightWatcher500.ttf: Added.
- DumpRenderTree/fonts/WebKitWeightWatcher600.ttf: Added.
- DumpRenderTree/fonts/WebKitWeightWatcher700.ttf: Added.
- DumpRenderTree/fonts/WebKitWeightWatcher800.ttf: Added.
- DumpRenderTree/fonts/WebKitWeightWatcher900.ttf: Added.
- DumpRenderTree/mac/DumpRenderTree.mm: (activateFonts): Renamed activateAhemFont to this and made it activate the WeightWatcher fonts in addition to Ahem. (prepareConsistentTestingEnvironment): Adjusted for the name change.
- DumpRenderTree/win/DumpRenderTree.cpp: (initialize): Added the WeightWatcher fonts.
LayoutTests:
Rubber-stamped by Darin Adler.
- add font-weight test for a family that has 9 weights
- fast/css/font-weight-1.html: Added.
- platform/mac/fast/css/font-weight-1-expected.checksum: Added.
- platform/mac/fast/css/font-weight-1-expected.png: Added.
- platform/mac/fast/css/font-weight-1-expected.txt: Added.
- 12:50 PM Changeset in webkit [34770] by
-
- 2 edits in trunk/JavaScriptCore
Build fix.
- kjs/nodes.cpp:
- 11:06 AM Changeset in webkit [34769] by
-
- 2 edits in trunk/WebKit
2008-06-24 John Sullivan <sullivan@apple.com>
Rubber-stamped by Sam Weinig
- StringsNotToBeLocalized.txt: brought this file up to date
- 8:43 AM Changeset in webkit [34768] by
-
- 3 edits in trunk/WebCore
Release build fix.
- bindings/js/JSCustomSQLStatementErrorCallback.cpp: (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
- bindings/js/JSCustomSQLTransactionCallback.cpp: (WebCore::JSCustomSQLTransactionCallback::handleEvent): Initialize callbackCallType, as the compiler is not smart enough to figure out data flow.
- 7:33 AM Changeset in webkit [34767] by
-
- 3 edits in trunk/JavaScriptCore
2008-06-24 Joerg Bornemann <joerg.bornemann@trolltech.com>
Reviewed by Simon.
For the Qt build on Windows don't depend on the presence of GNU CPP
but use MSVC's preprocessor instead.
dftables accepts a --preprocessor option which is set in pcre.pri for MSVC platforms.
- 5:35 AM Changeset in webkit [34766] by
-
- 2 edits in trunk/WebCore
Reviewed by Darin.
https://bugs.webkit.org/show_bug.cgi?id=19723
REGRESSION(r34648): Some SVG tests crash when running under --threaded
- rendering/RenderSVGInlineText.cpp: (WebCore::RenderSVGInlineText::destroy): Do not attempt to paint during document destruction, because rendering structures are not kept in a consistent state then.
- 4:28 AM Changeset in webkit [34765] by
-
- 6 edits in trunk/WebCore
2008-06-24 Jonathon Jongsma <jonathon.jongsma@collabora.co.uk>
Reviewed by Darin.
Return bool from GraphicsContext::getShadow() so the tests aren't duplicated so
many times in Cairo and Qt ports.
- 3:58 AM Changeset in webkit [34764] by
-
- 2 edits in trunk/WebCore
2008-06-24 Jonathon Jongsma <jonathon.jongsma@collabora.co.uk>
Reviewed by Simon.
Clean up and remove unused platform shadow code.
Minor edits by Simon, removed unused TextShadow struct.
- 3:35 AM Changeset in webkit [34763] by
-
- 3 edits in trunk/WebCore
2008-06-24 Jonathon Jongsma <jonathon.jongsma@collabora.co.uk>
Reviewed by Simon.
Implemented basic text-shadow support for the Qt port.
- 3:27 AM Changeset in webkit [34762] by
-
- 8 edits in trunk
Fix the Qt build, adapt to various JSCore API changes.
- 3:07 AM Changeset in webkit [34761] by
-
- 3 edits in trunk/WebCore
Remove XMLHttpRequestProgressEvent.cpp from more project files.
- GNUmakefile.am:
- WebCore.pro:
- 2:51 AM Changeset in webkit [34760] by
-
- 2 edits in trunk/JavaScriptCore
Reviewed by Cameron Zwarich.
Make ParserRefCountedCounter actually perform a leak check.
- kjs/nodes.cpp: (KJS::ParserRefCountedCounter::~ParserRefCountedCounter): Check for leaks in destructor, not in constructor. (KJS::ParserRefCountedCounter::increment): (KJS::ParserRefCountedCounter::decrement): (KJS::ParserRefCounted::ParserRefCounted): (KJS::ParserRefCounted::~ParserRefCounted): While at it, also made counting thread-safe.
- 2:39 AM Changeset in webkit [34759] by
-
- 2 edits in trunk/WebCore
2008-06-24 Ariya Hidayat <ariya.hidayat@trolltech.com>
Reviewed by Simon.
For the Qt port, fix linking with MinGW.
- WebCore.pro:
- 2:38 AM Changeset in webkit [34758] by
-
- 3 edits3 adds in trunk
2008-06-24 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Oliver.
Bug 19730: REGRESSION (r34497): Text in alerts in "Leisure suit Larry" is not wrapped
<https://bugs.webkit.org/show_bug.cgi?id=19730>
Do not convert the pair (less, jtrue) to jless when jtrue is a jump
target. An example of this is when the condition of a while loop is a
LogicalOrNode.
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitLabel):
LayoutTests:
- fast/js/codegen-loops-logical-nodes-expected.txt: Added.
- fast/js/codegen-loops-logical-nodes.html: Added.
- fast/js/resources/codegen-loops-logical-nodes.js: Added.
- 2:06 AM Changeset in webkit [34757] by
-
- 3 edits in trunk/JavaScriptCore
2008-06-20 Ariya Hidayat <ariya.hidayat@trolltech.com>
Reviewed by Adam Roben.
Fix compile with MinGW.
- kjs/Shell.cpp:
- wtf/Threading.h: (WTF::atomicIncrement): (WTF::atomicDecrement):
Jun 23, 2008:
- 10:34 PM Changeset in webkit [34756] by
-
- 4 edits in trunk/JavaScriptCore
Prepration for returning memory to the OS on Windows. Track whether a portion of a span of memory was returned to the OS.
If it was, ask that it be recommitted before returning it to the application as an allocated region.
Reviewed by Oliver Hunt.
- wtf/FastMalloc.cpp:
(WTF::TCMalloc_PageHeap::New): If the span was decommitted, ask that it be recommitted before returning it.
(WTF::TCMalloc_PageHeap::AllocLarge): Ditto.
(WTF::TCMalloc_PageHeap::Carve): When splitting a span, ensure that the decommitted state propogates to the two new spans.
(WTF::TCMalloc_PageHeap::Delete): When merging a span, ensure that the resulting span is marked as decommitted if any of the
spans being merged were marked as decommitted.
(WTF::TCMalloc_PageHeap::IncrementalScavenge): Mark as decommitted after releasing the span.
(WTF::TCMalloc_Central_FreeList::FetchFromSpans): Add an assertion to catch a decommitted span being returned to the application
without first being recommitted.
(WTF::TCMalloc_Central_FreeList::Populate): Ditto.
- wtf/TCSystemAlloc.cpp: Stub out TCMalloc_SystemCommit.
- wtf/TCSystemAlloc.h:
- 10:34 PM Changeset in webkit [34755] by
-
- 2 edits in trunk/JavaScriptCore
Remove the sample member of Span when NO_TCMALLOC_SAMPLES is defined.
Reviewed by Sam Weinig.
- wtf/FastMalloc.cpp:
(WTF::TCMalloc_PageHeap::Delete): Only update Span::sample if NO_TCMALLOC_SAMPLES is not defined.
(WTF::TCMallocStats::do_free): Ditto.
- 10:23 PM Changeset in webkit [34754] by
-
- 120 edits in trunk
2008-06-23 Darin Adler <Darin Adler>
Reviewed by Geoff.
- work toward https://bugs.webkit.org/show_bug.cgi?id=19721
More preparation toward making functions work on primitive types without
creating wrapper objects. No speedup this time, but prepares for a future
speedup without slowing things down.
SunSpider reports no change.
- Eliminated the implementsCall, callAsFunction and construct virtual functions from JSObject. Instead, the CallData and ConstructData for a native function includes a function pointer that the caller can use directly. Changed all call sites to use CallData and ConstructData.
- Changed the "this" argument to native functions to be a JSValue rather than a JSObject. This prepares us for passing primitives into these functions. The conversion to an object now must be done inside the function. Critically, if it's a function that can be called on a DOM window object, then we have to be sure to call toThisObject on the argument before we use it for anything even if it's already an object.
- Eliminated the practice of using constructor objects in the global object to make objects of the various basic types. Since these constructors can't be replaced by script, there's no reason to involve a constructor object at all. Added functions to do the construction directly.
- Made some more class members private and protected, including virtual function overrides. This can catch code using unnecessarily slow virtual function code paths when the type of an object is known statically. If we later find a new reason use the members outside the class it's easy to make them public again.
- Moved the declarations of the native implementations for functions out of header files. These can have internal linkage and be declared inside the source file.
- Changed PrototypeFunction to take function pointers with the right arguments to be put directly into CallData. This eliminates the need to have a separate PrototypeReflexiveFunction, and reveals that the real purpose of that class included something else specific to eval -- storage of a cached global object. So renamed PrototypeReflexiveFunction to GlobalEvalFunction.
- API/JSCallbackConstructor.cpp: (KJS::constructJSCallback): (KJS::JSCallbackConstructor::getConstructData):
- API/JSCallbackConstructor.h:
- API/JSCallbackFunction.cpp: (KJS::JSCallbackFunction::implementsHasInstance): (KJS::JSCallbackFunction::call): (KJS::JSCallbackFunction::getCallData):
- API/JSCallbackFunction.h: (KJS::JSCallbackFunction::classInfo):
- API/JSCallbackObject.h: (KJS::JSCallbackObject::classRef): (KJS::JSCallbackObject::classInfo):
- API/JSCallbackObjectFunctions.h: (KJS::::getConstructData): (KJS::::construct): (KJS::::getCallData): (KJS::::call):
- API/JSObjectRef.cpp: (JSObjectMakeFunction): (JSObjectIsFunction): (JSObjectCallAsFunction): (JSObjectCallAsConstructor):
- JavaScriptCore.exp:
- VM/Machine.cpp: (KJS::jsTypeStringForValue): (KJS::Machine::privateExecute):
- kjs/ArrayPrototype.cpp: (KJS::arrayProtoFuncToString): (KJS::arrayProtoFuncToLocaleString): (KJS::arrayProtoFuncJoin): (KJS::arrayProtoFuncConcat): (KJS::arrayProtoFuncPop): (KJS::arrayProtoFuncPush): (KJS::arrayProtoFuncReverse): (KJS::arrayProtoFuncShift): (KJS::arrayProtoFuncSlice): (KJS::arrayProtoFuncSort): (KJS::arrayProtoFuncSplice): (KJS::arrayProtoFuncUnShift): (KJS::arrayProtoFuncFilter): (KJS::arrayProtoFuncMap): (KJS::arrayProtoFuncEvery): (KJS::arrayProtoFuncForEach): (KJS::arrayProtoFuncSome): (KJS::arrayProtoFuncIndexOf): (KJS::arrayProtoFuncLastIndexOf): (KJS::ArrayConstructor::ArrayConstructor): (KJS::constructArrayWithSizeQuirk): (KJS::constructWithArrayConstructor): (KJS::ArrayConstructor::getConstructData): (KJS::callArrayConstructor): (KJS::ArrayConstructor::getCallData):
- kjs/ArrayPrototype.h:
- kjs/BooleanObject.cpp: (KJS::booleanProtoFuncToString): (KJS::booleanProtoFuncValueOf): (KJS::constructBoolean): (KJS::constructWithBooleanConstructor): (KJS::BooleanConstructor::getConstructData): (KJS::callBooleanConstructor): (KJS::BooleanConstructor::getCallData): (KJS::constructBooleanFromImmediateBoolean):
- kjs/BooleanObject.h:
- kjs/CallData.h: (KJS::):
- kjs/ConstructData.h: (KJS::):
- kjs/FunctionPrototype.cpp: (KJS::callFunctionPrototype): (KJS::FunctionPrototype::getCallData): (KJS::functionProtoFuncToString): (KJS::functionProtoFuncApply): (KJS::functionProtoFuncCall): (KJS::constructWithFunctionConstructor): (KJS::FunctionConstructor::getConstructData): (KJS::callFunctionConstructor): (KJS::FunctionConstructor::getCallData): (KJS::constructFunction):
- kjs/FunctionPrototype.h:
- kjs/JSArray.cpp: (KJS::AVLTreeAbstractorForArrayCompare::compare_key_key): (KJS::JSArray::sort): (KJS::constructEmptyArray): (KJS::constructArray):
- kjs/JSArray.h: (KJS::JSArray::classInfo):
- kjs/JSFunction.cpp: (KJS::JSFunction::call): (KJS::globalFuncEval): (KJS::globalFuncParseInt): (KJS::globalFuncParseFloat): (KJS::globalFuncIsNaN): (KJS::globalFuncIsFinite): (KJS::globalFuncDecodeURI): (KJS::globalFuncDecodeURIComponent): (KJS::globalFuncEncodeURI): (KJS::globalFuncEncodeURIComponent): (KJS::globalFuncEscape): (KJS::globalFuncUnescape): (KJS::globalFuncKJSPrint): (KJS::PrototypeFunction::PrototypeFunction): (KJS::PrototypeFunction::getCallData): (KJS::GlobalEvalFunction::GlobalEvalFunction): (KJS::GlobalEvalFunction::mark):
- kjs/JSFunction.h: (KJS::InternalFunction::classInfo): (KJS::InternalFunction::functionName): (KJS::JSFunction::classInfo): (KJS::GlobalEvalFunction::cachedGlobalObject):
- kjs/JSGlobalObject.cpp: (KJS::JSGlobalObject::reset): (KJS::JSGlobalObject::mark):
- kjs/JSGlobalObject.h: (KJS::JSGlobalObject::JSGlobalObject): (KJS::JSGlobalObject::evalFunction):
- kjs/JSImmediate.cpp: (KJS::JSImmediate::toObject):
- kjs/JSNotAnObject.cpp:
- kjs/JSNotAnObject.h:
- kjs/JSObject.cpp: (KJS::JSObject::put): (KJS::callDefaultValueFunction): (KJS::JSObject::defaultValue): (KJS::JSObject::lookupGetter): (KJS::JSObject::lookupSetter): (KJS::JSObject::hasInstance): (KJS::JSObject::fillGetterPropertySlot): (KJS::Error::create): (KJS::constructEmptyObject):
- kjs/JSObject.h: (KJS::GetterSetter::GetterSetter): (KJS::GetterSetter::getter): (KJS::GetterSetter::setGetter): (KJS::GetterSetter::setter): (KJS::GetterSetter::setSetter):
- kjs/JSValue.cpp: (KJS::JSCell::deleteProperty): (KJS::call): (KJS::construct):
- kjs/JSValue.h:
- kjs/MathObject.cpp: (KJS::mathProtoFuncAbs): (KJS::mathProtoFuncACos): (KJS::mathProtoFuncASin): (KJS::mathProtoFuncATan): (KJS::mathProtoFuncATan2): (KJS::mathProtoFuncCeil): (KJS::mathProtoFuncCos): (KJS::mathProtoFuncExp): (KJS::mathProtoFuncFloor): (KJS::mathProtoFuncLog): (KJS::mathProtoFuncMax): (KJS::mathProtoFuncMin): (KJS::mathProtoFuncPow): (KJS::mathProtoFuncRandom): (KJS::mathProtoFuncRound): (KJS::mathProtoFuncSin): (KJS::mathProtoFuncSqrt): (KJS::mathProtoFuncTan):
- kjs/MathObject.h:
- kjs/NumberObject.cpp: (KJS::numberProtoFuncToString): (KJS::numberProtoFuncToLocaleString): (KJS::numberProtoFuncValueOf): (KJS::numberProtoFuncToFixed): (KJS::numberProtoFuncToExponential): (KJS::numberProtoFuncToPrecision): (KJS::NumberConstructor::NumberConstructor): (KJS::constructWithNumberConstructor): (KJS::NumberConstructor::getConstructData): (KJS::callNumberConstructor): (KJS::NumberConstructor::getCallData): (KJS::constructNumber): (KJS::constructNumberFromImmediateNumber):
- kjs/NumberObject.h: (KJS::NumberObject::classInfo): (KJS::NumberConstructor::classInfo):
- kjs/PropertySlot.cpp: (KJS::PropertySlot::functionGetter):
- kjs/RegExpObject.cpp: (KJS::regExpProtoFuncTest): (KJS::regExpProtoFuncExec): (KJS::regExpProtoFuncCompile): (KJS::regExpProtoFuncToString): (KJS::callRegExpObject): (KJS::RegExpObject::getCallData): (KJS::constructRegExp): (KJS::constructWithRegExpConstructor): (KJS::RegExpConstructor::getConstructData): (KJS::callRegExpConstructor): (KJS::RegExpConstructor::getCallData):
- kjs/RegExpObject.h: (KJS::RegExpConstructor::classInfo):
- kjs/Shell.cpp: (GlobalObject::GlobalObject): (functionPrint): (functionDebug): (functionGC): (functionVersion): (functionRun): (functionLoad): (functionReadline): (functionQuit):
- kjs/date_object.cpp: (KJS::gmtoffset): (KJS::formatLocaleDate): (KJS::fillStructuresUsingDateArgs): (KJS::DateInstance::getTime): (KJS::DateInstance::getUTCTime): (KJS::DateConstructor::DateConstructor): (KJS::constructDate): (KJS::DateConstructor::getConstructData): (KJS::callDate): (KJS::DateConstructor::getCallData): (KJS::dateParse): (KJS::dateNow): (KJS::dateUTC): (KJS::dateProtoFuncToString): (KJS::dateProtoFuncToUTCString): (KJS::dateProtoFuncToDateString): (KJS::dateProtoFuncToTimeString): (KJS::dateProtoFuncToLocaleString): (KJS::dateProtoFuncToLocaleDateString): (KJS::dateProtoFuncToLocaleTimeString): (KJS::dateProtoFuncValueOf): (KJS::dateProtoFuncGetTime): (KJS::dateProtoFuncGetFullYear): (KJS::dateProtoFuncGetUTCFullYear): (KJS::dateProtoFuncToGMTString): (KJS::dateProtoFuncGetMonth): (KJS::dateProtoFuncGetUTCMonth): (KJS::dateProtoFuncGetDate): (KJS::dateProtoFuncGetUTCDate): (KJS::dateProtoFuncGetDay): (KJS::dateProtoFuncGetUTCDay): (KJS::dateProtoFuncGetHours): (KJS::dateProtoFuncGetUTCHours): (KJS::dateProtoFuncGetMinutes): (KJS::dateProtoFuncGetUTCMinutes): (KJS::dateProtoFuncGetSeconds): (KJS::dateProtoFuncGetUTCSeconds): (KJS::dateProtoFuncGetMilliSeconds): (KJS::dateProtoFuncGetUTCMilliseconds): (KJS::dateProtoFuncGetTimezoneOffset): (KJS::dateProtoFuncSetTime): (KJS::setNewValueFromTimeArgs): (KJS::setNewValueFromDateArgs): (KJS::dateProtoFuncSetMilliSeconds): (KJS::dateProtoFuncSetUTCMilliseconds): (KJS::dateProtoFuncSetSeconds): (KJS::dateProtoFuncSetUTCSeconds): (KJS::dateProtoFuncSetMinutes): (KJS::dateProtoFuncSetUTCMinutes): (KJS::dateProtoFuncSetHours): (KJS::dateProtoFuncSetUTCHours): (KJS::dateProtoFuncSetDate): (KJS::dateProtoFuncSetUTCDate): (KJS::dateProtoFuncSetMonth): (KJS::dateProtoFuncSetUTCMonth): (KJS::dateProtoFuncSetFullYear): (KJS::dateProtoFuncSetUTCFullYear): (KJS::dateProtoFuncSetYear): (KJS::dateProtoFuncGetYear):
- kjs/date_object.h: (KJS::DateInstance::internalNumber): (KJS::DateInstance::classInfo):
- kjs/error_object.cpp: (KJS::errorProtoFuncToString): (KJS::constructError): (KJS::constructWithErrorConstructor): (KJS::ErrorConstructor::getConstructData): (KJS::callErrorConstructor): (KJS::ErrorConstructor::getCallData): (KJS::NativeErrorConstructor::construct): (KJS::constructWithNativeErrorConstructor): (KJS::NativeErrorConstructor::getConstructData): (KJS::callNativeErrorConstructor): (KJS::NativeErrorConstructor::getCallData):
- kjs/error_object.h: (KJS::NativeErrorConstructor::classInfo):
- kjs/internal.cpp: (KJS::JSNumberCell::toObject): (KJS::JSNumberCell::toThisObject): (KJS::GetterSetter::mark): (KJS::GetterSetter::toPrimitive): (KJS::GetterSetter::toBoolean): (KJS::GetterSetter::toNumber): (KJS::GetterSetter::toString): (KJS::GetterSetter::toObject): (KJS::InternalFunction::InternalFunction): (KJS::InternalFunction::implementsHasInstance):
- kjs/lookup.h: (KJS::HashEntry::):
- kjs/nodes.cpp: (KJS::FuncDeclNode::makeFunction): (KJS::FuncExprNode::makeFunction):
- kjs/object_object.cpp: (KJS::objectProtoFuncValueOf): (KJS::objectProtoFuncHasOwnProperty): (KJS::objectProtoFuncIsPrototypeOf): (KJS::objectProtoFuncDefineGetter): (KJS::objectProtoFuncDefineSetter): (KJS::objectProtoFuncLookupGetter): (KJS::objectProtoFuncLookupSetter): (KJS::objectProtoFuncPropertyIsEnumerable): (KJS::objectProtoFuncToLocaleString): (KJS::objectProtoFuncToString): (KJS::ObjectConstructor::ObjectConstructor): (KJS::constructObject): (KJS::constructWithObjectConstructor): (KJS::ObjectConstructor::getConstructData): (KJS::callObjectConstructor): (KJS::ObjectConstructor::getCallData):
- kjs/object_object.h:
- kjs/string_object.cpp: (KJS::replace): (KJS::stringProtoFuncToString): (KJS::stringProtoFuncValueOf): (KJS::stringProtoFuncCharAt): (KJS::stringProtoFuncCharCodeAt): (KJS::stringProtoFuncConcat): (KJS::stringProtoFuncIndexOf): (KJS::stringProtoFuncLastIndexOf): (KJS::stringProtoFuncMatch): (KJS::stringProtoFuncSearch): (KJS::stringProtoFuncReplace): (KJS::stringProtoFuncSlice): (KJS::stringProtoFuncSplit): (KJS::stringProtoFuncSubstr): (KJS::stringProtoFuncSubstring): (KJS::stringProtoFuncToLowerCase): (KJS::stringProtoFuncToUpperCase): (KJS::stringProtoFuncToLocaleLowerCase): (KJS::stringProtoFuncToLocaleUpperCase): (KJS::stringProtoFuncLocaleCompare): (KJS::stringProtoFuncBig): (KJS::stringProtoFuncSmall): (KJS::stringProtoFuncBlink): (KJS::stringProtoFuncBold): (KJS::stringProtoFuncFixed): (KJS::stringProtoFuncItalics): (KJS::stringProtoFuncStrike): (KJS::stringProtoFuncSub): (KJS::stringProtoFuncSup): (KJS::stringProtoFuncFontcolor): (KJS::stringProtoFuncFontsize): (KJS::stringProtoFuncAnchor): (KJS::stringProtoFuncLink): (KJS::stringFromCharCode): (KJS::StringConstructor::StringConstructor): (KJS::constructWithStringConstructor): (KJS::StringConstructor::getConstructData): (KJS::callStringConstructor): (KJS::StringConstructor::getCallData):
- kjs/string_object.h:
JavaScriptGlue:
2008-06-23 Darin Adler <Darin Adler>
Reviewed by Geoff.
- JSValueWrapper.cpp: (JSValueWrapper::JSObjectCallFunction): Updated to use getCallData and call instead of the old callAsFunction.
WebCore:
2008-06-23 Darin Adler <Darin Adler>
Reviewed by Geoff.
Update for JavaScript changes.
- Use CallData and ConstructData instead of the obsolete implementsCall, callAsFunction, and construct functions.
- Updated native function arguments, specifically to allow a JSValue rather than a JSObject for the this argument, and to call toThisObject as needed when treating it as an object.
- Made some more class members private and protected, including virtual function overrides.
- Eliminated the use of getCallData in the JavaScript bridging code as a way to check if an instance supports invokeDefaultMethod.
- Eliminated unnecessary polymorphism in the NodeIterator and TreeWalker classes. They were using virtual functions simply to share an instance of the RefCounted template, which was not helpful.
- bindings/js/JSAudioConstructor.cpp: (WebCore::constructAudio): (WebCore::JSAudioConstructor::getConstructData):
- bindings/js/JSAudioConstructor.h: (WebCore::JSAudioConstructor::document): (WebCore::JSAudioConstructor::classInfo):
- bindings/js/JSClipboardCustom.cpp: (WebCore::JSClipboard::types):
- bindings/js/JSCustomSQLStatementCallback.cpp: (WebCore::JSCustomSQLStatementCallback::handleEvent):
- bindings/js/JSCustomSQLStatementErrorCallback.cpp: (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
- bindings/js/JSCustomSQLTransactionCallback.cpp: (WebCore::JSCustomSQLTransactionCallback::handleEvent):
- bindings/js/JSCustomSQLTransactionErrorCallback.cpp: (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
- bindings/js/JSCustomVoidCallback.cpp: (WebCore::JSCustomVoidCallback::handleEvent):
- bindings/js/JSCustomXPathNSResolver.cpp: (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
- bindings/js/JSDOMBinding.h: (WebCore::DOMObject::DOMObject):
- bindings/js/JSDOMWindowBase.cpp: (WebCore::windowProtoFuncAToB): (WebCore::windowProtoFuncBToA): (WebCore::windowProtoFuncOpen): (WebCore::windowProtoFuncSetTimeout): (WebCore::windowProtoFuncClearTimeout): (WebCore::windowProtoFuncSetInterval): (WebCore::windowProtoFuncAddEventListener): (WebCore::windowProtoFuncRemoveEventListener): (WebCore::windowProtoFuncShowModalDialog): (WebCore::windowProtoFuncNotImplemented): (WebCore::toJSDOMWindow):
- bindings/js/JSDOMWindowBase.h:
- bindings/js/JSDOMWindowShell.h: (WebCore::JSDOMWindowShell::classInfo):
- bindings/js/JSEventListener.cpp: (WebCore::JSAbstractEventListener::handleEvent): (WebCore::JSLazyEventListener::parseCode):
- bindings/js/JSEventTargetBase.cpp: (WebCore::retrieveEventTargetAndCorrespondingNode): (WebCore::jsEventTargetAddEventListener): (WebCore::jsEventTargetRemoveEventListener): (WebCore::jsEventTargetDispatchEvent):
- bindings/js/JSEventTargetBase.h:
- bindings/js/JSHTMLAppletElementCustom.cpp: (WebCore::JSHTMLAppletElement::customGetOwnPropertySlot): (WebCore::JSHTMLAppletElement::customPut): (WebCore::JSHTMLAppletElement::getCallData):
- bindings/js/JSHTMLCollectionCustom.cpp: (WebCore::callHTMLCollection): (WebCore::JSHTMLCollection::getCallData):
- bindings/js/JSHTMLDocumentCustom.cpp: (WebCore::JSHTMLDocument::open):
- bindings/js/JSHTMLEmbedElementCustom.cpp: (WebCore::JSHTMLEmbedElement::customGetOwnPropertySlot): (WebCore::JSHTMLEmbedElement::customPut): (WebCore::JSHTMLEmbedElement::getCallData):
- bindings/js/JSHTMLInputElementBase.cpp: (WebCore::jsHTMLInputElementBaseFunctionSetSelectionRange):
- bindings/js/JSHTMLInputElementBase.h:
- bindings/js/JSHTMLObjectElementCustom.cpp: (WebCore::JSHTMLObjectElement::customGetOwnPropertySlot): (WebCore::JSHTMLObjectElement::customPut): (WebCore::JSHTMLObjectElement::getCallData):
- bindings/js/JSHTMLOptionElementConstructor.cpp: (WebCore::constructHTMLOptionElement): (WebCore::JSHTMLOptionElementConstructor::getConstructData):
- bindings/js/JSHTMLOptionElementConstructor.h: (WebCore::JSHTMLOptionElementConstructor::document): (WebCore::JSHTMLOptionElementConstructor::classInfo):
- bindings/js/JSImageConstructor.cpp: (WebCore::constructImage): (WebCore::JSImageConstructor::getConstructData):
- bindings/js/JSImageConstructor.h: (WebCore::JSImageConstructor::document): (WebCore::JSImageConstructor::classInfo):
- bindings/js/JSInspectedObjectWrapper.h: (WebCore::JSInspectedObjectWrapper::classInfo):
- bindings/js/JSInspectorCallbackWrapper.cpp: (WebCore::JSInspectorCallbackWrapper::prepareIncomingValue):
- bindings/js/JSJavaScriptCallFrameCustom.cpp: (WebCore::JSJavaScriptCallFrame::scopeChain):
- bindings/js/JSNodeFilterCondition.cpp: (WebCore::JSNodeFilterCondition::JSNodeFilterCondition): (WebCore::JSNodeFilterCondition::mark): (WebCore::JSNodeFilterCondition::acceptNode):
- bindings/js/JSNodeFilterCondition.h: (WebCore::JSNodeFilterCondition::create):
- bindings/js/JSNodeFilterCustom.cpp: (WebCore::toNodeFilter):
- bindings/js/JSNodeListCustom.cpp: (WebCore::callNodeList): (WebCore::JSNodeList::getCallData): (WebCore::JSNodeList::canGetItemsForName): (WebCore::JSNodeList::nameGetter):
- bindings/js/JSPluginElementFunctions.cpp: (WebCore::runtimeObjectGetter): (WebCore::runtimeObjectPropertyGetter): (WebCore::runtimeObjectCustomGetOwnPropertySlot): (WebCore::runtimeObjectCustomPut): (WebCore::runtimeObjectGetCallData): (WebCore::pluginInstance): (WebCore::getRuntimeObject): (WebCore::callPlugin):
- bindings/js/JSPluginElementFunctions.h:
- bindings/js/JSQuarantinedObjectWrapper.cpp: (WebCore::JSQuarantinedObjectWrapper::put): (WebCore::JSQuarantinedObjectWrapper::construct): (WebCore::JSQuarantinedObjectWrapper::getConstructData): (WebCore::JSQuarantinedObjectWrapper::hasInstance): (WebCore::JSQuarantinedObjectWrapper::call): (WebCore::JSQuarantinedObjectWrapper::getCallData):
- bindings/js/JSQuarantinedObjectWrapper.h: (WebCore::JSQuarantinedObjectWrapper::className):
- bindings/js/JSRGBColor.cpp:
- bindings/js/JSXMLHttpRequestConstructor.cpp: (WebCore::constructXMLHttpRequest): (WebCore::JSXMLHttpRequestConstructor::getConstructData):
- bindings/js/JSXMLHttpRequestConstructor.h: (WebCore::JSXMLHttpRequestConstructor::document): (WebCore::JSXMLHttpRequestConstructor::classInfo):
- bindings/js/JSXSLTProcessorConstructor.cpp: (WebCore::constructXSLTProcessor): (WebCore::JSXSLTProcessorConstructor::getConstructData):
- bindings/js/JSXSLTProcessorConstructor.h: (WebCore::JSXSLTProcessorConstructor::classInfo):
- bindings/js/ScheduledAction.cpp: (WebCore::ScheduledAction::ScheduledAction): (WebCore::ScheduledAction::execute):
- bindings/js/ScheduledAction.h:
- bindings/objc/WebScriptObject.mm: (-[WebScriptObject callWebScriptMethod:withArguments:]):
- bindings/scripts/CodeGeneratorJS.pm:
- bridge/NP_jsobject.cpp: (_NPN_InvokeDefault): (_NPN_Invoke):
- bridge/c/c_instance.cpp: (KJS::Bindings::CInstance::supportsInvokeDefaultMethod):
- bridge/c/c_instance.h:
- bridge/jni/jni_jsobject.mm: (JavaJSObject::call):
- bridge/objc/objc_instance.h:
- bridge/objc/objc_instance.mm: (ObjcInstance::supportsInvokeDefaultMethod):
- bridge/objc/objc_runtime.h: (KJS::Bindings::ObjcFallbackObjectImp::propertyName): (KJS::Bindings::ObjcFallbackObjectImp::classInfo):
- bridge/objc/objc_runtime.mm: (Bindings::webScriptObjectClass): (Bindings::webUndefinedClass): (ObjcFallbackObjectImp::ObjcFallbackObjectImp): (callObjCFallbackObject): (ObjcFallbackObjectImp::getCallData):
- bridge/qt/qt_instance.h:
- bridge/runtime.cpp: (KJS::Bindings::Instance::createRuntimeObject): (KJS::Bindings::Instance::getInstance):
- bridge/runtime.h: (KJS::Bindings::Field::~Field): (KJS::Bindings::Method::~Method): (KJS::Bindings::Class::~Class): (KJS::Bindings::Instance::supportsInvokeDefaultMethod):
- bridge/runtime_method.cpp: (KJS::callRuntimeMethod): (KJS::RuntimeMethod::getCallData):
- bridge/runtime_method.h: (KJS::RuntimeMethod::methods):
- bridge/runtime_object.cpp: (RuntimeObjectImp::defaultValue): (callRuntimeObject): (RuntimeObjectImp::getCallData):
- bridge/runtime_object.h: (KJS::RuntimeObjectImp::getInternalInstance): (KJS::RuntimeObjectImp::classInfo):
- dom/NodeIterator.h:
- dom/Traversal.cpp:
- dom/Traversal.h:
- dom/TreeWalker.h:
- 8:00 PM Changeset in webkit [34753] by
-
- 7 edits in trunk/WebCore
2008-06-23 Adam Barth <abarth@webkit.org>
Reviewed by Darin Adler.
Move isAllowedToLoadLocalResources into SecurityOrigin.
- dom/Document.cpp: (WebCore::Document::Document): (WebCore::Document::setURL): (WebCore::Document::initSecurityContext):
- dom/Document.h:
- loader/FrameLoader.cpp: (WebCore::FrameLoader::canLoad):
- platform/SecurityOrigin.cpp: (WebCore::SecurityOrigin::SecurityOrigin): (WebCore::SecurityOrigin::isLocal):
- platform/SecurityOrigin.h: (WebCore::SecurityOrigin::protocol): (WebCore::SecurityOrigin::host): (WebCore::SecurityOrigin::domain): (WebCore::SecurityOrigin::port): (WebCore::SecurityOrigin::canLoadLocalResources): (WebCore::SecurityOrigin::grantLoadLocalResources):
- xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::setRequestHeader):
- 5:23 PM Changeset in webkit [34752] by
-
- 2 edits in trunk/WebCore
Fix Windows build.
- 5:19 PM Changeset in webkit [34751] by
-
- 3 edits3 adds in trunk
2008-06-23 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Oliver.
Bug 19716: REGRESSION (SquirrelFish): Reproducible crash after entering a username at mint.com
<https://bugs.webkit.org/show_bug.cgi?id=19716>
When unwinding callframes for exceptions, check whether the callframe
was created by a reentrant native call to JavaScript after tearing off
the local variables instead of before.
- VM/Machine.cpp: (KJS::Machine::unwindCallFrame):
LayoutTests:
- fast/js/reentrant-call-unwind-expected.txt: Added.
- fast/js/reentrant-call-unwind.html: Added.
- fast/js/resources/reentrant-call-unwind.js: Added.
- 5:00 PM Changeset in webkit [34750] by
-
- 2 edits in trunk/WebCore
Fix a math error in my last change.
Reviewed by Ada Chan.
- platform/win/FileSystemWin.cpp: (WebCore::openTemporaryFile):
- 4:48 PM Changeset in webkit [34749] by
-
- 2 edits in trunk/WebCore
2008-06-23 Kevin McCullough <kmccullough@apple.com>
-Build fix.
- WebCore.vcproj/WebCore.vcproj:
- 4:20 PM Changeset in webkit [34748] by
-
- 2 edits in trunk/WebCore
<rdar://problem/6024267> VO unable to read massive emails because AccessibilityObject::lengthForVisiblePositionRange makes the string
Improves performance of asking for the length/string of text marker ranges
- 2:41 PM Changeset in webkit [34747] by
-
- 2 edits in trunk/JavaScriptCore
Get testapi passing again in a debug build.
Reviewed by Oliver Hunt.
- API/testapi.c:
(main): Update the expected output of calling JSValueMakeString on a function object.
- 1:58 PM Changeset in webkit [34746] by
-
- 2 edits in trunk/WebCore
Added our own mechanism for generating temporary file names.
Reviewed by Ada Chan, Darin Adler.
- platform/win/FileSystemWin.cpp: (WebCore::openTemporaryFile):
- 1:57 PM Changeset in webkit [34745] by
-
- 3 edits in trunk/LayoutTests
2008-06-23 David Kilzer <ddkilzer@apple.com>
Updated test for Bug 15823: getPropertyValue for border returns null, should compute the shorthand value
Rubber-stamped by Darin.
- fast/css/getPropertyValue-border-expected.txt: Updated results.
- fast/css/getPropertyValue-border.html: Test all combinations of (mismatched) border values.
- 1:33 PM Changeset in webkit [34744] by
-
- 4 edits in trunk/WebCore
2008-06-23 Sam Weinig <sam@webkit.org>
Remove XMLHttpRequestProgressEvent.cpp from project files.
- WebCore.vcproj/WebCore.vcproj:
- WebCore.xcodeproj/project.pbxproj:
- WebCoreSources.bkl:
- 1:30 PM Changeset in webkit [34743] by
-
- 1 edit1 delete in trunk/WebCore
2008-06-23 Sam Weinig <sam@webkit.org>
Reviewed by Dave Hyatt.
Remove empty file.
- xml/XMLHttpRequestProgressEvent.cpp: Removed.
- 1:28 PM Changeset in webkit [34742] by
-
- 3 edits in trunk/WebCore
2008-06-23 Sam Weinig <sam@webkit.org>
Rubber-stamped by Tim Hatcher.
Rename XMLHttpRequest::sameOriginRequest to XMLHttpRequest::makeSameOriginRequest
and XMLHttpRequest::crossSiteAccessRequest to XMLHttpRequest::makeCrossSiteAccessRequest.
- xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::createRequest): (WebCore::XMLHttpRequest::makeSameOriginRequest): (WebCore::XMLHttpRequest::makeCrossSiteAccessRequest):
- xml/XMLHttpRequest.h:
- 1:07 PM Changeset in webkit [34741] by
-
- 5 edits in trunk/WebCore
2008-06-23 Sam Weinig <sam@webkit.org>
Reviewed by Alexey Proskuryakov.
Some XMLHttpRequest re-organization to aid further enhancements coming soon.
- bindings/js/JSXMLHttpRequestCustom.cpp: (WebCore::JSXMLHttpRequest::send): Explicitly call overloaded versions of send, instead of always calling though send(DOMString).
- dom/Document.idl: Adds native converter.
- xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::open): (WebCore::XMLHttpRequest::initSend): (WebCore::XMLHttpRequest::send): (WebCore::XMLHttpRequest::createRequest): (WebCore::XMLHttpRequest::sameOriginRequest): (WebCore::XMLHttpRequest::crossSiteAccessRequest): (WebCore::XMLHttpRequest::abort): (WebCore::XMLHttpRequest::clearResponse): (WebCore::XMLHttpRequest::clearRequest): (WebCore::XMLHttpRequest::genericError): (WebCore::XMLHttpRequest::dispatchProgressEvent):
- xml/XMLHttpRequest.h: (WebCore::XMLHttpRequest::setOnReadyStateChangeListener): Inline. (WebCore::XMLHttpRequest::onReadyStateChangeListener): Ditto. (WebCore::XMLHttpRequest::setOnLoadListener): Ditto. (WebCore::XMLHttpRequest::onLoadListener): Ditto. (WebCore::XMLHttpRequest::setOnProgressListener): Ditto. (WebCore::XMLHttpRequest::onProgressListener): Ditto. Makes the request entity body a member variable so that the send method can be more easily broken up.
- 10:33 AM Changeset in webkit [34740] by
-
- 5 edits2 adds in trunk/WebCore
Make profiles of the same name in the Inspector group in the
sidebar under a collapsable item that contains all the runs.
Reviewed by Darin Adler.
- English.lproj/localizedStrings.js: New strings.
- page/inspector/Images/profileGroupIcon.png: Added.
- page/inspector/Images/profileSmallIcon.png: Added.
- page/inspector/ProfilesPanel.js: (WebInspector.ProfilesPanel.prototype.reset): Clear _profileGroups. Remove the "some-expandable" class from the sidebarTree. (WebInspector.ProfilesPanel.prototype.addProfile): Append new profiles that have the same name as a previous profile into a group. When a group has 2 profiles a ProfileGroupSidebarTreeElement is made and the ProfileSidebarTreeElements are appended to the group's element. (WebInspector.ProfileSidebarTreeElement.prototype.get mainTitle): Return _mainTitle is it is set. (WebInspector.ProfileSidebarTreeElement.prototype.set mainTitle): Set _mainTitle which is an override title. (WebInspector.ProfileGroupSidebarTreeElement): Inherit SidebarTreeElement. (WebInspector.ProfileGroupSidebarTreeElement.prototype.onselect): Show the last profile in the group when selected.
- page/inspector/SidebarTreeElement.js: (WebInspector.SidebarTreeElement.prototype.get small): Return _small. (WebInspector.SidebarTreeElement.prototype.set small): Set _small and update the style to match. (WebInspector.SidebarTreeElement.prototype.onattach): Set the small class if the small property is true.
- page/inspector/inspector.css: New styles for profiles groups and for the small profiles.
- 9:24 AM Changeset in webkit [34739] by
-
- 2 edits in trunk/WebCore
2008-06-23 Anders Carlsson <andersca@apple.com>
Reviewed by Geoff.
Make changedDocuments a HashSet.
- dom/Document.cpp: (WebCore::Document::setDocumentChanged): (WebCore::Document::updateDocumentsRendering):
- 8:19 AM Changeset in webkit [34738] by
-
- 3 edits in trunk/WebKit/qt
2008-06-23 Benjamin C Meyer <ben@meyerhome.net>
Reviewed by Simon.
Add function to retrieve the standard context menu
- 1:10 AM Changeset in webkit [34737] by
-
- 2 edits in trunk/WebCore
Reviewed by Mark Rowe.
Restore a collectOnMainThreadOnly call that was accidentally removed in r34659. It will not
be needed when heaps are actually per-thread, but this isn't the case yet, and collecting
on a different thread causes crashes.
- bindings/js/JSDOMBinding.h: (WebCore::DOMObject::DOMObject):
Jun 22, 2008:
- 6:30 PM Changeset in webkit [34736] by
-
- 3 edits in trunk/WebKitSite
2008-06-22 Aaron Digulla <digulla@hepe.com>
Reviewed by Darin Adler.
Fix https://bugs.webkit.org/show_bug.cgi?id=18993
Bug 18993: Update of buttons in editing toolbar demo lags behind
- demos/editingToolbar/FancyToolbar.js:
- demos/editingToolbar/index.html:
- 6:25 PM Changeset in webkit [34735] by
-
- 3 edits2 adds in trunk
2008-06-22 Jonathon Jongsma <jonathon.jongsma@collabora.co.uk>
Reviewed by Darin Adler.
Fix https://bugs.webkit.org/show_bug.cgi?id=19465
Bug 19465: Cursor sometimes gets 'stuck' in textareas when trying to navigate with arrow keys
Test: editing/input/textarea-arrow-navigation.html
- rendering/RenderText.cpp: (WebCore::RenderText::positionForCoordinates): In the case when the next position is to the right of the last text box but the text offset is 0, set the affinity to DOWNSTREAM instead of UPSTREAM so that the cursor doesn't remain on the previous line.
- 6:20 PM Changeset in webkit [34734] by
-
- 3 edits2 adds in trunk
2008-06-22 Robert Blaut <webkit@blaut.biz>
Reviewed by Darin Adler.
Fix for https://bugs.webkit.org/show_bug.cgi?id=17421
Bug 17421: Lack of end tag for SELECT element causes the rest of page to not be rendered
Test: fast/parser/input-textarea-inside-select-element.html
- html/HTMLParser.cpp: (WebCore::HTMLParser::handleError):
- 6:06 PM Changeset in webkit [34733] by
-
- 2 edits in trunk/WebCore
2008-06-22 David Krause <david.krause@gmail.com>
Reviewed by Darin Adler.
Fix https://bugs.webkit.org/show_bug.cgi?id=19426
Bug 19426: LOW_BANDWIDTH_DISPLAY build broken
Change ref to addClient and deref to removeClient in code wrapped
by USE(LOW_BANDWIDTH_DISPLAY) to match changes in r31834.
- loader/FrameLoader.cpp: (WebCore::FrameLoader::addLowBandwidthDisplayRequest): (WebCore::FrameLoader::removeAllLowBandwidthDisplayRequests): (WebCore::FrameLoader::notifyFinished):
- 6:02 PM Changeset in webkit [34732] by
-
- 6 edits2 adds in trunk
2008-06-22 Robert Blaut <webkit@blaut.biz>
Reviewed by Darin Adler.
Fix https://bugs.webkit.org/show_bug.cgi?id=19520
Bug 19520: WebKit incorrectly accepts hidden as the value of outline-style
Test: fast/css/outline-hidden-illegal-value.html
- css/CSSParser.cpp: (WebCore::CSSParser::parseValue):
- rendering/RenderFlow.cpp: (WebCore::RenderFlow::paintOutline):
- rendering/RenderObject.cpp: (WebCore::RenderObject::paintOutline):
- rendering/style/RenderStyle.h: (WebCore::RenderStyle::outlineWidth): (WebCore::RenderStyle::outlineOffset):
- 5:58 PM Changeset in webkit [34731] by
-
- 2 edits in trunk/WebCore
2008-06-22 Jonathon Jongsma <jonathon.jongsma@collabora.co.uk>
Reviewed by Dan Bernstein.
Fix https://bugs.webkit.org/show_bug.cgi?id=19675
Bug 19675: [GTK] negative text-shadows are not rendered
- platform/graphics/cairo/FontCairo.cpp: (WebCore::Font::drawGlyphs): The IntSize::isEmpty() call checks that the sizes are > 0, while we need to check for != 0.
- 5:55 PM Changeset in webkit [34730] by
-
- 2 edits in trunk/WebCore
2008-06-22 kuchhal <kuchhal@yahoo.com>
Reviewed by Darin Adler.
Fix https://bugs.webkit.org/show_bug.cgi?id=19696
Bug 19696: Memory leak in WebCore/editing/DeleteButtonController.cpp
- editing/DeleteButtonController.cpp: (WebCore::DeleteButtonController::createDeletionUI): Delete the Image instance if the platform resource could not be loaded.
- 5:52 PM Changeset in webkit [34729] by
-
- 2 edits in trunk/WebCore
2008-06-22 kuchhal <kuchhal@yahoo.com>
Reviewed by Darin Adler.
Fix https://bugs.webkit.org/show_bug.cgi?id=19697
Bug 19697: Redundant releaseRef causing memory leak
- platform/win/ClipboardUtilitiesWin.cpp: (WebCore::fragmentFromCF_HTML):
Jun 21, 2008:
- 6:35 PM Changeset in webkit [34728] by
-
- 2 edits in trunk/JavaScriptCore
Print a blank line when exiting the jsc interactive mode to ensure that the shell
prompt will start on a new line.
Reviewed by Sam Weinig.
- kjs/Shell.cpp:
(runInteractive):
- 6:35 PM Changeset in webkit [34727] by
-
- 2 edits in trunk/JavaScriptCore
Tweak the paths of the items in the "tests" group to clean things up a little.
Rubber-stamped by Sam Weinig.
- 6:35 PM Changeset in webkit [34726] by
-
- 2 edits in trunk/JavaScriptCore
Fix jsc to link against libedit.dylib rather than libedit.2.dylib.
Rubber-stamped by Sam Weinig.
- 6:35 PM Changeset in webkit [34725] by
-
- 2 edits in trunk/JavaScriptCore
Copy the JavaScriptCore shell (jsc) into JavaScriptCore.framework so that it will be included in nightly builds.
https://bugs.webkit.org/show_bug.cgi?id=19691
Reviewed by Sam Weinig.
- JavaScriptCore.xcodeproj/project.pbxproj:
- 6:24 PM Changeset in webkit [34724] by
-
- 3 edits in trunk/WebCore
2008-06-21 Sam Weinig <sam@webkit.org>
Fix Windows build.
- bindings/scripts/CodeGeneratorCOM.pm:
- html/HTMLInputElement.idl:
- 5:35 PM Changeset in webkit [34723] by
-
- 2 edits in trunk/WebCore
Fix a typo "new" in the keywords list for hte JavaScript
syntax highlighter. And adds "get" and "set" to the keyword list.
Reviewed by Sam Weinig.
- page/inspector/SourceFrame.js: (WebInspector.SourceFrame.prototype._syntaxHighlightJavascriptLine): Fixes the "new" typo and adds "get" and "set".
- 4:49 PM Changeset in webkit [34722] by
-
- 3 edits12 adds in trunk
WebCore:
Bug 7931: Escaped elements within a textarea block can cause the textarea box to be closed prematurely
Reviewed by Darin.
Tests: fast/parser/entity-end-iframe-tag.html
fast/parser/entity-end-script-tag.html
fast/parser/entity-end-style-tag.html
fast/parser/entity-end-textarea-tag.html
fast/parser/entity-end-title-tag.html
fast/parser/entity-end-xmp-tag.html
Previously the parser accepted end tags for textarea, title and
iframe elements that contained entity-escaped characters such as
'<'. The fix is to save the position of the last entity-escaped
character converted and to use that to make sure the end tag does
not contain an escaped character.
Note that this was not an issue for script, style and xmp elements
since they already ignored entity-escaped characters.
- html/HTMLTokenizer.cpp: (WebCore::HTMLTokenizer::parseSpecial): When looking for a closing tag, ignore any text with entity-escaped characters by making sure lastDecodedEntityPosition is less than the first character of the end tag.
LayoutTests:
Bug 7931: Escaped elements within a textarea block can cause the textarea box to be closed prematurely
Reviewed by Darin.
The entity-end-textarea-tag.html contains 11 test cases: one
for each character in '</textarea>'. The rest of the tests
only test one encoding: '<' as '<'.
- fast/parser/entity-end-iframe-tag-expected.txt: Added.
- fast/parser/entity-end-iframe-tag.html: Added.
- fast/parser/entity-end-script-tag-expected.txt: Added.
- fast/parser/entity-end-script-tag.html: Added.
- fast/parser/entity-end-style-tag-expected.txt: Added.
- fast/parser/entity-end-style-tag.html: Added.
- fast/parser/entity-end-textarea-tag-expected.txt: Added.
- fast/parser/entity-end-textarea-tag.html: Added.
- fast/parser/entity-end-title-tag-expected.txt: Added.
- fast/parser/entity-end-title-tag.html: Added.
- fast/parser/entity-end-xmp-tag-expected.txt: Added.
- fast/parser/entity-end-xmp-tag.html: Added.
- 2:42 PM Changeset in webkit [34721] by
-
- 3 edits2 adds in trunk
WebCore:
2008-06-21 Sam Weinig <sam@webkit.org>
Reviewed by Dan Bernstein.
Fix for https://bugs.webkit.org/show_bug.cgi?id=19647
REGRESSION: Problem with extjs (insertAdjacentHTML)
Test: fast/dynamic/insertAdjacentHTML-allowed-parents.html
- html/HTMLElement.cpp: (WebCore::HTMLElement::insertAdjacentHTML): Don't use innerHTML logic for creating the DocumentFragment from the html string.
LayoutTests:
2008-06-21 Sam Weinig <sam@webkit.org>
Reviewed by Dan Bernstein.
Test for https://bugs.webkit.org/show_bug.cgi?id=19647
REGRESSION: Problem with extjs (insertAdjacentHTML)
- fast/dynamic/insertAdjacentHTML-allowed-parents-expected.txt: Added.
- fast/dynamic/insertAdjacentHTML-allowed-parents.html: Added.
- 1:33 PM Changeset in webkit [34720] by
-
- 5 edits in trunk/WebCore
2008-06-21 Adam Barth <abarth@webkit.org>
Reviewed by Sam Weinig.
Log error messages to the console when we deny a request for a URL.
These error messages do not appear in LayoutTests, but they do
appear in the WebInspector.
- dom/XMLTokenizer.cpp: (WebCore::shouldAllowExternalLoad):
- loader/DocLoader.cpp: (WebCore::DocLoader::requestResource): (WebCore::DocLoader::printAccessDeniedMessage):
- loader/DocLoader.h:
- xml/XSLTProcessor.cpp: (WebCore::docLoaderFunc):
- 1:33 PM Changeset in webkit [34719] by
-
- 3 edits4 adds in trunk
WebCore:
2008-06-21 Adam Barth <abarth@webkit.org>
Reviewed by Sam Weinig.
Fix <https://bugs.webkit.org/show_bug.cgi?id=19649>:
XSL style sheets allowed across origins
Block cross-orgin loads of XSL style sheets, matching Internet
Explorer, Firefox, and Opera. Also, we now block loading of XBL
across origins, matching Firefox. The XBL behavior does not appear
testable because XBL seems to not be enabled.
Test: http/tests/security/cross-origin-xsl-BLOCKED.html
- loader/DocLoader.cpp: (WebCore::DocLoader::requestResource):
LayoutTests:
2008-06-21 Adam Barth <abarth@webkit.org>
Reviewed by Sam Weinig.
Test that we block cross-orign loads of XSL style sheets.
- http/tests/security/cross-origin-xsl-BLOCKED-expected.txt: Added.
- http/tests/security/cross-origin-xsl-BLOCKED.html: Added.
- http/tests/security/resources/cross-origin-xsl.xml: Added.
- http/tests/security/resources/forbidden-stylesheet.xsl: Added.
- 12:16 PM Changeset in webkit [34718] by
-
- 1 edit in trunk/WebCore/ChangeLog
Adding bug title and URLs
- 12:13 PM Changeset in webkit [34717] by
-
- 2 edits in trunk/WebCore
2008-06-21 Marvin Decker <marv.decker@gmail.com>
Reviewed by Dave Hyatt.
Adds a NULL check for getting the small caps page of glyph data. The
page() function can explicitly return null in some cases, and every
other usage in this function does the check.
- platform/graphics/Font.cpp: (WebCore::Font::glyphDataForCharacter):
- 10:55 AM Changeset in webkit [34716] by
-
- 2 edits in trunk/LayoutTests
Rubber-stamped by Alexey Proskuryakov.
- update results for newly-added CSS variables, file and file list global constructors
- fast/dom/Window/window-properties-expected.txt:
- 10:49 AM Changeset in webkit [34715] by
-
- 3 edits4 adds in trunk
WebCore:
2008-06-21 Alex Taylor <darwin@milliamp.org>
Reviewed by Dan Bernstein.
Adds support for border-radius on legend elements.
Fieldsets with a legend and rounded borders now have a clipping region set
around the legend.
Test: fast/borders/fieldsetBorderRadius.html
- rendering/RenderFieldset.cpp: (WebCore::RenderFieldset::paintBoxDecorations): (WebCore::RenderFieldset::paintBorderMinusLegend): Removed a FIXME.
LayoutTests:
2008-06-21 Alex Taylor <darwin@milliamp.org>
Reviewed by Dan Bernstein.
<https://bugs.webkit.org/show_bug.cgi?id=12425>
Test support for border-radius on fieldset elements.
- fast/borders/fieldsetBorderRadius.html: Added.
- platform/mac/fast/borders/fieldsetBorderRadius-expected.checksum: Added.
- platform/mac/fast/borders/fieldsetBorderRadius-expected.png: Added.
- platform/mac/fast/borders/fieldsetBorderRadius-expected.txt: Added.
- 10:36 AM Changeset in webkit [34714] by
-
- 2 edits in trunk/WebCore
wx build fix. Adding CSSVariable* API sources to the Bakefiles.
- 1:28 AM Changeset in webkit [34713] by
-
- 2 edits in trunk/JavaScriptCore
2008-06-21 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Mark Rowe.
Fix the build for non-Mac Darwin platforms by disabling their support
for readline in the JavaScript shell.
- kjs/config.h:
- 12:04 AM Changeset in webkit [34712] by
-
- 5 edits in trunk/JavaScriptCore
Use member function pointers for the Profile::forEach function.
Eliminating a few static functions and simplified things a little.
Reviewed by Alexey Proskuryakov.
- JavaScriptCore.exp: Change the symbol for forEach.
- profiler/Profile.cpp: (KJS::Profile::forEach): Use a member function pointer.
- profiler/Profile.h: (KJS::Profile::sortTotalTimeDescending): Pass a function pointer. (KJS::Profile::sortTotalTimeAscending): Ditto. (KJS::Profile::sortSelfTimeDescending): Ditto. (KJS::Profile::sortSelfTimeAscending): Ditto. (KJS::Profile::sortCallsDescending): Ditto.
- profiler/ProfileNode.h: (KJS::ProfileNode::sortTotalTimeDescending): No longer static. (KJS::ProfileNode::sortTotalTimeAscending): Ditto. (KJS::ProfileNode::sortSelfTimeDescending): Ditto. (KJS::ProfileNode::sortSelfTimeAscending): Ditto. (KJS::ProfileNode::sortCallsDescending): Ditto.
Jun 20, 2008:
- 11:32 PM Changeset in webkit [34711] by
-
- 3 edits in trunk/JavaScriptCore
2008-06-20 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Oliver.
Remove unused destructors.
- kjs/nodes.cpp:
- kjs/nodes.h:
- 9:39 PM Changeset in webkit [34710] by
-
- 3 edits in trunk/JavaScriptCore
Fixed an ASSERT(m_actualSelfTime <= m_actualTotalTime) when starting
and stopping a profile from the Develop menu. Also prevents
inserting an incorrect parent node as the new head after profiling
is stopped from the Develop menu.
Reviewed by Dan Bernstein.
- profiler/Profile.cpp: (KJS::Profile::stopProfiling): If the current node is already the head then there is no more need to record future nodes in didExecute. (KJS::Profile::didExecute): Move the code of setupCurrentNodeAsStopped into here since this was the only caller. When setting the total time keep any current total time while adding the self time of the head. (KJS::Profile::setupCurrentNodeAsStopped): Removed.
- profiler/Profile.h: Removed setupCurrentNodeAsStopped.
- 6:22 PM Changeset in webkit [34709] by
-
- 2 edits in trunk/WebCore
2008-06-20 Sam Weinig <sam@webkit.org>
Fix Windows build.
- bindings/scripts/CodeGeneratorCOM.pm:
- 3:59 PM Changeset in webkit [34708] by
-
- 2 edits in trunk/WebCore
2008-06-20 Jan Michael Alonzo <jmalonzo@webkit.org>
Gtk build fix: Add files missing in the previous fix (r34705)
- GNUmakefile.am:
- 3:29 PM Changeset in webkit [34707] by
-
- 2 edits in trunk/WebCore
Reviewed by Sam Weinig.
- fix leak of mask images
- rendering/RenderObject.cpp: (WebCore::RenderObject::arenaDelete): Added a call to removeClient() on the mask box image.
- 3:27 PM Changeset in webkit [34706] by
-
- 3 edits in trunk/WebKitTools
2008-06-20 Brent Fulgham <bfulgham@gmail.com>
Reviewed by Darin.
Extend the build-webkit (and set-webkit-configuration) script to
support Cairo-based webkit builds. (see http://bugs.webkit.org/show_bug.cgi?17952)
- Scripts/build-webkit: Add --cairo-win32 to the help message
- Scripts/webkitdirs.pm: Extend the 'determinePassedConfiguration subroutine to recognize the --cairo-win32 flag. When present, the build configuration is changed from Debug/Release to Debug_Cairo/Release_Cairo. This flag is only active when the isCygwin() test is true.
- 3:23 PM Changeset in webkit [34705] by
-
- 7 edits in trunk/WebCore
2008-06-20 Jan Michael Alonzo <jmalonzo@webkit.org>
Gtk build fix for r34702, r34700 and r34693
Qt build fix for r34700 and r34693
- GNUmakefile.am:
- WebCore.pro:
- platform/gtk/RenderThemeGtk.cpp:
- platform/gtk/RenderThemeGtk.h:
- platform/qt/RenderThemeQt.cpp:
- platform/qt/RenderThemeQt.h:
- 3:14 PM Changeset in webkit [34704] by
-
- 3 edits in trunk/JavaScriptCore
!USE(MULTIPLE_THREADS) on Darwin build fix
- 2:51 PM Changeset in webkit [34703] by
-
- 2 edits in trunk/JavaScriptCore
2008-06-20 Kevin McCullough <kmccullough@apple.com>
-Leopard Build Fix.
- profiler/Profile.cpp: (KJS::Profile::removeProfileStart): (KJS::Profile::removeProfileEnd):
- 2:43 PM Changeset in webkit [34702] by
-
- 14 edits6 adds in trunk/WebCore
2008-06-20 Sam Weinig <sam@webkit.org>
Reviewed by Adele Peterson.
Add 'files' property to the HTMLInputElement, which returns a FileList object
(when type=file, null otherwise) containing a list of all the files selected.
It currently always contains only 0 or 1 files as multifile input is not supported
yet. The list contains File objects which contains the name and size of the file.
The inspiration for these interfaces is from:
- http://developer.mozilla.org/en/docs/nsIDOMFileList
- http://developer.mozilla.org/en/docs/nsIDOMFile
Also fixes <rdar://problem/6022802>
- DerivedSources.make:
- GNUmakefile.am:
- WebCore.pro:
- WebCore.vcproj/WebCore.vcproj:
- WebCore.xcodeproj/project.pbxproj:
- WebCoreSources.bkl:
- bindings/objc/DOMInternal.h:
- bindings/scripts/CodeGenerator.pm:
- bindings/scripts/IDLStructure.pm:
- html/File.cpp: Added. (WebCore::File::File): (WebCore::File::fileSize):
- html/File.h: Added. (WebCore::File::create): (WebCore::File::fileName): (WebCore::File::path):
- html/File.idl: Added.
- html/FileList.cpp: Added. (WebCore::FileList::FileList): (WebCore::FileList::item):
- html/FileList.h: Added. (WebCore::FileList::create): (WebCore::FileList::length): (WebCore::FileList::isEmpty): (WebCore::FileList::clear): (WebCore::FileList::append):
- html/FileList.idl: Added.
- html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::setInputType): (WebCore::HTMLInputElement::appendFormData): (WebCore::HTMLInputElement::value): (WebCore::HTMLInputElement::setValue): (WebCore::HTMLInputElement::setValueFromRenderer): (WebCore::HTMLInputElement::files):
- html/HTMLInputElement.h:
- html/HTMLInputElement.idl:
- page/DOMWindow.idl:
- 2:19 PM Changeset in webkit [34701] by
-
- 3 edits4 adds in trunk
WebCore:
2008-06-20 David Hyatt <hyatt@apple.com>
Make sure CSS variables work inside the inline style attribute.
Reviewed by Beth
Added fast/css/variables/inline-style-test.html
- css/CSSMutableStyleDeclaration.cpp: (WebCore::CSSMutableStyleDeclaration::removeProperty): (WebCore::CSSMutableStyleDeclaration::addParsedProperties):
LayoutTests:
2008-06-20 David Hyatt <hyatt@apple.com>
Make sure CSS variables work inside the inline style attribute.
Reviewed by Beth
- fast/css/variables/inline-style-test.html: Added.
- platform/mac/fast/css/variables/inline-style-test-expected.checksum: Added.
- platform/mac/fast/css/variables/inline-style-test-expected.png: Added.
- platform/mac/fast/css/variables/inline-style-test-expected.txt: Added.
- 1:47 PM Changeset in webkit [34700] by
-
- 13 edits14 adds in trunk
WebCore:
2008-06-20 David Hyatt <hyatt@apple.com>
Add support for the CSSVariablesRule and CSSVariablesDeclaration DOM APIs. These allow querying of
variables names and values, as well as iteration, setting and removal.
Reviewed by Sam
Added multiple new tests to fast/css/variables/
- DerivedSources.make:
- WebCore.xcodeproj/project.pbxproj:
- bindings/js/JSCSSRuleCustom.cpp: (WebCore::toJS):
- bindings/objc/DOMInternal.h:
- bindings/scripts/CodeGeneratorJS.pm:
- css/CSSPrimitiveValue.cpp: (WebCore::CSSPrimitiveValue::parserValue):
- css/CSSVariablesDeclaration.cpp: (WebCore::CSSVariablesDeclaration::removeVariable): (WebCore::CSSVariablesDeclaration::setVariable): (WebCore::CSSVariablesDeclaration::setCssText): (WebCore::CSSVariablesDeclaration::setChanged):
- css/CSSVariablesDeclaration.h:
- css/CSSVariablesDeclaration.idl: Added.
- css/CSSVariablesRule.h:
- css/CSSVariablesRule.idl: Added.
LayoutTests:
2008-06-20 David Hyatt <hyatt@apple.com>
Add tests of the DOM APIs for addition, removal and iteration.
Reviewed by Sam
- fast/css/variables/remove-variable-test.html: Added.
- fast/css/variables/set-variable-test.html: Added.
- fast/css/variables/variable-iteration-test.html: Added.
- platform/mac/fast/css/variables/remove-variable-test-expected.checksum: Added.
- platform/mac/fast/css/variables/remove-variable-test-expected.png: Added.
- platform/mac/fast/css/variables/remove-variable-test-expected.txt: Added.
- platform/mac/fast/css/variables/set-variable-test-expected.checksum: Added.
- platform/mac/fast/css/variables/set-variable-test-expected.png: Added.
- platform/mac/fast/css/variables/set-variable-test-expected.txt: Added.
- platform/mac/fast/css/variables/variable-iteration-test-expected.checksum: Added.
- platform/mac/fast/css/variables/variable-iteration-test-expected.png: Added.
- platform/mac/fast/css/variables/variable-iteration-test-expected.txt: Added.
- 1:47 PM Changeset in webkit [34699] by
-
- 1 edit in trunk/JavaScriptCore/ChangeLog
2008-06-20 Kevin McCullough <kmccullough@apple.com>
Just giving credit.
- ChangeLog:
- 12:47 PM Changeset in webkit [34698] by
-
- 2 edits in trunk/JavaScriptCore
2008-06-20 Kevin McCullough <kmccullough@apple.com>
Reviewed by Tim.
<rdar://problem/6024846> JSProfiler: ASSERT hit in Profiler.
- Because InspectorController can call startProfiling() and stopProfiling() we cannot assert that console.profile() and console.profileEnd() will be in the profile tree.
- profiler/Profile.cpp: (KJS::Profile::removeProfileStart): (KJS::Profile::removeProfileEnd):
- 12:38 PM Changeset in webkit [34697] by
-
- 1 edit1 add in trunk/WebCore
2008-06-20 Kevin McCullough <kmccullough@apple.com>
Rubber stamped by Adele.
- manual-tests/inspector/profiler-test-stop-profiling-after-setTimeout.html: Added.
- 12:36 PM Changeset in webkit [34696] by
-
- 13 edits1 add in trunk
2008-06-20 Kevin McCullough <kmccullough@apple.com>
Reviewed by Tim.
<rdar://problem/5958770> JSProfiler: Time incorrectly given to (idle)
if profiling is started and finished within the same function. (19230)
- Now we profile one more stack frame up from the last frame to allocate the time spent in it, if it exists.
- JavaScriptCore.exp:
- VM/Machine.cpp: We need to let the profiler know when the JS program has finished since that is what will actually stop the profiler instead of just calling stopProfiling(). (KJS::Machine::execute):
- profiler/Profile.cpp: (KJS::Profile::create): Moved from Profile.h since it was getting pretty long. (KJS::Profile::Profile): We now have a client, which is a listener who we will return this profile to, once it has actually finished. (KJS::Profile::stopProfiling): Instead of fully stopping the profiler here, we set the flag and keep it profiling in the background. (KJS::Profile::didFinishAllExecution): This is where the profiler actually finishes and creates the (idle) node if one should be made. (KJS::Profile::removeProfileStart): Don't use m_currentNode since it is needed by the profiler as it runs silently in the background. (KJS::Profile::removeProfileEnd): Ditto. (KJS::Profile::willExecute): Don't profile new functions if we have stopped profiling. (KJS::Profile::didExecute): Only record one more return as all the remaining time will be attributed to that function. (KJS::Profile::setupCurrentNodeAsStopped): Sets the current node's time.
- profiler/Profile.h: Added functions and variables for the above changes. (KJS::Profile::client):
- profiler/ProfileNode.h: (KJS::CallIdentifier::toString): Debug method.
- profiler/Profiler.cpp: Added support for the ProfilerClient. (KJS::Profiler::startProfiling): (KJS::Profiler::stopProfiling): No longer return sthe profile. (KJS::Profiler::didFinishAllExecution): Now returns the profile to the client instead of stopProfiling.
- profiler/Profiler.h: (KJS::ProfilerClient::~ProfilerClient): Clients will implement this interface.
WebCore:
2008-06-20 Kevin McCullough <kmccullough@apple.com>
Reviewed by Tim.
<rdar://problem/5958770> JSProfiler: Time incorrectly given to (idle)
if profiling is started and finished within the same function. (19230)
- Now we profile one more stack frame up from the last frame to allocate the time spent in it, if it exists.
- page/Console.cpp:
- manual-tests/inspector/profiler-test-start-and-stop-profiling-in-the-same-function.html: Added. (WebCore::Console::profile): When stating the profiler give a client for the callback of when the profile actually finishes. (WebCore::Console::profileEnd): No longer needs to handle the return of the profile object since it will be retruned in the client's callback. (WebCore::Console::finishedProfiling): Implemenet the ProfileClient callback method.
- page/Console.h: Inherit from the ProfileClient.
- page/InspectorController.cpp: (WebCore::InspectorController::startUserInitiatedProfiling): Use the client callback. (WebCore::InspectorController::stopUserInitiatedProfiling): Does not need to handle the profile being returned as it is now handled by the client callback. (WebCore::InspectorController::finishedProfiling): Implement the ProfileClient callback method.
- page/InspectorController.h: Inherit from the ProfileClient.
- 12:26 PM Changeset in webkit [34695] by
-
- 2 edits in trunk/WebCore
Makes the JavaScript syntax highlighter process lines in chunks
so the user interface isn't blocked for large script files.
Reviewed by Adam Roben.
- page/inspector/SourceFrame.js: (WebInspector.SourceFrame.prototype._addMessageToSource): Use the cells property on the row instead of getElementsByTagName. (WebInspector.SourceFrame.prototype.syntaxHighlightJavascript): Use the cells property on the row instead of getElementsByTagName. Added a nested processChunk function that highlights 10 lines at a time This processChunk function is called at an interval of 25ms. The code is still highlighted quickly, and the user can't tell it wasn't highlighted all at once.
- 12:26 PM Changeset in webkit [34694] by
-
- 3 edits in trunk/WebCore
Fixes a bug where the source view in the Resources panel had a
couple of extra pixels at the bottom when fully scrolled.
Reviewed by Adam Roben.
- page/inspector/SourceFrame.js: (WebInspector.SourceFrame.prototype.set autoSizesToFitContentHeight): Call removeStyleClass instead of addStyleClass for "webkit-height-sized-to-fit" when sizing to fit is being disabled.
- page/inspector/inspector.css: (.resource-view.headers-visible .source-view-frame): Added the vertical-align: top property to prevent line alignment from adding extra pixels on the bottom.
- 12:26 PM Changeset in webkit [34693] by
-
- 41 edits2 adds in trunk
Fixes: Bug 19679: iframes with a height of 32,768px or greater do not layout correctly
WebCore:
2008-06-19 Timothy Hatcher <timothy@apple.com>
Changed all lineHeight, baselinePosition and verticalPositionHint
calls to return int instead of short. The short was overflowing
when a value greater than 32,767 was encountered.
Fixes: iframes with a height of 32,768px or greater do not layout correctly
https://bugs.webkit.org/show_bug.cgi?id=19679
Reviewed by Dave Hyatt.
Test: fast/css/line-height-overflow.html
- rendering/RenderBR.cpp: (WebCore::RenderBR::baselinePosition):
- rendering/RenderBR.h:
- rendering/RenderBlock.cpp: (WebCore::RenderBlock::lineHeight):
- rendering/RenderBlock.h:
- rendering/RenderFlow.cpp:
- rendering/RenderFlow.h:
- rendering/RenderListBox.cpp:
- rendering/RenderListBox.h:
- rendering/RenderListMarker.cpp: (WebCore::RenderListMarker::lineHeight):
- rendering/RenderListMarker.h:
- rendering/RenderObject.cpp: (WebCore::RenderObject::verticalPositionHint):
- rendering/RenderObject.h: (WebCore::):
- rendering/RenderPath.cpp: (WebCore::RenderPath::lineHeight):
- rendering/RenderPath.h:
- rendering/RenderReplaced.cpp: (WebCore::RenderReplaced::lineHeight):
- rendering/RenderReplaced.h:
- rendering/RenderSVGContainer.cpp: (WebCore::RenderSVGContainer::lineHeight):
- rendering/RenderSVGContainer.h:
- rendering/RenderSVGHiddenContainer.cpp: (WebCore::RenderSVGHiddenContainer::lineHeight):
- rendering/RenderSVGHiddenContainer.h:
- rendering/RenderSVGRoot.cpp: (WebCore::RenderSVGRoot::lineHeight):
- rendering/RenderSVGRoot.h:
- rendering/RenderSlider.cpp:
- rendering/RenderSlider.h:
- rendering/RenderTableCell.cpp:
- rendering/RenderTableCell.h:
- rendering/RenderTableCol.h:
- rendering/RenderTableRow.h:
- rendering/RenderTableSection.h:
- rendering/RenderText.cpp:
- rendering/RenderText.h:
- rendering/RenderTextControl.cpp:
- rendering/RenderTextControl.h:
- rendering/RenderTheme.cpp:
- rendering/RenderTheme.h:
- rendering/RenderThemeMac.h:
- rendering/RenderThemeMac.mm:
- rendering/RenderThemeSafari.cpp:
- rendering/RenderThemeSafari.h:
LayoutTests:
2008-06-19 Timothy Hatcher <timothy@apple.com>
Test for: iframes with a height of 32,768px or greater do not layout correctly
https://bugs.webkit.org/show_bug.cgi?id=19679
Reviewed by Dave Hyatt.
- fast/css/line-height-overflow.html: Added.
- platform/mac/fast/css/line-height-overflow-expected.txt: Added.
- 12:19 PM Changeset in webkit [34692] by
-
- 4 edits4 adds in trunk
WebCore:
Reviewed by Darin Adler.
- fix https://bugs.webkit.org/show_bug.cgi?id=19519 <rdar://problem/6007345> DOM modification causes stack exhaustion (BUTTON OBJECT COLGROUP)
Test: fast/table/prepend-in-anonymous-table.html
- rendering/RenderBlock.cpp: (WebCore::RenderBlock::addChildToFlow): Added code to handle the case of inserting before a child that has been wrapped by an anonymous table, in which case if the new child is the type that needs to be in a table, it is inserted into the table, and otherwise it is inserted before the table.
- rendering/RenderTable.cpp: (WebCore::RenderTable::addChild): Added table-column-group alongside table-caption as content that can exist inside an anonymous table without being wrapped in a table section.
LayoutTests:
Reviewed by Darin Adler.
- test for https://bugs.webkit.org/show_bug.cgi?id=19519 <rdar://problem/6007345> DOM modification causes stack exhaustion (BUTTON OBJECT COLGROUP)
- fast/table/prepend-in-anonymous-table.html: Added.
- platform/mac/fast/table/prepend-in-anonymous-table-expected.checksum: Added.
- platform/mac/fast/table/prepend-in-anonymous-table-expected.png: Added.
- platform/mac/fast/table/prepend-in-anonymous-table-expected.txt: Added.
- 11:36 AM Changeset in webkit [34691] by
-
- 8 edits4 adds4 deletes in trunk
WebCore:
2008-06-20 David Hyatt <hyatt@apple.com>
Allow CSS variables to support arbitrary expressions as values instead of just a single term.
Reviewed by Sam
Removed fast/css/variables/single-term-test.html and replaced with multiple-term-test.html
- css/CSSGrammar.y:
- css/CSSParser.cpp: (WebCore::CSSParser::addVariable):
- css/CSSParser.h:
- css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::addMatchedDeclaration):
- css/CSSVariablesDeclaration.cpp: (WebCore::CSSVariablesDeclaration::CSSVariablesDeclaration): (WebCore::CSSVariablesDeclaration::getVariableValue): (WebCore::CSSVariablesDeclaration::addParsedVariable): (WebCore::CSSVariablesDeclaration::getParsedVariable):
- css/CSSVariablesDeclaration.h: (WebCore::CSSVariablesDeclaration::create):
LayoutTests:
2008-06-20 David Hyatt <hyatt@apple.com>
Allow CSS variables to support arbitrary expressions as values instead of just a single term.
Reviewed by Sam
- fast/css/variables/single-term-test.html: Removed.
- fast/css/variables/multiple-term-test.html: Added.
- platform/mac/fast/css/variables/multiple-term-test-expected.checksum: Added.
- platform/mac/fast/css/variables/multiple-term-test-expected.png: Added.
- platform/mac/fast/css/variables/multiple-term-test-expected.txt: Added.
- platform/mac/fast/css/variables/single-term-test-expected.checksum: Removed.
- platform/mac/fast/css/variables/single-term-test-expected.png: Removed.
- platform/mac/fast/css/variables/single-term-test-expected.txt: Removed.
- 10:17 AM Changeset in webkit [34690] by
-
- 4 edits in trunk/LayoutTests
2008-06-20 Darin Adler <Darin Adler>
- updated results for some recent changes
- fast/dom/Window/window-properties-expected.txt: Updated results to reflect the new rule type, VARIABLES_RULE (Hyatt's CSS variables patch).
- fast/forms/plaintext-mode-1-expected.txt: Updated test and results to expect ForeColor to be disabled when the region is plain-text-only. Justin's execCommand patch for https://bugs.webkit.org/show_bug.cgi?id=16049.
- fast/forms/plaintext-mode-1.html: Ditto.
- 8:22 AM Changeset in webkit [34689] by
-
- 2 edits in trunk/JavaScriptCore
2008-06-19 Ariya Hidayat <ariya.hidayat@trolltech.com>
Reviewed by Simon.
Surpress compiler warning (int vs unsigned comparison).
- wtf/unicode/qt4/UnicodeQt4.h: (WTF::Unicode::toLower):
- 3:03 AM Changeset in webkit [34688] by
-
- 2 edits in trunk/WebKit/qt
2008-06-20 Marc Ordinas i Llopis <marc.ordinasillopis@collabora.co.uk>
Reviewed by Simon.
https://bugs.webkit.org/show_bug.cgi?id=19082
[Qt] Full-page plugins not activated
- 3:03 AM Changeset in webkit [34687] by
-
- 2 edits in trunk/WebKit/qt
2008-06-20 Marco Barisione <marco.barisione@collabora.co.uk>
Reviewed by Simon.
https://bugs.webkit.org/show_bug.cgi?id=19082
[Qt] Full-page plugins not activated
- 2:06 AM Changeset in webkit [34686] by
-
- 2 edits in trunk/JavaScriptCore
2008-06-19 Ariya Hidayat <ariya.hidayat@trolltech.com>
Reviewed by Timothy Hatcher.
Introduce compiler define for MinGW, to have COMPILER(MINGW).
- wtf/Platform.h: