Timeline


and

05/09/09:

22:54 Changeset [43456] by ggaren@apple.com
  • 2 edits in branches/nitro-extreme/JavaScriptCore

2009-05-09 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Optimized a few more cases to use memory operands instead of loading
into registers.

  • jit/JIT.cpp: (JSC::JIT::privateCompileMainPass):
22:38 Changeset [43455] by ggaren@apple.com
  • 3 edits in branches/nitro-extreme/JavaScriptCore

2009-05-09 Geoffrey Garen <ggaren@apple.com>

Not reviewed.


Build fix.

  • jit/JIT.h:
  • jit/JITCode.h:
22:36 Changeset [43454] by ggaren@apple.com
  • 4 edits in branches/nitro-extreme/JavaScriptCore

2009-05-09 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


A little more opcode action.


Added a set8 and deployed it.


Optimized op_bitnot to do a bitnot directly in memory if possible.

  • assembler/MacroAssemblerX86Common.h: (JSC::MacroAssemblerX86Common::not32): (JSC::MacroAssemblerX86Common::set8):
  • assembler/X86Assembler.h: (JSC::X86Assembler::notl_m):
  • jit/JIT.cpp: (JSC::JIT::privateCompileMainPass):
22:21 Changeset [43453] by weinig@apple.com
  • 3 edits in branches/nitro-extreme/JavaScriptCore

2009-05-09 Sam Weinig <sam@webkit.org>

Rubber-stamped by Geoffrey Garen.

Merge over the new JITStubs implementation from ToT.

  • jit/JITStubs.cpp:
  • jit/JITStubs.h:
22:14 Changeset [43452] by weinig@apple.com
  • 3 edits in branches/nitro-extreme/JavaScriptCore

2009-05-09 Sam Weinig <sam@webkit.org>

Reviewed by Geoffrey Garen.

Don't test for a slow case if the operand of an arithmetic op is
known to be an integer constant.

  • jit/JIT.cpp: (JSC::JIT::privateCompileMainPass):
  • jit/JITArithmetic.cpp: (JSC::JIT::emitAdd32): (JSC::JIT::emitSub32): (JSC::JIT::emitMul32): (JSC::JIT::emitMod32): (JSC::JIT::emitBitAnd32): (JSC::JIT::emitBitOr32): (JSC::JIT::emitBitXor32): (JSC::JIT::emitLeftShift32): (JSC::JIT::emitRightShift32):
22:04 Changeset [43451] by mitz@apple.com
  • 3 edits
    2 adds in trunk

WebCore:

Reviewed by Geoffrey Garen and Mark Rowe.

Test: fast/dom/HTMLFormElement/adopt-assertion.html

  • html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::willMoveToNewOwnerDocument): Overrides of this method are required to call the base class implementation. Do it. (WebCore::HTMLFormElement::didMoveToNewOwnerDocument): Ditto.

LayoutTests:

Reviewed by Geoffrey Garen and Mark Rowe.

  • fast/dom/HTMLFormElement/adopt-assertion-expected.txt: Added.
  • fast/dom/HTMLFormElement/adopt-assertion.html: Added.
22:01 Changeset [43450] by ggaren@apple.com
  • 2 edits in branches/nitro-extreme/JavaScriptCore

2009-05-09 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.

Fixed accidental reversal of opcodes part 2.

  • assembler/MacroAssemblerX86Common.h: (JSC::MacroAssemblerX86Common::neg32):
21:27 Changeset [43449] by ggaren@apple.com
  • 2 edits in branches/nitro-extreme/JavaScriptCore

2009-05-09 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Fixed accidental reversal of opcodes.

  • assembler/X86Assembler.h: (JSC::X86Assembler::negl_r): (JSC::X86Assembler::notl_r):
21:23 Changeset [43448] by ggaren@apple.com
  • 2 edits in branches/nitro-extreme/JavaScriptCore

2009-05-09 Geoffrey Garen <ggaren@apple.com>

Not reviewed.

  • jit/JITArithmetic.cpp: (JSC::JIT::emitAdd32): Restored accidentally snipped out code from my last patch.
19:52 Changeset [43447] by ggaren@apple.com
  • 4 edits in branches/nitro-extreme/JavaScriptCore

2009-05-09 Geoffrey Garen <ggaren@apple.com>

Reviewed by Oliver Hunt.


Miscellaneous work on our existing opcodes.


Removed unnecessary load into register from mul32.


Fixed a bug where mod32 calculated the quotient instead of the remainder.


Fixed the debug build.


Added optimized cases for subtraction.


Established consistent naming of emitOp32[Details], removing cases of
emitOp[Details]32.

  • jit/JIT.cpp: (JSC::JIT::privateCompileMainPass): (JSC::JIT::privateCompileSlowCases):
  • jit/JIT.h:
  • jit/JITArithmetic.cpp: (JSC::JIT::emitAdd32): (JSC::JIT::emitAdd32Constant): (JSC::JIT::emitSub32): (JSC::JIT::emitSub32ConstantLeft): (JSC::JIT::emitSub32ConstantRight): (JSC::JIT::emitSub32InPlaceLeft): (JSC::JIT::emitSub32InPlaceRight): (JSC::JIT::emitMul32): (JSC::JIT::emitMul32Constant): (JSC::JIT::emitMul32InPlace): (JSC::JIT::emitMod32): (JSC::JIT::emitBitAnd32): (JSC::JIT::emitBitAnd32Constant): (JSC::JIT::emitBitOr32): (JSC::JIT::emitBitOr32Constant): (JSC::JIT::emitBitXor32): (JSC::JIT::emitBitXor32Constant):
19:44 Changeset [43446] by ggaren@apple.com
  • 3 edits in trunk/LayoutTests

2009-05-09 Geoffrey Garen <ggaren@apple.com>

Rubber stamped by Beth Dakin.


Added a test for a math edge case I just came across.

  • fast/js/postfix-syntax-expected.txt:
  • fast/js/resources/postfix-syntax.js:
19:28 Changeset [43445] by jmalonzo@webkit.org
  • 2 edits in trunk

2009-05-09 Jan Michael Alonzo <jmalonzo@webkit.org>

Reviewed by Gustavo Noronha.

WebKit-r43163 won't build for gtk-directfb
https://bugs.webkit.org/show_bug.cgi?id=25538

Move the ENCHANT check out of the with_target conditional since it
applies to all targets

  • configure.ac:
19:10 Changeset [43444] by jmalonzo@webkit.org
  • 4 edits in trunk

2009-05-09 Mike Hommey <glandium@debian.org>

Reviewed by Geoffrey Garen. Landed by Jan Alonzo.

Enable JIT on x86-64 gtk+
https://bugs.webkit.org/show_bug.cgi?id=24724

  • configure.ac:

2009-05-09 Mike Hommey <glandium@debian.org>

Reviewed by Geoffrey Garen. Landed by Jan Alonzo.

Enable JIT on x86-64 gtk+
https://bugs.webkit.org/show_bug.cgi?id=24724

  • GNUmakefile.am:
18:13 Changeset [43443] by ggaren@apple.com
  • 2 edits in branches/nitro-extreme/JavaScriptCore

2009-05-09 Geoffrey Garen <ggaren@apple.com>

Reviewed by Maciej Stachowiak.


Cleaned up postfix ++/-- operators. 23% speedup in postfix operations.


The old code did an increment/decrement, and then stored to dst and srcDst,
dst getting the original value and srcDst getting the incremented value.
In order to pull that off, it needed to move a copy of the original
value to a second register, and do things in a generally inefficient
order. Instead, you can just store to dst before you do the increment.


Also fixed the build.

  • jit/JIT.cpp: (JSC::JIT::privateCompileMainPass): (JSC::JIT::privateCompileSlowCases):
15:41 Changeset [43442] by kevino@webkit.org
  • 5 edits in trunk

Reviewed by Maciej Stachowiak.

WebCore::DocumentLoader::mainReceivedError now asserts if error.isNull(), so
make sure wx does not create empty ResourceError() objects.

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

15:05 Changeset [43441] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

2009-05-09 Geoffrey Garen <ggaren@apple.com>

Reviewed by Cameron Zwarich.


Removed the last non-call-related manually managed JIT stub call.

  • jit/JITArithmetic.cpp: (JSC::JIT::compileFastArithSlow_op_rshift): Fully use the JITStubCall abstraction, instead of emitPutJITStubArg.
09:01 Changeset [43440] by kov@webkit.org
  • 2 edits in trunk/JavaScriptCore

2009-05-09 Sebastian Andrzej Siewior <sebastian@breakpoint.cc>

Reviewed by Gustavo Noronha.

https://bugs.webkit.org/show_bug.cgi?id=25653
PLATFORM(X86_64) inherits ia64

ia64 is defined by gcc in an IA64 arch and has completely
nothing in common with X86-64 exept both are from Intel and have
an 64bit address space. That's it. Since code seems to expect x86
here, ia64 has to go.

  • wtf/Platform.h:
08:44 Changeset [43439] by kov@webkit.org
  • 2 edits in trunk/JavaScriptCore

2009-05-09 Gustavo Noronha Silva <gns@gnome.org>

Suggested by Geoffrey Garen.

Assume SSE2 is present on X86-64 and on MAC X86-32. This fixes a
build breakage on non-Mac X86-64 when JIT is enabled.

  • jit/JITArithmetic.cpp:
08:14 Changeset [43438] by weinig@apple.com
  • 3 edits in branches/nitro-extreme/JavaScriptCore

2009-05-09 Sam Weinig <sam@webkit.org>

Cleanup. Switch uses of known int immediate access from using low
level u.asBits.payload to using asInt32().

  • jit/JIT.cpp: (JSC::JIT::privateCompileMainPass):
  • jit/JITArithmetic.cpp: (JSC::JIT::emitAddConstant32): (JSC::JIT::emitSub32): (JSC::JIT::emitMulConstant32): (JSC::JIT::emitMod32): (JSC::JIT::emitBitAndConstant32): (JSC::JIT::emitBitOrConstant32): (JSC::JIT::emitBitXorConstant32): (JSC::JIT::emitLeftShift32): (JSC::JIT::emitRightShift32):
07:38 Changeset [43437] by kov@webkit.org
  • 4 edits in trunk

Build fix, adding missing files to make dist.

02:26 Changeset [43436] by mitz@apple.com
  • 22 edits in trunk/LayoutTests

Correct the results from the previous patch

02:19 Changeset [43435] by mitz@apple.com
  • 22 edits in trunk/LayoutTests

Update Windows-specific layout test results for textarea intrinsic
margins following r43355

01:54 Changeset [43434] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

2009-05-09 Geoffrey Garen <ggaren@apple.com>

Windows build fix.

  • assembler/X86Assembler.h: (JSC::X86Assembler::patchLoadToLEA):
01:49 Changeset [43433] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

2009-05-09 Geoffrey Garen <ggaren@apple.com>

Windows build fix.

  • assembler/X86Assembler.h: (JSC::X86Assembler::patchLoadToLEA):
01:35 Changeset [43432] by mjs@apple.com
  • 12 edits in trunk/JavaScriptCore

2009-05-09 Maciej Stachowiak <mjs@apple.com>

Reviewed by Gavin Barraclough.


Original patch by John McCall. Updated by Cameron Zwarich. Further refined by me.


  • Assorted speedups to property access


~.3%-1% speedup on SunSpider


1) When we know from the structure ID that an object is using inline storage, plant direct
loads and stores against it; no need to indirect through storage pointer.


2) Also because of the above, union the property storage pointer with the first inline property
slot and add an extra inline property slot.

  • assembler/AbstractMacroAssembler.h: (JSC::AbstractMacroAssembler::CodeLocationInstruction::CodeLocationInstruction): (JSC::AbstractMacroAssembler::CodeLocationInstruction::patchLoadToLEA): (JSC::::CodeLocationCommon::instructionAtOffset):
  • assembler/MacroAssembler.h: (JSC::MacroAssembler::storePtr):
  • assembler/MacroAssemblerX86.h: (JSC::MacroAssemblerX86::store32):
  • assembler/MacroAssemblerX86_64.h: (JSC::MacroAssemblerX86_64::storePtr):
  • assembler/X86Assembler.h: (JSC::X86Assembler::movq_EAXm): (JSC::X86Assembler::movl_rm): (JSC::X86Assembler::patchLoadToLEA):
  • jit/JIT.cpp: (JSC::JIT::privateCompileMainPass):
  • jit/JIT.h:
  • jit/JITPropertyAccess.cpp: (JSC::JIT::compileGetByIdHotPath): (JSC::JIT::compilePutByIdHotPath): (JSC::JIT::compilePutDirectOffset): (JSC::JIT::compileGetDirectOffset): (JSC::JIT::privateCompilePutByIdTransition): (JSC::JIT::patchGetByIdSelf): (JSC::JIT::patchPutByIdReplace): (JSC::JIT::privateCompileGetByIdSelf): (JSC::JIT::privateCompileGetByIdProto): (JSC::JIT::privateCompileGetByIdSelfList): (JSC::JIT::privateCompileGetByIdProtoList): (JSC::JIT::privateCompileGetByIdChainList): (JSC::JIT::privateCompileGetByIdChain): (JSC::JIT::privateCompilePutByIdReplace):
  • runtime/JSObject.cpp: (JSC::JSObject::mark): (JSC::JSObject::removeDirect):
  • runtime/JSObject.h: (JSC::JSObject::propertyStorage): (JSC::JSObject::getDirect): (JSC::JSObject::getOffset): (JSC::JSObject::offsetForLocation): (JSC::JSObject::locationForOffset): (JSC::JSObject::getDirectOffset): (JSC::JSObject::putDirectOffset): (JSC::JSObject::isUsingInlineStorage): (JSC::JSObject::): (JSC::JSObject::JSObject): (JSC::JSObject::~JSObject): (JSC::Structure::isUsingInlineStorage): (JSC::JSObject::putDirect): (JSC::JSObject::putDirectWithoutTransition): (JSC::JSObject::allocatePropertyStorageInline):
  • runtime/Structure.h:
01:24 Changeset [43431] by ggaren@apple.com
  • 5 edits in trunk/JavaScriptCore

2009-05-09 Geoffrey Garen <ggaren@apple.com>

Reviewed by Gavin Barraclough.

Changed all our JIT stubs so that they return a maximum of 1 JS value or
two non-JS pointers, and do all other value returning through out
parameters, in preparation for 64bit JS values on a 32bit system.

Stubs that used to return two JSValues now return one JSValue and take
and out parameter specifying where in the register array the second
value should go.


SunSpider reports no change.

  • jit/JIT.cpp: (JSC::JIT::privateCompileMainPass):
  • jit/JITArithmetic.cpp: (JSC::JIT::compileFastArithSlow_op_post_inc): (JSC::JIT::compileFastArithSlow_op_post_dec):
  • jit/JITStubs.cpp: (JSC::JITStubs::cti_op_call_arityCheck): (JSC::JITStubs::cti_op_resolve_func): (JSC::JITStubs::cti_op_post_inc): (JSC::JITStubs::cti_op_resolve_with_base): (JSC::JITStubs::cti_op_post_dec):
  • jit/JITStubs.h: (JSC::):
00:02 Changeset [43430] by weinig@apple.com
  • 4 edits in branches/nitro-extreme/JavaScriptCore

2009-05-09 Sam Weinig <sam@webkit.org>

Implement op_mod.

  • jit/JIT.cpp: (JSC::JIT::privateCompileMainPass):
  • jit/JIT.h:
  • jit/JITArithmetic.cpp: (JSC::JIT::emitMod32):

05/08/09:

23:12 Changeset [43429] by jmalonzo@webkit.org
  • 2 edits in trunk/LayoutTests

2009-05-08 Jan Michael Alonzo <jmalonzo@webkit.org>

Skip failing render tree test that was added in r43420.

  • platform/gtk/Skipped:
22:25 Changeset [43428] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

2009-05-08 Geoffrey Garen <ggaren@apple.com>

Reviewed by Cameron Zwarich.


Fixed <rdar://problem/6634956> CrashTracer: [REGRESSION] >400 crashes
in Safari at com.apple.JavaScriptCore • JSC::BytecodeGenerator::emitComplexJumpScopes + 468
https://bugs.webkit.org/show_bug.cgi?id=25658

  • bytecompiler/BytecodeGenerator.cpp: (JSC::BytecodeGenerator::emitComplexJumpScopes): Guard the whole loop with a bounds check. The old loop logic would decrement and read topScope without a bounds check, which could cause crashes on page boundaries.
19:17 Changeset [43427] by jmalonzo@webkit.org
  • 4 edits in trunk/JavaScriptCore

2009-05-08 Jan Michael Alonzo <jmalonzo@webkit.org>

Reviewed by NOBODY (BuildFix).

Gtk fix: add LiteralParser to the build script per r43424.

Add LiteralParser to the Qt and Wx build scripts too.

19:05 Changeset [43426] by zimmermann@webkit.org
  • 4 edits in trunk/LayoutTests

Rubber-stamped by George Staikos.
Update WML <input> layout test result, as input field metrics have changed recently.

18:34 Changeset [43425] by zimmermann@webkit.org
  • 2 edits in trunk/WebKit/mac

Not reviewed. Fix clean builds, forgot to land name() -> formControlName() rename patch in WebKit. Only landed the WebCore side.

18:01 Changeset [43424] by oliver@apple.com
  • 5 edits
    2 adds in trunk/JavaScriptCore

Add a limited literal parser for eval to handle object and array literals fired at eval

Reviewed by Gavin Barraclough and Darin Adler.

This is a simplified parser and lexer that we can throw at strings passed to eval
in case a site is using eval to parse JSON (eg. json2.js). The lexer is intentionally
limited (in effect it's whitelisting a limited "common" subset of the JSON grammar)
as this decreases the likelihood of us wating time attempting to parse any significant
amount of non-JSON content.

17:51 Changeset [43423] by simon.fraser@apple.com
  • 2 edits in trunk/WebCore

2009-05-08 Simon Fraser <simon.fraser@apple.com>

Reviewed by Dan Bernstein

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

Reduce the inline capacity of CSSParserValueList's m_values
vector to reduce the size of CSSParserValueList from 544 to 160 bytes in 64-bit.

  • css/CSSParserValues.h:
17:29 Changeset [43422] by zimmermann@webkit.org
  • 2 edits in trunk/WebCore

Not reviewed. Used sort-Xcode-project-file to sort the XCode project file - it hasn't been done for a while.

17:19 Changeset [43421] by weinig@apple.com
  • 2 edits in branches/nitro-extreme/JavaScriptCore

2009-05-08 Sam Weinig <sam@webkit.org>

Implement constant operand cases for op_sub, op_lshift and op_rshift.

  • jit/JITArithmetic.cpp: (JSC::JIT::emitSub32): (JSC::JIT::emitLeftShift32): (JSC::JIT::emitRightShift32):
16:49 Changeset [43420] by mitz@apple.com
  • 3 edits
    2 adds in trunk

WebCore:

Reviewed by Darin Adler.

  • fix <rdar://problem/6864786> REGRESSION: Crash below ApplyStyleCommand::applyInlineStyleToRange when reviewing a patch in Bugzilla

Test: editing/style/apply-through-end-of-document.html

  • editing/ApplyStyleCommand.cpp: (WebCore::ApplyStyleCommand::applyInlineStyleToRange): Added a null check for the case of a range extending through the end of the document, in which pastEndNode is 0.

LayoutTests:

Reviewed by Darin Adler.

  • test for <rdar://problem/6864786> REGRESSION: Crash below ApplyStyleCommand::applyInlineStyleToRange when reviewing a patch in Bugzilla
  • editing/style/apply-through-end-of-document-expected.txt: Added.
  • editing/style/apply-through-end-of-document.html: Added.
16:40 Changeset [43419] by bdakin@apple.com
  • 2 edits in trunk/WebCore

2009-05-08 Douglas R. Davidson <ddavidso@apple.com>

Reviewed by Beth Dakin.

<rdar://problem/6857446> REGRESSION (Safari 3-4): Contraction base
marked as misspelled even though contraction is a word
Make sure spelling underline does not persist on words like
<doesn't>.

  • editing/TypingCommand.cpp: (WebCore::TypingCommand::typingAddedToOpenCommand):
15:53 Changeset [43418] by kevino@webkit.org
  • 2 edits in trunk/WebCore

Reviewed by Kevin Ollivier.

Make sure the path's refdata isn't deleted before we're done with the object.

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

15:49 Changeset [43417] by kevino@webkit.org
  • 2 edits in trunk/WebCore

Fix memory leak for wxMac.

14:47 Changeset [43416] by andersca@apple.com
  • 2 edits in trunk/WebKit/mac

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

Reviewed by Kevin Decker.

  • Fix <rdar://problem/6866712>.

Instead of just caching whether a plug-in object _has_ a field or method, also add an entry to the cache
if it _doesn't_ have a certain field or method. This way we have to make fewer calls to the plug-in host.


  • Plugins/Hosted/ProxyInstance.mm: (WebKit::ProxyInstance::methodsNamed): (WebKit::ProxyInstance::fieldNamed):
14:37 Changeset [43415] by kov@webkit.org
  • 2 edits in trunk/WebKit/gtk

2009-05-08 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>

Reviewed by Xan Lopez.

Make the scan program call g_thread_init(NULL) in addition to
g_type_init(), so that it actually works.

  • docs/GNUmakefile.am:
14:37 Changeset [43414] by kov@webkit.org
  • 3 edits in trunk

2009-05-08 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>

Reviewed by Xan Lopez.

Ship the gtk-doc.make file, so as to not depend on gtkdoc-tools.

  • GNUmakefile.am:
  • autogen.sh:
14:35 Changeset [43413] by bdakin@apple.com
  • 2 edits in trunk/WebCore

2009-05-08 Beth Dakin <bdakin@apple.com>

Reviewed by Dan Bernstein.

<rdar://problem/6857446> REGRESSION (r37591): Cannot print or
preview from maps.yandex.ru

We need to fall into the stretchesToViewHeight() quirk when we are
printing and we are the root and the root has percentage height OR
when we are the body and the root has percentage height. Otherwise
we have a height of 0 and can run into painting troubles.

  • rendering/RenderBox.cpp: (WebCore::RenderBox::calcHeight):
14:12 Changeset [43412] by harrison@apple.com
  • 6 edits in trunk

WebCore:

2009-05-08 Douglas Davidson <ddavidso@apple.com>

Reviewed by Darin Adler.

Fixes for <rdar://problem/6852771>.
Prevent text checking replacement immediately after an apostrophe
and automatic link addition except immediately after typing.

  • editing/Editor.cpp: (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):

WebKit/mac:

2009-05-08 Douglas R. Davidson <ddavidso@apple.com>

Reviewed by Darin Adler.

Fixes for <rdar://problem/6852771>.
Disable text checking menu items if view is not editable.

  • WebView/WebHTMLView.mm: (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]): (-[WebHTMLView smartInsertDeleteEnabled]): (-[WebHTMLView setSmartInsertDeleteEnabled:]): (-[WebHTMLView toggleSmartInsertDelete:]):
  • WebView/WebHTMLViewInternal.h:
14:12 Changeset [43411] by timothy@apple.com
  • 4 edits in trunk

Versioning.

14:03 HackingGtk edited by amd@store20.com
Gtk+ uses libsoup backend instead of curl (diff)
13:53 Changeset [43410] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

2009-05-08 Geoffrey Garen <ggaren@apple.com>

Not reviewed.


Restored a Mozilla JS test I accidentally gutted.

  • tests/mozilla/ecma/Array/15.4.4.2.js: (getTestCases): (test):
13:51 Changeset [43409] by ggaren@apple.com
  • 9 edits in trunk/JavaScriptCore

2009-05-08 Geoffrey Garen <ggaren@apple.com>

Reviewed by Gavin Barraclough.


More abstraction for JITStub calls from JITed code.


Added a JITStubCall class that automatically handles things like assigning
arguments to different stack slots and storing return values. Deployed
the class in about a billion places. A bunch more places remain to be
fixed up, but this is a good stopping point for now.

  • jit/JIT.cpp: (JSC::JIT::emitTimeoutCheck): (JSC::JIT::privateCompileMainPass): (JSC::JIT::privateCompileSlowCases): (JSC::JIT::privateCompile):
  • jit/JIT.h: (JSC::JIT::JSRInfo::JSRInfo): (JSC::JITStubCall::JITStubCall): (JSC::JITStubCall::addArgument): (JSC::JITStubCall::call): (JSC::JITStubCall::): (JSC::CallEvalJITStub::CallEvalJITStub):
  • jit/JITArithmetic.cpp: (JSC::JIT::compileFastArithSlow_op_lshift): (JSC::JIT::compileFastArithSlow_op_rshift): (JSC::JIT::compileFastArithSlow_op_jnless): (JSC::JIT::compileFastArithSlow_op_bitand): (JSC::JIT::compileFastArithSlow_op_mod): (JSC::JIT::compileFastArith_op_mod): (JSC::JIT::compileFastArithSlow_op_post_inc): (JSC::JIT::compileFastArithSlow_op_post_dec): (JSC::JIT::compileFastArithSlow_op_pre_inc): (JSC::JIT::compileFastArithSlow_op_pre_dec): (JSC::JIT::compileFastArith_op_add): (JSC::JIT::compileFastArith_op_mul): (JSC::JIT::compileFastArith_op_sub): (JSC::JIT::compileBinaryArithOpSlowCase): (JSC::JIT::compileFastArithSlow_op_add): (JSC::JIT::compileFastArithSlow_op_mul):
  • jit/JITCall.cpp: (JSC::JIT::compileOpCall): (JSC::):
  • jit/JITPropertyAccess.cpp: (JSC::JIT::compileGetByIdHotPath): (JSC::JIT::compilePutByIdHotPath): (JSC::JIT::compileGetByIdSlowCase): (JSC::JIT::compilePutByIdSlowCase):
  • jit/JITStubs.cpp: (JSC::JITStubs::cti_op_resolve_func): (JSC::JITStubs::cti_op_resolve_with_base):
