oliver@apple.com [Mon, 8 Dec 2008 00:35:12 +0000 (00:35 +0000)]
Rename ExecutableAllocatorMMAP to the more sensible ExecutableAllocatorPosix
Rubber stamped by Mark Rowe.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39084
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
oliver@apple.com [Sun, 7 Dec 2008 23:55:04 +0000 (23:55 +0000)]
<rdar://problem/6309878> Need more granular control over allocation of executable memory (21783)
<https://bugs.webkit.org/show_bug.cgi?id=21783>
Reviewed by Cameron Zwarich and Sam Weinig
Add a new allocator for use by the JIT that provides executable pages, so
we can get rid of the current hack that makes the entire heap executable.
1-2% progression on SunSpider-v8, 1% on SunSpider. Reduces memory usage as well!
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39083
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zecke@webkit.org [Sun, 7 Dec 2008 19:16:17 +0000 (19:16 +0000)]
[Gtk+] Use glib's unit test facilities to test the WebKit/Gtk+ API
https://bugs.webkit.org/show_bug.cgi?id=22491
Add the skeleton to WebKit/gtk/tests and integrate that into the
buildsystem. Testing support was added in glib 2.16. For versions
using glib < 2.16 we compile an empty application.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39082
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zecke@webkit.org [Sun, 7 Dec 2008 18:41:46 +0000 (18:41 +0000)]
[GTK] Define ENABLE_JIT_OPTIMIZE_CALL, ENABLE_JIT_OPTIMIZE_PROPERTY_ACCESS, ENABLE_JIT_OPTIMIZE_ARITHMETIC
When building the jit on i*86 also enable the above optimizations.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39081
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
krit@webkit.org [Sun, 7 Dec 2008 09:23:17 +0000 (09:23 +0000)]
2008-12-07 Dirk Schulze <krit@webkit.org>
Reviewed by Oliver Hunt.
WebCore:
Add gradient and pattern support for strokeRect on canvas/Cg.
Canvas strokeRect() doesn't support gradients
https://bugs.webkit.org/show_bug.cgi?id=19790
Test: fast/canvas/canvas-strokeRect.html
* platform/graphics/cg/GraphicsContextCG.cpp:
(WebCore::GraphicsContext::strokeRect):
LayoutTests:
Tests strokeRect with patterns and gradients.
* fast/canvas/canvas-strokeRect-expected.txt: Added.
* fast/canvas/canvas-strokeRect.html: Added.
* fast/canvas/resources/canvas-strokeRect.js: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39080
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
krit@webkit.org [Sun, 7 Dec 2008 07:48:53 +0000 (07:48 +0000)]
2008-12-06 Dirk Schulze <krit@webkit.org>
Reviewed by Oliver Hunt.
WebCore:
Add support for setTransform() in canvas.
<canvas> lacks transform() and setTransform()
https://bugs.webkit.org/show_bug.cgi?id=16604
Test: fast/canvas/canvas-setTransform.html
* html/CanvasRenderingContext2D.cpp:
(WebCore::CanvasRenderingContext2D::State::State):
(WebCore::CanvasRenderingContext2D::setStrokeStyle):
(WebCore::CanvasRenderingContext2D::setFillStyle):
(WebCore::CanvasRenderingContext2D::scale):
(WebCore::CanvasRenderingContext2D::rotate):
(WebCore::CanvasRenderingContext2D::translate):
(WebCore::CanvasRenderingContext2D::transform):
(WebCore::CanvasRenderingContext2D::setTransform):
(WebCore::CanvasRenderingContext2D::beginPath):
(WebCore::CanvasRenderingContext2D::closePath):
(WebCore::CanvasRenderingContext2D::moveTo):
(WebCore::CanvasRenderingContext2D::lineTo):
(WebCore::CanvasRenderingContext2D::quadraticCurveTo):
(WebCore::CanvasRenderingContext2D::bezierCurveTo):
(WebCore::CanvasRenderingContext2D::arcTo):
(WebCore::CanvasRenderingContext2D::arc):
(WebCore::CanvasRenderingContext2D::rect):
(WebCore::CanvasRenderingContext2D::fill):
(WebCore::CanvasRenderingContext2D::stroke):
(WebCore::CanvasRenderingContext2D::clip):
(WebCore::CanvasRenderingContext2D::isPointInPath):
(WebCore::CanvasRenderingContext2D::clearRect):
(WebCore::CanvasRenderingContext2D::fillRect):
(WebCore::CanvasRenderingContext2D::strokeRect):
(WebCore::CanvasRenderingContext2D::drawImage):
(WebCore::CanvasRenderingContext2D::drawImageFromRect):
(WebCore::CanvasRenderingContext2D::willDraw):
(WebCore::CanvasRenderingContext2D::drawTextInternal):
* html/CanvasRenderingContext2D.h:
* html/CanvasRenderingContext2D.idl:
* html/HTMLCanvasElement.cpp:
(WebCore::HTMLCanvasElement::baseTransform):
* html/HTMLCanvasElement.h:
* platform/graphics/ImageBuffer.h:
(WebCore::ImageBuffer::baseTransform):
LayoutTests:
Added tests for canvas's setTransform() and updated an existing one.
* fast/canvas/canvas-setTransform-expected.txt: Added.
* fast/canvas/canvas-setTransform.html: Added.
* fast/canvas/resources/canvas-setTransform.js: Added.
* fast/dom/Window/window-properties-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39079
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Sun, 7 Dec 2008 06:15:49 +0000 (06:15 +0000)]
2008-12-06 Simon Fraser <simon.fraser@apple.com>
Reviewed by Antti Koivisto, Dan Bernstein
https://bugs.webkit.org/show_bug.cgi?id=22088
Fix logic related to repainting when transform changes:
If an object has a layer, and the transform changes, then we need
to do a repaintIncludingDescendants(), not just a repaint.
Test: fast/repaint/transform-repaint-descendants.html
* rendering/RenderObject.cpp:
(WebCore::RenderObject::styleWillChange):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39078
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Sun, 7 Dec 2008 04:20:56 +0000 (04:20 +0000)]
2008-12-06 Sam Weinig <sam@webkit.org>
Fix the Gtk build.
* jit/JITPropertyAccess.cpp:
(JSC::JIT::compileGetByIdHotPath):
(JSC::JIT::compilePutByIdHotPath):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39077
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
antti@apple.com [Sun, 7 Dec 2008 02:05:19 +0000 (02:05 +0000)]
2008-12-06 Antti Koivisto <antti@apple.com>
Reviewed by Darin Adler.
Also copy m_implicit field. Darin wanted this change commited separately.
* css/CSSProperty.h:
(WebCore::CSSProperty::operator=):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39076
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
antti@apple.com [Sun, 7 Dec 2008 01:40:31 +0000 (01:40 +0000)]
WebCore:
2008-12-06 Antti Koivisto <antti@apple.com>
Reviewed by Darin Adler.
https://bugs.webkit.org/show_bug.cgi?id=22379
Make CSSOM use less memory
Use vector instead of a double linked list for properties in CSSMutableStyleDeclaration.
Taught setter functions to use existing slots to avoid memory moves, plus some
other optimizations.
* WebCore.xcodeproj/project.pbxproj:
* css/CSSMutableStyleDeclaration.cpp:
(WebCore::CSSMutableStyleDeclaration::CSSMutableStyleDeclaration):
(WebCore::CSSMutableStyleDeclaration::operator=):
(WebCore::CSSMutableStyleDeclaration::getPropertyCSSValue):
(WebCore::CSSMutableStyleDeclaration::removeShorthandProperty):
(WebCore::CSSMutableStyleDeclaration::removeProperty):
(WebCore::CSSMutableStyleDeclaration::getPropertyPriority):
(WebCore::CSSMutableStyleDeclaration::getPropertyShorthand):
(WebCore::CSSMutableStyleDeclaration::isPropertyImplicit):
(WebCore::CSSMutableStyleDeclaration::setProperty):
(WebCore::CSSMutableStyleDeclaration::setPropertyInternal):
(WebCore::CSSMutableStyleDeclaration::setStringProperty):
(WebCore::CSSMutableStyleDeclaration::setImageProperty):
(WebCore::CSSMutableStyleDeclaration::parseDeclaration):
(WebCore::CSSMutableStyleDeclaration::addParsedProperties):
(WebCore::CSSMutableStyleDeclaration::addParsedProperty):
(WebCore::CSSMutableStyleDeclaration::setLengthProperty):
(WebCore::CSSMutableStyleDeclaration::length):
(WebCore::CSSMutableStyleDeclaration::item):
(WebCore::CSSMutableStyleDeclaration::cssText):
(WebCore::CSSMutableStyleDeclaration::setCssText):
(WebCore::CSSMutableStyleDeclaration::merge):
(WebCore::CSSMutableStyleDeclaration::removePropertiesInSet):
(WebCore::CSSMutableStyleDeclaration::copy):
(WebCore::CSSMutableStyleDeclaration::findPropertyWithId):
* css/CSSMutableStyleDeclaration.h:
(WebCore::CSSMutableStyleDeclarationConstIterator::operator*):
(WebCore::CSSMutableStyleDeclarationConstIterator::operator->):
(WebCore::CSSMutableStyleDeclarationConstIterator::operator!=):
(WebCore::CSSMutableStyleDeclarationConstIterator::operator==):
(WebCore::CSSMutableStyleDeclaration::create):
(WebCore::CSSMutableStyleDeclaration::begin):
(WebCore::CSSMutableStyleDeclaration::end):
(WebCore::CSSMutableStyleDeclarationConstIterator::CSSMutableStyleDeclarationConstIterator):
(WebCore::CSSMutableStyleDeclarationConstIterator::~CSSMutableStyleDeclarationConstIterator):
(WebCore::CSSMutableStyleDeclarationConstIterator::operator=):
(WebCore::CSSMutableStyleDeclarationConstIterator::operator++):
(WebCore::CSSMutableStyleDeclarationConstIterator::operator--):
* css/CSSProperty.h:
(WTF::):
* css/CSSStyleDeclaration.cpp:
(WebCore::CSSStyleDeclaration::diff):
(WebCore::CSSStyleDeclaration::copyPropertiesInSet):
* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::resolveVariablesForDeclaration):
(WebCore::CSSStyleSelector::keyframeStylesForAnimation):
(WebCore::CSSStyleSelector::applyDeclarations):
* dom/EventTarget.h:
* editing/ApplyStyleCommand.cpp:
(WebCore::StyleChange::init):
(WebCore::ApplyStyleCommand::isHTMLStyleNode):
(WebCore::ApplyStyleCommand::removeHTMLFontStyle):
(WebCore::ApplyStyleCommand::removeCSSStyle):
* editing/Editor.cpp:
(WebCore::Editor::selectionStartHasStyle):
(WebCore::updateState):
* editing/ReplaceSelectionCommand.cpp:
(WebCore::ReplaceSelectionCommand::handleStyleSpans):
* editing/markup.cpp:
(WebCore::appendStartMarkup):
LayoutTests:
2008-12-06 Antti Koivisto <antti@apple.com>
Reusing property slots changed property ordering in this text.
* editing/pasteboard/5780697-2-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39075
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Sun, 7 Dec 2008 01:07:56 +0000 (01:07 +0000)]
2008-12-06 Simon Fraser <simon.fraser@apple.com>
Update expected image now that the caret renders in transformed
content.
https://bugs.webkit.org/show_bug.cgi?id=15671
* platform/mac/fast/forms/search-transformed-expected.checksum:
* platform/mac/fast/forms/search-transformed-expected.png:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39074
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Sun, 7 Dec 2008 01:03:55 +0000 (01:03 +0000)]
2008-12-06 Simon Fraser <simon.fraser@apple.com>
Reviewed by Dan Bernstein
https://bugs.webkit.org/show_bug.cgi?id=15739
When painting the selection on a replaced element, paint
using local coordinates so that the selection is correctly
painted for transformed elements.
Test: fast/replaced/selection-rect-transform.html
* rendering/RenderReplaced.cpp:
(WebCore::RenderReplaced::paint):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39073
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Sat, 6 Dec 2008 22:31:14 +0000 (22:31 +0000)]
2008-12-06 Sam Weinig <sam@webkit.org>
Reviewed by Cameron Zwarich,
Move CodeBlock constructor into the .cpp file.
Sunspider reports a .7% progression, but I can only assume this
is noise.
* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::CodeBlock):
* bytecode/CodeBlock.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39072
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Sat, 6 Dec 2008 22:19:22 +0000 (22:19 +0000)]
2008-12-06 Sam Weinig <sam@webkit.org>
Reviewed by Cameron Zwarich.
Split JumpTable code into its own file.
* GNUmakefile.am:
* JavaScriptCore.pri:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* JavaScriptCoreSources.bkl:
* bytecode/CodeBlock.cpp:
* bytecode/CodeBlock.h:
* bytecode/JumpTable.cpp: Copied from bytecode/CodeBlock.cpp.
* bytecode/JumpTable.h: Copied from bytecode/CodeBlock.h.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39071
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Sat, 6 Dec 2008 22:01:05 +0000 (22:01 +0000)]
2008-12-05 Sam Weinig <sam@webkit.org>
Reviewed by Cameron Zwarich.
Fix for https://bugs.webkit.org/show_bug.cgi?id=22715
Encapsulate more CodeBlock members in preparation
of moving some of them to a rare data structure.
* bytecode/CodeBlock.cpp:
(JSC::locationForOffset):
(JSC::printConditionalJump):
(JSC::printGetByIdOp):
(JSC::printPutByIdOp):
(JSC::CodeBlock::printStructure):
(JSC::CodeBlock::printStructures):
(JSC::CodeBlock::dump):
(JSC::CodeBlock::~CodeBlock):
(JSC::CodeBlock::unlinkCallers):
(JSC::CodeBlock::derefStructures):
(JSC::CodeBlock::refStructures):
(JSC::CodeBlock::mark):
(JSC::CodeBlock::getHandlerForVPC):
(JSC::CodeBlock::nativeExceptionCodeForHandlerVPC):
(JSC::CodeBlock::lineNumberForVPC):
(JSC::CodeBlock::expressionRangeForVPC):
(JSC::CodeBlock::shrinkToFit):
* bytecode/CodeBlock.h:
(JSC::CodeBlock::CodeBlock):
(JSC::CodeBlock::addCaller):
(JSC::CodeBlock::removeCaller):
(JSC::CodeBlock::isKnownNotImmediate):
(JSC::CodeBlock::isConstantRegisterIndex):
(JSC::CodeBlock::getConstant):
(JSC::CodeBlock::isTemporaryRegisterIndex):
(JSC::CodeBlock::getStubInfo):
(JSC::CodeBlock::getCallLinkInfo):
(JSC::CodeBlock::instructions):
(JSC::CodeBlock::setJITCode):
(JSC::CodeBlock::jitCode):
(JSC::CodeBlock::ownerNode):
(JSC::CodeBlock::setGlobalData):
(JSC::CodeBlock::setThisRegister):
(JSC::CodeBlock::thisRegister):
(JSC::CodeBlock::setNeedsFullScopeChain):
(JSC::CodeBlock::needsFullScopeChain):
(JSC::CodeBlock::setUsesEval):
(JSC::CodeBlock::usesEval):
(JSC::CodeBlock::setUsesArguments):
(JSC::CodeBlock::usesArguments):
(JSC::CodeBlock::codeType):
(JSC::CodeBlock::source):
(JSC::CodeBlock::sourceOffset):
(JSC::CodeBlock::addGlobalResolveInstruction):
(JSC::CodeBlock::numberOfPropertyAccessInstructions):
(JSC::CodeBlock::addPropertyAccessInstruction):
(JSC::CodeBlock::propertyAccessInstruction):
(JSC::CodeBlock::numberOfCallLinkInfos):
(JSC::CodeBlock::addCallLinkInfo):
(JSC::CodeBlock::callLinkInfo):
(JSC::CodeBlock::numberOfJumpTargets):
(JSC::CodeBlock::addJumpTarget):
(JSC::CodeBlock::jumpTarget):
(JSC::CodeBlock::lastJumpTarget):
(JSC::CodeBlock::numberOfExceptionHandlers):
(JSC::CodeBlock::addExceptionHandler):
(JSC::CodeBlock::exceptionHandler):
(JSC::CodeBlock::addExpressionInfo):
(JSC::CodeBlock::numberOfLineInfos):
(JSC::CodeBlock::addLineInfo):
(JSC::CodeBlock::lastLineInfo):
(JSC::CodeBlock::jitReturnAddressVPCMap):
(JSC::CodeBlock::numberOfIdentifiers):
(JSC::CodeBlock::addIdentifier):
(JSC::CodeBlock::identifier):
(JSC::CodeBlock::numberOfConstantRegisters):
(JSC::CodeBlock::addConstantRegister):
(JSC::CodeBlock::constantRegister):
(JSC::CodeBlock::addFunction):
(JSC::CodeBlock::function):
(JSC::CodeBlock::addFunctionExpression):
(JSC::CodeBlock::functionExpression):
(JSC::CodeBlock::addUnexpectedConstant):
(JSC::CodeBlock::unexpectedConstant):
(JSC::CodeBlock::addRegExp):
(JSC::CodeBlock::regexp):
(JSC::CodeBlock::symbolTable):
(JSC::CodeBlock::evalCodeCache):
New inline setters/getters.
(JSC::ProgramCodeBlock::ProgramCodeBlock):
(JSC::ProgramCodeBlock::~ProgramCodeBlock):
(JSC::ProgramCodeBlock::clearGlobalObject):
* bytecode/SamplingTool.cpp:
(JSC::ScopeSampleRecord::sample):
(JSC::SamplingTool::dump):
* bytecompiler/BytecodeGenerator.cpp:
* bytecompiler/BytecodeGenerator.h:
* bytecompiler/Label.h:
* interpreter/CallFrame.cpp:
* interpreter/Interpreter.cpp:
* jit/JIT.cpp:
* jit/JITCall.cpp:
* jit/JITInlineMethods.h:
* jit/JITPropertyAccess.cpp:
* parser/Nodes.cpp:
* runtime/Arguments.h:
* runtime/ExceptionHelpers.cpp:
* runtime/JSActivation.cpp:
* runtime/JSActivation.h:
* runtime/JSGlobalObject.cpp:
Change direct access to use new getter/setters.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39070
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Sat, 6 Dec 2008 19:58:44 +0000 (19:58 +0000)]
2008-12-06 Simon Fraser <simon.fraser@apple.com>
Reviewed by Dave Hyatt
https://bugs.webkit.org/show_bug.cgi?id=15671
Fix caret rendering to behave correctly with transforms:
* Rename caretRect() methods to localCaretRect() and
absoluteCaretBounds() as appropriate
* Fix localCaretRect() methods to return a rect in the
appropriate coordinates.
* Pass tx, ty down through the paintCaret() methods, after fixing them
up to account for differences between contents coords, and renderer-local
coords (via RenderBlock::offsetForContents()).
* Remove m_caretPositionOnLayout from SelectionController, and instead
call invalidateSelection() from RenderLayer::scrollToOffset(), because
we can no longer assume simple x/y offsets from scrolling with transforms.
* Move the logic to compute which RenderObject actually paints the caret into
SelectionController::caretRenderer(), rather than having it in RenderBlock.
* SelectionController now computes and caches a local caret rect. For invalidation,
it computes the absolute bounds of that (possibly transformed) local rect.
The local rect is computed in the coordinate system of the RenderObject that
will paint the caret (this may require offsetting from the actual renderer
at the start of the selection).
* Fix LayoutState(RenderObject* root) to take transforms into account
* Make offsetFromContainer() a virtual method on RenderObject, and implement
the RenderObject version. It's used to map from selection start renderer
to caret renderer.
Test: fast/transforms/transformed-caret.html
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39069
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ddkilzer@apple.com [Sat, 6 Dec 2008 17:20:55 +0000 (17:20 +0000)]
Added reference to bugs.webkit.org bug.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39068
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ddkilzer@apple.com [Sat, 6 Dec 2008 17:15:19 +0000 (17:15 +0000)]
BUILD FIX for r39065: Forgot parentheses after "document".
Bug 22666: Clean up data structures used when collecting URLs of subresources for webarchives
<https://bugs.webkit.org/show_bug.cgi?id=22666>
* svg/SVGFEImageElement.cpp:
(WebCore::SVGFEImageElement::addSubresourceAttributeURLs): Changed
document to document().
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39067
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@webkit.org [Sat, 6 Dec 2008 16:04:36 +0000 (16:04 +0000)]
2008-12-06 Dmitry Titov <dimich@chromium.org>
Reviewed by Alexey Proskuryakov.
https://bugs.webkit.org/show_bug.cgi?id=22710
Memory leak due to circular reference Document->DOMTimer->ScheduledAction->[JS objects]->Document
* bindings/js/DOMTimer.cpp:
(WebCore::DOMTimer::stop): Delete ScheduledAction, which contains a protected object.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39066
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ddkilzer@apple.com [Sat, 6 Dec 2008 11:54:46 +0000 (11:54 +0000)]
Bug 22666: Clean up data structures used when collecting URLs of subresources for webarchives
<https://bugs.webkit.org/show_bug.cgi?id=22666>
Reviewed by Darin Adler.
WebCore:
When creating a webarchive from WebCore::LegacyWebArchive::create(),
HashSet<String>, Vector<KURL> and Vector<String> were all used to
store a list of URLs for resources found in the document. Instead
use a single ListHashSet<KURL> to store the list and resolve the
relative URLs as they're added. We use a new inline method called
WebCore::addSubresourceURL() to add KURL objects to the ListHashSet
to prevent "null" KURL objects from crashing in the KURL hashing
function.
* WebCore.base.exp: Changed export of
WebCore::Node::getSubresourceURLs() to take a ListHashSet<KURL>
argument instead of a Vector<KURL>.
* WebCore.xcodeproj/project.pbxproj: Marked KURLHash.h as a private
header for use in WebKit.
* css/CSSStyleSheet.cpp:
(WebCore::CSSStyleSheet::addSubresourceStyleURLs): Renamed from
addSubresourceURLStrings(). Changed to use ListHashSet<KURL>
instead of HashSet<String>. Cleaned up code.
* css/CSSStyleSheet.h:
(WebCore::CSSStyleSheet::addSubresourceStyleURLs): Ditto.
* css/StyleSheet.h:
(WebCore::StyleSheet::addSubresourceStyleURLs): Ditto.
* dom/Node.cpp:
(WebCore::Node::getSubresourceURLs): Changed to use
ListHashSet<KURL> instead of Vector<KURL>. Cleaned up code.
* dom/Node.h:
(WebCore::Node::getSubresourceURLs): Ditto.
(WebCore::Node::addSubresourceAttributeURLs): Renamed from
getSubresourceAttributeStrings(). Changed to use ListHashSet<KURL>
instead of Vector<String>.
(WebCore::addSubresourceURL): Added. Safely adds new KURL objects
to a ListHashSet<KURL> object. A "null" KURL object will cause the
hash function to crash since it contains a null StringImpl. Used in
Node::addSubresourceAttributeURLs() and addSubresourceStyleURLs() in
the style subsystem.
* dom/ProcessingInstruction.cpp:
(WebCore::ProcessingInstruction::addSubresourceAttributeURLs):
Renamed from getSubresourceAttributeStrings(). Changed to use
ListHashSet<KURL> instead of Vector<String>. Use
WebCore::addSubresourceURL() to add new KURL objects.
* dom/ProcessingInstruction.h: Ditto.
* html/HTMLBodyElement.cpp:
(WebCore::HTMLBodyElement::addSubresourceAttributeURLs): Ditto.
* html/HTMLBodyElement.h: Ditto.
* html/HTMLEmbedElement.cpp:
(WebCore::HTMLEmbedElement::addSubresourceAttributeURLs): Ditto.
* html/HTMLEmbedElement.h: Ditto.
* html/HTMLImageElement.cpp:
(WebCore::HTMLImageElement::addSubresourceAttributeURLs): Ditto.
* html/HTMLImageElement.h: Ditto.
* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::addSubresourceAttributeURLs): Ditto.
* html/HTMLInputElement.h: Ditto.
* html/HTMLLinkElement.cpp:
(WebCore::HTMLLinkElement::addSubresourceAttributeURLs): Ditto.
* html/HTMLLinkElement.h: Ditto.
* html/HTMLObjectElement.cpp:
(WebCore::HTMLObjectElement::addSubresourceAttributeURLs): Ditto.
* html/HTMLObjectElement.h: Ditto.
* html/HTMLParamElement.cpp:
(WebCore::HTMLParamElement::addSubresourceAttributeURLs): Ditto.
* html/HTMLParamElement.h: Ditto.
* html/HTMLScriptElement.cpp:
(WebCore::HTMLScriptElement::addSubresourceAttributeURLs): Ditto.
* html/HTMLScriptElement.h: Ditto.
* html/HTMLStyleElement.cpp:
(WebCore::HTMLStyleElement::addSubresourceAttributeURLs): Ditto.
* html/HTMLStyleElement.h: Ditto.
* html/HTMLTableCellElement.cpp:
(WebCore::HTMLTableCellElement::addSubresourceAttributeURLs): Ditto.
* html/HTMLTableCellElement.h: Ditto.
* html/HTMLTableElement.cpp:
(WebCore::HTMLTableElement::addSubresourceAttributeURLs): Ditto.
* html/HTMLTableElement.h: Ditto.
* loader/archive/cf/LegacyWebArchive.cpp:
(WebCore::LegacyWebArchive::create): Changed from using
HashSet<String> to ListHashSet<KURL> for tracking unique
subresources. Changed from using Vector<KURL> to ListHashSet<KURL>
when calling WebCore::Node::getSubresourceURLs(). Cleaned up code.
* svg/SVGCursorElement.cpp:
(WebCore::SVGCursorElement::addSubresourceAttributeURLs): Renamed
from getSubresourceAttributeStrings(). Changed to use
ListHashSet<KURL> instead of Vector<String>. Use
WebCore::addSubresourceURL() to add new KURL objects.
* svg/SVGCursorElement.h: Ditto.
* svg/SVGFEImageElement.cpp:
(WebCore::SVGFEImageElement::addSubresourceAttributeURLs): Ditto.
* svg/SVGFEImageElement.h: Ditto.
* svg/SVGImageElement.cpp:
(WebCore::SVGImageElement::addSubresourceAttributeURLs): Ditto.
* svg/SVGImageElement.h: Ditto.
* svg/SVGScriptElement.cpp:
(WebCore::SVGScriptElement::addSubresourceAttributeURLs): Ditto.
* svg/SVGScriptElement.h: Ditto.
WebKit/mac:
* DOM/WebDOMOperations.mm:
(-[DOMNode _subresourceURLs]): Changed from using Vector<KURL> to
ListHashSet<KURL> when calling WebCore::Node::getSubresourceURLs().
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39065
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ddkilzer@apple.com [Sat, 6 Dec 2008 11:51:31 +0000 (11:51 +0000)]
Fixed ChangeLog date.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39064
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
barraclough@apple.com [Sat, 6 Dec 2008 05:00:05 +0000 (05:00 +0000)]
Mis-commit in ChangeLog entry
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39063
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
barraclough@apple.com [Sat, 6 Dec 2008 04:57:19 +0000 (04:57 +0000)]
2008-12-05 Gavin Barraclough <barraclough@apple.com>
Reviewed by Oliver Hunt.
Please don't die in a fire while trying to compile Interpreter.cpp on GCC 4.2.
Added "-fno-var-tracking" compiler flag.
https://bugs.webkit.org/show_bug.cgi?id=22704
* JavaScriptCore.xcodeproj/project.pbxproj:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39062
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
barraclough@apple.com [Sat, 6 Dec 2008 03:25:23 +0000 (03:25 +0000)]
2008-12-05 Gavin Barraclough <barraclough@apple.com>
Reviewed by Oliver Hunt.
Ordering of branch operands in MacroAssembler in unnecessarily inconsistent.
je, jg etc take an immediate operand as the second argument, but for the
equality branches (je, jne) the immediate operand was the first argument. This
was unnecessarily inconsistent. Change je, jne methods to take the immediate
as the second argument.
https://bugs.webkit.org/show_bug.cgi?id=22703
* assembler/MacroAssembler.h:
(JSC::MacroAssembler::je32):
(JSC::MacroAssembler::jne32):
* jit/JIT.cpp:
(JSC::JIT::compileOpStrictEq):
* wrec/WRECGenerator.cpp:
(JSC::WREC::Generator::generateEnter):
(JSC::WREC::Generator::generateNonGreedyQuantifier):
(JSC::WREC::Generator::generateGreedyQuantifier):
(JSC::WREC::Generator::generatePatternCharacterPair):
(JSC::WREC::Generator::generatePatternCharacter):
(JSC::WREC::Generator::generateCharacterClassInvertedRange):
(JSC::WREC::Generator::generateCharacterClassInverted):
(JSC::WREC::Generator::generateAssertionBOL):
(JSC::WREC::Generator::generateAssertionWordBoundary):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39061
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
brettw@chromium.org [Sat, 6 Dec 2008 02:27:15 +0000 (02:27 +0000)]
Reviewed by Darin Adler.
Make the page group use the proper link hashing functions rather than
calling the string hash functions directly. Add Chromium-specfic ifdefs
in the visited link computation functions to allow integration.
* page/PageGroup.cpp:
(WebCore::PageGroup::isLinkVisited):
(WebCore::PageGroup::addVisitedLink):
* platform/LinkHash.cpp:
(WebCore::visitedLinkHash):
* platform/LinkHash.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39060
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cmarrin@apple.com [Sat, 6 Dec 2008 01:42:16 +0000 (01:42 +0000)]
2008-12-05 Chris Marrin <cmarrin@apple.com>
Reviewed by Dave Hyatt.
Fix for https://bugs.webkit.org/show_bug.cgi?id=22635
For iteration and end events, previous fixes to prevent the deletion of
Animation objects (ref counting and hanging onto a ref during event callbacks)
was sufficient to prevent dangling pointers. But start events are sent in
the styleAvailable() call, which iterates over CompositeAnimation objects,
which are not ref counted. So that object can get destroyed in the event
handler while still active. So I added refcounting for CompositeAnimations.
Additionally, when am iterating over the CompositingAnimation list, it can
be deleted, which mutates the list. So I now make one pass over the list
building a vector of CompositeAnimation objects that need to be called and
then iterate over that vector to make the actual calls.
Finally, to make sure the lifetime of the CompositeAnimation exceeds that of
the Animation objects it owns, I now keep a ref to the CompositeAnimation
in the timer callback for the iteration and end events. That means I no
longer need to keep a ref to the Animation objects themselves in that timer
callback, since the CompositeAnimation already has one.
Tests: animations/animation-iteration-event-destroy-renderer.html
animations/animation-start-event-destroy-renderer.html
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39059
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
barraclough@apple.com [Sat, 6 Dec 2008 01:36:16 +0000 (01:36 +0000)]
2008-12-05 Gavin Barraclough <barraclough@apple.com>
Reviewed by Geoff Garen.
Second tranche of porting JIT.cpp to MacroAssembler interface.
* assembler/MacroAssembler.h:
(JSC::MacroAssembler::mul32):
(JSC::MacroAssembler::jl32):
(JSC::MacroAssembler::jnzSub32):
(JSC::MacroAssembler::joAdd32):
(JSC::MacroAssembler::joMul32):
(JSC::MacroAssembler::jzSub32):
* jit/JIT.cpp:
(JSC::JIT::emitSlowScriptCheck):
(JSC::JIT::privateCompileMainPass):
(JSC::JIT::privateCompileSlowCases):
(JSC::JIT::privateCompileCTIMachineTrampolines):
* jit/JIT.h:
* jit/JITInlineMethods.h:
(JSC::JIT::emitJumpIfNotJSCell):
(JSC::JIT::emitJumpSlowCaseIfNotJSCell):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39058
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ddkilzer@apple.com [Sat, 6 Dec 2008 01:07:19 +0000 (01:07 +0000)]
Added bugs.webkit.org URL to ChangeLog entry.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39057
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ddkilzer@apple.com [Sat, 6 Dec 2008 01:05:06 +0000 (01:05 +0000)]
<rdar://problem/6331749> Provide a mechanism to disable perfect hashing in the DOM at build time
Reviewed by Darin Adler.
Initial patch by Yosen Lin. Adapted for ToT WebKit by David Kilzer.
Added back the code that generates a "compact" hash (instead of a
perfect hash) as a build-time option using the
ENABLE(PERFECT_HASH_SIZE) macro as defined in Lookup.h.
JavaScriptCore:
* create_hash_table: Rename variables to differentiate perfect hash
values from compact hash values. Added back code to compute compact
hash tables. Generate both hash table sizes and emit
conditionalized code based on ENABLE(PERFECT_HASH_SIZE).
* runtime/Lookup.cpp:
(JSC::HashTable::createTable): Added version of createTable() for
use with compact hash tables.
(JSC::HashTable::deleteTable): Updated to work with compact hash
tables.
* runtime/Lookup.h: Defined ENABLE(PERFECT_HASH_SIZE) macro here.
(JSC::HashEntry::initialize): Set m_next to zero when using compact
hash tables.
(JSC::HashEntry::setNext): Added for compact hash tables.
(JSC::HashEntry::next): Added for compact hash tables.
(JSC::HashTable::entry): Added version of entry() for use with
compact hash tables.
* runtime/Structure.cpp:
(JSC::Structure::getEnumerablePropertyNames): Updated to work with
compact hash tables.
WebCore:
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateImplementation): Compute the number of elements that will
be stored in each hash table and pass it to GenerateHashTable().
(GenerateHashTable): Added new second parameter representing the
number of elements to store in the compact hash table. Added back
code to compute compact hash tables. Generate both hash table sizes
and emit conditionalized code based on ENABLE(PERFECT_HASH_SIZE).
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39056
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
barraclough@apple.com [Sat, 6 Dec 2008 00:52:05 +0000 (00:52 +0000)]
2008-12-05 Gavin Barraclough <barraclough@apple.com>
Reviewed by Geoff Garen.
Remove redundant calls to JIT::emitSlowScriptCheck.
This is checked in the hot path, so is not needed on the slow path - and the code
was being planted before the start of the slow case, so was completely unreachable!
* jit/JIT.cpp:
(JSC::JIT::privateCompileSlowCases):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39055
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
pam@chromium.org [Sat, 6 Dec 2008 00:02:27 +0000 (00:02 +0000)]
2008-12-05 Pamela Greene <pam@chromium.org>
Reviewed by Darin Adler.
https://bugs.webkit.org/show_bug.cgi?id=22608
Add a test for line numbers of uncaught JS exceptions.
* fast/js/uncaught-exception-line-number-expected.txt: Added.
* fast/js/uncaught-exception-line-number.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39054
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
barraclough@apple.com [Fri, 5 Dec 2008 23:57:43 +0000 (23:57 +0000)]
2008-12-05 Gavin Barraclough <barraclough@apple.com>
Reviewed by Geoff Garen.
Move JIT::compileOpStrictEq to MacroAssembler interface.
The rewrite also looks like a small (<1%) performance progression.
https://bugs.webkit.org/show_bug.cgi?id=22697
* jit/JIT.cpp:
(JSC::JIT::compileOpStrictEq):
(JSC::JIT::privateCompileSlowCases):
* jit/JIT.h:
* jit/JITInlineMethods.h:
(JSC::JIT::emitJumpIfJSCell):
(JSC::JIT::emitJumpSlowCaseIfJSCell):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39053
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
pam@chromium.org [Fri, 5 Dec 2008 23:56:33 +0000 (23:56 +0000)]
2008-12-05 Pamela Greene <pam@chromium.org>
Reviewed by Darin Adler.
https://bugs.webkit.org/show_bug.cgi?id=22604
Add test for onload handler named 'onload'.
* fast/events/onload-name-collision-expected.txt: Added.
* fast/events/onload-name-collision.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39052
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
pam@chromium.org [Fri, 5 Dec 2008 23:53:43 +0000 (23:53 +0000)]
2008-12-05 Pamela Greene <pam@chromium.org>
Reviewed by Darin Adler.
https://bugs.webkit.org/show_bug.cgi?id=22601
Add test to verify that calling functions on a Java applet from JS works.
* fast/dom/java-applet-calls-expected.txt: Added.
* fast/dom/java-applet-calls.html: Added.
* fast/dom/resources/TestApplet.class: Added.
* fast/dom/resources/TestApplet.java: Added.
(TestApplet): Source of test applet for use by layout test(s).
(TestApplet.init):
(TestApplet.setString):
(TestApplet.getString):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39051
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
pam@chromium.org [Fri, 5 Dec 2008 23:48:17 +0000 (23:48 +0000)]
2008-12-05 Pamela Greene <pam@chromium.org>
Reviewed by Darin Adler.
https://bugs.webkit.org/show_bug.cgi?id=22592
Make sure the onload handler is only called once, even when there are
multiple <body> nodes in the document.
* fast/events/onload-fires-twice-expected.txt: Added.
* fast/events/onload-fires-twice.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39050
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
pam@chromium.org [Fri, 5 Dec 2008 23:25:53 +0000 (23:25 +0000)]
2008-12-05 Pamela Greene <pam@chromium.org>
Reviewed by Darin Adler.
https://bugs.webkit.org/show_bug.cgi?id=22575
Add a test for accessing NodeList items by name.
* fast/dom/NodeList/nodelist-item-with-name-expected.txt: Added.
* fast/dom/NodeList/nodelist-item-with-name.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39049
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
brettw@chromium.org [Fri, 5 Dec 2008 23:22:06 +0000 (23:22 +0000)]
Merge branch 'ownptr' into ownptr_commit
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39048
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
pam@chromium.org [Fri, 5 Dec 2008 23:19:47 +0000 (23:19 +0000)]
2008-12-05 Pamela Greene <pam@chromium.org>
Reviewed by Eric Seidel.
https://bugs.webkit.org/show_bug.cgi?id=22632
Add a test for DOM operations with incompatible receivers or arguments.
* fast/dom/incompatible-operations-expected.txt: Added.
* fast/dom/incompatible-operations.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39047
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
brettw@chromium.org [Fri, 5 Dec 2008 23:13:10 +0000 (23:13 +0000)]
Reviewed by Eric Seidel.
Add a missing include for OwnPtr to make CSSSelector compile without
precompiled headers.
* css/CSSSelector.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39046
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ddkilzer@apple.com [Fri, 5 Dec 2008 22:53:11 +0000 (22:53 +0000)]
Bug 22555: Sort "children" sections in Xcode project files
<https://bugs.webkit.org/show_bug.cgi?id=22555>
Reviewed by Darin Adler.
Sort "children" sections alphabetically, moving groups (folders) to
the top of each of the lists. Files are assumed to have extensions,
so %isFile is used to override this behavior.
* Scripts/sort-Xcode-project-file:
(sortChildrenByFileName): Added.
(sortFilesByFileName): Renamed from sortByFileName().
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39045
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Fri, 5 Dec 2008 22:15:57 +0000 (22:15 +0000)]
Reviewed by Geoff Garen.
https://bugs.webkit.org/show_bug.cgi?id=22683
Fix gtk and qt builds which depend on --qt and --gtk being removed from ARGV
Add a new argumentsForConfiguration() function and clean up some old code to use it.
Rename checkArgV to checkForArgumentAndRemoveFromARGV to be more self-documenting.
* Scripts/run-javascriptcore-tests:
* Scripts/run-launcher:
* Scripts/run-webkit-tests:
* Scripts/webkitdirs.pm:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39044
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
barraclough@apple.com [Fri, 5 Dec 2008 22:14:11 +0000 (22:14 +0000)]
2008-12-05 Gavin Barraclough <barraclough@apple.com>
Reviewed by Geoff Garen.
Remove m_assembler from MacroAssembler::Jump.
Keeping a pointer allowed for some syntactic sugar - "link()" looks nicer
than "link(this)". But maintaining this doubles the size of Jump, which
is even more unfortunate for the JIT, since there are many large structures
holding JmpSrcs. Probably best to remove it.
https://bugs.webkit.org/show_bug.cgi?id=22693
* assembler/MacroAssembler.h:
(JSC::MacroAssembler::Jump::Jump):
(JSC::MacroAssembler::Jump::link):
(JSC::MacroAssembler::Jump::linkTo):
(JSC::MacroAssembler::JumpList::link):
(JSC::MacroAssembler::JumpList::linkTo):
(JSC::MacroAssembler::jae32):
(JSC::MacroAssembler::je32):
(JSC::MacroAssembler::je16):
(JSC::MacroAssembler::jg32):
(JSC::MacroAssembler::jge32):
(JSC::MacroAssembler::jl32):
(JSC::MacroAssembler::jle32):
(JSC::MacroAssembler::jnePtr):
(JSC::MacroAssembler::jne32):
(JSC::MacroAssembler::jnset32):
(JSC::MacroAssembler::jset32):
(JSC::MacroAssembler::jump):
(JSC::MacroAssembler::jzSub32):
(JSC::MacroAssembler::joAdd32):
(JSC::MacroAssembler::call):
* wrec/WREC.cpp:
(JSC::WREC::Generator::compileRegExp):
* wrec/WRECGenerator.cpp:
(JSC::WREC::Generator::generateEnter):
(JSC::WREC::Generator::generateBackreferenceQuantifier):
(JSC::WREC::Generator::generateNonGreedyQuantifier):
(JSC::WREC::Generator::generateGreedyQuantifier):
(JSC::WREC::Generator::generatePatternCharacter):
(JSC::WREC::Generator::generateCharacterClassInvertedRange):
(JSC::WREC::Generator::generateCharacterClassInverted):
(JSC::WREC::Generator::generateCharacterClass):
(JSC::WREC::Generator::generateParenthesesAssertion):
(JSC::WREC::Generator::generateParenthesesInvertedAssertion):
(JSC::WREC::Generator::generateParenthesesNonGreedy):
(JSC::WREC::Generator::generateParenthesesResetTrampoline):
(JSC::WREC::Generator::generateAssertionBOL):
(JSC::WREC::Generator::generateAssertionEOL):
(JSC::WREC::Generator::generateAssertionWordBoundary):
(JSC::WREC::Generator::generateBackreference):
(JSC::WREC::Generator::terminateAlternative):
(JSC::WREC::Generator::terminateDisjunction):
* wrec/WRECParser.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39043
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Fri, 5 Dec 2008 22:10:27 +0000 (22:10 +0000)]
2008-12-05 Finnur Thorarinsson <finnur.webkit@gmail.com>
Reviewed by Darin Adler.
Bug 22579: Providing a function to ScrollbarClient.h which allows us to get at the tickmarks
without relying on high-level WebCore types, as requested by Dave Hyatt.
No functional changes, thus no test cases.
* page/FrameView.cpp:
(WebCore::FrameView::getTickmarks):
* page/FrameView.h:
* platform/ScrollbarClient.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39042
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
justin.garcia@apple.com [Fri, 5 Dec 2008 21:54:49 +0000 (21:54 +0000)]
2008-12-05 Justin Garcia <justin.garcia@apple.com>
Updating these test results. On Tiger the fragment created from RTFD data
contained interchange newlines that we incorrectly handled before r38983.
* platform/mac-tiger/editing/pasteboard/paste-RTFD-expected.checksum:
* platform/mac-tiger/editing/pasteboard/paste-RTFD-expected.png:
* platform/mac-tiger/editing/pasteboard/paste-RTFD-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39041
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren@apple.com [Fri, 5 Dec 2008 20:56:33 +0000 (20:56 +0000)]
2008-12-05 Geoffrey Garen <ggaren@apple.com>
Reviewed by Sam Weinig.
Added a test for a bug I discovered while working on
https://bugs.webkit.org/show_bug.cgi?id=22685.
* fast/regex/non-capturing-backtracking-expected.txt: Added.
* fast/regex/non-capturing-backtracking.html: Added.
* fast/regex/resources/non-capturing-backtracking.js: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39040
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
barraclough@apple.com [Fri, 5 Dec 2008 20:39:57 +0000 (20:39 +0000)]
2008-12-05 Gavin Barraclough <barraclough@apple.com>
Reviewed by Geoffrey Garen.
Simplify JIT generated checks for timeout code, by moving more work into the C function.
https://bugs.webkit.org/show_bug.cgi?id=22688
* interpreter/Interpreter.cpp:
(JSC::Interpreter::cti_timeout_check):
* interpreter/Interpreter.h:
* jit/JIT.cpp:
(JSC::JIT::emitSlowScriptCheck):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39039
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Fri, 5 Dec 2008 20:27:58 +0000 (20:27 +0000)]
2008-12-05 Sam Weinig <sam@webkit.org>
Reviewed by Geoffrey Garen.
Encapsulate access to jump tables in the CodeBlock in preparation
of moving them to a rare data structure.
* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::dump):
(JSC::CodeBlock::shrinkToFit):
* bytecode/CodeBlock.h:
(JSC::CodeBlock::numberOfImmediateSwitchJumpTables):
(JSC::CodeBlock::addImmediateSwitchJumpTable):
(JSC::CodeBlock::immediateSwitchJumpTable):
(JSC::CodeBlock::numberOfCharacterSwitchJumpTables):
(JSC::CodeBlock::addCharacterSwitchJumpTable):
(JSC::CodeBlock::characterSwitchJumpTable):
(JSC::CodeBlock::numberOfStringSwitchJumpTables):
(JSC::CodeBlock::addStringSwitchJumpTable):
(JSC::CodeBlock::stringSwitchJumpTable):
* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::generate):
(JSC::BytecodeGenerator::endSwitch):
* interpreter/Interpreter.cpp:
(JSC::Interpreter::privateExecute):
(JSC::Interpreter::cti_op_switch_imm):
(JSC::Interpreter::cti_op_switch_char):
(JSC::Interpreter::cti_op_switch_string):
* jit/JIT.cpp:
(JSC::JIT::privateCompileMainPass):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39038
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dino@apple.com [Fri, 5 Dec 2008 19:00:09 +0000 (19:00 +0000)]
2008-12-05 Dean Jackson <dino@apple.com>
Reviewed by David Hyatt.
WebCore:
Make sure Window event listeners also tell the
Document about the event type, so noisy events
will be dispatched even if nothing in the document
is listening.
https://bugs.webkit.org/show_bug.cgi?id=20572
* dom/Document.cpp:
(WebCore::Document::addWindowEventListener):
LayoutTests:
No longer need to add a fake listener on a document
node in order to get events passed up to Window.
https://bugs.webkit.org/show_bug.cgi?id=20572
* transitions/transition-end-event-window.html:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39037
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kmccullough@apple.com [Fri, 5 Dec 2008 18:27:29 +0000 (18:27 +0000)]
2008-12-05 Kevin McCullough <kmccullough@apple.com>
Reviewed by Tim Hatcher.
- Fix intermittent profiler test failures. The problem is that idle
time only shows up some times, probably dependent on if the system is
running a little slow or has a network hiccup. I've removed this.
- I've also added <rdar://problem/6422004> Profiler tests fail because
they sometimes don't have (idle) time. This is to investigate whether or
not idle time should be showing up at all when running these tests.
* fast/profiler/anonymous-event-handler-expected.txt:
* fast/profiler/anonymous-function-called-from-different-contexts-expected.txt:
* fast/profiler/anonymous-function-calls-built-in-functions-expected.txt:
* fast/profiler/anonymous-function-calls-eval-expected.txt:
* fast/profiler/apply-expected.txt:
* fast/profiler/built-in-function-calls-anonymous-expected.txt:
* fast/profiler/built-in-function-calls-user-defined-function-expected.txt:
* fast/profiler/call-expected.txt:
* fast/profiler/call-nodelist-as-function-expected.txt:
* fast/profiler/calling-the-function-that-started-the-profiler-from-another-scope-expected.txt:
* fast/profiler/compare-multiple-profiles-expected.txt:
* fast/profiler/constructor-expected.txt:
* fast/profiler/dead-time-expected.txt:
* fast/profiler/document-dot-write-expected.txt:
* fast/profiler/event-handler-expected.txt:
* fast/profiler/execution-context-and-eval-on-same-line-expected.txt:
* fast/profiler/heavy-view-expected.txt:
* fast/profiler/inline-event-handler-expected.txt:
* fast/profiler/many-calls-in-the-same-scope-expected.txt:
* fast/profiler/multiple-and-different-scoped-anonymous-function-calls-expected.txt:
* fast/profiler/multiple-and-different-scoped-function-calls-expected.txt:
* fast/profiler/multiple-frames-expected.txt:
* fast/profiler/nested-anonymous-functon-expected.txt:
* fast/profiler/nested-start-and-stop-profiler-expected.txt:
* fast/profiler/one-execution-context-expected.txt:
* fast/profiler/profile-calls-in-included-file-expected.txt:
* fast/profiler/profiling-from-a-nested-location-but-stop-profiling-outside-the-nesting-expected.txt:
* fast/profiler/profiling-from-a-nested-location-expected.txt:
* fast/profiler/resources/profiler-test-JS-resources.js:
(printProfileNodeWithoutTime):
* fast/profiler/simple-event-call-expected.txt:
* fast/profiler/simple-no-level-change-expected.txt:
* fast/profiler/start-and-stop-profiler-multiple-times-expected.txt:
* fast/profiler/start-and-stop-profiling-in-the-same-function-expected.txt:
* fast/profiler/stop-profiling-after-setTimeout-expected.txt:
* fast/profiler/stop-then-function-call-expected.txt:
* fast/profiler/throw-exception-from-eval-expected.txt:
* fast/profiler/two-execution-contexts-expected.txt:
* fast/profiler/user-defined-function-calls-built-in-functions-expected.txt:
* fast/profiler/window-dot-eval-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39036
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Fri, 5 Dec 2008 18:03:21 +0000 (18:03 +0000)]
Mac build fix.
* WebKit.xcodeproj/project.pbxproj:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39035
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Fri, 5 Dec 2008 17:23:08 +0000 (17:23 +0000)]
2008-12-05 Simon Hausmann <simon.hausmann@nokia.com>
Rubber-stamped by Tor Arne Vestbø.
Disable the JIT for the Qt build alltogether again, after observing
more miscompilations in a wider range of newer gcc versions.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39034
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Fri, 5 Dec 2008 17:22:06 +0000 (17:22 +0000)]
Windows build fix after r39026
* platform/network/cf/ResourceRequestCFNet.cpp:
(WebCore::ResourceRequest::doUpdatePlatformRequest):
(WebCore::ResourceRequest::doUpdateResourceRequest):
Add some missing .get()s.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39033
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Fri, 5 Dec 2008 17:21:47 +0000 (17:21 +0000)]
Windows build fix after r39020
* jit/JITInlineMethods.h:
(JSC::JIT::restoreArgumentReference):
(JSC::JIT::restoreArgumentReferenceForTrampoline):
Add some apparently-missing __.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39032
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Fri, 5 Dec 2008 17:20:25 +0000 (17:20 +0000)]
Mac build fix.
* WebKit.xcodeproj/project.pbxproj:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39031
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren@apple.com [Fri, 5 Dec 2008 16:49:56 +0000 (16:49 +0000)]
2008-12-04 Geoffrey Garen <ggaren@apple.com>
Reviewed by Darin Adler.
https://bugs.webkit.org/show_bug.cgi?id=22673
Added support for the assertion (?=) and inverted assertion (?!) atoms
in WREC.
* wrec/WRECGenerator.cpp:
(JSC::WREC::Generator::generateParenthesesAssertion):
(JSC::WREC::Generator::generateParenthesesInvertedAssertion): Split the
old (unused) generateParentheses into these two functions, with more
limited capabilities.
* wrec/WRECGenerator.h:
(JSC::WREC::Generator::): Moved an enum to the top of the class definition,
to match the WebKit style, and removed a defunct comment.
* wrec/WRECParser.cpp:
(JSC::WREC::Parser::parseParentheses):
(JSC::WREC::Parser::consumeParenthesesType):
* wrec/WRECParser.h:
(JSC::WREC::Parser::): Added support for parsing (?=) and (?!).
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39030
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@webkit.org [Fri, 5 Dec 2008 16:33:52 +0000 (16:33 +0000)]
Tiger build fix.
* platform/network/mac/ResourceRequestMac.mm: Define NSUInteger.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39029
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@webkit.org [Fri, 5 Dec 2008 15:53:39 +0000 (15:53 +0000)]
Reviewed by Darin Adler.
<rdar://problem/6405599> Tiger Mail crashes when using "Mail Contents of This Page"
in Safari before opening a mail message in Mail
WebCore:
* platform/mac/WebCoreObjCExtras.mm:
(WebCoreObjCFinalizeOnMainThread):
Don't call initializeThreading: we now expect the caller to do it, to simplify keeping
Tiger and post-Tiger behavior in line.
* bindings/objc/DOMRGBColor.mm:
(+[DOMRGBColor initialize]):
* bindings/objc/WebScriptObject.mm:
(+[WebScriptObject initialize]):
* page/mac/AccessibilityObjectWrapper.mm:
(+[AccessibilityObjectWrapper initialize]):
* platform/mac/SharedBufferMac.mm:
(+[WebCoreSharedBufferData initialize]):
Call JSC::initializeThreading();
WebKit:
* Carbon/CarbonWindowAdapter.m: Removed.
* Carbon/CarbonWindowAdapter.mm: Copied from WebKit/mac/Carbon/CarbonWindowAdapter.m.
(+[CarbonWindowAdapter initialize]):
* History/WebBackForwardList.mm:
(+[WebBackForwardList initialize]):
* History/WebHistoryItem.mm:
(+[WebHistoryItem initialize]):
* Misc/WebElementDictionary.mm:
(+[WebElementDictionary initialize]):
* Plugins/Hosted/WebHostedNetscapePluginView.mm:
(+[WebHostedNetscapePluginView initialize]):
* Plugins/WebBaseNetscapePluginView.mm:
* Plugins/WebBasePluginPackage.m: Removed.
* Plugins/WebBasePluginPackage.mm: Copied from WebKit/mac/Plugins/WebBasePluginPackage.m.
(+[WebBasePluginPackage initialize]):
* Plugins/WebNetscapePluginView.mm:
(+[WebNetscapePluginView initialize]):
* WebCoreSupport/WebEditorClient.mm:
(+[WebEditCommand initialize]):
* WebCoreSupport/WebFrameLoaderClient.mm:
* WebView/WebArchive.mm:
(+[WebArchivePrivate initialize]):
* WebView/WebDataSource.mm:
(+[WebDataSourcePrivate initialize]):
* WebView/WebHTMLView.mm:
(+[WebHTMLViewPrivate initialize]):
(+[WebHTMLView initialize]):
* WebView/WebResource.mm:
(+[WebResourcePrivate initialize]):
* WebView/WebView.mm:
(+[WebViewPrivate initialize]):
Call JSC::initializeThreading();
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39028
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin@apple.com [Fri, 5 Dec 2008 15:47:24 +0000 (15:47 +0000)]
2008-12-05 Darin Adler <darin@apple.com>
Reviewed by Alexey Proskuryakov.
- fix https://bugs.webkit.org/show_bug.cgi?id=22674
Webkit r39005 does not start, an entry point not found
* WebView.cpp:
(findCFNetworkModule): Added.
(findCopySharedURLCacheFunction): Added.
(WebView::setCacheModel): Call CFURLCacheCopySharedURLCache via dynamic loading
instead of compiling based on which version of CFNetwork headers are present.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39027
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@webkit.org [Fri, 5 Dec 2008 14:43:53 +0000 (14:43 +0000)]
Reviewed by Darin Adler.
<rdar://problem/4072827> Downloaded non-ASCII file name becomes garbled
* platform/network/ResourceRequestBase.cpp:
(WebCore::ResourceRequestBase::setResponseContentDispositionEncodingFallbackArray):
* platform/network/ResourceRequestBase.h:
* platform/network/cf/ResourceRequestCFNet.cpp:
(WebCore::findCFURLRequestSetContentDispositionEncodingFallbackArrayFunction):
(WebCore::findCFURLRequestCopyContentDispositionEncodingFallbackArrayFunction):
(WebCore::setContentDispositionEncodingFallbackArray):
(WebCore::copyContentDispositionEncodingFallbackArray):
(WebCore::ResourceRequest::doUpdatePlatformRequest):
(WebCore::ResourceRequest::doUpdateResourceRequest):
* platform/network/mac/ResourceRequestMac.mm:
(WebCore::ResourceRequest::doUpdateResourceRequest):
(WebCore::ResourceRequest::doUpdatePlatformRequest):
Added a way to specify encoding fallback list for Content-Disposition header.
* loader/FrameLoader.cpp: (WebCore::FrameLoader::addExtraFieldsToRequest): Generate and
pass a list of encodings to try when decoding Content-Disposition header, as described
in comments.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39026
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@webkit.org [Fri, 5 Dec 2008 14:23:19 +0000 (14:23 +0000)]
Reviewed by Darin Adler.
https://bugs.webkit.org/show_bug.cgi?id=22672
ASSERT(m_table) when xhr.onabort creates another xhr or calls setTimeout
Test: http/tests/xmlhttprequest/send-on-abort.html
* dom/ScriptExecutionContext.cpp:
(WebCore::ScriptExecutionContext::canSuspendActiveDOMObjects):
(WebCore::ScriptExecutionContext::suspendActiveDOMObjects):
(WebCore::ScriptExecutionContext::resumeActiveDOMObjects):
(WebCore::ScriptExecutionContext::stopActiveDOMObjects):
Add a comment explaining that ActiveDOMObject methods shouldn't execute arbitrary JS.
* xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::stop): Don't dispatch events. This
reverts a recent change that made the behavior slightly closer to Firefox - but the
compatibility effect should be very minor if any, and Firefox itself behaves inconsistently.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39025
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Fri, 5 Dec 2008 13:02:30 +0000 (13:02 +0000)]
2008-12-05 Tobias König <tobias.koenig@nokia.com>
Reviewed by Simon Hausmann.
Record required package dependencies for the Qt build for a correct
pkg-config file.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39024
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Fri, 5 Dec 2008 12:50:06 +0000 (12:50 +0000)]
2008-12-05 Simon Hausmann <simon.hausmann@nokia.com>
Reviewed by Tor Arne Vestbø.
Disable the JIT for the Qt build on Linux unless gcc is >= 4.2,
due to miscompilations.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39023
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
vestbo@webkit.org [Fri, 5 Dec 2008 11:27:07 +0000 (11:27 +0000)]
2008-12-05 Tor Arne Vestbø <tavestbo@trolltech.com>
Rubber-stamped by Simon Hausmann.
[Qt/Mac] Blacklist QuickTime plugin until we support the QuickDraw drawing model
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39022
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@webkit.org [Fri, 5 Dec 2008 09:48:50 +0000 (09:48 +0000)]
2008-12-05 Jungshik Shin <jshin@chromium.org>
Reviewed by Alexey Proskuryakov.
https://bugs.webkit.org/show_bug.cgi?id=22472
Revises charset alias map for TextCodecICU.
- Uses windows-949 and windows-874 instead of windows-949-2000 and windows-874-2000
- Replaces 'windows874' in a couple of place with 'windows-874' (for the canonical name)
- Maps 'dos-874' to 'windows-874'. Currently, it's aliases to 'cp874', which is in turn
mapped to 'TIS-620'. 'TIS-620' is manually aliased to 'windows-874'. We'd better directly
alias 'dos-874' to 'windows-874'.
- Replaces 'EUC-CN' with 'GBK' when it's used as the canonical name.
Similar to the above case, we're getting rid of indirection that eventually leads to 'GBK' by
directly going to 'GBK'.
- Adds 'x-uhc' as an alias for 'windows-949'. It's used in some web pages.
Tests: fast/encoding/char-decoding-mac.html
fast/encoding/char-decoding.html
* platform/text/TextCodecICU.cpp:
(WebCore::TextCodecICU::registerExtendedEncodingNames):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39021
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
barraclough@apple.com [Fri, 5 Dec 2008 06:58:40 +0000 (06:58 +0000)]
2008-12-04 Gavin Barraclough <barraclough@apple.com>
Reviewed by Geoff Garen.
Start porting the JIT to use the MacroAssembler.
https://bugs.webkit.org/show_bug.cgi?id=22671
No change in performance.
* assembler/MacroAssembler.h:
(JSC::MacroAssembler::Jump::operator X86Assembler::JmpSrc):
(JSC::MacroAssembler::add32):
(JSC::MacroAssembler::and32):
(JSC::MacroAssembler::lshift32):
(JSC::MacroAssembler::rshift32):
(JSC::MacroAssembler::storePtr):
(JSC::MacroAssembler::store32):
(JSC::MacroAssembler::poke):
(JSC::MacroAssembler::move):
(JSC::MacroAssembler::compareImm32ForBranchEquality):
(JSC::MacroAssembler::jnePtr):
(JSC::MacroAssembler::jnset32):
(JSC::MacroAssembler::jset32):
(JSC::MacroAssembler::jzeroSub32):
(JSC::MacroAssembler::joverAdd32):
(JSC::MacroAssembler::call):
* assembler/X86Assembler.h:
(JSC::X86Assembler::shll_i8r):
* jit/JIT.cpp:
(JSC::JIT::privateCompileMainPass):
(JSC::JIT::privateCompile):
(JSC::JIT::privateCompileCTIMachineTrampolines):
* jit/JIT.h:
* jit/JITArithmetic.cpp:
(JSC::JIT::compileBinaryArithOp):
* jit/JITInlineMethods.h:
(JSC::JIT::emitGetVirtualRegister):
(JSC::JIT::emitPutCTIArg):
(JSC::JIT::emitPutCTIArgConstant):
(JSC::JIT::emitGetCTIArg):
(JSC::JIT::emitPutCTIArgFromVirtualRegister):
(JSC::JIT::emitPutCTIParam):
(JSC::JIT::emitGetCTIParam):
(JSC::JIT::emitPutToCallFrameHeader):
(JSC::JIT::emitPutImmediateToCallFrameHeader):
(JSC::JIT::emitGetFromCallFrameHeader):
(JSC::JIT::emitPutVirtualRegister):
(JSC::JIT::emitInitRegister):
(JSC::JIT::emitNakedCall):
(JSC::JIT::restoreArgumentReference):
(JSC::JIT::restoreArgumentReferenceForTrampoline):
(JSC::JIT::emitCTICall):
(JSC::JIT::checkStructure):
(JSC::JIT::emitJumpSlowCaseIfNotJSCell):
(JSC::JIT::emitJumpSlowCaseIfNotImmNum):
(JSC::JIT::emitJumpSlowCaseIfNotImmNums):
(JSC::JIT::emitFastArithDeTagImmediate):
(JSC::JIT::emitFastArithDeTagImmediateJumpIfZero):
(JSC::JIT::emitFastArithReTagImmediate):
(JSC::JIT::emitFastArithPotentiallyReTagImmediate):
(JSC::JIT::emitFastArithImmToInt):
(JSC::JIT::emitFastArithIntToImmOrSlowCase):
(JSC::JIT::emitFastArithIntToImmNoCheck):
(JSC::JIT::emitTagAsBoolImmediate):
* jit/JITPropertyAccess.cpp:
(JSC::JIT::privateCompilePutByIdTransition):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39020
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Fri, 5 Dec 2008 04:38:32 +0000 (04:38 +0000)]
Versioning.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39019
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
slewis@apple.com [Fri, 5 Dec 2008 04:13:20 +0000 (04:13 +0000)]
2008-12-04 Stephanie Lewis <slewis@apple.com>
Fix build.
* Plugins/Hosted/NetscapePluginHostProxy.mm:
(WKPCLoadURL):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39015
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kevino@webkit.org [Fri, 5 Dec 2008 03:42:15 +0000 (03:42 +0000)]
Reviewed by Kevin Ollivier.
Add a MIME mapping for the .htm extension to wx and GTK ports.
https://bugs.webkit.org/show_bug.cgi?id=22668
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39014
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kevino@webkit.org [Fri, 5 Dec 2008 03:29:11 +0000 (03:29 +0000)]
Reviewed by Kevin Ollivier.
Implement basic text paste support in wx and add notImplemented stubs to catch other methods.
https://bugs.webkit.org/show_bug.cgi?id=22667
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39013
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kevino@webkit.org [Fri, 5 Dec 2008 01:55:17 +0000 (01:55 +0000)]
wx build fix for !USE(WXGC) build config.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39012
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kevino@webkit.org [Fri, 5 Dec 2008 01:39:20 +0000 (01:39 +0000)]
Reviewed by Kevin Ollivier.
Turn off styled controls until we can implement them properly.
https://bugs.webkit.org/show_bug.cgi?id=22662
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39011
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren@apple.com [Fri, 5 Dec 2008 00:40:07 +0000 (00:40 +0000)]
2008-12-04 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Some refactoring for generateGreedyQuantifier.
SunSpider reports no change (possibly a 0.3% speedup).
* wrec/WRECGenerator.cpp:
(JSC::WREC::Generator::generateGreedyQuantifier): Clarified label
meanings and unified some logic to simplify things.
* wrec/WRECParser.h:
(JSC::WREC::Parser::parseAlternative): Added a version of parseAlternative
that can jump to a Label, instead of a JumpList, upon failure. (Eventually,
when we have a true Label class, this will be redundant.) This makes
things easier for generateGreedyQuantifier, because it can avoid
explicitly linking things.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39010
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Fri, 5 Dec 2008 00:10:52 +0000 (00:10 +0000)]
..:
2008-12-04 Anders Carlsson <andersca@apple.com>
Reviewed by Sam Weinig.
Add HostedNetscapePluginStream.
* WebKit.xcodeproj/project.pbxproj:
../mac:
2008-12-04 Anders Carlsson <andersca@apple.com>
Reviewed by Sam Weinig.
More work on streams.
* Plugins/Hosted/HostedNetscapePluginStream.h: Added.
(WebKit::HostedNetscapePluginStream::create):
* Plugins/Hosted/HostedNetscapePluginStream.mm: Added.
(WebKit::HostedNetscapePluginStream::HostedNetscapePluginStream):
(WebKit::HostedNetscapePluginStream::startStreamWithResponse):
(WebKit::HostedNetscapePluginStream::startStream):
(WebKit::HostedNetscapePluginStream::didReceiveData):
(WebKit::HostedNetscapePluginStream::didFinishLoading):
(WebKit::HostedNetscapePluginStream::didReceiveResponse):
* Plugins/Hosted/NetscapePluginInstanceProxy.h:
(WebKit::NetscapePluginInstanceProxy::pluginView):
(WebKit::NetscapePluginInstanceProxy::hostProxy):
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::PluginRequest::PluginRequest):
(WebKit::NetscapePluginInstanceProxy::PluginRequest::requestID):
(WebKit::NetscapePluginInstanceProxy::PluginRequest::request):
(WebKit::NetscapePluginInstanceProxy::PluginRequest::frameName):
(WebKit::NetscapePluginInstanceProxy::PluginRequest::didStartFromUserGesture):
(WebKit::NetscapePluginInstanceProxy::NetscapePluginInstanceProxy):
(WebKit::NetscapePluginInstanceProxy::performRequest):
(WebKit::NetscapePluginInstanceProxy::evaluateJavaScript):
(WebKit::NetscapePluginInstanceProxy::requestTimerFired):
(WebKit::NetscapePluginInstanceProxy::loadRequest):
* Plugins/Hosted/WebKitPluginHost.defs:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39009
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kevino@webkit.org [Fri, 5 Dec 2008 00:03:08 +0000 (00:03 +0000)]
Reviewed by Kevin Ollivier.
wx implementations for Path API.
https://bugs.webkit.org/show_bug.cgi?id=22661
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39008
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jchaffraix@webkit.org [Thu, 4 Dec 2008 22:39:05 +0000 (22:39 +0000)]
2008-12-04 Julien Chaffraix <jchaffraix@webkit.org>
Reviewed by Eric Seidel.
Bug 22564: Make HTML elements' constructors take a QualifiedName
https://bugs.webkit.org/show_bug.cgi?id=22564
Updated the remaining constructors.
* bindings/js/JSImageConstructor.cpp:
(WebCore::constructImage):
* dom/Document.cpp:
(WebCore::Document::getCSSCanvasElement):
* editing/DeleteButton.cpp:
(WebCore::DeleteButton::DeleteButton):
* html/HTMLAppletElement.cpp:
(WebCore::HTMLAppletElement::HTMLAppletElement):
* html/HTMLAppletElement.h:
* html/HTMLAreaElement.cpp:
(WebCore::HTMLAreaElement::HTMLAreaElement):
* html/HTMLAreaElement.h:
* html/HTMLBaseFontElement.cpp:
(WebCore::HTMLBaseFontElement::HTMLBaseFontElement):
* html/HTMLBaseFontElement.h:
* html/HTMLCanvasElement.cpp:
(WebCore::HTMLCanvasElement::HTMLCanvasElement):
* html/HTMLCanvasElement.h:
* html/HTMLElementFactory.cpp:
(WebCore::hrConstructor):
(WebCore::paragraphConstructor):
(WebCore::basefontConstructor):
(WebCore::fontConstructor):
(WebCore::anchorConstructor):
(WebCore::imageConstructor):
(WebCore::mapConstructor):
(WebCore::areaConstructor):
(WebCore::canvasConstructor):
(WebCore::appletConstructor):
(WebCore::embedConstructor):
(WebCore::objectConstructor):
(WebCore::paramConstructor):
(WebCore::scriptConstructor):
(WebCore::tableConstructor):
(WebCore::tableCaptionConstructor):
(WebCore::tableRowConstructor):
* html/HTMLEmbedElement.cpp:
(WebCore::HTMLEmbedElement::HTMLEmbedElement):
* html/HTMLEmbedElement.h:
* html/HTMLFontElement.cpp:
(WebCore::HTMLFontElement::HTMLFontElement):
* html/HTMLFontElement.h:
* html/HTMLHRElement.cpp:
(WebCore::HTMLHRElement::HTMLHRElement):
* html/HTMLHRElement.h:
* html/HTMLImageElement.cpp:
(WebCore::HTMLImageElement::HTMLImageElement):
* html/HTMLImageElement.h:
* html/HTMLMapElement.cpp:
(WebCore::HTMLMapElement::HTMLMapElement):
* html/HTMLMapElement.h:
* html/HTMLObjectElement.cpp:
(WebCore::HTMLObjectElement::HTMLObjectElement):
* html/HTMLObjectElement.h:
* html/HTMLParagraphElement.cpp:
(WebCore::HTMLParagraphElement::HTMLParagraphElement):
* html/HTMLParagraphElement.h:
* html/HTMLParamElement.cpp:
(WebCore::HTMLParamElement::HTMLParamElement):
* html/HTMLParamElement.h:
* html/HTMLParser.cpp:
(WebCore::HTMLParser::handleError):
(WebCore::HTMLParser::mapCreateErrorCheck):
(WebCore::HTMLParser::handleIsindex):
* html/HTMLScriptElement.cpp:
(WebCore::HTMLScriptElement::HTMLScriptElement):
* html/HTMLScriptElement.h:
* html/HTMLTableCaptionElement.cpp:
(WebCore::HTMLTableCaptionElement::HTMLTableCaptionElement):
* html/HTMLTableCaptionElement.h:
* html/HTMLTableElement.cpp:
(WebCore::HTMLTableElement::HTMLTableElement):
(WebCore::HTMLTableElement::createCaption):
(WebCore::HTMLTableElement::insertRow):
* html/HTMLTableElement.h:
* html/HTMLTableRowElement.cpp:
(WebCore::HTMLTableRowElement::HTMLTableRowElement):
* html/HTMLTableRowElement.h:
* html/HTMLTableSectionElement.cpp:
(WebCore::HTMLTableSectionElement::insertRow):
* html/HTMLViewSourceDocument.cpp:
(WebCore::HTMLViewSourceDocument::createContainingTable):
(WebCore::HTMLViewSourceDocument::addLine):
* loader/ImageDocument.cpp:
(WebCore::ImageDocumentElement::ImageDocumentElement):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39007
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sfalken@apple.com [Thu, 4 Dec 2008 22:02:42 +0000 (22:02 +0000)]
Implement IPropertyBag2::Read.
Fill in dwType for IPropertyBag2::GetPropertyInfo (we always use PROPBAG2_TYPE_DATA).
https://bugs.webkit.org/show_bug.cgi?id=22659
This fixes <rdar://problem/6419127> REGRESSION: Forms autocomplete is broken for "other forms"
Reviewed by Ada Chan, Alice Liu.
* COMPropertyBag.h:
(::Read): Implemented.
(::GetPropertyInfo): Set dwType to PROPBAG2_TYPE_DATA.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39006
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Thu, 4 Dec 2008 21:08:37 +0000 (21:08 +0000)]
No review, build fix only.
Add file missing from last commit.
* bindings/js/ScriptState.h: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39005
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Thu, 4 Dec 2008 21:01:44 +0000 (21:01 +0000)]
2008-12-04 Simon Hausmann <simon.hausmann@nokia.com>
Reviewed by Holger Freyther.
Fix crashes in the Qt build on Linux/i386 with non-executable memory
by enabling TCSystemAlloc and the PROT_EXEC flag for mmap.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39004
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Thu, 4 Dec 2008 20:51:21 +0000 (20:51 +0000)]
Reviewed by Geoff Garen.
Implement ScriptState abstraction (initially, a simple typedef)
as means of carrying exception information across bindings boundaries
and in a script engine-independent way.
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* bindings/js/JSDOMBinding.cpp:
(WebCore::scriptStateFromNode):
* bindings/js/JSDOMBinding.h:
* bindings/js/JSNodeFilterCondition.h:
* bindings/js/ScriptState.h: Added.
* dom/NodeFilter.cpp:
(WebCore::NodeFilter::acceptNode):
* dom/NodeFilter.h:
(WebCore::NodeFilter::acceptNode):
* dom/NodeFilterCondition.cpp:
(WebCore::NodeFilterCondition::acceptNode):
* dom/NodeFilterCondition.h:
* dom/NodeIterator.cpp:
(WebCore::NodeIterator::nextNode):
(WebCore::NodeIterator::previousNode):
* dom/NodeIterator.h:
(WebCore::NodeIterator::nextNode):
(WebCore::NodeIterator::previousNode):
* dom/Traversal.cpp:
(WebCore::Traversal::acceptNode):
* dom/Traversal.h:
* dom/TreeWalker.cpp:
(WebCore::TreeWalker::parentNode):
(WebCore::TreeWalker::firstChild):
(WebCore::TreeWalker::lastChild):
(WebCore::TreeWalker::previousSibling):
(WebCore::TreeWalker::nextSibling):
(WebCore::TreeWalker::previousNode):
(WebCore::TreeWalker::nextNode):
* dom/TreeWalker.h:
(WebCore::TreeWalker::parentNode):
(WebCore::TreeWalker::firstChild):
(WebCore::TreeWalker::lastChild):
(WebCore::TreeWalker::previousSibling):
(WebCore::TreeWalker::nextSibling):
(WebCore::TreeWalker::previousNode):
(WebCore::TreeWalker::nextNode):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39003
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
pol@apple.com [Thu, 4 Dec 2008 20:44:47 +0000 (20:44 +0000)]
2008-12-04 Pierre-Olivier Latour <pol@apple.com>
Reviewed by Dan Bernstein.
Fixed pauseTransitionAtTimeOnElementWithId() in DRT asserting when passed invalid property name
and potential similar issue with pauseAnimationAtTimeOnElementWithId().
https://bugs.webkit.org/show_bug.cgi?id=22641
* page/animation/CompositeAnimation.cpp:
(WebCore::CompositeAnimationPrivate::pauseAnimationAtTime):
(WebCore::CompositeAnimationPrivate::pauseTransitionAtTime):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39002
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Thu, 4 Dec 2008 20:42:46 +0000 (20:42 +0000)]
2008-12-04 Anders Carlsson <andersca@apple.com>
Reviewed by Sam Weinig.
Start implementing WKPCLoadURL. Currently this has copied a lot of code from WebNetscapePluginView
but once we have a more complete implementation of NPStreams we can start refactoring things so that the
implementations can share more code.
* Plugins/Hosted/NetscapePluginHostProxy.mm:
(WKPCLoadURL):
* Plugins/Hosted/NetscapePluginInstanceProxy.h:
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::NetscapePluginInstanceProxy):
(WebKit::NetscapePluginInstanceProxy::loadURL):
(WebKit::NetscapePluginInstanceProxy::performRequest):
(WebKit::NetscapePluginInstanceProxy::requestTimerFired):
(WebKit::NetscapePluginInstanceProxy::loadRequest):
* Plugins/Hosted/WebKitPluginClient.defs:
* Plugins/Hosted/WebKitPluginHost.defs:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39001
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
brettw@chromium.org [Thu, 4 Dec 2008 20:37:36 +0000 (20:37 +0000)]
Reviewed by Darin Adler.
Remove unused Completion.h include.
* html/CanvasRenderingContext2D.cpp: Removed Completion.h include.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39000
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Thu, 4 Dec 2008 20:07:41 +0000 (20:07 +0000)]
2008-11-13 David Hyatt <hyatt@apple.com>
Fix a bug in ScrollView's refactoring. An isVisible check should have been isSelfVisible.
Reviewed by Darin Adler
* platform/ScrollView.cpp:
(WebCore::ScrollView::setParentVisible):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@38999
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Thu, 4 Dec 2008 19:38:26 +0000 (19:38 +0000)]
2008-12-04 Anders Carlsson <andersca@apple.com>
Reviewed by Dan Bernstein.
Move requestWithURLCString to WebBaseNetscapePluginView.
* Plugins/WebBaseNetscapePluginView.h:
* Plugins/WebBaseNetscapePluginView.mm:
(-[WebBaseNetscapePluginView requestWithURLCString:]):
* Plugins/WebNetscapePluginView.mm:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@38998
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
vestbo@webkit.org [Thu, 4 Dec 2008 16:38:43 +0000 (16:38 +0000)]
Fix the Qt build
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@38997
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Thu, 4 Dec 2008 16:21:43 +0000 (16:21 +0000)]
2008-12-04 Simon Hausmann <simon.hausmann@nokia.com>
Reviewed by Tor Arne Vestbø.
Enable ENABLE_JIT_OPTIMIZE_CALL, ENABLE_JIT_OPTIMIZE_PROPERTY_ACCESS
and ENABLE_JIT_OPTIMIZE_ARITHMETIC, as suggested by Niko.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@38996
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Thu, 4 Dec 2008 14:41:26 +0000 (14:41 +0000)]
2008-12-04 Friedemann Kleint <friedemann.kleint@nokia.com>
Reviewed by Tor Arne Vestbø.
Fix small translation glitch in the Qt file chooser.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@38995
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Thu, 4 Dec 2008 14:32:00 +0000 (14:32 +0000)]
2008-12-04 Kent Hansen <khansen@trolltech.com>
Reviewed by Simon Hausmann.
Enable the JSC JIT for the Qt build by default for release builds on
linux-g++ and win32-msvc.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@38994
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
vestbo@webkit.org [Thu, 4 Dec 2008 13:01:19 +0000 (13:01 +0000)]
2008-12-04 Tor Arne Vestbø <tavestbo@trolltech.com>
Rubber-stamped by Simon Hausmann.
Blacklist Silverlight plugin on Qt/Mac until supported
Currently the plugin crashes with a corrupted stack trace, possibly
related to https://bugs.webkit.org/show_bug.cgi?id=20635
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@38993
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
barraclough@apple.com [Thu, 4 Dec 2008 11:10:21 +0000 (11:10 +0000)]
2008-12-04 Gavin Barraclough <barraclough@apple.com>
Reviewed by Oliver Hunt.
Allow JIT to function without property access repatching and arithmetic optimizations.
Controlled by ENABLE_JIT_OPTIMIZE_PROPERTY_ACCESS and ENABLE_JIT_OPTIMIZE_ARITHMETIC switches.
https://bugs.webkit.org/show_bug.cgi?id=22643
* JavaScriptCore.xcodeproj/project.pbxproj:
* jit/JIT.cpp:
(JSC::JIT::privateCompileMainPass):
(JSC::JIT::privateCompileSlowCases):
* jit/JIT.h:
* jit/JITArithmetic.cpp: Copied from jit/JIT.cpp.
(JSC::JIT::compileBinaryArithOp):
(JSC::JIT::compileBinaryArithOpSlowCase):
* jit/JITPropertyAccess.cpp: Copied from jit/JIT.cpp.
(JSC::JIT::compileGetByIdHotPath):
(JSC::JIT::compileGetByIdSlowCase):
(JSC::JIT::compilePutByIdHotPath):
(JSC::JIT::compilePutByIdSlowCase):
(JSC::resizePropertyStorage):
(JSC::transitionWillNeedStorageRealloc):
(JSC::JIT::privateCompilePutByIdTransition):
(JSC::JIT::patchGetByIdSelf):
(JSC::JIT::patchPutByIdReplace):
(JSC::JIT::privateCompilePatchGetArrayLength):
* wtf/Platform.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@38992
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
vestbo@webkit.org [Thu, 4 Dec 2008 10:26:07 +0000 (10:26 +0000)]
Qt build fix after r38975
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@38991
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@webkit.org [Thu, 4 Dec 2008 08:41:24 +0000 (08:41 +0000)]
2008-12-03 Dmitry Titov <dimich@chromium.org>
Reviewed by Alexey Proskuryakov.
Fix non-Mac build.
* page/Chrome.cpp: (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@38990
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren@apple.com [Thu, 4 Dec 2008 07:43:11 +0000 (07:43 +0000)]
JavaScriptCore:
2008-12-03 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Optimized sequences of characters in regular expressions by comparing
two characters at a time.
1-2% speedup on SunSpider, 19-25% speedup on regexp-dna.
* assembler/MacroAssembler.h:
(JSC::MacroAssembler::load32):
(JSC::MacroAssembler::jge32): Filled out a few more macro methods.
* assembler/X86Assembler.h:
(JSC::X86Assembler::movl_mr): Added a verion of movl_mr that operates
without an offset, to allow the macro assembler to optmize for that case.
* wrec/WREC.cpp:
(JSC::WREC::Generator::compileRegExp): Test the saved value of index
instead of the index register when checking for "end of input." The
index register doesn't increment by 1 in an orderly fashion, so testing
it for == "end of input" is not valid.
Also, jump all the way to "return failure" upon reaching "end of input,"
instead of executing the next alternative. This is more logical, and
it's a slight optimization in the case of an expression with many alternatives.
* wrec/WRECGenerator.cpp:
(JSC::WREC::Generator::generateIncrementIndex): Added support for
jumping to a failure label in the case where the index has reached "end
of input."
(JSC::WREC::Generator::generatePatternCharacterSequence):
(JSC::WREC::Generator::generatePatternCharacterPair): This is the
optmization. It's basically like generatePatternCharacter, but it runs two
characters at a time.
(JSC::WREC::Generator::generatePatternCharacter): Changed to use isASCII,
since it's clearer than comparing to a magic hex value.
* wrec/WRECGenerator.h:
LayoutTests:
2008-12-03 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Added a test for another input length miscalculation.
* fast/regex/alternative-length-miscalculation-expected.txt:
* fast/regex/resources/alternative-length-miscalculation.js:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@38989
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@webkit.org [Thu, 4 Dec 2008 07:27:27 +0000 (07:27 +0000)]
Reviewed by Darin Adler.
Add missing test files (utf-16,32 files) and two php files
for bug 21635 and enabled utf-7 tests (bug 22492). The patch
for bug 21635 was landed in http://trac.webkit.org/changeset/38755,
but binary test files (utf-16/32) were omitted in the changeset.
https://bugs.webkit.org/show_bug.cgi?id=21635
https://bugs.webkit.org/show_bug.cgi?id=22492
* http/tests/misc/resources/check-query-param.php: Added.
* http/tests/misc/resources/echo-query-param.php: Added.
* http/tests/misc/submit-get-in-utf16be.html: Added.
* http/tests/misc/submit-get-in-utf16le.html: Added.
* http/tests/misc/submit-get-in-utf32be.html: Added.
* http/tests/misc/submit-get-in-utf32le.html: Added.
* http/tests/misc/submit-get-in-utf7.html: Copied from http/tests/misc/submit-get-in-utf7.html-disabled.
* http/tests/misc/submit-get-in-utf7.html-disabled: Removed.
* http/tests/misc/submit-post-in-utf16be.html: Added.
* http/tests/misc/submit-post-in-utf16le.html: Added.
* http/tests/misc/submit-post-in-utf32be.html: Added.
* http/tests/misc/submit-post-in-utf32le.html: Added.
* http/tests/misc/submit-post-in-utf7.html: Copied from http/tests/misc/submit-post-in-utf7.html-disabled.
* http/tests/misc/submit-post-in-utf7.html-disabled: Removed.
* http/tests/misc/url-in-utf16be.html: Added.
* http/tests/misc/url-in-utf16le.html: Added.
* http/tests/misc/url-in-utf32be.html: Added.
* http/tests/misc/url-in-utf32le.html: Added.
* http/tests/misc/url-in-utf7.html: Copied from http/tests/misc/url-in-utf7.html-disabled.
* http/tests/misc/url-in-utf7.html-disabled: Removed.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@38988
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@webkit.org [Thu, 4 Dec 2008 07:21:58 +0000 (07:21 +0000)]
2008-12-03 David Levin <levin@chromium.org>
Reviewed by Alexey Proskuryakov.
Remove uses of document() in XMLHttpRequest where simple.
https://bugs.webkit.org/show_bug.cgi?id=22619
* xml/XMLHttpRequest.cpp:
(WebCore::XMLHttpRequest::responseXML):
Return NULL in the worker case which is according to spec (and avoids using document()).
(WebCore::XMLHttpRequest::callReadyStateChangeListener):
(WebCore::XMLHttpRequest::initSend):
Use scriptExecutionContext() instead of document().
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@38987
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@webkit.org [Thu, 4 Dec 2008 07:20:45 +0000 (07:20 +0000)]
Reviewed by Alexey Proskuryakov.
Make ScriptExecutionContextTaskWorkerTask::performTask a pure virtual function.
https://bugs.webkit.org/show_bug.cgi?id=22642
* dom/Document.cpp:
(WebCore::ScriptExecutionContextTaskTimer::ScriptExecutionContextTaskTimer):
(WebCore::ScriptExecutionContextTaskTimer::fired):
(WebCore::PerformTaskContext::PerformTaskContext):
(WebCore::performTask):
(WebCore::Document::postTask):
* dom/Document.h:
* dom/ScriptExecutionContext.cpp:
* dom/ScriptExecutionContext.h:
* dom/WorkerContext.cpp:
(WebCore::ScriptExecutionContextTaskWorkerTask::create):
(WebCore::ScriptExecutionContextTaskWorkerTask::ScriptExecutionContextTaskWorkerTask):
(WebCore::ScriptExecutionContextTaskWorkerTask::performTask):
(WebCore::WorkerContext::postTask):
* dom/WorkerContext.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@38986
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@webkit.org [Thu, 4 Dec 2008 07:19:25 +0000 (07:19 +0000)]
2008-12-03 Dmitry Titov <dimich@chromium.org>
Reviewed by Alexey Proskuryakov.
Using ActiveDOMObject as base class for DOMTimer.
https://bugs.webkit.org/show_bug.cgi?id=22620
Using ActiveDOMObject simplifies the code because ActiveDOMObject
is wired for stop/pause/resume on loading/unloading/caching the page etc
so the timer-specific code that does the same can be removed.
In addition, timers can be now paused/resumed 'in place' which
makes it unnecessary to 'serialize' them into special PausedTimeouts
instance, so pause/resumeTimeouts implementation in JSDOMWindowBase can also be removed.
Also, moving TimeoutMap from JSDOMWindowBase to Document matches lifetime
of timeouts and makes it possible to not roundtrip them via PausedTimeouts
every time when JSDOMWindow wrapper is destroyed while the page is in the b/f cache.
Timeouts are now paused with other ActiveDOMObjects:
- before creating CachedPage in FrameLoader::commitProvisionalLoad()
- in JavaScriptDebugServer::setJavaScriptPaused
- during modal UI operations in Chrome::*
this is equivalent to previous usage of JSDOMWindowBase::pauseTimeouts()
Timeouts are stopped to prevent future firing from:
- FrameLoader::clear()
- FrameLoader::frameDetached()
this is equivalent to previous usage of JSDOMWindowBase::clearAllTimeouts()
This is also one of the steps to having timers in Workers. See the plan of
the next steps in the bug above.
* bindings/js/DOMTimer.cpp:
(WebCore::DOMTimer::DOMTimer):
(WebCore::DOMTimer::fired):
(WebCore::DOMTimer::hasPendingActivity):
(WebCore::DOMTimer::contextDestroyed):
(WebCore::DOMTimer::stop):
(WebCore::DOMTimer::suspend):
(WebCore::DOMTimer::resume):
(WebCore::DOMTimer::canSuspend): Implemented ActiveDOMObject methods.
* bindings/js/DOMTimer.h:
* bindings/js/JSDOMBinding.cpp: ActiveDOMObject can have no JS wrapper
(WebCore::markActiveObjectsForContext):
* bindings/js/JSDOMWindowBase.cpp:
(WebCore::JSDOMWindowBase::~JSDOMWindowBase):
(WebCore::JSDOMWindowBase::clear):
(WebCore::JSDOMWindowBase::installTimeout):
(WebCore::JSDOMWindowBase::removeTimeout):
(WebCore::JSDOMWindowBase::timerFired):
(WebCore::JSDOMWindowBase::disconnectFrame):
* bindings/js/JSDOMWindowBase.h:
* bindings/js/ScriptController.cpp:
* bindings/js/ScriptController.h:
* dom/Document.cpp: Document now holds a hash map id->timeout
(WebCore::Document::addTimeout):
(WebCore::Document::removeTimeout):
(WebCore::Document::findTimeout):
* dom/Document.h:
* history/CachedPage.cpp:
(WebCore::CachedPage::CachedPage):
(WebCore::CachedPage::restore):
(WebCore::CachedPage::clear):
* history/CachedPage.h:
* inspector/JavaScriptDebugServer.cpp:
(WebCore::JavaScriptDebugServer::~JavaScriptDebugServer):
(WebCore::JavaScriptDebugServer::setJavaScriptPaused):
* inspector/JavaScriptDebugServer.h:
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::commitProvisionalLoad):
removed clearAllTimeouts since all ActiveDOMObjects will be stopped in FrameLoader::clear();
I don't see how the old comment can be correct - the code in the same method proceeds to invoke 'onunload'
and then calls into client which can be external code and can cause any active object created in onunload
to fire. We can stop them all before firing onunload but it does not make a lot of sense.
I have a test to go with the next patch which verifies that timers set in onunload do not fire.
(WebCore::FrameLoader::open):
* page/Chrome.cpp:
(WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
(WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@38985
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
barraclough@apple.com [Thu, 4 Dec 2008 05:43:14 +0000 (05:43 +0000)]
2008-12-03 Gavin Barraclough <barraclough@apple.com>
Reviewed by Camron Zwarich.
Allow JIT to operate without the call-repatching optimization.
Controlled by ENABLE(JIT_OPTIMIZE_CALL), defaults on, disabling
this leads to significant performance regression.
https://bugs.webkit.org/show_bug.cgi?id=22639
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* jit/JIT.cpp:
(JSC::JIT::privateCompileSlowCases):
* jit/JIT.h:
* jit/JITCall.cpp: Copied from jit/JIT.cpp.
(JSC::JIT::compileOpCallInitializeCallFrame):
(JSC::JIT::compileOpCallSetupArgs):
(JSC::JIT::compileOpCallEvalSetupArgs):
(JSC::JIT::compileOpConstructSetupArgs):
(JSC::JIT::compileOpCall):
(JSC::JIT::compileOpCallSlowCase):
(JSC::unreachable):
* jit/JITInlineMethods.h: Copied from jit/JIT.cpp.
(JSC::JIT::checkStructure):
(JSC::JIT::emitFastArithPotentiallyReTagImmediate):
(JSC::JIT::emitTagAsBoolImmediate):
* wtf/Platform.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@38984
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
justin.garcia@apple.com [Thu, 4 Dec 2008 03:39:53 +0000 (03:39 +0000)]
WebCore:
2008-12-03 Justin Garcia <justin.garcia@apple.com>
Reviewed by Beth Dakin.
<rdar://problem/6018653> Extra blank line when pasting paragraph in plain text
In SnowLeopard, Mail occasionally adds an empty, unstyled paragraph at the
end of pasted content so that users don't get stuck with non-standard pargraph
spacing. This content threw off our handling of interchange newlines. Any interchange
newline, regardless of it's position in the incoming fragment was considered to be
"at the start" of the fragment, and would result in us inserting in a newline before
inserted content. This patch makes the checks for interchange newlines more strict,
and treats interchange newlines found elsewhere as normal <br>s.
* editing/ReplaceSelectionCommand.cpp:
(WebCore::ReplacementFragment::ReplacementFragment):
(WebCore::ReplacementFragment::removeInterchangeNodes):
* editing/VisiblePosition.cpp:
(WebCore::VisiblePosition::init):
(WebCore::VisiblePosition::canonicalPosition):
* editing/VisiblePosition.h:
LayoutTests:
2008-12-03 Justin Garcia <justin.garcia@apple.com>
Reviewed by Beth Dakin.
<rdar://problem/6018653> Extra blank line when pasting paragraph in plain text
* editing/pasteboard/6018653-expected.txt: Added.
* editing/pasteboard/6018653.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@38983
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Thu, 4 Dec 2008 02:11:22 +0000 (02:11 +0000)]
2008-12-03 Anders Carlsson <andersca@apple.com>
Reviewed by Sam Weinig.
Move WebPluginRequest to its own file.
* WebKit.xcodeproj/project.pbxproj:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@38982
268f45cc-cd09-0410-ab3c-
d52691b4dbfc