13:44 Changeset [43408] by kov@webkit.org
  • 2 edits in trunk/LayoutTests

2009-05-06 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>

Disable more new tests that are failing.

  • platform/gtk/Skipped:
13:40 Changeset [43407] by timothy@apple.com
  • 2 edits in tags/Safari-6530.9/WebCore

Merge r43394.

13:20 Changeset [43406] by timothy@apple.com
  • 1 copy in tags/Safari-6530.9

New tag.

12:19 QtWebKitTodo edited by tonikitoo@gmail.com
(diff)
12:13 Changeset [43405] by eric.carlson@apple.com
  • 3 edits in trunk/LayoutTests

2009-05-08 Eric Carlson <eric.carlson@apple.com>

No review, update tests results missed in r43403.

  • fast/dom/Window/window-properties-expected.txt:
  • platform/mac-leopard/fast/dom/Window/window-properties-expected.txt:
12:08 Changeset [43404] by kov@webkit.org
  • 1 edit
    5 adds in trunk/LayoutTests

2009-05-08 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>

GTK+ test results for two new tests.

  • platform/gtk/fast/layers/remove-only-this-layer-update-expected.txt: Added.
  • platform/gtk/fast/repaint/selection-clear-expected.txt: Added.
11:54 HackingGtk edited by kov@webkit.org
(diff)
11:37 Changeset [43403] by eric.carlson@apple.com
  • 15 edits
    2 adds in trunk

2009-05-08 Eric Carlson <eric.carlson@apple.com>

Reviewed by Darin Adler.


https://bugs.webkit.org/show_bug.cgi?id=25627
Bug 25627: HTMLMediaElement: some errors should fire on <source> elements

Update for HTML5 spec change to fire 'error' events on <source> element
when there is a failure while processing/loading a <source>.

Test: media/video-source-error.html

  • html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::enqueueEvent): Remove white-space. (WebCore::HTMLMediaElement::loadInternal): Call cancelPendingEventsAndCallbacks instead of just calling m_pendingEvents.clear() as we now also need to cancel pending errors on all <source> element. (WebCore::HTMLMediaElement::selectMediaResource): Call isSafeToLoadURL() here instead of in loadResource() as we need to report errors differently depending on the type of failure. Use KURL instead of String. (WebCore::HTMLMediaElement::loadNextSourceChild): nextSourceChild -> selectNextSourceChild. Fail silently when there are no more <source> canditates because that is what spec mandates. Keep url as KURL instead of converting to String. (WebCore::HTMLMediaElement::loadResource): ASSERT that the URL is safe to load as we now assume the safety check now done before this function. Takes KURL instead of String. (WebCore::HTMLMediaElement::isSafeToLoadURL): New, checks to see if a url is safe to load, logs failure if not. (WebCore::HTMLMediaElement::noneSupported): MEDIA_ERR_NONE_SUPPORTED -> MEDIA_ERR_SRC_NOT_SUPPORTED (WebCore::HTMLMediaElement::cancelPendingEventsAndCallbacks): New, clear all events pending on the media and all source elements. (WebCore::HTMLMediaElement::setNetworkState): Fire an error on the source element when the the failure happened while processing one. Only call nonSupported() when the failure happened while processing media element 'src' attribute. (WebCore::HTMLMediaElement::havePotentialSourceChild): nextSourceChild -> selectNextSourceChild. Deal with selectNextSourceChild returning a KURL instead of a String. (WebCore::HTMLMediaElement::selectNextSourceChild): Renamed from nextSourceChild, add optional param to control whether or not errors are fired on a source element when it will not be used. Check safety of url here instead of waiting until loadResource(). Return a KURL instead of a String. (WebCore::HTMLMediaElement::initialURL): nextSourceChild -> selectNextSourceChild. Keep url as a KURL instead of a String.
  • html/HTMLMediaElement.h: (WebCore::HTMLMediaElement::):
  • html/HTMLSourceElement.cpp: (WebCore::HTMLSourceElement::HTMLSourceElement): Initialize timer related variables. (WebCore::HTMLSourceElement::scheduleErrorEvent): New, start one-shot timer to fire an error event ASAP. (WebCore::HTMLSourceElement::cancelPendingErrorEvent): New, cancel pending error event. (WebCore::HTMLSourceElement::errorEventTimerFired): New, fire error event if it has not been cancelled.
  • html/HTMLSourceElement.h:
  • html/MediaError.h: (WebCore::MediaError::): MEDIA_ERR_NONE_SUPPORTED -> MEDIA_ERR_SRC_NOT_SUPPORTED
  • html/MediaError.idl: Ditto

2009-05-08 Eric Carlson <eric.carlson@apple.com>

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=25627
Bug 25627: HTMLMediaElement: some errors should fire on <source> elements

Update tests for MEDIA_ERR_NONE_SUPPORTED change to MEDIA_ERR_SRC_NOT_SUPPORTED.
Add video-source-error.html to test errors fired on <source> elements .

  • media/media-constants-expected.txt:
  • media/media-constants.html:
  • media/unsupported-rtsp.html:
  • media/video-error-does-not-exist.html:
  • media/video-source-error.html: Added.
  • media/video-src-change.html:
  • media/video-src-invalid-remove.html:
  • media/video-src-plus-source.html:
08:56 Changeset [43402] by kov@webkit.org
  • 2 edits in trunk/LayoutTests

2009-05-06 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>

Disable new test that is failing.

  • platform/gtk/Skipped:
08:08 Changeset [43401] by cwzwarich@webkit.org
  • 10 edits in trunk/JavaScriptCore

2009-05-08 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Maciej Stachowiak.

Add a new opcode jnlesseq, and optimize its compilation in the JIT using
techniques similar to what were used to optimize jnless in r43363.

This gives a 0.7% speedup on SunSpider, particularly on the tests 3d-cube,
control-flow-recursive, date-format-xparb, and string-base64.

  • bytecode/CodeBlock.cpp: (JSC::CodeBlock::dump): Add support for dumping op_jnlesseq.
  • bytecode/Opcode.h: Add op_jnlesseq to the list of opcodes.
  • bytecompiler/BytecodeGenerator.cpp: (JSC::BytecodeGenerator::emitJumpIfFalse): Add a peephole optimization for op_jnlesseq when emitting lesseq followed by a jump.
  • interpreter/Interpreter.cpp: (JSC::Interpreter::privateExecute): Add case for op_jnlesseq.
  • jit/JIT.cpp: (JSC::JIT::privateCompileMainPass): Add case for op_jnlesseq. (JSC::JIT::privateCompileSlowCases): Add case for op_jnlesseq.
  • jit/JIT.h:
  • jit/JITArithmetic.cpp: (JSC::JIT::compileFastArith_op_jnlesseq): Added. (JSC::JIT::compileFastArithSlow_op_jnlesseq): Added.
  • jit/JITStubs.cpp: (JSC::JITStubs::cti_op_jlesseq): Added.
  • jit/JITStubs.h:
06:42 Changeset [43400] by mitz@apple.com
  • 4 edits
    4 adds in trunk

WebCore:

Reviewed by Maciej Stachowiak.

  • fix <rdar://problem/6859955> Undoing typed text after selecting all leaves non-text areas highlighted

Test: fast/repaint/selection-clear.html

When RenderView::clearSelection() is called from
SelectionController::nodeWillBeRemoved(), selected renderers may already
be marked for layout, which means that they can no longer compute
their selection repaint info. Instead, an empty IntRect (or GapRects) is
returned, leading to incomplete repaint.

The fix is not to rely on individual renderers when clearing the
selection, but instead, cache the bounding rectangle of the selected
blocks' GapRects when setting the selection, and invalidate that
entire rectangle when clearing it.

  • rendering/RenderView.cpp: (WebCore::RenderView::setSelection): Added a parameter saying whether the repainting of selected blocks should include both previously-selected areas and newly-selected areas or only newly-selected areas. The default is both. Also compute m_cachedSelectionBounds to be the bounding rectangle of the new selection's BlockSelectionInfos' GapRects. (WebCore::RenderView::clearSelection): Repaint m_cachedSelectionBounds, and tell setSelection() that it should not paint areas that were in the old selection's BlockSelectionInfos' GapRects.
  • rendering/RenderView.h: (WebCore::RenderView::):

LayoutTests:

Reviewed by Maciej Stachowiak.

  • test for <rdar://problem/6859955> Undoing typed text after selecting all leaves non-text areas highlighted
  • fast/repaint/selection-clear.html: Added.
  • platform/mac/fast/repaint/selection-clear-expected.checksum: Added.
  • platform/mac/fast/repaint/selection-clear-expected.png: Added.
  • platform/mac/fast/repaint/selection-clear-expected.txt: Added.
06:19 Changeset [43399] by mjs@apple.com
  • 2 edits in trunk/JavaScriptCore

2009-05-08 Maciej Stachowiak <mjs@apple.com>

Reviewed by Cameron Zwarich.


  • fix test failures on 64-bit
  • jit/JITArithmetic.cpp: (JSC::JIT::compileFastArithSlow_op_jnless): Avoid accidentaly treating an immediate int as an immediate float in the 64-bit value representation.
05:58 Changeset [43398] by ap@webkit.org
  • 7 edits in trunk

Reviewed by Maciej Stachowiak.

<rdar://problem/6868773> NPN_GetAuthenticationInfo does not work with non-permanent credentials

WebCore:

  • WebCore.base.exp:
  • platform/network/mac/AuthenticationMac.h: (WebCore::WebCoreCredentialStorage::set): (WebCore::WebCoreCredentialStorage::get):
  • platform/network/mac/AuthenticationMac.mm:
  • platform/network/mac/ResourceHandleMac.mm: Moved WebCoreCredentialStorage to AuthenticationMac, so that it could be used from WebKit.

WebKit:

  • Plugins/WebBaseNetscapePluginView.mm: (WebKit::getAuthenticationInfo): Ask WebCore for credentials first (but also ask NSURLCredentialStorage, because WebCore won't know about permanent credentials).
04:30 Changeset [43397] by barraclough@apple.com
  • 3 edits in trunk/JavaScriptCore

2009-05-08 Gavin Barraclough <barraclough@apple.com>

Rubber stamped by Oliver Hunt.

Removing an empty constructor and an uncalled, empty function seems to be a
pretty solid 1% regeression on my machine, so I'm going to put them back.
Um. Yeah, this this pretty pointles and makes no sense at all. I officially
lose the will to live in 3... 2...

  • bytecode/SamplingTool.cpp: (JSC::SamplingTool::notifyOfScope):
  • bytecode/SamplingTool.h: (JSC::SamplingTool::~SamplingTool):
03:23 Changeset [43396] by hausmann@webkit.org
  • 2 edits in trunk/WebCore

2009-05-08 Jedrzej Nowacki <jedrzej.nowacki@nokia.com>

Reviewed by Simon Hausmann.

Fix the Qt build, add missing JSC_HOST_CALL macros to the runtime
call methods.

03:18 Changeset [43395] by barraclough@apple.com
  • 5 edits in trunk/JavaScriptCore

2009-05-08 Gavin Barraclough <barraclough@apple.com>

Reviewed by Oliver "I see lots of ifdefs" Hunt.

Fix (kinda) for sampling tool breakage. The codeblock sampling tool has become
b0rked due to recent changes in native function calling. The initialization of
a ScopeNode appears to now occur before the sampling tool (or possibly the
interpreter has been brought into existence, wihich leads to crashyness).

This patch doesn't fix the problem. The crash occurs when tracking a Scope, but
we shouldn't need to track scopes when we're just sampling opcodes, not
codeblocks. Not retaining Scopes when just opcode sampling will reduce sampling
overhead reducing any instrumentation skew, which is a good thing. As a side
benefit this patch also gets the opcode sampling going again, albeit in a bit of
a lame way. Will come back later with a proper fix from codeblock sampling.

  • JavaScriptCore.exp:
  • bytecode/SamplingTool.cpp: (JSC::compareLineCountInfoSampling): (JSC::SamplingTool::dump):
  • bytecode/SamplingTool.h: (JSC::SamplingTool::SamplingTool):
  • parser/Nodes.cpp: (JSC::ScopeNode::ScopeNode):
01:20 Changeset [43394] by jmalonzo@webkit.org
  • 2 edits in trunk/WebCore

2009-05-08 Jan Michael Alonzo <jmalonzo@webkit.org>

Reviewed by Mark Rowe.

Add missing strings to localizedStrings.js
https://bugs.webkit.org/show_bug.cgi?id=25635

Add the strings "Delete", "Key", "Refresh" and "Value".

  • English.lproj/localizedStrings.js:
00:58 Changeset [43393] by ap@webkit.org
  • 3 edits in trunk/WebCore

2009-05-08 Robert Hogan <robert@roberthogan.net>

Reviewed, tweaked and landed by Alexey Proskuryakov.

https://bugs.webkit.org/show_bug.cgi?id=24992
[Qt] crash at http://browserspy.dk/browser.php

This cannot be easily tested in DRT, because it relies on interaction with QApplication,
but the added assertions guard against re-introducing this issue.

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::didOpenURL): Don't make client calls while the frame is being constructed, because the intermediate state without a document is something we don't want to expose.
  • page/Frame.cpp: (WebCore::Frame::setJSStatusBarText): Assert that the frame has a document, which is an approximation of it being in a consistent state for client calls. (WebCore::Frame::setJSDefaultStatusBarText): Ditto.

05/07/09:

23:47 Changeset [43392] by mrowe@apple.com
  • 23 edits in trunk

Fix <https://bugs.webkit.org/show_bug.cgi?id=25640>.
Bug 25640: Crash on quit in r43384 nightly build on Leopard w/ Safari 4 beta installed

Rubber-stamped by Oliver Hunt.

Roll out r43366 as it removed symbols that Safari 4 Beta uses.

23:37 Changeset [43391] by weinig@apple.com
  • 4 edits in branches/nitro-extreme/JavaScriptCore

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

  • Remove some incorrect code (subtraction is not commutative)
  • Implement basic rightshift.
  • Add FIXMEs for where we need to add more codegen to complete the opcode.
  • jit/JIT.cpp: (JSC::JIT::privateCompileMainPass):
  • jit/JIT.h:
  • jit/JITArithmetic.cpp: (JSC::JIT::emitSub32): (JSC::JIT::emitLeftShift32): (JSC::JIT::emitRightShift32):
23:18 Changeset [43390] by xan@webkit.org
  • 4 edits in trunk

WebCore:

2009-05-08 Xan Lopez <xlopez@igalia.com>

Reviewed by Gustavo Noronha.

Unify scrolling code via adjustments and keys. Use the WebCore
defined constants, since that's what people are most used to at
this point.

  • platform/gtk/ScrollViewGtk.cpp: (WebCore::ScrollView::platformHandleHorizontalAdjustment): (WebCore::ScrollView::platformHandleVerticalAdjustment):

WebKit/gtk:

2009-05-08 Xan Lopez <xlopez@igalia.com>

Reviewed by Gustavo Noronha.

Unify scrolling code via adjustments and keys. Use the WebCore
defined constants, since that's what people are most used to at
this point.

  • ChangeLog:
  • webkit/webkitwebview.cpp: (webkit_web_view_real_move_cursor):
22:58 Changeset [43389] by levin@chromium.org
  • 13 edits in trunk

WebCore:

2009-05-07 David Levin <levin@chromium.org>

Reviewed by NOBODY.
Suggested by Oliver Hunt.

Rolling back http://trac.webkit.org/changeset/43385
because we have to use mac artwork for the underline on OSX.

  • platform/graphics/cg/GraphicsContextCG.cpp:
  • platform/graphics/mac/GraphicsContextMac.mm: (WebCore::createPatternColor): (WebCore::GraphicsContext::drawLineForMisspellingOrBadGrammar):
  • platform/graphics/win/GraphicsContextCGWin.cpp: (WebCore::setCGStrokeColor): (WebCore::spellingPatternColor): (WebCore::grammarPatternColor): (WebCore::GraphicsContext::drawLineForMisspellingOrBadGrammar):

LayoutTests:

2009-05-07 David Levin <levin@chromium.org>

Reviewed by NOBODY.
Suggested by Oliver Hunt.

Rolling back http://trac.webkit.org/changeset/43385
because we have to use mac artwork for the underline on OSX.

  • platform/mac/editing/spelling/inline_spelling_markers-expected.checksum:
  • platform/mac/editing/spelling/inline_spelling_markers-expected.png:
  • platform/mac/editing/spelling/spellcheck-attribute-expected.checksum:
  • platform/mac/editing/spelling/spellcheck-attribute-expected.png:
  • platform/mac/editing/spelling/spelling-expected.checksum:
  • platform/mac/editing/spelling/spelling-expected.png:
  • platform/mac/editing/spelling/spelling-linebreak-expected.checksum:
  • platform/mac/editing/spelling/spelling-linebreak-expected.png:
22:53 Changeset [43388] by weinig@apple.com
  • 2 edits in branches/nitro-extreme/JavaScriptCore

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

Add op_jnless, op_loop_if_less, and op_loop_if_lesseq.

  • jit/JIT.cpp: (JSC::JIT::privateCompileMainPass): (JSC::JIT::privateCompile): Remove breakpoint();
22:27 Changeset [43387] by weinig@apple.com
  • 10 edits in branches/nitro-extreme/JavaScriptCore

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

Initial checkin for JIT support for new number representation. Not all opcodes
are supported yet but JavaScriptCore compiles.

  • JavaScriptCore.xcodeproj/project.pbxproj:
  • bytecode/CodeBlock.cpp: (JSC::CodeBlock::unlinkCallers):
  • jit/JIT.cpp: (JSC::JIT::getConstantOperand): (JSC::JIT::isOperandConstantImmediateInt): (JSC::JIT::emitPutToCallFrameHeader): (JSC::JIT::addSlowCase): (JSC::JIT::addJump): (JSC::JIT::emitJumpSlowToHot): (JSC::JIT::tagFor): (JSC::JIT::payloadFor): (JSC::JIT::emitStoreConstant): (JSC::JIT::emitLoadVirtualRegister): (JSC::JIT::emitStoreVirtualRegister): (JSC::JIT::emitSetReturnValue): (JSC::JIT::privateCompileMainPass): (JSC::JIT::privateCompileSlowCases): (JSC::JIT::privateCompile):
  • jit/JIT.h:
  • jit/JITArithmetic.cpp: (JSC::JIT::emitAdd32): (JSC::JIT::emitAddConstant32): (JSC::JIT::emitAdd32InPlace): (JSC::JIT::emitSub32): (JSC::JIT::emitSubConstant32): (JSC::JIT::emitSub32InPlace): (JSC::JIT::emitMul32): (JSC::JIT::emitMulConstant32): (JSC::JIT::emitMul32InPlace): (JSC::JIT::emitBitAnd32): (JSC::JIT::emitBitAndConstant32): (JSC::JIT::emitBitAnd32InPlace): (JSC::JIT::emitBitOr32): (JSC::JIT::emitBitOrConstant32): (JSC::JIT::emitBitOr32InPlace): (JSC::JIT::emitBitXor32): (JSC::JIT::emitBitXorConstant32): (JSC::JIT::emitBitXor32InPlace):
  • runtime/JSGlobalData.cpp: (JSC::JSGlobalData::JSGlobalData):
  • runtime/JSGlobalData.h:
  • runtime/JSValue.h:
  • wtf/Platform.h:
22:20 Changeset [43386] by weinig@apple.com
  • 3 edits in branches/nitro-extreme/JavaScriptCore

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

Reviewed by Geoffrey Garen.

Add some new MacroAssembler and assembler functions that will be needed shortly.

  • assembler/MacroAssemblerX86Common.h: (JSC::MacroAssemblerX86Common::add32): (JSC::MacroAssemblerX86Common::and32): (JSC::MacroAssemblerX86Common::mul32): (JSC::MacroAssemblerX86Common::neg32): (JSC::MacroAssemblerX86Common::or32): (JSC::MacroAssemblerX86Common::sub32): (JSC::MacroAssemblerX86Common::xor32): (JSC::MacroAssemblerX86Common::branchAdd32): (JSC::MacroAssemblerX86Common::branchMul32): (JSC::MacroAssemblerX86Common::branchSub32):
  • assembler/X86Assembler.h: (JSC::X86Assembler::): (JSC::X86Assembler::addl_rm): (JSC::X86Assembler::andl_mr): (JSC::X86Assembler::andl_rm): (JSC::X86Assembler::andl_im): (JSC::X86Assembler::negl_r): (JSC::X86Assembler::notl_r): (JSC::X86Assembler::orl_rm): (JSC::X86Assembler::orl_im): (JSC::X86Assembler::subl_rm): (JSC::X86Assembler::xorl_mr): (JSC::X86Assembler::xorl_rm): (JSC::X86Assembler::xorl_im): (JSC::X86Assembler::imull_mr):
22:13 Changeset [43385] by levin@chromium.org
  • 13 edits in trunk

WebCore:

2009-05-07 John Grabowski <jrg@chromium.org>

Reviewed by Simon Fraser.

https://bugs.webkit.org/show_bug.cgi?id=25573
Unify use of CG-common routine for drawLineForMisspellingOrBadGrammar.
Cleanup for WebKit, but required for Chromium happiness.

  • platform/graphics/cg/GraphicsContextCG.cpp: (WebCore::spellingPatternColor): (WebCore::grammarPatternColor): (WebCore::GraphicsContext::drawLineForMisspellingOrBadGrammar):
  • platform/graphics/mac/GraphicsContextMac.mm:
  • platform/graphics/win/GraphicsContextCGWin.cpp:

LayoutTests:

2009-05-07 John Grabowski <jrg@chromium.org>

Reviewed by Simon Fraser.

https://bugs.webkit.org/show_bug.cgi?id=25573
Rebaseline of spelling tests for Mac. Tests pass even without this
change but checksums don't match. Non-Mac does not need a new baseline.

  • platform/mac/editing/spelling/inline_spelling_markers-expected.checksum:
  • platform/mac/editing/spelling/inline_spelling_markers-expected.png:
  • platform/mac/editing/spelling/spellcheck-attribute-expected.checksum:
  • platform/mac/editing/spelling/spellcheck-attribute-expected.png:
  • platform/mac/editing/spelling/spelling-expected.checksum:
  • platform/mac/editing/spelling/spelling-expected.png:
  • platform/mac/editing/spelling/spelling-linebreak-expected.checksum:
  • platform/mac/editing/spelling/spelling-linebreak-expected.png:
20:04 Changeset [43384] by kov@webkit.org
  • 3 edits in trunk/JavaScriptCore

2009-05-07 Gustavo Noronha Silva <gns@gnome.org>

Suggested by Oliver Hunt.

Also check for Linux for the special-cased calling convention.

  • jit/JIT.cpp: (JSC::JIT::privateCompileCTIMachineTrampolines):
  • wtf/Platform.h:
19:42 BuildingGtk edited by kov@webkit.org
(diff)
18:58 Changeset [43383] by barraclough@apple.com
  • 2 edits in trunk/JavaScriptCore

2009-05-07 Gavin Barraclough <barraclough@apple.com>

Reviewed by Maciej Stachowiak.

Previously, when appending to an existing string and growing the underlying buffer,
we would actually allocate 110% of the required size in order to give us some space
to expand into. Now we treat strings differently based on their size:

Small Strings (up to 4 pages):
Expand the allocation size to 112.5% of the amount requested. This is largely sicking
to our previous policy, however 112.5% is cheaper to calculate.

Medium Strings (up to 128 pages):
For pages covering multiple pages over-allocation is less of a concern - any unused
space will not be paged in if it is not used, so this is purely a VM overhead. For
these strings allocate 2x the requested size.

Large Strings (to infinity and beyond!):
Revert to our 112.5% policy - probably best to limit the amount of unused VM we allow
any individual string be responsible for.

Additionally, round small allocations up to a multiple of 16 bytes, and medium and
large allocations up to a multiple of page size.

~1.5% progression on Sunspider, due to 5% improvement on tagcloud & 15% on validate.

  • runtime/UString.cpp: (JSC::expandedSize):
18:42 Changeset [43382] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

2009-05-07 Geoffrey Garen <ggaren@apple.com>

Reviewed by Cameron Zwarich.


Fixed a minor sequencing error introduced by recent Parser speedups.

  • runtime/JSGlobalData.cpp: (JSC::JSGlobalData::createNativeThunk): Missed a spot in my last patch.
18:31 Changeset [43381] by darin@apple.com
  • 4 edits
    2 adds in trunk

WebCore:

2009-05-07 Darin Adler <darin@apple.com>

Reviewed by Simon Fraser.

Bug 25575: Registered mutation event listener crashes HTMLMediaElement
https://bugs.webkit.org/show_bug.cgi?id=25575

Test: fast/media/video-controls-with-mutation-event-handler.html

  • rendering/MediaControlElements.cpp: (WebCore::MediaControlTimelineElement::MediaControlTimelineElement): Don't call setAttribute.
  • rendering/RenderMedia.cpp: (WebCore::RenderMedia::createTimeline): Call setAttribute here.

LayoutTests:

2009-05-07 Darin Adler <darin@apple.com>

Reviewed by Simon Fraser.

Bug 25575: Registered mutation event listener crashes HTMLMediaElement
https://bugs.webkit.org/show_bug.cgi?id=25575

  • fast/media/video-controls-with-mutation-event-handler-expected.txt: Added.
  • fast/media/video-controls-with-mutation-event-handler.html: Added.
18:23 Changeset [43380] by simon.fraser@apple.com
  • 3 edits in trunk/WebCore

2009-05-07 Simon Fraser <simon.fraser@apple.com>

Rubber Stamped by Dave Hyatt

Shuffle the data members to minimize padding.

  • rendering/RenderTableSection.cpp: (WebCore::RenderTableSection::RenderTableSection):
  • rendering/RenderTableSection.h:
18:23 Changeset [43379] by simon.fraser@apple.com
  • 3 edits in trunk/WebCore

2009-05-07 Simon Fraser <simon.fraser@apple.com>

Rubber Stamped by Dave Hyatt

Shuffle the data members to make Events 8 bytes smaller in 64-bit.

  • dom/Event.cpp: (WebCore::Event::Event):
  • dom/Event.h:
17:16 Changeset [43378] by bdakin@apple.com
  • 6 edits
    4 adds in trunk

WebCore:

2009-05-07 Eric Seidel <eric@webkit.org>

Reviewed by Beth Dakin.

Fix regression caused by r41469, add test case to prevent it from
happening again.
https://bugs.webkit.org/show_bug.cgi?id=25252


hasLayer() was true during removeOnlyThisLayer()/
updateLayerPositions()
which caused updateLayerPosition()'s walk up the render tree to
include offsets from the layer we were about to remove.


I'm not 100% convinced that this wasn't a bug in
updateLayerPosition() or in RenderBoxModelObject::styleDidChange,
because the layer in question is not the containing block for the
block which gets laid out wrong. But this restores the previous
behavior and adds a test. So the next time someone is in here re-
factoring, they will at least know if they break something.


Test: fast/layers/remove-only-this-layer-update.html

  • rendering/RenderBoxModelObject.cpp: (WebCore::RenderBoxModelObject::destroyLayer):
  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::removeOnlyThisLayer):
  • rendering/RenderObject.cpp: (WebCore::RenderObject::destroy):
  • rendering/RenderWidget.cpp: (WebCore::RenderWidget::destroy):

LayoutTests:

2009-05-07 Eric Seidel <eric@webkit.org>

Reviewed by Beth Dakin.

Fix regression caused by r41469, add test case to prevent it from
happening again.
https://bugs.webkit.org/show_bug.cgi?id=25252

  • fast/layers/remove-only-this-layer-update.html: Added.
  • platform/mac/fast/layers/remove-only-this-layer-update-expected.checksum: Added.
  • platform/mac/fast/layers/remove-only-this-layer-update-expected.png: Added.
  • platform/mac/fast/layers/remove-only-this-layer-update-expected.txt: Added.
17:02 Changeset [43377] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

2009-05-07 Geoffrey Garen <ggaren@apple.com>

Not reviewed.

  • wtf/Platform.h: Reverted an accidental (and performance-catastrophic) change.
17:01 Changeset [43376] by ggaren@apple.com
  • 3 edits in trunk/JavaScriptCore

2009-05-07 Geoffrey Garen <ggaren@apple.com>

Reviewed by Cameron Zwarich.


Fixed a minor sequencing error introduced by recent Parser speedups.

  • parser/Parser.cpp: (JSC::Parser::reparseInPlace): Missed a spot in my last patch.
16:51 Changeset [43375] by ggaren@apple.com
  • 4 edits in trunk/JavaScriptCore

2009-05-07 Geoffrey Garen <ggaren@apple.com>

Reviewed by Cameron Zwarich.


Fixed a minor sequencing error introduced by recent Parser speedups.

  • parser/Parser.cpp: (JSC::Parser::parse):
  • parser/Parser.h: (JSC::Parser::parse): (JSC::Parser::reparse): Shrink the parsedObjects vector after allocating the root node, to avoid leaving a stray node in the vector, since that's a slight memory leak, and it causes problems during JSGlobalData teardown.
  • runtime/JSGlobalData.cpp: (JSC::JSGlobalData::~JSGlobalData): ASSERT that we're not being torn down while we think we're still parsing, since that would cause lots of bad memory references during our destruction.
16:33 Changeset [43374] by ggaren@apple.com
  • 5 edits in trunk/JavaScriptCore

2009-05-07 Geoffrey Garen <ggaren@apple.com>

Reviewed by Cameron Zwarich.


Replaced two more macros with references to the JITStackFrame structure.

  • jit/JIT.cpp: (JSC::JIT::privateCompileMainPass):
  • jit/JITInlineMethods.h: (JSC::JIT::restoreArgumentReference):
  • jit/JITStubs.cpp: (JSC::):
  • jit/JITStubs.h:
16:11 Changeset [43373] by dimich@chromium.org
  • 2 edits in trunk/WebCore

2009-05-07 Dmitry Titov <dimich@chromium.org>

Attempt to fix GTK build.

  • platform/graphics/GlyphPageTreeNode.h: add #include <string.h> to ensure memcpy and memset are defined.
15:52 Changeset [43372] by oliver@apple.com
  • 46 edits in trunk

Improve native call performance

Reviewed by Gavin Barraclough.

Fix the windows build by adding calling convention declarations everywhere,
chose fastcall as that seemed most sensible given we were having to declare
the convention explicitly. In addition switched to fastcall on mac in the
deluded belief that documented fastcall behavior on windows would match
actual its actual behavior.

15:26 Changeset [43371] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

2009-05-07 Geoffrey Garen <ggaren@apple.com>

Not reviewed.


Rolled out a portion of r43352 because it broke 64bit.

  • jit/JITStubs.h:
15:25 Changeset [43370] by dimich@chromium.org
  • 2 edits in trunk/JavaScriptCore

2009-05-07 Dmitry Titov <dimich@chromium.org>

Attempt to fix Win build.

  • jit/JITArithmetic.cpp: (JSC::JIT::compileFastArithSlow_op_jnless):
15:21 Changeset [43369] by kevino@webkit.org
  • 2 edits in trunk/JavaScriptCore

Build fix for functions reaturning ThreadIdentifier.

15:07 Changeset [43368] by mjs@apple.com
  • 2 edits in trunk/JavaScriptCore

2009-05-07 Maciej Stachowiak <mjs@apple.com>

Reviewed by John Honeycutt.


  • enable optimization case im the last patch that I accidentally had disabled.
  • jit/JITArithmetic.cpp: (JSC::JIT::compileFastArithSlow_op_jnless):
14:43 Changeset [43367] by zimmermann@webkit.org
  • 50 edits
    4 deletes in trunk/WebCore

Reviewed by Dave Hyatt.

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

Fix memory/performance regression because of too much form control related abstraction just for WMLs sake.

Remove FormControlElement and FormControlElementWithState base classes, as the overhead is too high for the
gain. HTML has no benefit of that kind of abstraction, so we're going to move the functionality to Element directly.

The functions now living in FormControlElement(WithState) lived in Node/Element/HTMLFormControlElement before.
This patches moves all of them in a central place in Element.h, as virtual functions with an inline default implementation.
To avoid confusion like isEnabled() living on Node, before the creation of the FormControlElement abstraction layer, all
methods are renamed to clarify where they belong to. (Detailed list in ChangeLog)

14:24 Changeset [43366] by dimich@chromium.org
  • 23 edits in trunk

JavaScriptCore:

2009-05-07 Dmitry Titov <dimich@chromium.org>

Reviewed by Alexey Proskuryakov and Adam Roben.

https://bugs.webkit.org/show_bug.cgi?id=25348
Change WTF::ThreadIdentifier to be an actual (but wrapped) thread id, remove ThreadMap.

  • wtf/Threading.h: (WTF::ThreadIdentifier::ThreadIdentifier): (WTF::ThreadIdentifier::isValid): (WTF::ThreadIdentifier::invalidate): (WTF::ThreadIdentifier::platformId): ThreadIdentifier is now a class, containing a PlatformThreadIdentifier and methods that are used across the code on thread ids: construction, comparisons, check for 'valid' state etc. '0' is used as invalid id, which happens to just work with all platform-specific thread id implementations.

All the following files repeatedly reflect the new ThreadIdentifier for each platform.
We remove ThreadMap and threadMapMutex from all of them, remove the functions that
populated/searched/cleared the map and add platform-specific comparison operators
for ThreadIdentifier.

  • wtf/gtk/ThreadingGtk.cpp: (WTF::ThreadIdentifier::operator==): (WTF::ThreadIdentifier::operator!=): (WTF::initializeThreading): (WTF::createThreadInternal): (WTF::waitForThreadCompletion): (WTF::currentThread):
  • wtf/ThreadingNone.cpp: (WTF::ThreadIdentifier::operator==): (WTF::ThreadIdentifier::operator!=):
  • wtf/ThreadingPthreads.cpp: (WTF::ThreadIdentifier::operator==): (WTF::ThreadIdentifier::operator!=): (WTF::initializeThreading): (WTF::createThreadInternal): (WTF::waitForThreadCompletion): (WTF::detachThread): (WTF::currentThread):
  • wtf/qt/ThreadingQt.cpp: (WTF::ThreadIdentifier::operator==): (WTF::ThreadIdentifier::operator!=): (WTF::initializeThreading): (WTF::createThreadInternal): (WTF::waitForThreadCompletion): (WTF::currentThread):
  • wtf/ThreadingWin.cpp: (WTF::ThreadIdentifier::operator==): (WTF::ThreadIdentifier::operator!=): (WTF::initializeThreading): (WTF::createThreadInternal): All the platforms (except Windows) used a sequential counter as a thread ID and mapped it into platform ID. Windows was using native thread id and mapped it into thread handle. Since we can always obtain a thread handle by thread id, createThread now closes the handle. (WTF::waitForThreadCompletion): obtains another one using OpenThread(id) API. If can not obtain a handle, it means the thread already exited. (WTF::detachThread): (WTF::currentThread): (WTF::detachThreadDeprecated): old function, renamed (for Win Safari 4 beta which uses it for now). (WTF::waitForThreadCompletionDeprecated): same. (WTF::currentThreadDeprecated): same. (WTF::createThreadDeprecated): same.
  • bytecode/SamplingTool.h:
  • bytecode/SamplingTool.cpp: Use DEFINE_STATIC_LOCAL for a static ThreadIdentifier variable, to avoid static constructor.
  • JavaScriptCore.exp: export lists - updated the WTF threading functions decorated names since they now take a different type as a parameter.
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def: ditto for Windows, plus added "deprecated" functions that take old parameter type - turns out public beta of Safari 4 uses those, so they need to be kept along for a while.
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore_debug.def: ditto.

WebCore:

2009-05-07 Dmitry Titov <dimich@chromium.org>

Reviewed by Alexey Proskuryakov and Adam Roben.

https://bugs.webkit.org/show_bug.cgi?id=25348
Change WTF::ThreadIdentifier to be an actual (but wrapped) thread id, remove ThreadMap.

Most of the change is in WTF.
Unless noted, all the following files changed to use the new ThreadIdentifier::isValid()
method instead of just doing 'if(m_threadID)' kind of checks, since ThreadIdentifier
is now a class rather then an integer.
Also, there is no need to initialize threadID in constructors to 0 now.

  • dom/XMLTokenizerLibxml2.cpp: (WebCore::libxmlLoaderThread): use DEFINE_STATIC_LOCAL and accessor function for static thread id, since now ThreadIdentifier needs construction and we avoid having global initializers. (WebCore::matchFunc): use the new accessor function. (WebCore::openFunc): ditto. (WebCore::createStringParser): ditto. (WebCore::createMemoryParser): ditto.
  • loader/icon/IconDatabase.cpp: (WebCore::IconDatabase::open):
  • platform/sql/SQLiteDatabase.cpp: (WebCore::SQLiteDatabase::SQLiteDatabase): (WebCore::SQLiteDatabase::close):
  • storage/DatabaseThread.cpp: (WebCore::DatabaseThread::start): (WebCore::DatabaseThread::databaseThread): remove m_threadID from debug output.
  • storage/LocalStorageThread.cpp: (WebCore::LocalStorageThread::start): (WebCore::LocalStorageThread::scheduleImport): (WebCore::LocalStorageThread::scheduleSync): (WebCore::LocalStorageThread::terminate):
  • workers/WorkerThread.cpp: (WebCore::WorkerThread::start): (WebCore::WorkerThread::WorkerThread): (WebCore::WorkerThread::start):

WebKit/win:

2009-05-07 Dmitry Titov <dimich@chromium.org>

Reviewed by Alexey Proskuryakov and Adam Roben.

https://bugs.webkit.org/show_bug.cgi?id=25348
Change WTF::ThreadIdentifier to be an actual (but wrapped) thread id, remove ThreadMap.

Most of the change is in WTF and WebCore.

  • WebKit.vcproj/WebKit.def: replaced decorated names of WTF threading functions with new ones. Also, aliased the old implementations so the public Safari 4 beta can load the old WTF functions which it uses. Next time Safari 4 builds, it will pick up new functions and the deprecated ones can be removed.
  • WebKit.vcproj/WebKit_debug.def: same.
14:21 Changeset [43365] by simon.fraser@apple.com
  • 2 edits in trunk/WebCore

2009-05-07 Simon Fraser <simon.fraser@apple.com>

Rubber Stamped by Dave Hyatt

Shuffle the data members to minimize padding.

  • dom/ClassNames.h:
14:10 Changeset [43364] by simon.fraser@apple.com
  • 5 edits in trunk/WebCore

2009-05-07 Simon Fraser <simon.fraser@apple.com>

Reviewed by Darin Adler

<rdar://problem/6864062> Shrink GlyphPage from 4112 to 2576 bytes in 64-bit
https://bugs.webkit.org/show_bug.cgi?id=25605

Shrink GlyphPage by splitting the array of GlyphData, which has lots
of padding, into separate Glyph and SimpleFontData* arrays.

  • platform/graphics/Font.h: glyphDataForCharacter has to return a GlyphData by value now.
  • platform/graphics/FontFastPath.cpp: (WebCore::Font::glyphDataForCharacter): Return GlyphData by value.
  • platform/graphics/GlyphPageTreeNode.cpp: (WebCore::GlyphPageTreeNode::initializePage): Better encapsulation of GlyphPage, using the new methods.
  • platform/graphics/Font.h:
  • platform/graphics/FontFastPath.cpp: (WebCore::Font::glyphDataForCharacter):
  • platform/graphics/GlyphPageTreeNode.cpp: (WebCore::GlyphPageTreeNode::initializePage):
  • platform/graphics/GlyphPageTreeNode.h: (WebCore::GlyphData::GlyphData): (WebCore::GlyphPage::indexForCharacter): (WebCore::GlyphPage::glyphDataForCharacter): (WebCore::GlyphPage::glyphDataForIndex): (WebCore::GlyphPage::glyphAt): (WebCore::GlyphPage::fontDataForCharacter): (WebCore::GlyphPage::setGlyphDataForCharacter): (WebCore::GlyphPage::setGlyphDataForIndex): (WebCore::GlyphPage::copyFrom): (WebCore::GlyphPage::clear):
13:42 Changeset [43363] by mjs@apple.com
  • 5 edits in trunk/JavaScriptCore

2009-05-07 Maciej Stachowiak <mjs@apple.com>

Reviewed by Sam Weinig.


  • optimize various cases of branch-fused less


1% speedup on SunSpider overall
13% speedup on math-cordic

  • jit/JIT.cpp: (JSC::JIT::privateCompileMainPass): op_loop_if_less: Optimize case of constant as first operand, just as case of constant as second operand. op_jnless: Factored out into compileFastArith_op_jnless. (JSC::JIT::privateCompileSlowCases): op_jnless: Factored out into compileFastArithSlow_op_jnless.
  • jit/JIT.h:
  • jit/JITArithmetic.cpp: (JSC::JIT::compileFastArith_op_jnless): Factored out from main compile loop.
  • Generate inline code for comparison of constant immediate int as first operand to another immediate int, as for loop_if_less

(JSC::JIT::compileFastArithSlow_op_jnless):

  • Generate inline code for comparing two floating point numbers.
  • Generate code for both cases of comparing a floating point number to a constant immediate int.
  • bytecode/CodeBlock.cpp: (JSC::CodeBlock::dump): Fix dumping of op_jnless (tangentially related bugfix).
13:22 Changeset [43362] by ggaren@apple.com
  • 5 edits in trunk/JavaScriptCore

2009-05-07 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Added the return address of a stub function to the JITStackFrame abstraction.

  • jit/JIT.cpp:
  • jit/JIT.h:
  • jit/JITStubs.cpp: (JSC::): (JSC::StackHack::StackHack): (JSC::StackHack::~StackHack): (JSC::returnToThrowTrampoline): (JSC::JITStubs::cti_op_convert_this): (JSC::JITStubs::cti_op_end): (JSC::JITStubs::cti_op_add): (JSC::JITStubs::cti_op_pre_inc): (JSC::JITStubs::cti_timeout_check): (JSC::JITStubs::cti_register_file_check): (JSC::JITStubs::cti_op_loop_if_less): (JSC::JITStubs::cti_op_loop_if_lesseq): (JSC::JITStubs::cti_op_new_object): (JSC::JITStubs::cti_op_put_by_id_generic): (JSC::JITStubs::cti_op_get_by_id_generic): (JSC::JITStubs::cti_op_put_by_id): (JSC::JITStubs::cti_op_put_by_id_second): (JSC::JITStubs::cti_op_put_by_id_fail): (JSC::JITStubs::cti_op_get_by_id): (JSC::JITStubs::cti_op_get_by_id_second): (JSC::JITStubs::cti_op_get_by_id_self_fail): (JSC::JITStubs::cti_op_get_by_id_proto_list): (JSC::JITStubs::cti_op_get_by_id_proto_list_full): (JSC::JITStubs::cti_op_get_by_id_proto_fail): (JSC::JITStubs::cti_op_get_by_id_array_fail): (JSC::JITStubs::cti_op_get_by_id_string_fail): (JSC::JITStubs::cti_op_instanceof): (JSC::JITStubs::cti_op_del_by_id): (JSC::JITStubs::cti_op_mul): (JSC::JITStubs::cti_op_new_func): (JSC::JITStubs::cti_op_call_JSFunction): (JSC::JITStubs::cti_op_call_arityCheck): (JSC::JITStubs::cti_vm_dontLazyLinkCall): (JSC::JITStubs::cti_vm_lazyLinkCall): (JSC::JITStubs::cti_op_push_activation): (JSC::JITStubs::cti_op_call_NotJSFunction): (JSC::JITStubs::cti_op_create_arguments): (JSC::JITStubs::cti_op_create_arguments_no_params): (JSC::JITStubs::cti_op_tear_off_activation): (JSC::JITStubs::cti_op_tear_off_arguments): (JSC::JITStubs::cti_op_profile_will_call): (JSC::JITStubs::cti_op_profile_did_call): (JSC::JITStubs::cti_op_ret_scopeChain): (JSC::JITStubs::cti_op_new_array): (JSC::JITStubs::cti_op_resolve): (JSC::JITStubs::cti_op_construct_JSConstruct): (JSC::JITStubs::cti_op_construct_NotJSConstruct): (JSC::JITStubs::cti_op_get_by_val): (JSC::JITStubs::cti_op_get_by_val_string): (JSC::JITStubs::cti_op_get_by_val_byte_array): (JSC::JITStubs::cti_op_resolve_func): (JSC::JITStubs::cti_op_sub): (JSC::JITStubs::cti_op_put_by_val): (JSC::JITStubs::cti_op_put_by_val_array): (JSC::JITStubs::cti_op_put_by_val_byte_array): (JSC::JITStubs::cti_op_lesseq): (JSC::JITStubs::cti_op_loop_if_true): (JSC::JITStubs::cti_op_load_varargs): (JSC::JITStubs::cti_op_negate): (JSC::JITStubs::cti_op_resolve_base): (JSC::JITStubs::cti_op_resolve_skip): (JSC::JITStubs::cti_op_resolve_global): (JSC::JITStubs::cti_op_div): (JSC::JITStubs::cti_op_pre_dec): (JSC::JITStubs::cti_op_jless): (JSC::JITStubs::cti_op_not): (JSC::JITStubs::cti_op_jtrue): (JSC::JITStubs::cti_op_post_inc): (JSC::JITStubs::cti_op_eq): (JSC::JITStubs::cti_op_lshift): (JSC::JITStubs::cti_op_bitand): (JSC::JITStubs::cti_op_rshift): (JSC::JITStubs::cti_op_bitnot): (JSC::JITStubs::cti_op_resolve_with_base): (JSC::JITStubs::cti_op_new_func_exp): (JSC::JITStubs::cti_op_mod): (JSC::JITStubs::cti_op_less): (JSC::JITStubs::cti_op_neq): (JSC::JITStubs::cti_op_post_dec): (JSC::JITStubs::cti_op_urshift): (JSC::JITStubs::cti_op_bitxor): (JSC::JITStubs::cti_op_new_regexp): (JSC::JITStubs::cti_op_bitor): (JSC::JITStubs::cti_op_call_eval): (JSC::JITStubs::cti_op_throw): (JSC::JITStubs::cti_op_get_pnames): (JSC::JITStubs::cti_op_next_pname): (JSC::JITStubs::cti_op_push_scope): (JSC::JITStubs::cti_op_pop_scope): (JSC::JITStubs::cti_op_typeof): (JSC::JITStubs::cti_op_is_undefined): (JSC::JITStubs::cti_op_is_boolean): (JSC::JITStubs::cti_op_is_number): (JSC::JITStubs::cti_op_is_string): (JSC::JITStubs::cti_op_is_object): (JSC::JITStubs::cti_op_is_function): (JSC::JITStubs::cti_op_stricteq): (JSC::JITStubs::cti_op_to_primitive): (JSC::JITStubs::cti_op_strcat): (JSC::JITStubs::cti_op_nstricteq): (JSC::JITStubs::cti_op_to_jsnumber): (JSC::JITStubs::cti_op_in): (JSC::JITStubs::cti_op_push_new_scope): (JSC::JITStubs::cti_op_jmp_scopes): (JSC::JITStubs::cti_op_put_by_index): (JSC::JITStubs::cti_op_switch_imm): (JSC::JITStubs::cti_op_switch_char): (JSC::JITStubs::cti_op_switch_string): (JSC::JITStubs::cti_op_del_by_val): (JSC::JITStubs::cti_op_put_getter): (JSC::JITStubs::cti_op_put_setter): (JSC::JITStubs::cti_op_new_error): (JSC::JITStubs::cti_op_debug): (JSC::JITStubs::cti_vm_throw):
  • jit/JITStubs.h: (JSC::JITStackFrame::returnAddressSlot):
13:17 Changeset [43361] by darin@apple.com
  • 2 edits in trunk/JavaScriptCore

2009-05-07 Darin Adler <darin@apple.com>

Reviewed by Geoff Garen.

  • parser/Lexer.cpp: (JSC::Lexer::lex): Fix missing braces. This would make us always take the slower case for string parsing and Visual Studio correctly noticed unreachable code.
13:16 Changeset [43360] by dglazkov@chromium.org
  • 2 edits
    2 adds in trunk/WebCore

2009-05-07 Dimitri Glazkov <dglazkov@chromium.org>

Reviewed by Darin Fisher.

https://bugs.webkit.org/show_bug.cgi?id=25625
Implement Image/Option constructors in V8 bindings.

  • bindings/v8/custom/V8DOMWindowCustom.cpp: (WebCore::NAMED_PROPERTY_GETTER): Removed old JS-based code.
  • bindings/v8/custom/V8HTMLImageElementConstructor.cpp: Added.
  • bindings/v8/custom/V8HTMLOptionElementConstructor.cpp: Added.
13:06 Changeset [43359] by christian@webkit.org
  • 2 edits in trunk/WebKit/gtk

2009-05-07 Christian Dywan <christian@twotoasts.de>

Reviewed by Gustavo Noronha.

  • WebCoreSupport/FrameLoaderClientGtk.cpp: (WebKit::FrameLoaderClient::dispatchDidChangeLocationWithinPage): (WebKit::FrameLoaderClient::dispatchDidCommitLoad): Add missing call to notifyStatus in the committed case and a missing property notify.
13:03 Changeset [43358] by darin@apple.com
  • 4 edits in trunk/JavaScriptCore

2009-05-07 Darin Adler <darin@apple.com>

Reviewed by Sam Weinig.

Bug 25589: goto instead of state machine in lexer
https://bugs.webkit.org/show_bug.cgi?id=25589

SunSpider is 0.8% faster.

  • parser/Lexer.cpp: (JSC::Lexer::currentCharacter): Added. (JSC::Lexer::currentOffset): Changed to call currentCharacter for clarity. (JSC::Lexer::setCode): Removed code to set now-obsolete m_skipLineEnd. (JSC::Lexer::shiftLineTerminator): Added. Handles line numbers and the two-character line terminators. (JSC::Lexer::makeIdentifier): Changed to take characters and length rather than a vector, since we now make these directly out of the source buffer when possible. (JSC::Lexer::lastTokenWasRestrKeyword): Added. (JSC::isNonASCIIIdentStart): Broke out the non-inline part. (JSC::isIdentStart): Moved here. (JSC::isNonASCIIIdentPart): Broke out the non-inline part. (JSC::isIdentPart): Moved here. (JSC::singleEscape): Moved here, and removed some unneeded cases. (JSC::Lexer::record8): Moved here. (JSC::Lexer::record16): Moved here. (JSC::Lexer::lex): Rewrote this whole function to use goto and not use a state machine. Got rid of most of the local variables. Also rolled the matchPunctuator function in here. (JSC::Lexer::scanRegExp): Changed to use the new version of isLineTerminator. Clear m_buffer16 after using it instead of before.
  • parser/Lexer.h: Removed State enum, setDone function, nextLine function, lookupKeywordFunction, one of the isLineTerminator functions, m_done data member, m_skipLineEnd data member, and m_state data member. Added shiftLineTerminator function, currentCharacter function, and changed the arguments to the makeIdentifier function. Removed one branch from the isLineTerminator function.
  • runtime/StringPrototype.cpp: (JSC::stringProtoFuncReplace): Streamlined the case where we don't replace anything.
12:36 Changeset [43357] by beidson@apple.com
  • 1 edit in trunk/WebCore/ChangeLog

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

I hate myself for doing this, but need to fix that ChangeLog entry.

  • ChangeLog:
12:29 Changeset [43356] by beidson@apple.com
  • 3 edits in trunk/WebCore

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

Rubberstamped by Darin Adler

  • html/HTMLParser.cpp: Use the correct style of BUILD_ON_* for WebCore.
  • html/HTMLParser.h: Ditto
12:13 Changeset [43355] by hyatt@apple.com
  • 203 edits in trunk

WebCore:

2009-05-07 David Hyatt <hyatt@apple.com>

Restore intrinsic margins to all form controls on Mac and Windows. Some of this regressed in 43007
when textareas were given explicit margins. Some of it had already regressed earlier whenever intrinsic
margins were turned off in themeWin.css.

Reviewed by Beth Dakin.

  • css/html4.css:
  • css/themeWin.css:

LayoutTests:

2009-05-07 David Hyatt <hyatt@apple.com>

Restore intrinsic margins to all form controls on Mac and Windows.

Reviewed by Beth Dakin.

  • fast/forms/text-control-intrinsic-widths-expected.txt:
  • fast/replaced/table-percent-height-text-controls-expected.txt:
  • platform/mac/editing/inserting/4960120-1-expected.checksum:
  • platform/mac/editing/inserting/4960120-1-expected.png:
  • platform/mac/editing/inserting/4960120-1-expected.txt:
  • platform/mac/editing/pasteboard/nested-blocks-with-text-area-expected.checksum:
  • platform/mac/editing/pasteboard/nested-blocks-with-text-area-expected.png:
  • platform/mac/editing/pasteboard/nested-blocks-with-text-area-expected.txt:
  • platform/mac/editing/pasteboard/pasting-tabs-expected.checksum:
  • platform/mac/editing/pasteboard/pasting-tabs-expected.png:
  • platform/mac/editing/pasteboard/pasting-tabs-expected.txt:
  • platform/mac/fast/css/resize-corner-tracking-expected.checksum:
  • platform/mac/fast/css/resize-corner-tracking-expected.png:
  • platform/mac/fast/css/resize-corner-tracking-expected.txt:
  • platform/mac/fast/dom/HTMLTextAreaElement/reset-textarea-expected.checksum:
  • platform/mac/fast/dom/HTMLTextAreaElement/reset-textarea-expected.png:
  • platform/mac/fast/dom/HTMLTextAreaElement/reset-textarea-expected.txt:
  • platform/mac/fast/dynamic/008-expected.checksum:
  • platform/mac/fast/dynamic/008-expected.png:
  • platform/mac/fast/dynamic/008-expected.txt:
  • platform/mac/fast/forms/001-expected.checksum:
  • platform/mac/fast/forms/001-expected.png:
  • platform/mac/fast/forms/basic-textareas-expected.checksum:
  • platform/mac/fast/forms/basic-textareas-expected.png:
  • platform/mac/fast/forms/basic-textareas-expected.txt:
  • platform/mac/fast/forms/form-element-geometry-expected.checksum:
  • platform/mac/fast/forms/form-element-geometry-expected.png:
  • platform/mac/fast/forms/form-element-geometry-expected.txt:
  • platform/mac/fast/forms/linebox-overflow-in-textarea-padding-expected.checksum:
  • platform/mac/fast/forms/linebox-overflow-in-textarea-padding-expected.png:
  • platform/mac/fast/forms/linebox-overflow-in-textarea-padding-expected.txt:
  • platform/mac/fast/forms/listbox-hit-test-zoomed-expected.checksum:
  • platform/mac/fast/forms/listbox-hit-test-zoomed-expected.png:
  • platform/mac/fast/forms/menulist-clip-expected.checksum:
  • platform/mac/fast/forms/menulist-clip-expected.png:
  • platform/mac/fast/forms/menulist-narrow-width-expected.checksum:
  • platform/mac/fast/forms/menulist-narrow-width-expected.png:
  • platform/mac/fast/forms/menulist-option-wrap-expected.checksum:
  • platform/mac/fast/forms/menulist-option-wrap-expected.png:
  • platform/mac/fast/forms/menulist-restrict-line-height-expected.checksum:
  • platform/mac/fast/forms/menulist-restrict-line-height-expected.png:
  • platform/mac/fast/forms/negativeLineHeight-expected.checksum:
  • platform/mac/fast/forms/negativeLineHeight-expected.png:
  • platform/mac/fast/forms/negativeLineHeight-expected.txt:
  • platform/mac/fast/forms/select-baseline-expected.checksum:
  • platform/mac/fast/forms/select-baseline-expected.png:
  • platform/mac/fast/forms/select-style-expected.checksum:
  • platform/mac/fast/forms/select-style-expected.png:
  • platform/mac/fast/forms/textAreaLineHeight-expected.checksum:
  • platform/mac/fast/forms/textAreaLineHeight-expected.png:
  • platform/mac/fast/forms/textAreaLineHeight-expected.txt:
  • platform/mac/fast/forms/textarea-align-expected.checksum:
  • platform/mac/fast/forms/textarea-align-expected.png:
  • platform/mac/fast/forms/textarea-align-expected.txt:
  • platform/mac/fast/forms/textarea-rows-cols-expected.checksum:
  • platform/mac/fast/forms/textarea-rows-cols-expected.png:
  • platform/mac/fast/forms/textarea-rows-cols-expected.txt:
  • platform/mac/fast/forms/textarea-scroll-height-expected.checksum:
  • platform/mac/fast/forms/textarea-scroll-height-expected.png:
  • platform/mac/fast/forms/textarea-scroll-height-expected.txt:
  • platform/mac/fast/forms/textarea-scrollbar-expected.checksum:
  • platform/mac/fast/forms/textarea-scrollbar-expected.png:
  • platform/mac/fast/forms/textarea-scrollbar-expected.txt:
  • platform/mac/fast/forms/textarea-scrolled-type-expected.checksum:
  • platform/mac/fast/forms/textarea-scrolled-type-expected.png:
  • platform/mac/fast/forms/textarea-scrolled-type-expected.txt:
  • platform/mac/fast/forms/textarea-setinnerhtml-expected.checksum:
  • platform/mac/fast/forms/textarea-setinnerhtml-expected.png:
  • platform/mac/fast/forms/textarea-setinnerhtml-expected.txt:
  • platform/mac/fast/forms/textarea-width-expected.checksum:
  • platform/mac/fast/forms/textarea-width-expected.png:
  • platform/mac/fast/forms/textarea-width-expected.txt:
  • platform/mac/fast/overflow/overflow-focus-ring-expected.checksum:
  • platform/mac/fast/overflow/overflow-focus-ring-expected.png:
  • platform/mac/fast/overflow/overflow-x-y-expected.checksum:
  • platform/mac/fast/overflow/overflow-x-y-expected.png:
  • platform/mac/fast/overflow/overflow-x-y-expected.txt:
  • platform/mac/fast/parser/comment-in-textarea-expected.checksum:
  • platform/mac/fast/parser/comment-in-textarea-expected.png:
  • platform/mac/fast/parser/comment-in-textarea-expected.txt:
  • platform/mac/fast/parser/entity-comment-in-textarea-expected.checksum:
  • platform/mac/fast/parser/entity-comment-in-textarea-expected.png:
  • platform/mac/fast/parser/entity-comment-in-textarea-expected.txt:
  • platform/mac/fast/parser/open-comment-in-textarea-expected.checksum:
  • platform/mac/fast/parser/open-comment-in-textarea-expected.png:
  • platform/mac/fast/parser/open-comment-in-textarea-expected.txt:
  • platform/mac/fast/replaced/selection-rect-transform-expected.png:
  • platform/mac/fast/replaced/width100percent-textarea-expected.checksum:
  • platform/mac/fast/replaced/width100percent-textarea-expected.png:
  • platform/mac/fast/replaced/width100percent-textarea-expected.txt:
  • platform/mac/fast/table/003-expected.checksum:
  • platform/mac/fast/table/003-expected.png:
  • platform/mac/fast/table/003-expected.txt:
  • platform/mac/fast/text/international/rtl-white-space-pre-wrap-expected.checksum:
  • platform/mac/fast/text/international/rtl-white-space-pre-wrap-expected.png:
  • platform/mac/fast/text/international/rtl-white-space-pre-wrap-expected.txt:
  • platform/mac/http/tests/navigation/anchor-basic-expected.txt:
  • platform/mac/http/tests/navigation/anchor-frames-expected.checksum:
  • platform/mac/http/tests/navigation/anchor-frames-expected.png:
  • platform/mac/http/tests/navigation/anchor-frames-expected.txt:
  • platform/mac/http/tests/navigation/anchor-goback-expected.checksum:
  • platform/mac/http/tests/navigation/anchor-goback-expected.png:
  • platform/mac/http/tests/navigation/anchor-goback-expected.txt:
  • platform/mac/http/tests/navigation/anchor-subframeload-expected.checksum:
  • platform/mac/http/tests/navigation/anchor-subframeload-expected.png:
  • platform/mac/http/tests/navigation/anchor-subframeload-expected.txt:
  • platform/mac/http/tests/navigation/javascriptlink-basic-expected.checksum:
  • platform/mac/http/tests/navigation/javascriptlink-basic-expected.png:
  • platform/mac/http/tests/navigation/javascriptlink-basic-expected.txt:
  • platform/mac/http/tests/navigation/javascriptlink-frames-expected.checksum:
  • platform/mac/http/tests/navigation/javascriptlink-frames-expected.png:
  • platform/mac/http/tests/navigation/javascriptlink-frames-expected.txt:
  • platform/mac/http/tests/navigation/javascriptlink-goback-expected.checksum:
  • platform/mac/http/tests/navigation/javascriptlink-goback-expected.png:
  • platform/mac/http/tests/navigation/javascriptlink-goback-expected.txt:
  • platform/mac/http/tests/navigation/javascriptlink-subframeload-expected.checksum:
  • platform/mac/http/tests/navigation/javascriptlink-subframeload-expected.png:
  • platform/mac/http/tests/navigation/javascriptlink-subframeload-expected.txt:
  • platform/mac/http/tests/navigation/metaredirect-basic-expected.checksum:
  • platform/mac/http/tests/navigation/metaredirect-basic-expected.png:
  • platform/mac/http/tests/navigation/metaredirect-basic-expected.txt:
  • platform/mac/http/tests/navigation/metaredirect-frames-expected.checksum:
  • platform/mac/http/tests/navigation/metaredirect-frames-expected.png:
  • platform/mac/http/tests/navigation/metaredirect-frames-expected.txt:
  • platform/mac/http/tests/navigation/metaredirect-goback-expected.checksum:
  • platform/mac/http/tests/navigation/metaredirect-goback-expected.png:
  • platform/mac/http/tests/navigation/metaredirect-goback-expected.txt:
  • platform/mac/http/tests/navigation/metaredirect-subframeload-expected.checksum:
  • platform/mac/http/tests/navigation/metaredirect-subframeload-expected.png:
  • platform/mac/http/tests/navigation/metaredirect-subframeload-expected.txt:
  • platform/mac/http/tests/navigation/post-goback2-expected.checksum:
  • platform/mac/http/tests/navigation/post-goback2-expected.png:
  • platform/mac/http/tests/navigation/post-goback2-expected.txt:
  • platform/mac/http/tests/navigation/postredirect-goback2-expected.checksum:
  • platform/mac/http/tests/navigation/postredirect-goback2-expected.png:
  • platform/mac/http/tests/navigation/postredirect-goback2-expected.txt:
  • platform/mac/http/tests/navigation/redirect302-basic-expected.checksum:
  • platform/mac/http/tests/navigation/redirect302-basic-expected.png:
  • platform/mac/http/tests/navigation/redirect302-basic-expected.txt:
  • platform/mac/http/tests/navigation/redirect302-frames-expected.checksum:
  • platform/mac/http/tests/navigation/redirect302-frames-expected.png:
  • platform/mac/http/tests/navigation/redirect302-frames-expected.txt:
  • platform/mac/http/tests/navigation/redirect302-goback-expected.checksum:
  • platform/mac/http/tests/navigation/redirect302-goback-expected.png:
  • platform/mac/http/tests/navigation/redirect302-goback-expected.txt:
  • platform/mac/http/tests/navigation/redirect302-subframeload-expected.checksum:
  • platform/mac/http/tests/navigation/redirect302-subframeload-expected.png:
  • platform/mac/http/tests/navigation/redirect302-subframeload-expected.txt:
  • platform/mac/http/tests/navigation/relativeanchor-basic-expected.txt:
  • platform/mac/http/tests/navigation/relativeanchor-frames-expected.checksum:
  • platform/mac/http/tests/navigation/relativeanchor-frames-expected.png:
  • platform/mac/http/tests/navigation/relativeanchor-frames-expected.txt:
  • platform/mac/http/tests/navigation/relativeanchor-goback-expected.txt:
  • platform/mac/http/tests/navigation/slowmetaredirect-basic-expected.checksum:
  • platform/mac/http/tests/navigation/slowmetaredirect-basic-expected.png:
  • platform/mac/http/tests/navigation/slowmetaredirect-basic-expected.txt:
  • platform/mac/http/tests/navigation/slowtimerredirect-basic-expected.checksum:
  • platform/mac/http/tests/navigation/slowtimerredirect-basic-expected.png:
  • platform/mac/http/tests/navigation/slowtimerredirect-basic-expected.txt:
  • platform/mac/http/tests/navigation/success200-basic-expected.checksum:
  • platform/mac/http/tests/navigation/success200-basic-expected.png:
  • platform/mac/http/tests/navigation/success200-basic-expected.txt:
  • platform/mac/http/tests/navigation/success200-frames-expected.checksum:
  • platform/mac/http/tests/navigation/success200-frames-expected.png:
  • platform/mac/http/tests/navigation/success200-frames-expected.txt:
  • platform/mac/http/tests/navigation/success200-frames-loadsame-expected.checksum:
  • platform/mac/http/tests/navigation/success200-frames-loadsame-expected.png:
  • platform/mac/http/tests/navigation/success200-frames-loadsame-expected.txt:
  • platform/mac/http/tests/navigation/success200-goback-expected.checksum:
  • platform/mac/http/tests/navigation/success200-goback-expected.png:
  • platform/mac/http/tests/navigation/success200-goback-expected.txt:
  • platform/mac/http/tests/navigation/success200-loadsame-expected.checksum:
  • platform/mac/http/tests/navigation/success200-loadsame-expected.png:
  • platform/mac/http/tests/navigation/success200-loadsame-expected.txt:
  • platform/mac/http/tests/navigation/success200-reload-expected.checksum:
  • platform/mac/http/tests/navigation/success200-reload-expected.png:
  • platform/mac/http/tests/navigation/success200-reload-expected.txt:
  • platform/mac/http/tests/navigation/success200-subframeload-expected.checksum:
  • platform/mac/http/tests/navigation/success200-subframeload-expected.png:
  • platform/mac/http/tests/navigation/success200-subframeload-expected.txt:
  • platform/mac/http/tests/navigation/timerredirect-basic-expected.checksum:
  • platform/mac/http/tests/navigation/timerredirect-basic-expected.png:
  • platform/mac/http/tests/navigation/timerredirect-basic-expected.txt:
  • platform/mac/http/tests/navigation/timerredirect-frames-expected.checksum:
  • platform/mac/http/tests/navigation/timerredirect-frames-expected.png:
  • platform/mac/http/tests/navigation/timerredirect-frames-expected.txt:
  • platform/mac/http/tests/navigation/timerredirect-goback-expected.checksum:
  • platform/mac/http/tests/navigation/timerredirect-goback-expected.png:
  • platform/mac/http/tests/navigation/timerredirect-goback-expected.txt:
  • platform/mac/http/tests/navigation/timerredirect-subframeload-expected.checksum:
  • platform/mac/http/tests/navigation/timerredirect-subframeload-expected.png:
  • platform/mac/http/tests/navigation/timerredirect-subframeload-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug194024-expected.checksum:
  • platform/mac/tables/mozilla/bugs/bug194024-expected.png:
  • platform/mac/tables/mozilla/bugs/bug194024-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug30559-expected.checksum:
  • platform/mac/tables/mozilla/bugs/bug30559-expected.png:
  • platform/mac/tables/mozilla/bugs/bug30559-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug30692-expected.txt:
12:09 Changeset [43354] by kevino@webkit.org
  • 5 edits in trunk

wx build fixes for Python extension and DRT.

12:03 Changeset [43353] by beidson@apple.com
  • 4 edits in trunk/WebCore

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

Reviewed by Darin Adler and Alexey Proskuryakov.

<rdar://problem/6863795> Exception occurs in Mail when attempting to create signatures due to <head> element creation

  • dom/Document.cpp: (WebCore::Document::implicitClose): Check shouldCreateImplicitHead() before creating it.
  • html/HTMLParser.cpp: (WebCore::HTMLParser::handleError): Check shouldCreateImplicitHead() before creating it. (WebCore::HTMLParser::bodyCreateErrorCheck): Ditto. (WebCore::shouldCreateImplicitHead): For Tiger/Leopard when running under Mail, the implicit <head> shouldn't be created.
  • html/HTMLParser.h: (WebCore::shouldCreateImplicitHead): Inline implementation for non-Tiger/Leopard platforms
11:45 Changeset [43352] by ggaren@apple.com
  • 3 edits in trunk/JavaScriptCore

2009-05-07 Geoffrey Garen <ggaren@apple.com>

Reviewed by Gavin Barraclough.

Removed a few more special constants, and replaced them with uses of
the JITStackFrame struct.

Removed one of the two possible definitions of VoidPtrPair. The Mac
definition was more elegant, but SunSpider doesn't think it's any
faster, and it's net less elegant to have two ways of doing things.

  • jit/JIT.cpp: (JSC::JIT::privateCompileMainPass): (JSC::JIT::privateCompile):
  • jit/JITStubs.h: (JSC::):
11:44 Changeset [43351] by sfalken@apple.com
  • 2 edits in trunk/WebKitTools

Remove manifest fixup from r42729 to fix clean builds.

  • DumpRenderTree/win/DumpRenderTree.vcproj:
11:35 Changeset [43350] by ggaren@apple.com
  • 1 edit in trunk/JavaScriptCore/ChangeLog

Fixed Radar #

10:48 Changeset [43349] by simon.fraser@apple.com
  • 3 edits in trunk/WebKitLibraries

2009-05-07 Simon Fraser <simon.fraser@apple.com>

Source changes reviewed by Darin Adler

<rdar://problem/6864091> Endcap of media controls slider is fuzzy

  • libWebKitSystemInterfaceLeopard.a:
  • libWebKitSystemInterfaceTiger.a:
10:45 Changeset [43348] by darin@chromium.org
  • 2 edits in trunk/WebCore

2009-05-07 Antony Sargent <asargent@chromium.org>

Reviewed by Darin Fisher.

Fix a memory leak in V8EventListenerList::remove.

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

No new functionality so no new tests.

  • bindings/v8/V8EventListenerList.cpp: (WebCore::V8EventListenerList::remove):
09:41 Changeset [43347] by darin@apple.com
  • 2 edits in trunk/JavaScriptCore

2009-05-07 Darin Adler <darin@apple.com>

  • runtime/ScopeChain.h: (JSC::ScopeChainNode::~ScopeChainNode): Tweak formatting.
09:17 Changeset [43346] by darin@chromium.org
  • 2 edits in trunk/WebCore

2009-05-07 Darin Fisher <darin@chromium.org>

Fix Chromium build bustage.

  • bindings/v8/custom/V8HTMLFormElementCustom.cpp: Add missing HTMLCollection.h include.
09:01 Changeset [43345] by cfleizach@apple.com
  • 5 edits
    2 adds in trunk

Bug 25598: AX: if a radio button has a label and a title, the label is not exposed
https://bugs.webkit.org/show_bug.cgi?id=25598

08:57 Changeset [43344] by darin@chromium.org
  • 2 edits in trunk/WebCore

2009-05-07 Darin Fisher <darin@chromium.org>

Fix Chromium build bustage.

  • bindings/v8/custom/V8HTMLFormElementCustom.cpp: (WebCore::INDEXED_PROPERTY_GETTER): ":" should be "::"
06:59 Changeset [43343] by hausmann@webkit.org
  • 2 edits in trunk/JavaScriptCore

2009-05-07 Simon Hausmann <simon.hausmann@nokia.com>

Reviewed by Tor Arne Vestbø.

Fix the build thread stack base determination build on Symbian,
by moving the code block before PLATFORM(UNIX), which is also
enabled on Symbian builds.

05:36 Changeset [43342] by xan@webkit.org
  • 2 edits in trunk/WebCore

2009-05-07 Xan Lopez <xlopez@igalia.com>

Reviewed by Gustavo Noronha.

https://bugs.webkit.org/show_bug.cgi?id=25610
[GTK] text.caretOffset is reportedly always 0

Use the right function to get the caret offset in an
element. selectionStart() would only work for text
controls (there's even an ASSERT when calculating the selected
text range). Instead just get the selection and get the offset of
the start position.

  • page/gtk/AccessibilityObjectWrapperAtk.cpp:
03:05 Changeset [43341] by oliver@apple.com
  • 3 edits in trunk/JavaScriptCore

Fix crash due to incorrectly using an invalid scopechain

Reviewed by Gavin Barraclough.

stringProtoFuncReplace was checking for an exception on a CachedCall
by asking for the cached callframes exception. Unfortunately this
could crash in certain circumstances as CachedCall does not guarantee
a valid callframe following a call. Even more unfortunately the check
was entirely unnecessary as there is only a single exception slot per
global data, so it was already checked via the initial exec->hadException()
check.

To make bugs like this more obvious, i've added a debug only destructor
to ScopeChainNode that 0's all of its fields. This exposed a crash in
the standard javascriptcore tests.

01:58 Changeset [43340] by vestbo@webkit.org
  • 2 edits in trunk/WebCore

2009-05-07 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>

Reviewed by Simon Hausmann.

[Qt] Fix support for antialiased CSS border-radius

WebKit implements border-radius by drawing a double-size border,
and then letting the clip constrain the border to the right width
and position. This requires support for antialiased clipping, as
well as painting, to get a nice smooth border.

Qt only does antialiased clipping if the anti-alias flag is set
at the time of clipping, so we have to enable this in the method
addInnerRoundedRectClip(), as well as when we draw the border.

Currently the raster-engine is the only Qt paint engine to support
anti-aliased clipping, but the OpenGL and Mac paint engines could
potentially support this in the future.

01:27 Changeset [43339] by barraclough@apple.com
  • 6 edits in trunk/JavaScriptCore

2009-05-07 Gavin Barraclough <barraclough@apple.com>

Reviewed by NOBODY (OOPS!).

Enable op_strcat across += assignments. This patch allows the lhs of a read/modify node
to be included within the concatenation operation, and also modifies the implementation
of the concatenation to attempt to reuse and cat onto the leftmost string, rather than
always allocating a new empty output string to copy into (as was previously the behaviour).

~0.5% progression, due to a 3%-3.5% progression on the string tests (particularly validate).

  • parser/Nodes.cpp: (JSC::BinaryOpNode::emitStrcat): (JSC::emitReadModifyAssignment): (JSC::ReadModifyResolveNode::emitBytecode): (JSC::ReadModifyDotNode::emitBytecode): (JSC::ReadModifyBracketNode::emitBytecode):
  • parser/Nodes.h:
  • runtime/Operations.h: (JSC::concatenateStrings):
  • runtime/UString.cpp: (JSC::UString::reserveCapacity):
  • runtime/UString.h:
00:46 Changeset [43338] by hausmann@webkit.org
  • 2 edits in trunk/JavaScriptCore

2009-05-07 Simon Hausmann <simon.hausmann@nokia.com>

Reviewed by Oliver Hunt.

Fix the build on Windows without JIT: interpreter/RegisterFile.h needs
roundUpAllocationSize, which is protected by #if ENABLED(ASSEMBLER).
Moved the #ifdef down and always offer the function.

00:42 Changeset [43337] by eric@webkit.org
  • 2 edits
    1 add in trunk/WebCore

2009-05-07 Adam Langley <agl@google.com>

Reviewed by Eric Seidel.

Render empty optgroup elements.

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

Currently, optgroup elements which are empty are not rendered. The
HTML specification gives no guidance on this situation.

However, the test for being empty is that they have no children, thus
this will not render:

<optgroup label="test"></optgroup>

while this /will/ render (because of the text node child):

<optgroup label="test"> </optgroup>

This patch will cause both cases to render which matches IE's and
Firefox's behaviour.

The difference only appears when opening the select element and does
not appear in the render tree. Thus, a manual layout-test is required.

  • html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::recalcListItems):
  • manual-tests/optgroup-empty-and-nested.html: Added.
00:38 Changeset [43336] by eric@webkit.org
  • 2 edits in trunk/WebKitSite

Reviewed by Maciej Stachowiak.

Update Contributing instructions after feedback from Julie Parent.
https://bugs.webkit.org/show_bug.cgi?id=25611

  • coding/contributing.html: Add a few more comments on ChangeLogs

05/06/09:

23:48 Changeset [43335] by eric@webkit.org
  • 2 edits in trunk/WebCore

2009-05-06 Julie Parent <jparent@google.com>

Reviewed by Eric Seidel.

Bug 25608: Unused m_frame in ChromiumClipboard.
https://bugs.webkit.org/show_bug.cgi?id=25608

  • platform/chromium/ClipboardChromium.h:

No tests added as this is only removing dead code, no functional changes.

23:36 Changeset [43334] by ggaren@apple.com
  • 4 edits in trunk/JavaScriptCore

2009-05-06 Geoffrey Garen <ggaren@apple.com>

Reviewed by Gavin "++" Barraclough.


Added some abstraction around the JIT stub calling convention by creating
a struct to represent the persistent stack frame JIT code shares with
JIT stubs.


SunSpider reports no change.

  • jit/JIT.h:
  • jit/JITStubs.cpp: (JSC::JITStubs::cti_op_convert_this): (JSC::JITStubs::cti_op_end): (JSC::JITStubs::cti_op_add): (JSC::JITStubs::cti_op_pre_inc): (JSC::JITStubs::cti_timeout_check): (JSC::JITStubs::cti_register_file_check): (JSC::JITStubs::cti_op_loop_if_less): (JSC::JITStubs::cti_op_loop_if_lesseq): (JSC::JITStubs::cti_op_new_object): (JSC::JITStubs::cti_op_put_by_id_generic): (JSC::JITStubs::cti_op_get_by_id_generic): (JSC::JITStubs::cti_op_put_by_id): (JSC::JITStubs::cti_op_put_by_id_second): (JSC::JITStubs::cti_op_put_by_id_fail): (JSC::JITStubs::cti_op_get_by_id): (JSC::JITStubs::cti_op_get_by_id_second): (JSC::JITStubs::cti_op_get_by_id_self_fail): (JSC::JITStubs::cti_op_get_by_id_proto_list): (JSC::JITStubs::cti_op_get_by_id_proto_list_full): (JSC::JITStubs::cti_op_get_by_id_proto_fail): (JSC::JITStubs::cti_op_get_by_id_array_fail): (JSC::JITStubs::cti_op_get_by_id_string_fail): (JSC::JITStubs::cti_op_instanceof): (JSC::JITStubs::cti_op_del_by_id): (JSC::JITStubs::cti_op_mul): (JSC::JITStubs::cti_op_new_func): (JSC::JITStubs::cti_op_call_JSFunction): (JSC::JITStubs::cti_op_call_arityCheck): (JSC::JITStubs::cti_vm_dontLazyLinkCall): (JSC::JITStubs::cti_vm_lazyLinkCall): (JSC::JITStubs::cti_op_push_activation): (JSC::JITStubs::cti_op_call_NotJSFunction): (JSC::JITStubs::cti_op_create_arguments): (JSC::JITStubs::cti_op_create_arguments_no_params): (JSC::JITStubs::cti_op_tear_off_activation): (JSC::JITStubs::cti_op_tear_off_arguments): (JSC::JITStubs::cti_op_profile_will_call): (JSC::JITStubs::cti_op_profile_did_call): (JSC::JITStubs::cti_op_ret_scopeChain): (JSC::JITStubs::cti_op_new_array): (JSC::JITStubs::cti_op_resolve): (JSC::JITStubs::cti_op_construct_JSConstruct): (JSC::JITStubs::cti_op_construct_NotJSConstruct): (JSC::JITStubs::cti_op_get_by_val): (JSC::JITStubs::cti_op_get_by_val_string): (JSC::JITStubs::cti_op_get_by_val_byte_array): (JSC::JITStubs::cti_op_resolve_func): (JSC::JITStubs::cti_op_sub): (JSC::JITStubs::cti_op_put_by_val): (JSC::JITStubs::cti_op_put_by_val_array): (JSC::JITStubs::cti_op_put_by_val_byte_array): (JSC::JITStubs::cti_op_lesseq): (JSC::JITStubs::cti_op_loop_if_true): (JSC::JITStubs::cti_op_load_varargs): (JSC::JITStubs::cti_op_negate): (JSC::JITStubs::cti_op_resolve_base): (JSC::JITStubs::cti_op_resolve_skip): (JSC::JITStubs::cti_op_resolve_global): (JSC::JITStubs::cti_op_div): (JSC::JITStubs::cti_op_pre_dec): (JSC::JITStubs::cti_op_jless): (JSC::JITStubs::cti_op_not): (JSC::JITStubs::cti_op_jtrue): (JSC::JITStubs::cti_op_post_inc): (JSC::JITStubs::cti_op_eq): (JSC::JITStubs::cti_op_lshift): (JSC::JITStubs::cti_op_bitand): (JSC::JITStubs::cti_op_rshift): (JSC::JITStubs::cti_op_bitnot): (JSC::JITStubs::cti_op_resolve_with_base): (JSC::JITStubs::cti_op_new_func_exp): (JSC::JITStubs::cti_op_mod): (JSC::JITStubs::cti_op_less): (JSC::JITStubs::cti_op_neq): (JSC::JITStubs::cti_op_post_dec): (JSC::JITStubs::cti_op_urshift): (JSC::JITStubs::cti_op_bitxor): (JSC::JITStubs::cti_op_new_regexp): (JSC::JITStubs::cti_op_bitor): (JSC::JITStubs::cti_op_call_eval): (JSC::JITStubs::cti_op_throw): (JSC::JITStubs::cti_op_get_pnames): (JSC::JITStubs::cti_op_next_pname): (JSC::JITStubs::cti_op_push_scope): (JSC::JITStubs::cti_op_pop_scope): (JSC::JITStubs::cti_op_typeof): (JSC::JITStubs::cti_op_is_undefined): (JSC::JITStubs::cti_op_is_boolean): (JSC::JITStubs::cti_op_is_number): (JSC::JITStubs::cti_op_is_string): (JSC::JITStubs::cti_op_is_object): (JSC::JITStubs::cti_op_is_function): (JSC::JITStubs::cti_op_stricteq): (JSC::JITStubs::cti_op_to_primitive): (JSC::JITStubs::cti_op_strcat): (JSC::JITStubs::cti_op_nstricteq): (JSC::JITStubs::cti_op_to_jsnumber): (JSC::JITStubs::cti_op_in): (JSC::JITStubs::cti_op_push_new_scope): (JSC::JITStubs::cti_op_jmp_scopes): (JSC::JITStubs::cti_op_put_by_index): (JSC::JITStubs::cti_op_switch_imm): (JSC::JITStubs::cti_op_switch_char): (JSC::JITStubs::cti_op_switch_string): (JSC::JITStubs::cti_op_del_by_val): (JSC::JITStubs::cti_op_put_getter): (JSC::JITStubs::cti_op_put_setter): (JSC::JITStubs::cti_op_new_error): (JSC::JITStubs::cti_op_debug): (JSC::JITStubs::cti_vm_throw):
  • jit/JITStubs.h: (JSC::):
20:38 Changeset [43333] by mitz@apple.com
  • 3 edits
    2 adds in trunk

WebCore:

Reviewed by Simon Fraser and Justin Garcia.

  • fix another part of <rdar://problem/6703873> Triple-click quoted line and type Return creates an extra quoted blank line

Test: editing/inserting/6703873-2.html

  • editing/BreakBlockquoteCommand.cpp: (WebCore::BreakBlockquoteCommand::doApply): Corrected the logic for determining the first node that should go into the new blockquote given the split position: if it is at the end of a container, use the next node after the container. Otherwise, use the child at the position's offset.

LayoutTests:

Reviewed by Simon Fraser and Justin Garcia.

  • test for another part of <rdar://problem/6703873> Triple-click quoted line and type Return creates an extra quoted blank line
  • editing/inserting/6703873-2-expected.txt: Added.
  • editing/inserting/6703873-2.html: Added.
18:23 Changeset [43332] by simon.fraser@apple.com
  • 2 edits in trunk/WebCore

2009-05-06 Simon Fraser <simon.fraser@apple.com>

Rubber-stampted by Eric Seidel

Add braces to clarify logic flow in RenderObject::adjustStyleDifference.
Only affects ACCELERATED_COMPOSITING builds.

  • rendering/RenderObject.cpp: (WebCore::RenderObject::adjustStyleDifference):
17:06 Changeset [43331] by barraclough@apple.com
  • 15 edits in trunk/JavaScriptCore

2009-05-06 Gavin Barraclough <barraclough@apple.com>

Reviewed by Maciej Stachowiak & Darin Adler.

Improve string concatenation (as coded in JS as a sequence of adds).

Detect patterns corresponding to string concatenation, and change the bytecode
generation to emit a new op_strcat instruction. By handling the full set of
additions within a single function we do not need allocate JSString wrappers
for intermediate results, and we can calculate the size of the output string
prior to allocating storage, in order to prevent reallocation of the buffer.

1.5%-2% progression on Sunspider, largely due to a 30% progression on date-format-xparb.

  • bytecode/CodeBlock.cpp: (JSC::CodeBlock::dump):

Add new opcodes.

  • bytecode/Opcode.h:

Add new opcodes.

  • bytecompiler/BytecodeGenerator.cpp: (JSC::BytecodeGenerator::emitStrcat): (JSC::BytecodeGenerator::emitToPrimitive):

Add generation of new opcodes.

  • bytecompiler/BytecodeGenerator.h:

Add generation of new opcodes.

  • interpreter/Interpreter.cpp: (JSC::Interpreter::privateExecute):

Add implmentation of new opcodes.

  • jit/JIT.cpp: (JSC::JIT::privateCompileMainPass): (JSC::JIT::privateCompileSlowCases):

Add implmentation of new opcodes.

  • jit/JITStubs.cpp: (JSC::JITStubs::cti_op_to_primitive): (JSC::JITStubs::cti_op_strcat):

Add implmentation of new opcodes.

  • jit/JITStubs.h:

Add implmentation of new opcodes.

  • parser/Nodes.cpp: (JSC::BinaryOpNode::emitStrcat): (JSC::BinaryOpNode::emitBytecode): (JSC::ReadModifyResolveNode::emitBytecode):

Add generation of new opcodes.

  • parser/Nodes.h: (JSC::ExpressionNode::): (JSC::AddNode::):

Add methods to allow identification of add nodes.

  • parser/ResultType.h: (JSC::ResultType::definitelyIsString): (JSC::ResultType::forAdd):

Fix error in detection of adds that will produce string results.

  • runtime/Operations.h: (JSC::concatenateStrings):

Add implmentation of new opcodes.

  • runtime/UString.cpp: (JSC::UString::appendNumeric):

Add methods to append numbers to an existing string.

  • runtime/UString.h: (JSC::UString::Rep::createEmptyBuffer): (JSC::UString::BaseString::BaseString):

Add support for creating an empty string with a non-zero capacity available in the BaseString.

16:56 Changeset [43330] by kevino@webkit.org
  • 7 edits in trunk

wx build fix, fixes for wx trunk builds.

15:55 Changeset [43329] by levin@chromium.org
  • 2 edits in trunk/WebCore

2009-05-06 Albert J. Wong <ajwong@chromium.org>

Reviewed by Darin Fisher.

https://bugs.webkit.org/show_bug.cgi?id=25597
Fix API drift compile errors that occurred while this was ifdef-ed out.
The two big issues were that RenderObject::element() became
RenderObject::node() and some of the wk* drawing functions had
an extra theme parameter added to the argument list.

  • rendering/RenderThemeChromiumMac.mm: (WebCore::RenderThemeChromiumMac::paintMediaFullscreenButton): (WebCore::RenderThemeChromiumMac::paintMediaMuteButton): (WebCore::RenderThemeChromiumMac::paintMediaPlayButton): (WebCore::RenderThemeChromiumMac::paintMediaSeekBackButton): (WebCore::RenderThemeChromiumMac::paintMediaSeekForwardButton): (WebCore::RenderThemeChromiumMac::paintMediaSliderTrack): (WebCore::RenderThemeChromiumMac::paintMediaSliderThumb):
15:00 Changeset [43328] by levin@chromium.org
  • 3 edits in trunk/WebCore

2009-05-06 Jian Li <jianli@chromium.org>

Reviewed by Dimitri Glazkov.

https://bugs.webkit.org/show_bug.cgi?id=25385
Upstream changes to V8 bindings for supporting nested workers.

  • bindings/v8/WorkerContextExecutionProxy.cpp: (WebCore::WorkerContextExecutionProxy::ToV8Object): (WebCore::WorkerContextExecutionProxy::EventTargetToV8Object):
  • bindings/v8/custom/V8WorkerCustom.cpp: (WebCore::getEventListener): (WebCore::ACCESSOR_SETTER WorkerOnmessage): (WebCore::CALLBACK_FUNC_DECL WorkerAddEventListener):
15:00 Changeset [43327] by levin@chromium.org
  • 2 edits in trunk/WebCore

2009-05-06 Dave Moore <davemoore@google.com>

Reviewed by Dimitri Glazkov.

https://bugs.webkit.org/show_bug.cgi?id=25513
The V8 bindings convert every javascript property to its associated css style
name. It then calls functions that convert that name to an id. This makes
getting or setting css styles on elements slow.

The patch fixes this by caching the results of the transformation, mapping a
javascript property name to its css property id. It then calls the already
public webkit methods that take the id in place of the string property names.

  • bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp:
15:00 Changeset [43326] by levin@chromium.org
  • 2 edits in trunk/WebCore

2009-05-06 Nate Chapin <japhet@google.com>

Reviewed by Dimitri Glazkov.

https://bugs.webkit.org/show_bug.cgi?id=25591
Upstream V8HTMLFormElement from the Chromium repository.

  • bindings/v8/custom/V8HTMLFormElementCustom.cpp: (WebCore::INDEXED_PROPERTY_GETTER HTMLFormElement): Upstreamed from Chromium repository (WebCore::NAMED_PROPERTY_GETTER HTMLFormElement): Changed empty element return case to return notHandledByInterceptor(); (WebCore::CALLBACK_FUNC_DECL HTMLFormElementSubmit): Upstreamed from Chromium repository
14:59 Changeset [43325] by levin@chromium.org
  • 1 edit
    1 add in trunk/WebCore

2009-05-06 Albert J. Wong <ajwong@chromium.org>

Reviewed by Dimitri Glazkov.

https://bugs.webkit.org/show_bug.cgi?id=25595
Upstream V8CanvasPixelArrayCustom from chromium port tree.

  • bindings/v8/V8CanvasPixelArrayCustom.cpp: Added.
14:31 Changeset [43324] by simon.fraser@apple.com
  • 3 edits in trunk/WebCore

2009-05-06 Simon Fraser <simon.fraser@apple.com>

Reviewed by Dan Bernstein

<rdar://problem/6862550> Reduce size of RenderText in 64-bit

Rearrange data members of RenderText so that an int comes
first, to minimize padding.

  • rendering/RenderText.cpp: (WebCore::RenderText::RenderText):
  • rendering/RenderText.h:
14:21 Changeset [43323] by simon.fraser@apple.com
  • 3 edits in trunk/WebCore

2009-05-06 Simon Fraser <simon.fraser@apple.com>

Reviewed by Dan Bernstein

<rdar://problem/6862823> Reduce size of RenderStyle in 64-bit

Rearrange data members of RenderStyle to minimize padding
when building for 64-bit.

  • rendering/style/RenderStyle.cpp: (WebCore::RenderStyle::RenderStyle):
  • rendering/style/RenderStyle.h: (WebCore::):
14:07 Changeset [43322] by darin@chromium.org
  • 2 edits in trunk/WebCore

2009-05-06 Darin Fisher <darin@chromium.org>

Reviewed by Dimitri Glazkov.

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

Fixes Chromium build bustage caused by r43317 (making
RefCountedBase::m_refCount private)

  • page/chromium/AccessibilityObjectWrapper.h: (WebCore::AccessibilityObjectWrapper::AccessibilityObjectWrapper):
12:57 Changeset [43321] by darin@chromium.org
  • 2 edits in trunk/WebCore

2009-05-06 Hin-Chung Lam <hclam@chromium.org>

Reviewed by Darin Fisher.

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

Refactor for MediaPlayerPrivate for Chromium port. Remove
the implementation of MediaPlayerPrivateInferface from it.

12:46 Changeset [43320] by kov@webkit.org
  • 1 edit
    1 add in trunk/WebKit/gtk/po

2009-05-06 Daniel Nylander <po@danielnylander.se>

Rubber-stamped by Gustavo Noronha.

Swedish translation for WebKitGTK+.

  • sv.po: Added.
12:38 Changeset [43319] by kov@webkit.org
  • 5 edits in trunk/WebKit/gtk

2009-05-06 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>

Reviewed by Xan Lopez.

https://bugs.webkit.org/show_bug.cgi?id=24786
WebKitDownload sometimes suggests peculiar filenames

When a download is requested by an ongoing request, use the already
provided response to set the suggested filename for the WebKitDownload
object, if available.

  • WebCoreSupport/FrameLoaderClientGtk.cpp: (WebKit::FrameLoaderClient::download):
  • webkit/webkitdownload.cpp: (_WebKitDownloadPrivate::webkit_download_set_property): (_WebKitDownloadPrivate::webkit_download_get_suggested_filename): (_WebKitDownloadPrivate::webkit_download_set_suggested_filename):
  • webkit/webkitprivate.h:
  • webkit/webkitwebview.cpp:
12:23 Changeset [43318] by sfalken@apple.com
  • 4 edits in trunk

WebKit/win:

2009-05-06 Steve Falkenburg <sfalken@apple.com>

Change default value of WebKitPaintNativeControls to true.


Reviewed by Adam Roben.

  • WebPreferences.cpp: (WebPreferences::initializeDefaultSettings):

WebKitTools:

2009-05-06 Steve Falkenburg <sfalken@apple.com>

Explicitly set WebKitPaintNativeControls to false to allow Windows results to match Mac.

Reviewed by Adam Roben.

  • DumpRenderTree/win/DumpRenderTree.cpp: (resetWebViewToConsistentStateBeforeTesting):
12:15 Changeset [43317] by darin@apple.com
  • 3 edits in trunk/JavaScriptCore

2009-05-06 Darin Adler <darin@apple.com>

Reviewed by Sam Weinig.

Made RefCounted::m_refCount private.

  • runtime/Structure.h: Removed addressOfCount.
  • wtf/RefCounted.h: Made m_refCount private. Added addressOfCount.
11:57 Changeset [43316] by simon.fraser@apple.com
  • 3 edits in trunk/WebCore

2009-05-06 Simon Fraser <simon.fraser@apple.com>

Reviewed by Dave Hyatt, Dan Bernstein

<rdar://problem/6860197> Reduce the size of FontFallbackList in 64-bit

Re-order the data members of FontFallbackList to save 8 bytes when building 64-bit.

  • platform/graphics/FontFallbackList.cpp: (WebCore::FontFallbackList::FontFallbackList):
  • platform/graphics/FontFallbackList.h:
11:47 Changeset [43315] by simon.fraser@apple.com
  • 2 edits in trunk/WebCore

2009-05-06 Simon Fraser <simon.fraser@apple.com>

Reviewed by Darin Adler, Dan Bernstein

<rdar://problem/6860068> Reduce size of InlineBox in 64-bit

Re-order the data members of InlineBox to save 8 bytes when building 64-bit.

  • rendering/InlineBox.h: (WebCore::InlineBox::InlineBox):
11:28 Changeset [43314] by levin@chromium.org
  • 1 edit
    1 add in trunk/WebCore

2009-05-06 David Levin <levin@chromium.org>

Reviewed by Dimitri Glazkov.

https://bugs.webkit.org/show_bug.cgi?id=25588
Adding the custom v8 bindings Document.location.

  • bindings/v8/custom/V8DocumentLocationCustom.cpp: Added.
11:17 Changeset [43313] by darin@apple.com
  • 2 edits in trunk/JavaScriptCore

2009-05-06 Darin Adler <darin@apple.com>

Fixed assertion seen a lot!

  • parser/Nodes.cpp: (JSC::FunctionBodyNode::~FunctionBodyNode): Removed now-bogus assertion.
10:50 Changeset [43312] by kmccullough@apple.com
  • 2 edits in trunk/WebCore

2009-05-06 Kevin McCullough <kmccullough@apple.com>

-Clarified a comment

  • editing/InsertParagraphSeparatorCommand.cpp: (WebCore::InsertParagraphSeparatorCommand::doApply):
10:10 Changeset [43311] by darin@apple.com
  • 9 edits
    1 copy in trunk/JavaScriptCore

2009-05-06 Darin Adler <darin@apple.com>

Working with Sam Weinig.

Redo parse tree constructor optimization without breaking the Windows
build the way I did yesterday. The previous try broke the build by adding
an include of Lexer.h and all its dependencies that had to work outside
the JavaScriptCore project.

  • GNUmakefile.am: Added NodeConstructors.h.
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj: Ditto.
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreCommon.vsprops: Removed byteocde directory -- we no longer are trying to include Lexer.h outside JavaScriptCore.
  • JavaScriptCore.xcodeproj/project.pbxproj: Change SegmentedVector.h and Lexer.h back to internal files. Added NodeConstructors.h.
  • parser/Grammar.y: Added include of NodeConstructors.h. Changed use of ConstDeclNode to use public functions.
  • parser/NodeConstructors.h: Copied from parser/Nodes.h. Just contains the inlined constructors now.
  • parser/Nodes.cpp: Added include of NodeConstructors.h. Moved node constructors into the header. (JSC::FunctionBodyNode::FunctionBodyNode): Removed m_refCount initialization.
  • parser/Nodes.h: Removed all the constructor definitions, and also removed the JSC_FAST_CALL from them since these are all inlined, so the calling convention is irrelevant. Made more things private. Used a data member for operator opcodes instead of a virtual function. Removed the special FunctionBodyNode::ref/deref functions since the default functions are now just as fast.
  • runtime/FunctionConstructor.cpp: (JSC::extractFunctionBody): Fixed types here so we don't typecast until after we do type checking.
08:44 Changeset [43310] by zimmermann@webkit.org
  • 21 edits in trunk/WebCore

Not reviewed. Fix WML enabled builds by including "MappedAttribute.h" in several places.

08:24 Changeset [43309] by kov@webkit.org
  • 2 edits in trunk/LayoutTests

2009-05-06 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>

Disable more new tests.

  • platform/gtk/Skipped:
07:25 Changeset [43308] by xan@webkit.org
  • 2 edits in trunk/WebCore

2009-05-06 Xan Lopez <xlopez@igalia.com>

Reviewed by Gustavo Noronha.

https://bugs.webkit.org/show_bug.cgi?id=25526
[Gtk] Additional support is needed for caret browsing

Emit AtkText::text-selection-changed when the selection changes
and the current selection is of Range (ie, the start and end
positions are different) type. This seems to match what Gecko
does.

  • editing/gtk/SelectionControllerGtk.cpp: (WebCore::SelectionController::notifyAccessibilityForSelectionChange):
07:24 Changeset [43307] by xan@webkit.org
  • 3 edits
    2 adds in trunk/WebCore

2009-05-05 Xan Lopez <xlopez@igalia.com>

Reviewed by Gustavo Noronha.

https://bugs.webkit.org/show_bug.cgi?id=25526
[Gtk] Additional support is needed for caret browsing

Emit AtkText::text-caret-moved when selection changes.

  • GNUmakefile.am:
  • editing/SelectionController.h:
  • editing/gtk/SelectionController.cpp: Added. (WebCore::SelectionController::notifyAccessibilityForSelectionChange):
07:04 Changeset [43306] by zecke@webkit.org
  • 3 edits in trunk/WebCore

2009-05-06 Holger Hans Peter Freyther <zecke@selfish.org>

Reviewed by Gustavo Noronha.

Use mozilla cursors for the previously not implemented
cursors. The manual-tests/cursor.html is looking complete
now.

  • platform/gtk/CursorGtk.cpp: (WebCore::cellCursor): (WebCore::noDropCursor): (WebCore::progressCursor): (WebCore::noneCursor): (WebCore::notAllowedCursor): (WebCore::grabCursor): (WebCore::grabbingCursor):
  • platform/gtk/CursorGtk.h:
07:03 Changeset [43305] by zecke@webkit.org
  • 2 edits in trunk/WebCore

2009-05-06 Holger Hans Peter Freyther <zecke@selfish.org>

Reviewed by Xan Lopez.

Properly indent the header file.

  • platform/gtk/CursorGtk.h:
07:03 Changeset [43304] by zecke@webkit.org
  • 2 edits in trunk/WebCore

2009-05-06 Holger Hans Peter Freyther <zecke@selfish.org>

Reviewed by Gustavo Noronha.

Use the mozilla copyright header. Use MPL1.1/GPL2.0
and LGPL2.1 as the license compared to LGPL2.0.

  • platform/gtk/CursorGtk.h:
07:03 Changeset [43303] by zecke@webkit.org
  • 3 edits in trunk/WebCore

2009-05-06 Holger Hans Peter Freyther <zecke@selfish.org>

Reviewed by Gustavo Noronha.

Move PluginView::invalidateRegion from the
TemporaryLinkStubs to PluginViewGtk.cpp and implement
it with a call to Widget::invalidate() just like
mac is doing. Optimisations would have to be window
system specific.

  • platform/gtk/TemporaryLinkStubs.cpp:
  • plugins/gtk/PluginViewGtk.cpp: (WebCore::PluginView::invalidateRegion):
06:56 Changeset [43302] by jmalonzo@webkit.org
  • 14 edits in trunk/WebKit/gtk

2009-05-06 Jan Michael Alonzo <jmalonzo@webkit.org>

Reviewed by Holger Freyther.

GTK+ API implementation files have bogus extern "C" entries
https://bugs.webkit.org/show_bug.cgi?id=24322

Remove bogus extern "C" from the source files.

  • webkit/webkitdownload.cpp: (DownloadClient::cannotShowURL):
  • webkit/webkiterror.cpp: (webkit_plugin_error_quark):
  • webkit/webkitnetworkrequest.cpp: (webkit_network_request_get_uri):
  • webkit/webkitprivate.cpp: (webkit_init):
  • webkit/webkitversion.cpp: (webkit_micro_version):
  • webkit/webkitwebbackforwardlist.cpp:
  • webkit/webkitwebframe.cpp: (webkit_web_frame_get_load_status):
  • webkit/webkitwebhistoryitem.cpp:
  • webkit/webkitwebinspector.cpp: (webkit_web_inspector_set_inspector_client):
  • webkit/webkitwebnavigationaction.cpp: (webkit_web_navigation_action_get_modifier_state):
  • webkit/webkitwebpolicydecision.cpp: (webkit_web_policy_decision_cancel):
  • webkit/webkitwebsettings.cpp: (webkit_web_settings_get_spell_languages):
  • webkit/webkitwebview.cpp:
  • webkit/webkitwebwindowfeatures.cpp: (webkit_web_window_features_equal):
06:24 Changeset [43301] by eric@webkit.org
  • 2 edits in trunk/LayoutTests

2009-05-06 Eric Seidel <eric@webkit.org>

No review, just fixing my previous broken commit.

Commit correct results for event-function-toString.html

  • fast/events/event-function-toString-expected.txt:
06:20 Changeset [43300] by kov@webkit.org
  • 2 edits in trunk/LayoutTests

2009-05-06 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>

Fixing typo in my last commit.

  • platform/gtk/Skipped:
06:12 Changeset [43299] by kov@webkit.org
  • 2 edits in trunk/LayoutTests

2009-05-06 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>

Disabling failing new tests that do not represent regressions.

  • platform/gtk/Skipped:
06:12 Changeset [43298] by hausmann@webkit.org
  • 2 edits in trunk/WebCore

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

Reviewed by Ariya Hidayat.

Fix the Qt build on Windows.

06:11 Changeset [43297] by hausmann@webkit.org
  • 2 edits in trunk/JavaScriptCore

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

Reviewed by Ariya Hidayat.

Fix the Qt build on Windows.

06:11 Changeset [43296] by hausmann@webkit.org
  • 2 edits in trunk/JavaScriptCore

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

Reviewed by Ariya Hidayat.

Enable the JIT for the Qt build on Windows.

05:24 Changeset [43295] by jmalonzo@webkit.org
  • 4 edits in trunk

2009-05-06 Jan Michael Alonzo <jmalonzo@webkit.org>

Reviewed by Holger Freyther.

Misc fixes to InspectorClientGtk.

  • GNUmakefile.am: Add localizedStrings.js to webinspector_DATA. This prevents copious amounts "Localized string not found" errors in the console

2009-05-06 Jan Michael Alonzo <jmalonzo@webkit.org>

Reviewed by Holger Freyther.

Misc fixes to InspectorClientGtk.

  • WebCoreSupport/InspectorClientGtk.cpp: (WebKit::InspectorClient::createPage): use g_filename_to_uri to get the URI and use web_view_load_uri instead of the deprecated web_view_open method for loading the URI. (WebKit::InspectorClient::localizedStringsURL): implement.
03:40 QtWebKitJournal edited by hausmann@webkit.org
(diff)
03:39 QtWebKitTodo edited by hausmann@webkit.org
(diff)
03:32 Applications using WebKit edited by dan@f-box.org
adding Air Browser (diff)
03:26 Changeset [43294] by hausmann@webkit.org
  • 3 edits in trunk/WebKit/qt

2009-05-05 Kenneth Rohde Christiansen <kenneth.christiansen@openbossa.org>

Reviewed by Simon Hausmann.

Improve behaviour of the QWebElement enclose* functions, to work
similar to the jQuery wrap functions. We now enclose the contents
of the element in the child of the deepest descendant element
within the structure of the enclose element structure given.

03:23 Changeset [43293] by hausmann@webkit.org
  • 2 edits in trunk/WebKit/qt

2009-05-06 Kenneth Rohde Christiansen <kenneth.christiansen@openbossa.org>

Reviewed by Simon Hausmann.

After commit rev @43215, setHtml() without a <head> tag,
automatically adds it, so update our test case to respect this.

02:34 Changeset [43292] by hausmann@webkit.org
  • 4 edits in trunk

JavaScriptCore:

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

Reviewed by Tor Arne Vestbø.

Tweak JavaScriptCore.pri for being able to override the generated sources dir for the
generated_files target.

WebCore:

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

Reviewed by Tor Arne Vestbø.

Tweak WebCore.pro for being able to override the generated sources dir for the
generated_files target.

02:12 Changeset [43291] by hausmann@webkit.org
  • 2 edits in trunk/WebCore

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

Reviewed by Holger Freyther.

Fix the Qt/Windows build, use iface instead of interface to avoid conflict
with VS2005 headers.

01:53 Changeset [43290] by hausmann@webkit.org
  • 2 edits in trunk/WebCore

2009-05-06 Joerg Bornemann <joerg.bornemann@trolltech.com>

Reviewed by Simon Hausmann.

We need to include StringExtras.h on Windows CE to access the strdup function.

01:25 Changeset [43289] by eric@webkit.org
  • 5 edits
    3 adds in trunk

2009-05-06 Soren Gjesse <sgjesse@chromium.org>

Reviewed by Eric Seidel.

Changed the toString behaviour for non document dom node event handlers in the V8 bindings.
https://bugs.webkit.org/show_bug.cgi?id=25544

In the V8 bindings non document dom node event handlers are wrapped in a number of with blocks and uses an inner
function. This causes the default toString on such a handler to return all this wrapper code. As some web sites
use the source of an event handler to create new functions this wrapper code causes compatibility problems.

Create a specific toString function for these handlers which will return a function source compatible with the
source returned by the JSC bindings and other browsers.

Test: fast/events/event-function-toString.html

  • bindings/v8/ScriptEventListener.cpp: (WebCore::createAttributeEventListener):
  • bindings/v8/V8LazyEventListener.cpp: (WebCore::V8LazyEventListener::V8LazyEventListener): (WebCore::V8LazyEventListener::getListenerFunction): (WebCore::V8LazyEventListenerToString): (WebCore::V8LazyEventListener::getWrappedListenerFunction):
  • bindings/v8/V8LazyEventListener.h: (WebCore::V8LazyEventListener::create):
01:20 Changeset [43288] by vestbo@webkit.org
  • 11 edits in trunk

Build QtWebKit as a framework on Mac

This implies both debug and release build by default, unless
one of the --debug or --release config options are passed to
the build-webkit script.

Frameworks can be disabled by passing CONFIG+=webkit_no_framework
to the build-webkit script.

To be able to build both debug and release targets in parallel
we have to use separate output directories for the generated
sources, which is not optimal, but required to avoid race conditions.

An optimization would be to only require this spit-up on Mac.

01:20 Changeset [43287] by vestbo@webkit.org
  • 4 edits in trunk

[Qt] Use $$GENERATED_SOURCES_DIR as output when running bison

A couple of the generators left the bison output file in the source
tree, and then moved it into $$GENERATED_SOURCES_DIR, which did not
work well when building release and debug configurations in parallel.

01:02 Changeset [43286] by mitz@apple.com
  • 3 edits
    2 adds in trunk

WebCore:

Reviewed by Justin Garcia.

  • fix an assertion failure in RemoveNodeCommand() when deleting a <br> between a block and a mail blockquote

Test: editing/deleting/removeNodeCommand-assert.html

  • editing/DeleteSelectionCommand.cpp: (WebCore::DeleteSelectionCommand::mergeParagraphs): Pass the start block to prune() instead of passing m_upstreamStart.node(), because the latter may have been removed already.

LayoutTests:

Reviewed by Justin Garcia.

  • test for an assertion failure in RemoveNodeCommand() when deleting a <br> between a block and a mail blockquote
  • editing/deleting/removeNodeCommand-assert-expected.txt: Added.
  • editing/deleting/removeNodeCommand-assert.html: Added.
00:27 Changeset [43285] by hausmann@webkit.org
  • 3 edits in trunk/WebKit/qt

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

Unreviewed Qt build fix.

Dont' use ENABLE() in Qt API headers, as they are not available when building
against the API.

05/05/09:

23:40 Changeset [43284] by eric@webkit.org
  • 3 edits
    2 deletes in trunk

2009-05-05 Eric Seidel <eric@webkit.org>

No review, roll out only.

Roll out r23072 since it broke layout tests

  • page/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
23:00 Changeset [43283] by eric@webkit.org
  • 66 edits in trunk

2009-05-05 Ben Murdoch <benm@google.com>

Reviewed by Eric Seidel.

Add #if ENABLE(DATABASE) guards around database code so toggling ENABLE_DATABASE off does not break builds.
https://bugs.webkit.org/show_bug.cgi?id=24776

No functional changes, thus no tests.

  • bindings/js/JSCustomSQLStatementCallback.cpp:
  • bindings/js/JSCustomSQLStatementCallback.h:
  • bindings/js/JSCustomSQLStatementErrorCallback.cpp:
  • bindings/js/JSCustomSQLStatementErrorCallback.h:
  • bindings/js/JSCustomSQLTransactionCallback.cpp:
  • bindings/js/JSCustomSQLTransactionCallback.h:
  • bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
  • bindings/js/JSCustomSQLTransactionErrorCallback.h:
  • bindings/js/JSDatabaseCustom.cpp:
  • bindings/js/JSSQLTransactionCustom.cpp:
  • loader/EmptyClients.h:
  • page/ChromeClient.h:
  • storage/ChangeVersionWrapper.cpp:
  • storage/ChangeVersionWrapper.h:
  • storage/Database.cpp: (WebCore::Database::databaseInfoTableName):
  • storage/Database.h:
  • storage/Database.idl:
  • storage/DatabaseTask.cpp:
  • storage/DatabaseTask.h:
  • storage/DatabaseThread.cpp:
  • storage/DatabaseThread.h:
  • storage/DatabaseTracker.cpp:
  • storage/DatabaseTracker.h:
  • storage/DatabaseTrackerClient.h:
  • storage/OriginQuotaManager.cpp:
  • storage/OriginQuotaManager.h:
  • storage/SQLStatement.cpp:
  • storage/SQLStatement.h:
  • storage/SQLTransaction.cpp:
  • storage/SQLTransaction.h:
  • storage/SQLTransaction.idl:
22:49 Changeset [43282] by eric@webkit.org
  • 2 edits in trunk/WebCore

2009-05-05 Jeremy Moskovich <jeremy@chromium.org>

Reviewed by Eric Seidel.

Add some documentation to InlineBox::x(),y().
https://bugs.webkit.org/show_bug.cgi?id=25378

  • rendering/InlineBox.h:
22:47 Changeset [43281] by eric@webkit.org
  • 2 edits in trunk/WebCore

2009-05-05 Laszlo Gombos <laszlo.1.gombos@nokia.com>

Reviewed by Eric Seidel.

Disable all the SVG features for WebKit/Qt if ENABLE_SVG=0
https://bugs.webkit.org/show_bug.cgi?id=24693

  • WebCore.pro:
22:46 Changeset [43280] by eric@webkit.org
  • 3 edits
    2 adds in trunk

2009-05-05 Sankar Aditya Tanguturi <sankaraditya@gmail.com>

Reviewed by Eric Seidel.

Anonymous blocks should not be exposed in accessibility tree.
Part of https://bugs.webkit.org/show_bug.cgi?id=23072

Tests: accessibility/ignore-anonymous-block.html

platform/win/accessibility/document-role.html

  • page/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):Return true for Anonymous blocks. Matching Firefox 2.0.0.14
22:37 Changeset [43279] by eric@webkit.org
  • 5 edits
    2 adds in trunk

2009-05-05 Jungshik Shin <jshin@chromium.org>

Reviewed by Alexey Proskuryakov.

http://bugs.webkit.org/show_bug.cgi?id=25487

For euc-kr and other 8bit Korean encodings
(similar to euc-kr/windows-949), make document.charset return
EUC-KR instead of windows-949. The latter is not recognized by
Korean web servers.

Add domName method to TextEncoding to deal with cases where
our internal encoding name does not match what's widely recognized
by web servers. Currently, the only case is 'windows-949' (internal
name) vs 'EUC-KR'.

Test: fast/encoding/euckr-name.html

  • dom/Document.cpp: (WebCore::Document::encoding): Call TextEncoding.domName() instead of TextEncoding.name().
  • platform/text/TextEncoding.cpp: (WebCore::TextEncoding::domName): For the canonical name 'windows-949', return 'EUC-KR'. Otherwise, just return the canonical name.
  • platform/text/TextEncoding.h:
22:30 Changeset [43278] by eric@webkit.org
  • 3 edits
    3 adds in trunk

2009-05-05 Adam Langley <agl@google.com>

Reviewed by Darin Adler.

Rendering fix for <select> elements.
https://bugs.webkit.org/show_bug.cgi?id=25558

When switching a <select> element from display:none to default
display, we would fail to invalidate the parent's pref widths in some
situations:

When attaching the element, RenderMenuList::updateOptionsWidth would
call setNeedsLayoutAndPrefWidthsRecalc before the parent pointer was
set. This would mark the pref widths as dirty, but not for any parent
objects.

When RenderObjectChildList::appendChildNode later calls
setNeedsLayoutAndPrefWidthsRecalc again, with a valid parent pointer,
nothing would be done because the pref widths were already dirty for.
the RenderMenuList.

  • rendering/RenderMenuList.cpp: (WebCore::RenderMenuList::updateOptionsWidth):
22:23 Changeset [43277] by eric@webkit.org
  • 4 edits in trunk/WebCore

2009-05-05 Antony Sargent <asargent@chromium.org>

Reviewed by Dimitri Glazkov.

Switch V8EventListenerList to use HashTable<T>.
https://bugs.webkit.org/show_bug.cgi?id=25496

This avoids some tricky issues with event listener removal in the
current implementation and has slightly better performance.

No new functionality so no new tests.

  • bindings/v8/V8EventListenerList.cpp: Added V8EventListenerListIterator.
  • bindings/v8/V8EventListenerList.h: (WebCore::V8EventListenerList::size):
  • bindings/v8/WorkerContextExecutionProxy.cpp: (WebCore::WorkerContextExecutionProxy::initContextIfNeeded):
21:50 Changeset [43276] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

2009-05-05 Geoffrey Garen <ggaren@apple.com>

Reviewed by Maciej Stachowiak.


Simplified a bit of codegen.

  • jit/JIT.cpp: (JSC::JIT::privateCompileMainPass):
21:47 Changeset [43275] by darin@chromium.org
  • 3 edits in trunk/WebCore

2009-05-05 Darin Fisher <darin@chromium.org>

Fixing build bustage.

Add some missing includes to fix the Chromium build.

  • bindings/v8/custom/V8DOMWindowCustom.cpp:
  • bindings/v8/custom/V8HTMLDocumentCustom.cpp:
21:25 Changeset [43274] by darin@chromium.org
  • 7 edits
    2 adds in trunk

2009-05-05 Darin Fisher <darin@chromium.org>

Reviewed by Darin Adler.

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

history.{back,forward,go} should always be dispatched asynchronously,
even when the history navigation would just result in scrolling the
page. This matches the behavior of other browsers like IE and FF.

Test: fast/history/back-forward-is-asynchronous.html

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::scheduleHistoryNavigation):
20:20 Changeset [43273] by ggaren@apple.com
  • 6 edits in trunk/JavaScriptCore

2009-05-05 Geoffrey Garen <ggaren@apple.com>

Reviewed by Cameron Zwarich.


Moved all the JIT stub related code into one place.

  • jit/JIT.cpp:
  • jit/JIT.h:
  • jit/JITCode.h:
  • jit/JITStubs.cpp: (JSC::):
  • jit/JITStubs.h:
20:15 Changeset [43272] by aroben@apple.com
  • 2 edits in trunk/LayoutTests

Skip newly-added SVG tests that fail on Windows

See Bug 25583: New SVG regression tests added in r43269 fail on
Windows
<https://bugs.webkit.org/show_bug.cgi?id=25583>

Rubber-stamped in advance by Eric Seidel.

  • platform/win/Skipped: Added the two new SVG tests.
19:20 Changeset [43271] by aroben@apple.com
  • 3 edits in trunk/WebKit/win

Add a call to notify the UI delegate when the WebView gets invalidated

Reviewed by Steve Falkenburg.

  • Interfaces/IWebUIDelegatePrivate.idl: Added webViewDidInvalidate.
  • WebView.cpp: (WebView::addToDirtyRegion): Call webViewDidInvalidate.
18:22 Changeset [43270] by weinig@apple.com
  • 3 edits in trunk/JavaScriptCore

2009-05-05 Sam Weinig <sam@webkit.org>

Try to fix Windows build.

Move Node constructor to the .cpp file.

  • parser/Nodes.cpp:
  • parser/Nodes.h:
18:20 Changeset [43269] by eric@webkit.org
  • 7 edits
    8 adds in trunk

Reviewed by Simon Fraser.

Add an ASSERT(useTransforms) to mapLocalToContainer implementations in SVG.
https://bugs.webkit.org/show_bug.cgi?id=25532
https://bugs.webkit.org/show_bug.cgi?id=25568

Adding this ASSERT exposed a bug in SVGPaintServerPattern::setup
which was causing transformed SVG text when filled/stroked with a
pattern using patternUnits=objectBoundingBox to draw incorrectly.

I fixed the incorrect drawing (by removing the broken code) and added
two test cases to test the fix:

  • svg/transforms/text-with-pattern-inside-transformed-html.xhtml
  • svg/transforms/text-with-pattern-with-svg-transform.svg
  • rendering/RenderSVGRoot.cpp: (WebCore::RenderSVGRoot::mapLocalToContainer):
  • rendering/SVGRenderSupport.cpp: (WebCore::SVGRenderBase::mapLocalToContainer):
  • svg/graphics/SVGPaintServerPattern.cpp: (WebCore::SVGPaintServerPattern::setup):
17:56 Changeset [43268] by darin@apple.com
  • 2 edits in trunk/WebKitTools

2009-05-05 Darin Adler <darin@apple.com>

Try to fix Mac build.

  • DumpRenderTree/AccessibilityUIElement.cpp: (elementAtPointCallback): Initialize x and y.
17:54 Changeset [43267] by bolsinga@apple.com
  • 5 edits
    2 adds in trunk

WebCore:

2009-05-05 Greg Bolsinga <bolsinga@apple.com>

Reviewed by Sam Weinig.

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

Support HTML5 text control input types: email, number, tel, url

Test: fast/html/text-field-input-types.html

  • bindings/objc/DOMHTML.mm: (-[DOMHTMLInputElement _isTextField]): Call HTMLInputElement::isTextField directly.
  • html/HTMLInputElement.cpp: Use the new types where appropriate. (WebCore::HTMLInputElement::setInputType): (WebCore::HTMLInputElement::type): (WebCore::HTMLInputElement::saveState): (WebCore::HTMLInputElement::restoreState): (WebCore::HTMLInputElement::accessKeyAction): (WebCore::HTMLInputElement::rendererIsNeeded): (WebCore::HTMLInputElement::createRenderer): (WebCore::HTMLInputElement::appendFormData): (WebCore::HTMLInputElement::valueWithDefault): (WebCore::HTMLInputElement::storesValueSeparateFromAttribute): (WebCore::HTMLInputElement::defaultEventHandler):
  • html/HTMLInputElement.h: Ditto. (WebCore::HTMLInputElement::): (WebCore::HTMLInputElement::isTextField):

LayoutTests:

2009-05-05 Greg Bolsinga <bolsinga@apple.com>

Reviewed by Sam Weinig.

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

Support HTML5 text control input types: email, number, tel, url

  • fast/html/text-field-input-types-expected.txt: Added.
  • fast/html/text-field-input-types.html: Added.
17:54 Changeset [43266] by darin@apple.com
  • 2 edits in trunk/JavaScriptCore

2009-05-05 Darin Adler <darin@apple.com>

Try to fix Windows build.

  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreCommon.vsprops: Added bytecompiler to the list of directories where the headers get copied.
17:51 Changeset [43265] by kevino@webkit.org
  • 10 edits in trunk

Reviewed by Kevin Ollivier.

Full Keyboard shortcut support.
Implement wxBrowser Cut/Copy/Paste menu items.

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

17:39 Changeset [43264] by darin@apple.com
  • 4 edits in trunk/JavaScriptCore

2009-05-05 Darin Adler <darin@apple.com>

Try to fix Windows build.

Try to fix Mac build.

  • JavaScriptCore.xcodeproj/project.pbxproj: Made SegmentedVector.h private.
17:19 Changeset [43263] by darin@apple.com
  • 2 edits in trunk/JavaScriptCore

2009-05-05 Darin Adler <darin@apple.com>

Try to fix Mac build.

16:22 Changeset [43262] by cmarrin@apple.com
  • 1 edit in trunk/LayoutTests/platform/win/Skipped

I didn't realize that the video-zoom-controls.html test will only succeed when run with Safari 4 shell. So disabling again

16:16 Changeset [43261] by kevino@webkit.org
  • 2 edits in trunk/WebCore

wx build fix for Windows, add missing include.

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

16:11 Changeset [43260] by kevino@webkit.org
  • 5 edits in trunk

Reviewed by Kevin Ollivier.

Have wxWebkit make use of gcc(4 and greater) hidden visibility feature

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

16:09 Changeset [43259] by darin@apple.com
  • 8 edits in trunk/JavaScriptCore

2009-05-05 Darin Adler <darin@apple.com>

Reviewed by Sam Weinig.

Bug 25569: make ParserRefCounted use conventional reference counting
https://bugs.webkit.org/show_bug.cgi?id=25569

SunSpider speedup of about 1.6%.

  • parser/Nodes.cpp: (JSC::NodeReleaser::releaseAllNodes): ALWAYS_INLINE. (JSC::NodeReleaser::adopt): Ditto. (JSC::ParserRefCounted::ParserRefCounted): Removed most of the code. Add the object to a Vector<RefPtr> that gets cleared after parsing. (JSC::ParserRefCounted::~ParserRefCounted): Removed most of the code.
  • parser/Nodes.h: Made ParserRefCounted inherit from RefCounted and made inline versions of the constructor and destructor. Made the Node constructor inline.
  • parser/Parser.cpp: (JSC::Parser::parse): Call globalData->parserObjects.shrink(0) after parsing, where it used to call ParserRefCounted::deleteNewObjects.
  • runtime/JSGlobalData.cpp: (JSC::JSGlobalData::JSGlobalData): Eliminated code to manage the newParserObjects and parserObjectExtraRefCounts. (JSC::JSGlobalData::~JSGlobalData): Ditto.
  • runtime/JSGlobalData.h: Replaced the HashSet and HashCountedSet with a Vector.
  • wtf/PassRefPtr.h: (WTF::PassRefPtr::~PassRefPtr): The most common thing to do with a PassRefPtr in hot code is to pass it and then destroy it once it's set to zero. Help the optimizer by telling it that's true.
16:04 Changeset [43258] by cfleizach@apple.com
  • 16 edits
    2 adds in trunk

Bug 25574: AXImageMap children links don't respond properly to accessibilityHitTest:
https://bugs.webkit.org/show_bug.cgi?id=25574

15:34 Changeset [43257] by christian@webkit.org
  • 2 edits in trunk/WebKitTools

2009-05-06 Christian Dywan <christian@twotoasts.de>

Reviewed by Gustavo Noronha.

http://bugs.webkit.org/show_bug.cgi?id=17066
[GTK] Improve frameloader signals

Update GtkLauncher to use the new load-status and progress properties
instead of the previous loading signals.

  • GtkLauncher/main.c: (update_title): (notify_load_status_cb): (notify_progress_cb): (create_browser): (create_window):
15:34 Changeset [43256] by christian@webkit.org
  • 7 edits in trunk/WebKit/gtk

2009-05-06 Christian Dywan <christian@twotoasts.de>

Reviewed by Gustavo Noronha.

http://bugs.webkit.org/show_bug.cgi?id=17066
[GTK] Improve frameloader signals

Implement load-status and progress properties on the view, as well as
load-status on the frame. This supersedes the different load signals
load-progress-changed, load-committed, load-done, load-started and
load-finished which are not only misnamed but broken by design.

  • WebCoreSupport/FrameLoaderClientGtk.cpp: (WebKit::notifyStatus): (WebKit::FrameLoaderClient::postProgressStartedNotification): (WebKit::FrameLoaderClient::postProgressEstimateChangedNotification): (WebKit::FrameLoaderClient::dispatchDidFinishLoad): (WebKit::FrameLoaderClient::dispatchDidStartProvisionalLoad):
  • webkit/webkitprivate.h:
  • webkit/webkitwebframe.cpp:
  • webkit/webkitwebframe.h:
  • webkit/webkitwebview.cpp:
  • webkit/webkitwebview.h:
15:32 Changeset [43255] by kmccullough@apple.com
  • 3 edits
    5 adds in trunk

WebCore:

2009-05-05 Kevin McCullough <kmccullough@apple.com>

Reviewed by Dan Bernstein.

<rdar://problem/6552129> Select a quote line and paste elsewhere, you
get that line and an extra quoted blank line
<rdar://problem/6609308> Triple-click a quoted header line, copy, paste
onto an empty line makes an extra quoted line

  • When pasting a blockquote with a newline, make sure we put the newline outside of the blockquote so that it is not quoted.
  • editing/InsertParagraphSeparatorCommand.cpp: (WebCore::InsertParagraphSeparatorCommand::doApply):

LayoutTests:

2009-05-05 Kevin McCullough <kmccullough@apple.com>

Reviewed by Dan Bernstein.

<rdar://problem/6552129> Select a quote line and paste elsewhere, you
get that line and an extra quoted blank line
<rdar://problem/6609308> Triple-click a quoted header line, copy, paste
onto an empty line makes an extra quoted line

  • Testing different scenarios where we paste quoted text into a non-quoted area and we do not want a trailing newline to be quoted.
  • editing/pasteboard/paste-blockquote-before-blockquote-expected.txt: Added.
  • editing/pasteboard/paste-blockquote-before-blockquote.html: Added.
  • editing/pasteboard/paste-double-nested-blockquote-before-blockquote-expected.txt: Added.
  • editing/pasteboard/paste-double-nested-blockquote-before-blockquote.html: Added.
  • editing/pasteboard/resources/paste-blockquote-before-blockquote.js: Added. (copyAndPasteNode):
15:04 Changeset [43254] by cmarrin@apple.com
  • 1 edit in trunk/LayoutTests/platform/win/Skipped

Reenabled media test after fixing <rdar://problem/6825079>

15:00 Changeset [43253] by kov@webkit.org
  • 2 edits in trunk/JavaScriptCore

2009-05-05 Xan Lopez <xlopez@igalia.com> and Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>

Reviewed by Oliver Hunt.

Disable the NativeFunctionWrapper for all non-Mac ports for now,
as it is also crashing on Linux/x86.

  • runtime/NativeFunctionWrapper.h:
14:41 Changeset [43252] by kevino@webkit.org
  • 2 edits in trunk/WebKit/wx

Reviewed by Kevin Ollivier.

STATE_CHANGED event is now named LOAD

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

14:37 Changeset [43251] by weinig@apple.com
  • 5 edits in branches/nitro-extreme/JavaScriptCore

2009-05-05 Sam Weinig <sam@webkit.org>

Reviewed by Cameron Zwarich.

Remove the NumberHeap.

  • JavaScriptCore.exp:
  • runtime/Collector.cpp: (JSC::Heap::Heap): (JSC::Heap::destroy): (JSC::Heap::recordExtraCost): (JSC::Heap::heapAllocate): (JSC::Heap::markConservatively): (JSC::Heap::sweep): (JSC::Heap::collect): (JSC::Heap::objectCount): (JSC::Heap::statistics): (JSC::typeName): (JSC::Heap::isBusy):
  • runtime/Collector.h: (JSC::Heap::globalData):
  • runtime/JSCell.h:
13:16 Changeset [43250] by jmalonzo@webkit.org
  • 3 edits in trunk/WebCore

2009-05-05 Jan Michael Alonzo <jmalonzo@webkit.org>

Reviewed by Xan Lopez.

Call moz_gtk_shutdown on RenderThemeGtk destruction.

  • platform/gtk/RenderThemeGtk.cpp: (WebCore::RenderThemeGtk::~RenderThemeGtk):
  • platform/gtk/RenderThemeGtk.h:
12:57 Changeset [43249] by darin@apple.com
  • 2 edits in trunk/WebCore

2009-05-05 Darin Adler <darin@apple.com>

Reviewed by Steve Falkenburg.

<rdar://problem/6858340> REGRESSION: can't drag local HTML files into Safari because CFURLCreateWithFileSystemPath inserts "localhost"

  • platform/win/ClipboardUtilitiesWin.cpp: (WebCore::urlFromPath): Remove localhost.
12:19 Changeset [43248] by pkasting@chromium.org
  • 2 edits in trunk/WebCore

2009-05-05 Peter Kasting <pkasting@google.com>

Reviewed by Brady Eidson.

Safety-check m_documentLoader before dereferencing. While it seems
unlikely this could fail (as Safari 3 shipped without this),
technically almost any call can change or reset m_documentLoader.

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::receivedFirstData):
12:05 Changeset [43247] by sfalken@apple.com
  • 3 edits in trunk/JavaScriptCore

Fix build.

11:16 Changeset [43246] by mitz@apple.com
  • 2 edits in trunk/WebCore
  • Tiger build fix
  • css/CSSComputedStyleDeclaration.cpp: (WebCore::toCSSIdentifier):
10:47 Changeset [43245] by mitz@apple.com
  • 2 edits in trunk

Add Bugzilla links

10:46 Changeset [43244] by pkasting@chromium.org
  • 2 edits in trunk/WebCore

2009-05-05 Peter Kasting <pkasting@google.com>

Reviewed by Eric Seidel.

https://bugs.webkit.org/show_bug.cgi?id=25303
No need to ref the internal buffer inside the Skia ImageDecoder.

  • platform/image-decoders/skia/ImageDecoder.h: (WebCore::RGBA32Buffer::RGBA32Buffer): (WebCore::RGBA32Buffer::operator=): (WebCore::RGBA32Buffer::clear): (WebCore::RGBA32Buffer::copyBitmapData): (WebCore::RGBA32Buffer::bitmap): (WebCore::RGBA32Buffer::setSize): (WebCore::RGBA32Buffer::width): (WebCore::RGBA32Buffer::height): (WebCore::RGBA32Buffer::hasAlpha): (WebCore::RGBA32Buffer::setStatus): (WebCore::RGBA32Buffer::setHasAlpha): (WebCore::RGBA32Buffer::setRGBA):
10:33 Changeset [43243] by mitz@apple.com
  • 20 edits in trunk

WebCore:

Reviewed by Darin Adler.

  • fix <rdar://problem/5760774> Replying to a Mail message that contains fixed width text can change the size of the text

Covered by existing tests: editing/pasteboard/5027857.html

editing/pasteboard/paste-pre-002.html

  • css/CSSComputedStyleDeclaration.cpp: (WebCore::CSSComputedStyleDeclaration::getFontSizeCSSValuePreferringKeyword): Added. If the font-size is keyword-based, returns the keyword value instead of the pixel size. (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): If font-family is a generic family, return the generic family instead of the the internal string -webkit-[serif|sans-serif|cursive|fantasy |monospace]. (WebCore::CSSComputedStyleDeclaration::copyInheritableProperties): For the font-size property, prefer a keyword value over a pixel size.
  • css/CSSComputedStyleDeclaration.h:
  • editing/ApplyStyleCommand.cpp: (WebCore::StyleChange::currentlyHasStyle): For the font-size property, call getFontSizeCSSValuePreferringKeyword().
  • platform/graphics/FontDescription.h: (WebCore::FontDescription::keywordSize): Changed the return type to unsigned. (WebCore::FontDescription::setKeywordSize): Changed the parameter type to unsigned. (WebCore::FontDescription::m_keywordSize): Changed the type of this 4-bit field to unsigned, because it takes values as high as 8.

LayoutTests:

Reviewed by Darin Adler.

  • updated results for <rdar://problem/5760774> Replying to a Mail message that contains fixed width text can change the size of the text
  • editing/execCommand/19089-expected.txt:
  • editing/execCommand/5770834-1-expected.txt:
  • platform/mac/editing/deleting/delete-br-011-expected.txt:
  • platform/mac/editing/deleting/delete-select-all-001-expected.txt:
  • platform/mac/editing/execCommand/remove-formatting-2-expected.txt:
  • platform/mac/editing/pasteboard/5027857-expected.checksum:
  • platform/mac/editing/pasteboard/5027857-expected.png:
  • platform/mac/editing/pasteboard/5027857-expected.txt:
  • platform/mac/editing/pasteboard/paste-pre-002-expected.checksum:
  • platform/mac/editing/pasteboard/paste-pre-002-expected.png:
  • platform/mac/editing/pasteboard/paste-pre-002-expected.txt:
  • platform/mac/editing/style/block-style-004-expected.txt:
  • platform/mac/editing/style/block-style-005-expected.txt:
  • platform/mac/editing/style/block-style-006-expected.txt:
09:41 Changeset [43242] by oliver@apple.com
  • 4 edits in trunk

Fix http/tests/misc/DOMContentLoaded-event.html

Reviewed by Maciej Stachowiak

The native call performance improvement removed a few places where we
unintentionally performed a toThisObject conversion. This patch updates
the bindings codegen to not rely on this bug.

09:39 Changeset [43241] by zecke@webkit.org
  • 2 edits in trunk/WebCore

[GTK] Implement WebCore::directoryName

09:21 Changeset [43240] by xan@webkit.org
  • 2 edits in trunk/WebKit/gtk

2009-05-05 Xan Lopez <xlopez@igalia.com>

Reviewed by Holger Freyther.

Fix memory leaks.

  • WebCoreSupport/EditorClientGtk.cpp: (WebKit::EditorClient::checkSpellingOfString):
08:58 Changeset [43239] by aroben@apple.com
  • 2 edits in trunk/WebKitTools

Don't use pdevenv when building with VC++ Express

Fixes Bug 25308: REGRESSION (r42182): Build fails after following
build instructions on webkit.org fail when using VC++ Express
<https://bugs.webkit.org/show_bug.cgi?id=25308>

Reviewed by Eric Seidel.

  • Scripts/webkitdirs.pm: (setupCygwinEnv): When Visual Studio is installed, set $vcBuildPath to point to pdevenv. When VC++ Express is installed, set $vcBuildPath to point to VC++ Express, as before. (buildVisualStudioProject): Use $vcBuildPath to build instead of hard-coding pdevenv.
08:49 Changeset [43238] by eric@webkit.org
  • 1 edit
    2 adds in trunk/LayoutTests

Reviewed by Adam Roben.

Add test case to cover V8 crasher (which JSC does not share).
https://bugs.webkit.org/show_bug.cgi?id=25550

  • svg/custom/polyline-points-crash-expected.txt: Added.
  • svg/custom/polyline-points-crash.html: Added.
08:41 Changeset [43237] by eric@webkit.org
  • 4 edits
    2 adds in trunk

Reviewed by Adam Roben.

Fix mappedAttributes() access without NULL check
https://bugs.webkit.org/show_bug.cgi?id=25553

SVGStyledElement::getPresentationAttribute was using mappedAttributes()
without checking for NULL.

HTMLInputElement::setInputType also doesn't NULL check, but I was not
able to get it to crash with a test case so I just added an ASSERT.

  • html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::setInputType):
  • svg/SVGStyledElement.cpp: (WebCore::SVGStyledElement::getPresentationAttribute):
08:36 QtWebKitJournal edited by hausmann@webkit.org
(diff)
08:23 QtWebKitTodo edited by hausmann@webkit.org
(diff)
08:20 Changeset [43236] by hausmann@webkit.org
  • 3 edits
    3 adds in trunk/WebKit/qt

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

Reviewed by Tor Arne Vestbø.

Various improvements to the class documentation, including a simple snippet for QWebElement.

06:50 Changeset [43235] by oliver@apple.com
  • 3 edits in trunk/JavaScriptCore

Make windows work again

06:48 Changeset [43234] by eric@webkit.org
  • 1 edit
    6 adds in trunk/LayoutTests

Reviewed by Maciej Stachowiak.

Add a testcase using SVG in HTML with CSS transforms
https://bugs.webkit.org/show_bug.cgi?id=23112

We currently fail the <text> section of this test but pass the path and image sections.

  • platform/mac/svg/transforms/animated-path-inside-transformed-html-expected.checksum: Added.
  • platform/mac/svg/transforms/animated-path-inside-transformed-html-expected.png: Added.
  • platform/mac/svg/transforms/animated-path-inside-transformed-html-expected.txt: Added.
  • svg/transforms/animated-path-inside-transformed-html.xhtml: Added.
06:45 Changeset [43233] by zecke@webkit.org
  • 2 edits in trunk/WebCore

[GTK] Implement WebCore::imageTitle

06:25 Changeset [43232] by oliver@apple.com
  • 2 edits in trunk/JavaScriptCore

Windows debug build fix

05:44 Changeset [43231] by oliver@apple.com
  • 2 edits in trunk/JavaScriptCore

Hopefully the last of the build fixes

05:31 Changeset [43230] by oliver@apple.com
  • 3 edits in trunk/JavaScriptCore

Fix build failure caused by other build fix

05:28 Changeset [43229] by oliver@apple.com
  • 3 edits in trunk/JavaScriptCore

Yet more windows build fixes.

05:22 Changeset [43228] by oliver@apple.com
  • 2 edits in trunk/JavaScriptCore

More windows build fixes.

05:16 Changeset [43227] by oliver@apple.com
  • 3 edits in trunk/JavaScriptCore

More build fixes

05:11 Changeset [43226] by oliver@apple.com
  • 6 edits in trunk/JavaScriptCore

Buildfix: Now include JSFunction.h basically everywhere we include PrototypeFunction.h

05:05 Changeset [43225] by oliver@apple.com
  • 3 edits in trunk/JavaScriptCore

Build fixes

05:02 Changeset [43224] by oliver@apple.com
  • 2 edits in trunk/JavaScriptCore

More build fixes

04:58 Changeset [43223] by oliver@apple.com
  • 2 edits in trunk/JavaScriptCore

Windows build fix

04:52 Changeset [43222] by oliver@apple.com
  • 7 edits in trunk/JavaScriptCore

Windows build fix

04:42 Changeset [43221] by oliver@apple.com
  • 1 edit
    1 add in trunk/JavaScriptCore

Add missing file

04:34 Changeset [43220] by oliver@apple.com
  • 39 edits
    2 adds in trunk

Bug 25559: Improve native function call performance
<https://bugs.webkit.org/show_bug.cgi?id=25559>

Reviewed by Gavin Barraclough

In order to cache calls to native functions we now make the standard
prototype functions use a small assembly thunk that converts the JS
calling convention into the native calling convention. As this is
only beneficial in the JIT we use the NativeFunctionWrapper typedef
to alternate between PrototypeFunction and JSFunction to keep the
code sane. This change from PrototypeFunction to NativeFunctionWrapper
is the bulk of this patch.

03:23 Changeset [43219] by hausmann@webkit.org
  • 5 edits in trunk

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

Reviewed by Ariya Hidayat.

Make convertValueToQVariant more robust against null JSValues.

Don't require the caller to do the null check.

02:10 Changeset [43218] by eric@webkit.org
  • 3 edits in trunk/WebCore

No review, just a revert.

Roll out http://trac.webkit.org/changeset/43213 as it caused 4 tests to crash.

  • rendering/RenderSVGRoot.cpp: (WebCore::RenderSVGRoot::mapLocalToContainer):
  • rendering/SVGRenderSupport.cpp: (WebCore::SVGRenderBase::mapLocalToContainer):
01:59 Changeset [43217] by vestbo@webkit.org
  • 2 edits in trunk/WebKitTools

2009-05-05 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>

Rubber-stamped by Simon Hausmann.

Mention --qt as an option in the build-webkit help

01:58 Changeset [43216] by barraclough@apple.com
  • 2 edits in trunk/JavaScriptCore

2009-05-05 Gavin Barraclough <barraclough@apple.com>

Reviewed by Oliver Hunt.

For convenience, let the sampling flags tool clear multiple flags at once.

  • jsc.cpp: (GlobalObject::GlobalObject): (functionSetSamplingFlags): (functionClearSamplingFlags):
01:52 Changeset [43215] by ap@webkit.org
  • 391 edits
    2 adds in trunk

Reviewed by Dave Hyatt.

<rdar://problem/6576889> REGRESSION (r35185): Cannot watch Flash movies on omg.yahoo.com

The problem was caused by missing <head> element - we used to create it when moving a
misplaced <style> element, but we now handle those in place. Other browsers always create
a <head> element.

There is no guarantee that a <head> element always exists - first, it can be removed with
removeChild or innerHTML, and also, we don't currently create it for frameset documents, or
for manually created ones (e.g. ImageDocument).

Test: fast/parser/head-element-for-yahoo-player.html

WebKit:

  • dom/Document.cpp: (WebCore::Document::implicitClose): Create a <head> element for about:blank. A removed comment talked about rdar://3758785, but that problem doesn't re-occur even if this code is removed completely.
  • html/HTMLHtmlElement.cpp: (WebCore::HTMLHtmlElement::checkDTD): No longer allow <script> elements as children of <html>. This isn't directly related to this bug, but it was easier to fix both at once (IE and Firefox both don't allow such mispositioned <script> elements).
  • html/HTMLParser.cpp: (WebCore::HTMLParser::handleError): Move <script> to <head> if <body> hasn't been created yet. Create a <head> it a <body> is created implicitly to contain some other element. (WebCore::HTMLParser::bodyCreateErrorCheck): Ensure that a <head> exists when <body> is explicitly present in source. (WebCore::HTMLParser::createHead): Do the work even if <html> element hasn't been created yet.

LayoutTests:

  • fast/parser/head-element-for-yahoo-player-expected.txt: Added.
  • fast/parser/head-element-for-yahoo-player.html: Added. Test the regression case (a misplaced <style> that used to create <head> implicitly).
  • editing/selection/select-all-005.html: Use a new index when selecting the body.
  • fast/dom/Document/document-write-doctype-expected.txt:
  • fast/dom/Document/resources/document-write-doctype.js: Removed checks for "Gecko quirk" of implicitly adding HEAD - that not a quirk, but standard behavior per HTML5.
  • editing/execCommand/create-list-1-expected.txt:
  • platform/mac/editing/deleting/4845371-expected.txt:
  • platform/mac/editing/deleting/4866671-expected.txt:
  • platform/mac/editing/deleting/4875189-expected.txt:
  • platform/mac/editing/deleting/5026848-1-expected.txt:
  • platform/mac/editing/deleting/5026848-2-expected.txt:
  • platform/mac/editing/deleting/5026848-3-expected.txt:
  • platform/mac/editing/deleting/5032066-expected.txt:
  • platform/mac/editing/deleting/5091898-expected.txt:
  • platform/mac/editing/deleting/5099303-expected.txt:
  • platform/mac/editing/deleting/5115601-expected.txt:
  • platform/mac/editing/deleting/5126166-expected.txt:
  • platform/mac/editing/deleting/5156801-2-expected.txt:
  • platform/mac/editing/deleting/5168598-expected.txt:
  • platform/mac/editing/deleting/5272440-expected.txt:
  • platform/mac/editing/deleting/5300379-expected.txt:
  • platform/mac/editing/deleting/5390681-expected.txt:
  • platform/mac/editing/deleting/5408255-expected.txt:
  • platform/mac/editing/deleting/5433862-2-expected.txt:
  • platform/mac/editing/deleting/5483370-expected.txt:
  • platform/mac/editing/deleting/delete-at-start-or-end-expected.txt:
  • platform/mac/editing/deleting/delete-block-table-expected.txt:
  • platform/mac/editing/deleting/delete-hr-expected.txt:
  • platform/mac/editing/deleting/delete-mixed-editable-content-001-expected.txt:
  • platform/mac/editing/deleting/delete-to-select-table-expected.txt:
  • platform/mac/editing/deleting/deletionUI-single-instance-expected.txt:
  • platform/mac/editing/deleting/merge-endOfParagraph-expected.txt:
  • platform/mac/editing/deleting/merge-no-br-expected.txt:
  • platform/mac/editing/deleting/merge-whitespace-pre-expected.txt:
  • platform/mac/editing/execCommand/4641880-1-expected.txt:
  • platform/mac/editing/execCommand/4641880-2-expected.txt:
  • platform/mac/editing/execCommand/4747450-expected.txt:
  • platform/mac/editing/execCommand/4786404-1-expected.txt:
  • platform/mac/editing/execCommand/4786404-2-expected.txt:
  • platform/mac/editing/execCommand/4916402-expected.txt:
  • platform/mac/editing/execCommand/4916541-expected.txt:
  • platform/mac/editing/execCommand/4916583-expected.txt:
  • platform/mac/editing/execCommand/4920488-expected.txt:
  • platform/mac/editing/execCommand/4920742-1-expected.txt:
  • platform/mac/editing/execCommand/4924441-expected.txt:
  • platform/mac/editing/execCommand/5049671-expected.txt:
  • platform/mac/editing/execCommand/5080333-1-expected.txt:
  • platform/mac/editing/execCommand/5080333-2-expected.txt:
  • platform/mac/editing/execCommand/5119244-expected.txt:
  • platform/mac/editing/execCommand/5120591-expected.txt:
  • platform/mac/editing/execCommand/5136770-expected.txt:
  • platform/mac/editing/execCommand/5142012-1-expected.txt:
  • platform/mac/editing/execCommand/5142012-2-expected.txt:
  • platform/mac/editing/execCommand/5142012-3-expected.txt:
  • platform/mac/editing/execCommand/5144139-1-expected.txt:
  • platform/mac/editing/execCommand/5164796-expected.txt:
  • platform/mac/editing/execCommand/5207369-expected.txt:
  • platform/mac/editing/execCommand/5210032-expected.txt:
  • platform/mac/editing/execCommand/5432254-1-expected.txt:
  • platform/mac/editing/execCommand/5432254-2-expected.txt:
  • platform/mac/editing/execCommand/5481523-expected.txt:
  • platform/mac/editing/execCommand/5482524-expected.txt:
  • platform/mac/editing/execCommand/5569741-expected.txt:
  • platform/mac/editing/execCommand/5573879-expected.txt:
  • platform/mac/editing/execCommand/5700414-1-expected.txt:
  • platform/mac/editing/execCommand/5700414-2-expected.txt:
  • platform/mac/editing/execCommand/insert-list-empty-div-expected.txt:
  • platform/mac/editing/input/5576619-expected.txt:
  • platform/mac/editing/inserting/12882-expected.txt:
  • platform/mac/editing/inserting/4840662-expected.txt:
  • platform/mac/editing/inserting/4875189-1-expected.txt:
  • platform/mac/editing/inserting/4875189-2-expected.txt:
  • platform/mac/editing/inserting/4959067-expected.txt:
  • platform/mac/editing/inserting/4960120-1-expected.txt:
  • platform/mac/editing/inserting/4960120-2-expected.txt:
  • platform/mac/editing/inserting/5002441-expected.txt:
  • platform/mac/editing/inserting/5058163-2-expected.txt:
  • platform/mac/editing/inserting/5156401-2-expected.txt:
  • platform/mac/editing/inserting/5549929-2-expected.txt:
  • platform/mac/editing/inserting/5549929-3-expected.txt:
  • platform/mac/editing/inserting/5607069-2-expected.txt:
  • platform/mac/editing/inserting/5607069-3-expected.txt:
  • platform/mac/editing/inserting/editable-html-element-expected.txt:
  • platform/mac/editing/inserting/editable-inline-element-expected.txt:
  • platform/mac/editing/inserting/edited-whitespace-1-expected.txt:
  • platform/mac/editing/inserting/editing-empty-divs-expected.txt:
  • platform/mac/editing/inserting/typing-tab-designmode-forms-expected.txt:
  • platform/mac/editing/pasteboard/4806874-expected.txt:
  • platform/mac/editing/pasteboard/4861080-expected.txt:
  • platform/mac/editing/pasteboard/4944770-1-expected.txt:
  • platform/mac/editing/pasteboard/4944770-2-expected.txt:
  • platform/mac/editing/pasteboard/4947130-expected.txt:
  • platform/mac/editing/pasteboard/4989774-expected.txt:
  • platform/mac/editing/pasteboard/5027857-expected.txt:
  • platform/mac/editing/pasteboard/5032095-expected.txt:
  • platform/mac/editing/pasteboard/5065605-expected.txt:
  • platform/mac/editing/pasteboard/5071074-2-expected.txt:
  • platform/mac/editing/pasteboard/5071074-expected.txt:
  • platform/mac/editing/pasteboard/5075944-2-expected.txt:
  • platform/mac/editing/pasteboard/5075944-3-expected.txt:
  • platform/mac/editing/pasteboard/5075944-expected.txt:
  • platform/mac/editing/pasteboard/5134759-expected.txt:
  • platform/mac/editing/pasteboard/5156401-1-expected.txt:
  • platform/mac/editing/pasteboard/5247341-expected.txt:
  • platform/mac/editing/pasteboard/5387578-expected.txt:
  • platform/mac/editing/pasteboard/5478250-expected.txt:
  • platform/mac/editing/pasteboard/5483567-expected.txt:
  • platform/mac/editing/pasteboard/5601583-1-expected.txt:
  • platform/mac/editing/pasteboard/copy-paste-bidi-expected.txt:
  • platform/mac/editing/pasteboard/input-field-1-expected.txt:
  • platform/mac/editing/pasteboard/merge-after-delete-1-expected.txt:
  • platform/mac/editing/pasteboard/merge-after-delete-2-expected.txt:
  • platform/mac/editing/pasteboard/merge-after-delete-expected.txt:
  • platform/mac/editing/pasteboard/merge-start-blockquote-expected.txt:
  • platform/mac/editing/pasteboard/paste-unrendered-select-expected.txt:
  • platform/mac/editing/pasteboard/prevent-block-nesting-01-expected.txt:
  • platform/mac/editing/pasteboard/select-element-1-expected.txt:
  • platform/mac/editing/selection/13804-expected.txt:
  • platform/mac/editing/selection/14971-expected.txt:
  • platform/mac/editing/selection/4397952-expected.txt:
  • platform/mac/editing/selection/4818145-expected.txt:
  • platform/mac/editing/selection/4866671-expected.txt:
  • platform/mac/editing/selection/4889598-expected.txt:
  • platform/mac/editing/selection/4895428-1-expected.txt:
  • platform/mac/editing/selection/4895428-2-expected.txt:
  • platform/mac/editing/selection/4895428-3-expected.txt:
  • platform/mac/editing/selection/4895428-4-expected.txt:
  • platform/mac/editing/selection/4932260-1-expected.txt:
  • platform/mac/editing/selection/4932260-2-expected.txt:
  • platform/mac/editing/selection/4932260-3-expected.txt:
  • platform/mac/editing/selection/4947387-expected.txt:
  • platform/mac/editing/selection/4960116-expected.txt:
  • platform/mac/editing/selection/4975120-expected.txt:
  • platform/mac/editing/selection/4983858-expected.txt:
  • platform/mac/editing/selection/5007143-2-expected.txt:
  • platform/mac/editing/selection/5007143-expected.txt:
  • platform/mac/editing/selection/5057506-2-expected.txt:
  • platform/mac/editing/selection/5057506-expected.txt:
  • platform/mac/editing/selection/5076323-1-expected.txt:
  • platform/mac/editing/selection/5076323-2-expected.txt:
  • platform/mac/editing/selection/5076323-3-expected.txt:
  • platform/mac/editing/selection/5081257-1-expected.txt:
  • platform/mac/editing/selection/5081257-2-expected.txt:
  • platform/mac/editing/selection/5099303-expected.txt:
  • platform/mac/editing/selection/5109817-expected.txt:
  • platform/mac/editing/selection/5136696-expected.txt:
  • platform/mac/editing/selection/5195166-1-expected.txt:
  • platform/mac/editing/selection/5195166-2-expected.txt:
  • platform/mac/editing/selection/5234383-1-expected.txt:
  • platform/mac/editing/selection/5234383-2-expected.txt:
  • platform/mac/editing/selection/5240265-expected.txt:
  • platform/mac/editing/selection/5333725-expected.txt:
  • platform/mac/editing/selection/5354455-1-expected.txt:
  • platform/mac/editing/selection/addRange-expected.txt:
  • platform/mac/editing/selection/caret-before-select-expected.txt:
  • platform/mac/editing/selection/contains-boundaries-expected.txt:
  • platform/mac/editing/selection/drag-select-1-expected.txt:
  • platform/mac/editing/selection/editable-html-element-expected.txt:
  • platform/mac/editing/selection/inconsistent-in-removeChildNode-expected.txt:
  • platform/mac/editing/selection/inline-closest-leaf-child-expected.txt:
  • platform/mac/editing/selection/mixed-editability-6-expected.txt:
  • platform/mac/editing/selection/mixed-editability-7-expected.txt:
  • platform/mac/editing/selection/move-by-sentence-linebreak-expected.txt:
  • platform/mac/editing/selection/select-all-005-expected.txt:
  • platform/mac/editing/selection/table-caret-1-expected.txt:
  • platform/mac/editing/selection/table-caret-2-expected.txt:
  • platform/mac/editing/selection/table-caret-3-expected.txt:
  • platform/mac/editing/selection/wrapped-line-caret-1-expected.txt:
  • platform/mac/editing/selection/wrapped-line-caret-2-expected.txt:
  • platform/mac/editing/style/4916887-expected.txt:
  • platform/mac/editing/style/5017613-1-expected.txt:
  • platform/mac/editing/style/5017613-2-expected.txt:
  • platform/mac/editing/style/5046875-1-expected.txt:
  • platform/mac/editing/style/5046875-2-expected.txt:
  • platform/mac/editing/style/5065910-expected.txt:
  • platform/mac/editing/style/5084241-expected.txt:
  • platform/mac/editing/style/5091898-expected.txt:
  • platform/mac/editing/style/5228141-expected.txt:
  • platform/mac/editing/style/5279521-expected.txt:
  • platform/mac/editing/style/font-family-with-space-expected.txt:
  • platform/mac/editing/style/fontsize-1-expected.txt:
  • platform/mac/editing/style/highlight-expected.txt:
  • platform/mac/editing/style/non-inheritable-styles-expected.txt:
  • platform/mac/editing/undo/5378473-expected.txt:
  • platform/mac/fast/block/float/relative-painted-twice-expected.txt:
  • platform/mac/fast/dom/delete-contents-expected.txt:
  • platform/mac/fast/events/context-no-deselect-expected.txt:
  • platform/mac/fast/events/label-focus-expected.txt:
  • platform/mac/fast/forms/input-appearance-focus-expected.txt:
  • platform/mac/fast/forms/input-text-click-inside-expected.txt:
  • platform/mac/fast/forms/input-text-click-outside-expected.txt:
  • platform/mac/fast/forms/input-text-double-click-expected.txt:
  • platform/mac/fast/forms/input-text-drag-down-expected.txt:
  • platform/mac/fast/forms/input-text-option-delete-expected.txt:
  • platform/mac/fast/forms/input-text-scroll-left-on-blur-expected.txt:
  • platform/mac/fast/forms/input-text-self-emptying-click-expected.txt:
  • platform/mac/fast/forms/textfield-drag-into-disabled-expected.txt:
  • platform/mac/fast/forms/textfield-overflow-expected.txt:
  • platform/mac/fast/inline/25277-2-expected.txt:
  • platform/mac/fast/inline/25277-expected.txt:
  • platform/mac/fast/lists/drag-into-marker-expected.txt:
  • platform/mac/fast/overflow/overflow-focus-ring-expected.txt:
  • platform/mac/fast/repaint/4776765-expected.txt:
  • platform/mac/fast/repaint/selection-after-delete-expected.txt:
  • platform/mac/fast/repaint/selection-after-remove-expected.txt:
  • platform/qt/editing/deleting/4845371-expected.txt:
  • platform/qt/editing/deleting/4866671-expected.txt:
  • platform/qt/editing/deleting/4875189-expected.txt:
  • platform/qt/editing/deleting/5026848-1-expected.txt:
  • platform/qt/editing/deleting/5026848-2-expected.txt:
  • platform/qt/editing/deleting/5026848-3-expected.txt:
  • platform/qt/editing/deleting/5032066-expected.txt:
  • platform/qt/editing/deleting/5091898-expected.txt:
  • platform/qt/editing/deleting/5099303-expected.txt:
  • platform/qt/editing/deleting/5115601-expected.txt:
  • platform/qt/editing/deleting/5126166-expected.txt:
  • platform/qt/editing/deleting/5144139-2-expected.txt:
  • platform/qt/editing/deleting/5156801-2-expected.txt:
  • platform/qt/editing/deleting/5168598-expected.txt:
  • platform/qt/editing/deleting/5272440-expected.txt:
  • platform/qt/editing/deleting/5300379-expected.txt:
  • platform/qt/editing/deleting/5390681-expected.txt:
  • platform/qt/editing/deleting/5408255-expected.txt:
  • platform/qt/editing/deleting/delete-at-start-or-end-expected.txt:
  • platform/qt/editing/deleting/delete-block-table-expected.txt:
  • platform/qt/editing/deleting/delete-hr-expected.txt:
  • platform/qt/editing/deleting/delete-link-1-expected.txt:
  • platform/qt/editing/deleting/delete-mixed-editable-content-001-expected.txt:
  • platform/qt/editing/deleting/delete-to-select-table-expected.txt:
  • platform/qt/editing/deleting/deletionUI-single-instance-expected.txt:
  • platform/qt/editing/deleting/merge-endOfParagraph-expected.txt:
  • platform/qt/editing/deleting/merge-no-br-expected.txt:
  • platform/qt/editing/deleting/merge-whitespace-pre-expected.txt:
  • platform/qt/editing/execCommand/4641880-1-expected.txt:
  • platform/qt/editing/execCommand/4641880-2-expected.txt:
  • platform/qt/editing/execCommand/4747450-expected.txt:
  • platform/qt/editing/execCommand/4786404-1-expected.txt:
  • platform/qt/editing/execCommand/4786404-2-expected.txt:
  • platform/qt/editing/execCommand/4916402-expected.txt:
  • platform/qt/editing/execCommand/4916541-expected.txt:
  • platform/qt/editing/execCommand/4916583-expected.txt:
  • platform/qt/editing/execCommand/4920488-expected.txt:
  • platform/qt/editing/execCommand/4920742-1-expected.txt:
  • platform/qt/editing/execCommand/4924441-expected.txt:
  • platform/qt/editing/execCommand/5049671-expected.txt:
  • platform/qt/editing/execCommand/5062376-expected.txt:
  • platform/qt/editing/execCommand/5080333-1-expected.txt:
  • platform/qt/editing/execCommand/5080333-2-expected.txt:
  • platform/qt/editing/execCommand/5119244-expected.txt:
  • platform/qt/editing/execCommand/5120591-expected.txt:
  • platform/qt/editing/execCommand/5136770-expected.txt:
  • platform/qt/editing/execCommand/5142012-1-expected.txt:
  • platform/qt/editing/execCommand/5142012-2-expected.txt:
  • platform/qt/editing/execCommand/5142012-3-expected.txt:
  • platform/qt/editing/execCommand/5144139-1-expected.txt:
  • platform/qt/editing/execCommand/5164796-expected.txt:
  • platform/qt/editing/execCommand/5207369-expected.txt:
  • platform/qt/editing/execCommand/5210032-expected.txt:
  • platform/qt/editing/execCommand/5432254-1-expected.txt:
  • platform/qt/editing/execCommand/5432254-2-expected.txt:
  • platform/qt/editing/execCommand/insert-list-empty-div-expected.txt:
  • platform/qt/editing/inserting/12882-expected.txt:
  • platform/qt/editing/inserting/4840662-expected.txt:
  • platform/qt/editing/inserting/4875189-1-expected.txt:
  • platform/qt/editing/inserting/4875189-2-expected.txt:
  • platform/qt/editing/inserting/4959067-expected.txt:
  • platform/qt/editing/inserting/4960120-1-expected.txt:
  • platform/qt/editing/inserting/4960120-2-expected.txt:
  • platform/qt/editing/inserting/5002441-expected.txt:
  • platform/qt/editing/inserting/5058163-2-expected.txt:
  • platform/qt/editing/inserting/5156401-2-expected.txt:
  • platform/qt/editing/inserting/editable-html-element-expected.txt:
  • platform/qt/editing/inserting/editable-inline-element-expected.txt:
  • platform/qt/editing/inserting/edited-whitespace-1-expected.txt:
  • platform/qt/editing/inserting/editing-empty-divs-expected.txt:
  • platform/qt/editing/inserting/insert-before-link-1-expected.txt:
  • platform/qt/editing/pasteboard/4806874-expected.txt:
  • platform/qt/editing/pasteboard/4840662-expected.txt:
  • platform/qt/editing/pasteboard/4944770-1-expected.txt:
  • platform/qt/editing/pasteboard/4989774-expected.txt:
  • platform/qt/editing/pasteboard/5027857-expected.txt:
  • platform/qt/editing/pasteboard/5032095-expected.txt:
  • platform/qt/editing/pasteboard/5065605-expected.txt:
  • platform/qt/editing/pasteboard/5071074-2-expected.txt:
  • platform/qt/editing/pasteboard/5071074-expected.txt:
  • platform/qt/editing/pasteboard/5075944-2-expected.txt:
  • platform/qt/editing/pasteboard/5075944-3-expected.txt:
  • platform/qt/editing/pasteboard/5075944-expected.txt:
  • platform/qt/editing/pasteboard/5134759-expected.txt:
  • platform/qt/editing/pasteboard/5156401-1-expected.txt:
  • platform/qt/editing/pasteboard/5245519-expected.txt:
  • platform/qt/editing/pasteboard/5247341-expected.txt:
  • platform/qt/editing/pasteboard/5387578-expected.txt:
  • platform/qt/editing/pasteboard/5478250-expected.txt:
  • platform/qt/editing/pasteboard/5483567-expected.txt:
  • platform/qt/editing/pasteboard/copy-paste-bidi-expected.txt:
  • platform/qt/editing/pasteboard/merge-after-delete-1-expected.txt:
  • platform/qt/editing/pasteboard/merge-after-delete-2-expected.txt:
  • platform/qt/editing/pasteboard/merge-after-delete-expected.txt:
  • platform/qt/editing/pasteboard/merge-start-blockquote-expected.txt:
  • platform/qt/editing/pasteboard/paste-unrendered-select-expected.txt:
  • platform/qt/editing/pasteboard/prevent-block-nesting-01-expected.txt:
  • platform/qt/editing/selection/13804-expected.txt:
  • platform/qt/editing/selection/4397952-expected.txt:
  • platform/qt/editing/selection/4818145-expected.txt:
  • platform/qt/editing/selection/4866671-expected.txt:
  • platform/qt/editing/selection/4889598-expected.txt:
  • platform/qt/editing/selection/4895428-2-expected.txt:
  • platform/qt/editing/selection/4895428-3-expected.txt:
  • platform/qt/editing/selection/4932260-1-expected.txt:
  • platform/qt/editing/selection/4932260-2-expected.txt:
  • platform/qt/editing/selection/4932260-3-expected.txt:
  • platform/qt/editing/selection/4960116-expected.txt:
  • platform/qt/editing/selection/4983858-expected.txt:
  • platform/qt/editing/selection/5007143-2-expected.txt:
  • platform/qt/editing/selection/5007143-expected.txt:
  • platform/qt/editing/selection/5076323-1-expected.txt:
  • platform/qt/editing/selection/5076323-2-expected.txt:
  • platform/qt/editing/selection/5076323-3-expected.txt:
  • platform/qt/editing/selection/5081257-1-expected.txt:
  • platform/qt/editing/selection/5081257-2-expected.txt:
  • platform/qt/editing/selection/5099303-expected.txt:
  • platform/qt/editing/selection/5136696-expected.txt:
  • platform/qt/editing/selection/5195166-1-expected.txt:
  • platform/qt/editing/selection/5195166-2-expected.txt:
  • platform/qt/editing/selection/5234383-1-expected.txt:
  • platform/qt/editing/selection/5234383-2-expected.txt:
  • platform/qt/editing/selection/5240265-expected.txt:
  • platform/qt/editing/selection/addRange-expected.txt:
  • platform/qt/editing/selection/caret-before-select-expected.txt:
  • platform/qt/editing/selection/editable-html-element-expected.txt:
  • platform/qt/editing/selection/mixed-editability-6-expected.txt:
  • platform/qt/editing/selection/mixed-editability-7-expected.txt:
  • platform/qt/editing/selection/move-by-sentence-linebreak-expected.txt:
  • platform/qt/editing/selection/select-all-005-expected.txt:
  • platform/qt/editing/selection/table-caret-1-expected.txt:
  • platform/qt/editing/selection/table-caret-2-expected.txt:
  • platform/qt/editing/selection/table-caret-3-expected.txt:
  • platform/qt/editing/style/4916887-expected.txt:
  • platform/qt/editing/style/5017613-1-expected.txt:
  • platform/qt/editing/style/5017613-2-expected.txt:
  • platform/qt/editing/style/5046875-1-expected.txt:
  • platform/qt/editing/style/5046875-2-expected.txt:
  • platform/qt/editing/style/5065910-expected.txt:
  • platform/qt/editing/style/5084241-expected.txt:
  • platform/qt/editing/style/5228141-expected.txt:
  • platform/qt/editing/style/5279521-expected.txt:
  • platform/qt/editing/style/font-family-with-space-expected.txt:
  • platform/qt/editing/style/fontsize-1-expected.txt:
  • platform/qt/editing/style/highlight-expected.txt:
  • platform/qt/editing/style/non-inheritable-styles-expected.txt:
  • platform/qt/editing/undo/5378473-expected.txt:
  • platform/qt/fast/dom/delete-contents-expected.txt:
  • platform/qt/fast/events/label-focus-expected.txt:
  • platform/qt/fast/forms/input-appearance-focus-expected.txt:
  • platform/qt/fast/forms/input-maxlength-2-expected.txt:
  • platform/qt/fast/forms/input-text-click-inside-expected.txt:
  • platform/qt/fast/forms/input-text-option-delete-expected.txt:
  • platform/qt/fast/forms/input-text-self-emptying-click-expected.txt:
  • platform/qt/fast/forms/textfield-drag-into-disabled-expected.txt:
  • platform/qt/fast/forms/textfield-overflow-expected.txt:
  • platform/qt/fast/overflow/overflow-focus-ring-expected.txt:
  • platform/qt/fast/repaint/4776765-expected.txt:
  • platform/qt/fast/repaint/selection-after-delete-expected.txt:
  • platform/qt/fast/repaint/selection-after-remove-expected.txt:
  • platform/win/editing/deleting/5168598-expected.txt:
  • platform/win/editing/inserting/4960120-1-expected.txt:
  • platform/win/editing/inserting/5607069-2-expected.txt:
  • platform/win/editing/inserting/5607069-3-expected.txt:
  • platform/win/editing/inserting/typing-tab-designmode-forms-expected.txt:
  • platform/win/editing/pasteboard/4806874-expected.txt:
  • platform/win/editing/selection/4895428-3-expected.txt:
  • platform/win/editing/selection/5136696-expected.txt:
  • platform/win/editing/selection/drag-select-1-expected.txt:
  • platform/win/fast/events/context-no-deselect-expected.txt:
  • platform/win/fast/events/label-focus-expected.txt:
  • platform/win/fast/forms/input-appearance-focus-expected.txt:
  • platform/win/fast/forms/input-text-click-inside-expected.txt:
  • platform/win/fast/forms/input-text-click-outside-expected.txt:
  • platform/win/fast/forms/input-text-double-click-expected.txt:
  • platform/win/fast/forms/input-text-drag-down-expected.txt:
  • platform/win/fast/forms/input-text-option-delete-expected.txt:
  • platform/win/fast/forms/input-text-scroll-left-on-blur-expected.txt:
  • platform/win/fast/forms/input-text-self-emptying-click-expected.txt:
  • platform/win/fast/forms/textfield-drag-into-disabled-expected.txt:
  • platform/win/fast/forms/textfield-overflow-expected.txt: Updated BODY element index in test output (for some tests, it increased because of the implicitly added <head>, and for others, it decreased because mispositoned <script> is being moved into <head>).
  • webarchive/adopt-attribute-styled-body-webarchive-expected.webarchive:
  • webarchive/archive-empty-frame-dom-expected.webarchive: Updated to include the implicitly added <head> elements.
01:24 Changeset [43214] by hausmann@webkit.org
  • 2 edits in trunk/WebCore

2009-05-04 Jakub Wieczorek <faw217@gmail.com>

Reviewed by Simon Hausmann.

As Qtish implementation of MIMETypeRegistry::getMIMETypeForExtension()
returns the application/octet-stream mimetype when it can't associate
extension with any mimetype, it can happen that the application/octet-stream
mimetype will hit the list of supported image formats. For instance,
it is possible when QImageReader or QImageWriter support an extension
that is not in the extensions map.

Make sure that this mimetype is not treated as displayable image type.

01:15 Changeset [43213] by eric@webkit.org
  • 3 edits in trunk/WebCore

Reviewed by Simon Fraser.

ASSERT(useTransforms) in SVG mapLocalToContainer implementations
https://bugs.webkit.org/show_bug.cgi?id=25532

  • rendering/RenderSVGRoot.cpp: (WebCore::RenderSVGRoot::mapLocalToContainer):
  • rendering/SVGRenderSupport.cpp: (WebCore::SVGRenderBase::mapLocalToContainer):
01:15 Changeset [43212] by eric@webkit.org
  • 3 edits in trunk/WebCore

Reviewed by Simon Fraser.

Remove m_absoluteBounds hack from RenderSVGText
https://bugs.webkit.org/show_bug.cgi?id=25532

No functional changes (SVGs inside CSS transformed HTML should theoretically repaint better)

  • rendering/RenderSVGText.cpp: (WebCore::RenderSVGText::layout):
  • rendering/RenderSVGText.h:
01:15 Changeset [43211] by eric@webkit.org
  • 15 edits in trunk

Reviewed by Simon Fraser.

Remove the vestigial calculateLocalTransform()
https://bugs.webkit.org/show_bug.cgi?id=25532

RenderSVGContainer is now the only render which needs this
function, but it no longer returns the unused bool.

calculateLocalTransform() previously was called by the DOM before
transform updates were part of layout().

  • rendering/RenderForeignObject.cpp: (WebCore::RenderForeignObject::layout):
  • rendering/RenderForeignObject.h: (WebCore::RenderForeignObject::localTransform):
  • rendering/RenderPath.cpp: (WebCore::RenderPath::layout):
  • rendering/RenderPath.h:
  • rendering/RenderSVGContainer.cpp:
  • rendering/RenderSVGContainer.h: (WebCore::RenderSVGContainer::calculateLocalTransform):
  • rendering/RenderSVGImage.cpp: (WebCore::RenderSVGImage::layout):
  • rendering/RenderSVGImage.h:
  • rendering/RenderSVGText.cpp: (WebCore::RenderSVGText::layout):
  • rendering/RenderSVGText.h:
  • rendering/RenderSVGTransformableContainer.cpp: (WebCore::RenderSVGTransformableContainer::calculateLocalTransform):
  • rendering/RenderSVGTransformableContainer.h:
01:14 Changeset [43210] by eric@webkit.org
  • 7 edits in trunk/WebCore

Reviewed by Simon Fraser.

Move more code into SVGRenderBase
https://bugs.webkit.org/show_bug.cgi?id=25532

clippedOverflowRectForRepaint, computeRectForRepaint and mapLocalToContainer
are now all shared via SVGRenderBase.

RenderForeignObject should also be sharing this code, but I've left it
alone for now, as changing that would likely cause test changes.

No test changes. It's possible that transformed <svg:image> elements will
now show up with better metrics in the inspector.

  • rendering/RenderSVGImage.cpp: (WebCore::RenderSVGImage::clippedOverflowRectForRepaint): (WebCore::RenderSVGImage::computeRectForRepaint): (WebCore::RenderSVGImage::mapLocalToContainer):
  • rendering/RenderSVGImage.h:
  • rendering/RenderSVGModelObject.cpp: (WebCore::RenderSVGModelObject::clippedOverflowRectForRepaint): (WebCore::RenderSVGModelObject::computeRectForRepaint): (WebCore::RenderSVGModelObject::mapLocalToContainer):
  • rendering/RenderSVGText.cpp: (WebCore::RenderSVGText::clippedOverflowRectForRepaint): (WebCore::RenderSVGText::computeRectForRepaint): (WebCore::RenderSVGText::mapLocalToContainer):
  • rendering/SVGRenderSupport.cpp: (WebCore::SVGRenderBase::clippedOverflowRectForRepaint): (WebCore::SVGRenderBase::computeRectForRepaint): (WebCore::SVGRenderBase::mapLocalToContainer):
  • rendering/SVGRenderSupport.h:
01:14 Changeset [43209] by eric@webkit.org
  • 11 edits in trunk/WebCore

Reviewed by Simon Fraser.

Add SVGRenderBase to share logic between SVG renderers
https://bugs.webkit.org/show_bug.cgi?id=25532

I've added an SVGRenderBase base class which is shared by
all of the SVG renders now. This patch is just moving code
there are no functional changes in this patch.

Currently I've left these functions in SVGRenderSupport.h
In a later patch I will rename SVGRenderSupport.* to SVGRenderBase.*

clampImageBufferSizeToViewport now takes a FrameView* which makes some code easier to read.

  • rendering/RenderSVGBlock.h:
  • rendering/RenderSVGImage.h:
  • rendering/RenderSVGModelObject.h:
  • rendering/RenderSVGRoot.h:
  • rendering/SVGRenderSupport.cpp: (WebCore::SVGRenderBase::prepareToRenderSVGContent): (WebCore::SVGRenderBase::finishRenderSVGContent): (WebCore::clampImageBufferSizeToViewport): (WebCore::SVGRenderBase::computeContainerBoundingBox): (WebCore::SVGRenderBase::filterBoundingBoxForRenderer):
  • rendering/SVGRenderSupport.h:
  • rendering/SVGRootInlineBox.cpp: (WebCore::SVGRootInlineBoxPaintWalker::chunkStartCallback): (WebCore::SVGRootInlineBoxPaintWalker::chunkEndCallback): (WebCore::SVGRootInlineBox::paint):
  • svg/SVGMaskElement.cpp: (WebCore::SVGMaskElement::drawMaskerContent):
  • svg/SVGPatternElement.cpp: (WebCore::SVGPatternElement::buildPattern):
  • svg/graphics/SVGPaintServerGradient.cpp: (WebCore::createMaskAndSwapContextForTextGradient): (WebCore::clipToTextMask):
00:51 Changeset [43208] by weinig@apple.com
  • 2 edits in branches/nitro-extreme/JavaScriptCore

2009-05-05 Sam Weinig <sam@webkit.org>

Fix build.

  • runtime/JSValue.h: (JSC::JSValue::): s/#PLATFORM/#if PLATFORM/
00:18 Changeset [43207] by hausmann@webkit.org
  • 18 edits in trunk/WebCore

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

Unreviewed SVG build fix.

Include MappedAttribute.h after r43187.

Note: See TracTimeline for information about the timeline view.