WebKit-https.git
8 years agoWebKit does not expose AXPlaceholder value on password fields
cfleizach@apple.com [Sat, 24 Sep 2011 07:00:15 +0000 (07:00 +0000)]
WebKit does not expose AXPlaceholder value on password fields
https://bugs.webkit.org/show_bug.cgi?id=68745

Reviewed by Oliver Hunt.

Source/WebCore:

* accessibility/mac/WebAccessibilityObjectWrapper.mm:
(-[WebAccessibilityObjectWrapper accessibilityAttributeNames]):

LayoutTests:

* accessibility/placeholder-expected.txt:
* accessibility/placeholder.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95906 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoAdd JSVALUE32_64 support to DFG JIT
barraclough@apple.com [Sat, 24 Sep 2011 05:42:09 +0000 (05:42 +0000)]
Add JSVALUE32_64 support to DFG JIT
https://bugs.webkit.org/show_bug.cgi?id=67460

Patch by Yuqiang Xian <yuqiang.xian@intel.com> on 2011-09-23
Reviewed by Gavin Barraclough.

Add cmake options to enable DFG JIT compilation for EFL port

* Source/cmake/OptionsEfl.cmake:
* Source/cmakeconfig.h.cmake:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95905 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[DRT] Include the right config file for EFL's DRT.
commit-queue@webkit.org [Sat, 24 Sep 2011 05:30:04 +0000 (05:30 +0000)]
[DRT] Include the right config file for EFL's DRT.
https://bugs.webkit.org/show_bug.cgi?id=67042

Patch by Raphael Kubo da Costa <kubo@profusion.mobi> on 2011-09-23
Reviewed by Martin Robinson.

Ports which use CMake as their buildsystem (such as the EFL one) also
have config.h files, but they are named differently, so include the
right one depending on the buildsystem being used.

* DumpRenderTree/config.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95904 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoFix the build.
mrowe@apple.com [Sat, 24 Sep 2011 05:11:33 +0000 (05:11 +0000)]
Fix the build.

* loader/CrossOriginAccessControl.cpp:
(WebCore::passesAccessControlCheck): Get rid of the exit-time destructor.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95903 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoAdd JSVALUE32_64 support to DFG JIT
barraclough@apple.com [Sat, 24 Sep 2011 05:04:08 +0000 (05:04 +0000)]
Add JSVALUE32_64 support to DFG JIT
https://bugs.webkit.org/show_bug.cgi?id=67460

Patch by Yuqiang Xian <yuqiang.xian@intel.com> on 2011-09-23
Reviewed by Gavin Barraclough.

This is the initial attempt to add JSVALUE32_64 support to DFG JIT.
It's tested on IA32 Linux EFL port currently. It still cannot run
all the test cases and benchmarks so should be turned off now.

The major work includes:
1) dealing with JSVALUE32_64 data format in DFG JIT;
2) bindings between 64-bit JS Value and 32-bit registers;
3) handling of function calls. Currently for DFG operation function
calls we follow the X86 cdecl calling convention on Linux, and the
implementation is in a naive way by pushing the arguments into stack
one by one.

The known issues include:
1) some code duplicates unnecessarily, especially in Speculative JIT
code generation, where most of the operations on SpeculataInteger /
SpeculateDouble should be identical to the JSVALUE64 code. Refactoring
is needed in the future;
2) lack of op_call and op_construct support, comparing to current
JSVALUE64 DFG;
3) currently integer speculations assume to be StrictInt32;
4) lack of JSBoolean speculations;
5) boxing and unboxing doubles could be improved;
6) DFG X86 register description is different with the baseline JIT,
the timeoutCheckRegister is used for general purpose usage;
7) calls to runtime functions with primitive double parameters (e.g.
fmod) don't work. Support needs to be added to the assembler to
implement the mechanism of passing double parameters for X86 cdecl
convention.

And there should be many other hidden bugs which should be exposed and
resolved in later debugging process.

* CMakeListsEfl.txt:
* assembler/MacroAssemblerX86.h:
(JSC::MacroAssemblerX86::loadDouble):
(JSC::MacroAssemblerX86::storeDouble):
* assembler/X86Assembler.h:
(JSC::X86Assembler::movsd_rm):
* bytecode/StructureStubInfo.h:
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::parseBlock):
* dfg/DFGCapabilities.h:
(JSC::DFG::canCompileOpcode):
* dfg/DFGFPRInfo.h:
(JSC::DFG::FPRInfo::debugName):
* dfg/DFGGPRInfo.h:
(JSC::DFG::GPRInfo::toRegister):
(JSC::DFG::GPRInfo::toIndex):
(JSC::DFG::GPRInfo::debugName):
* dfg/DFGGenerationInfo.h:
(JSC::DFG::needDataFormatConversion):
(JSC::DFG::GenerationInfo::initJSValue):
(JSC::DFG::GenerationInfo::initDouble):
(JSC::DFG::GenerationInfo::gpr):
(JSC::DFG::GenerationInfo::tagGPR):
(JSC::DFG::GenerationInfo::payloadGPR):
(JSC::DFG::GenerationInfo::fpr):
(JSC::DFG::GenerationInfo::fillJSValue):
(JSC::DFG::GenerationInfo::fillCell):
(JSC::DFG::GenerationInfo::fillDouble):
* dfg/DFGJITCodeGenerator.cpp:
* dfg/DFGJITCodeGenerator.h:
(JSC::DFG::JITCodeGenerator::allocate):
(JSC::DFG::JITCodeGenerator::use):
(JSC::DFG::JITCodeGenerator::registersMatched):
(JSC::DFG::JITCodeGenerator::silentSpillGPR):
(JSC::DFG::JITCodeGenerator::silentFillGPR):
(JSC::DFG::JITCodeGenerator::silentFillFPR):
(JSC::DFG::JITCodeGenerator::silentSpillAllRegisters):
(JSC::DFG::JITCodeGenerator::silentFillAllRegisters):
(JSC::DFG::JITCodeGenerator::boxDouble):
(JSC::DFG::JITCodeGenerator::unboxDouble):
(JSC::DFG::JITCodeGenerator::spill):
(JSC::DFG::addressOfDoubleConstant):
(JSC::DFG::integerResult):
(JSC::DFG::jsValueResult):
(JSC::DFG::setupResults):
(JSC::DFG::callOperation):
(JSC::JSValueOperand::JSValueOperand):
(JSC::JSValueOperand::~JSValueOperand):
(JSC::JSValueOperand::isDouble):
(JSC::JSValueOperand::fill):
(JSC::JSValueOperand::tagGPR):
(JSC::JSValueOperand::payloadGPR):
(JSC::JSValueOperand::fpr):
(JSC::GPRTemporary::~GPRTemporary):
(JSC::GPRTemporary::gpr):
(JSC::GPRResult2::GPRResult2):
* dfg/DFGJITCodeGenerator32_64.cpp: Added.
(JSC::DFG::JITCodeGenerator::clearGenerationInfo):
(JSC::DFG::JITCodeGenerator::fillInteger):
(JSC::DFG::JITCodeGenerator::fillDouble):
(JSC::DFG::JITCodeGenerator::fillJSValue):
(JSC::DFG::JITCodeGenerator::fillStorage):
(JSC::DFG::JITCodeGenerator::useChildren):
(JSC::DFG::JITCodeGenerator::isStrictInt32):
(JSC::DFG::JITCodeGenerator::isKnownInteger):
(JSC::DFG::JITCodeGenerator::isKnownNumeric):
(JSC::DFG::JITCodeGenerator::isKnownCell):
(JSC::DFG::JITCodeGenerator::isKnownNotInteger):
(JSC::DFG::JITCodeGenerator::isKnownNotNumber):
(JSC::DFG::JITCodeGenerator::isKnownBoolean):
(JSC::DFG::JITCodeGenerator::nonSpeculativeValueToNumber):
(JSC::DFG::JITCodeGenerator::nonSpeculativeValueToInt32):
(JSC::DFG::JITCodeGenerator::nonSpeculativeUInt32ToNumber):
(JSC::DFG::JITCodeGenerator::nonSpeculativeKnownConstantArithOp):
(JSC::DFG::JITCodeGenerator::nonSpeculativeBasicArithOp):
(JSC::DFG::JITCodeGenerator::nonSpeculativeArithMod):
(JSC::DFG::JITCodeGenerator::nonSpeculativeCheckHasInstance):
(JSC::DFG::JITCodeGenerator::nonSpeculativeInstanceOf):
(JSC::DFG::JITCodeGenerator::cachedGetById):
(JSC::DFG::JITCodeGenerator::writeBarrier):
(JSC::DFG::JITCodeGenerator::cachedPutById):
(JSC::DFG::JITCodeGenerator::cachedGetMethod):
(JSC::DFG::JITCodeGenerator::nonSpeculativeNonPeepholeCompareNull):
(JSC::DFG::JITCodeGenerator::nonSpeculativePeepholeBranchNull):
(JSC::DFG::JITCodeGenerator::nonSpeculativeCompareNull):
(JSC::DFG::JITCodeGenerator::nonSpeculativePeepholeBranch):
(JSC::DFG::JITCodeGenerator::nonSpeculativeNonPeepholeCompare):
(JSC::DFG::JITCodeGenerator::nonSpeculativeCompare):
(JSC::DFG::JITCodeGenerator::nonSpeculativePeepholeStrictEq):
(JSC::DFG::JITCodeGenerator::nonSpeculativeNonPeepholeStrictEq):
(JSC::DFG::JITCodeGenerator::nonSpeculativeStrictEq):
(JSC::DFG::JITCodeGenerator::emitBranch):
(JSC::DFG::JITCodeGenerator::nonSpeculativeLogicalNot):
(JSC::DFG::JITCodeGenerator::emitCall):
(JSC::DFG::JITCodeGenerator::speculationCheck):
(JSC::DFG::dataFormatString):
(JSC::DFG::JITCodeGenerator::dump):
(JSC::DFG::JITCodeGenerator::checkConsistency):
(JSC::DFG::GPRTemporary::GPRTemporary):
(JSC::DFG::FPRTemporary::FPRTemporary):
* dfg/DFGJITCompiler.cpp:
* dfg/DFGJITCompiler.h:
(JSC::DFG::JITCompiler::tagForGlobalVar):
(JSC::DFG::JITCompiler::payloadForGlobalVar):
(JSC::DFG::JITCompiler::appendCallWithExceptionCheck):
(JSC::DFG::JITCompiler::addressOfDoubleConstant):
(JSC::DFG::JITCompiler::boxDouble):
(JSC::DFG::JITCompiler::unboxDouble):
(JSC::DFG::JITCompiler::addPropertyAccess):
(JSC::DFG::JITCompiler::PropertyAccessRecord::PropertyAccessRecord):
* dfg/DFGJITCompiler32_64.cpp: Added.
(JSC::DFG::JITCompiler::fillNumericToDouble):
(JSC::DFG::JITCompiler::fillInt32ToInteger):
(JSC::DFG::JITCompiler::fillToJS):
(JSC::DFG::JITCompiler::exitSpeculativeWithOSR):
(JSC::DFG::JITCompiler::linkOSRExits):
(JSC::DFG::JITCompiler::compileEntry):
(JSC::DFG::JITCompiler::compileBody):
(JSC::DFG::JITCompiler::link):
(JSC::DFG::JITCompiler::compile):
(JSC::DFG::JITCompiler::compileFunction):
(JSC::DFG::JITCompiler::jitAssertIsInt32):
(JSC::DFG::JITCompiler::jitAssertIsJSInt32):
(JSC::DFG::JITCompiler::jitAssertIsJSNumber):
(JSC::DFG::JITCompiler::jitAssertIsJSDouble):
(JSC::DFG::JITCompiler::jitAssertIsCell):
(JSC::DFG::JITCompiler::emitCount):
(JSC::DFG::JITCompiler::setSamplingFlag):
(JSC::DFG::JITCompiler::clearSamplingFlag):
* dfg/DFGJITCompilerInlineMethods.h: Added.
(JSC::DFG::JITCompiler::emitLoadTag):
(JSC::DFG::JITCompiler::emitLoadPayload):
(JSC::DFG::JITCompiler::emitLoad):
(JSC::DFG::JITCompiler::emitLoad2):
(JSC::DFG::JITCompiler::emitLoadDouble):
(JSC::DFG::JITCompiler::emitLoadInt32ToDouble):
(JSC::DFG::JITCompiler::emitStore):
(JSC::DFG::JITCompiler::emitStoreInt32):
(JSC::DFG::JITCompiler::emitStoreCell):
(JSC::DFG::JITCompiler::emitStoreBool):
(JSC::DFG::JITCompiler::emitStoreDouble):
* dfg/DFGNode.h:
* dfg/DFGOperations.cpp:
* dfg/DFGRepatch.cpp:
(JSC::DFG::generateProtoChainAccessStub):
(JSC::DFG::tryCacheGetByID):
(JSC::DFG::tryBuildGetByIDList):
(JSC::DFG::tryCachePutByID):
* dfg/DFGSpeculativeJIT.cpp:
* dfg/DFGSpeculativeJIT.h:
(JSC::DFG::ValueRecovery::inGPR):
(JSC::DFG::ValueRecovery::inPair):
(JSC::DFG::ValueRecovery::tagGPR):
(JSC::DFG::ValueRecovery::payloadGPR):
* dfg/DFGSpeculativeJIT32_64.cpp: Added.
(JSC::DFG::SpeculativeJIT::fillSpeculateIntInternal):
(JSC::DFG::ValueSource::dump):
(JSC::DFG::ValueRecovery::dump):
(JSC::DFG::OSRExit::OSRExit):
(JSC::DFG::OSRExit::dump):
(JSC::DFG::SpeculativeJIT::fillSpeculateInt):
(JSC::DFG::SpeculativeJIT::fillSpeculateIntStrict):
(JSC::DFG::SpeculativeJIT::fillSpeculateDouble):
(JSC::DFG::SpeculativeJIT::fillSpeculateCell):
(JSC::DFG::SpeculativeJIT::fillSpeculateBoolean):
(JSC::DFG::SpeculativeJIT::compilePeepHoleIntegerBranch):
(JSC::DFG::SpeculativeJIT::convertToDouble):
(JSC::DFG::SpeculativeJIT::compilePeepHoleDoubleBranch):
(JSC::DFG::SpeculativeJIT::compilePeepHoleObjectEquality):
(JSC::DFG::SpeculativeJIT::compileObjectEquality):
(JSC::DFG::SpeculativeJIT::compare):
(JSC::DFG::SpeculativeJIT::compile):
(JSC::DFG::SpeculativeJIT::compileMovHint):
(JSC::DFG::SpeculativeJIT::checkArgumentTypes):
(JSC::DFG::SpeculativeJIT::initializeVariableTypes):
(JSC::DFG::SpeculativeJIT::computeValueRecoveryFor):
* runtime/JSValue.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95902 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoSet eol-style to native on many source files where it was unset.
darin@apple.com [Sat, 24 Sep 2011 04:23:07 +0000 (04:23 +0000)]
Set eol-style to native on many source files where it was unset.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95901 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoCanvas security checks show up on HTML5GamingTest benchmark
abarth@webkit.org [Sat, 24 Sep 2011 03:51:55 +0000 (03:51 +0000)]
Canvas security checks show up on HTML5GamingTest benchmark
https://bugs.webkit.org/show_bug.cgi?id=68743

Reviewed by Oliver Hunt.

Prior to this patch, the canvas security checks took as much as 4% of
the time on the HTML5GamingTest benchmark:

http://craftymind.com/factory/guimark2/HTML5GamingTest.html

This patch uses a couple of AtomicStrings and shuffles around the order
of the security check to take this down to around 0.1% (which is near
the noise floor of what I can measure with my profiler).

* html/canvas/CanvasRenderingContext.cpp:
(WebCore::CanvasRenderingContext::wouldTaintOrigin):
* loader/CrossOriginAccessControl.cpp:
(WebCore::passesAccessControlCheck):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95900 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoSource/WebCore: Unwarranted DOM Exception when canvas2D drawImage is called with src
commit-queue@webkit.org [Sat, 24 Sep 2011 03:24:35 +0000 (03:24 +0000)]
Source/WebCore: Unwarranted DOM Exception when canvas2D drawImage is called with src
rect out of bounds
https://bugs.webkit.org/show_bug.cgi?id=65709

Patch by Justin Novosad <junov@chromium.org> on 2011-09-23
Reviewed by Oliver Hunt.

* html/canvas/CanvasRenderingContext2D.cpp:
(WebCore::CanvasRenderingContext2D::drawImage):
Return early without throwing an exception if source rectangle is out of
bounds to match the spec.

LayoutTests: Unwarranted DOM Exception when canvas2D drawImage is called with src
rect is out of bounds
https://bugs.webkit.org/show_bug.cgi?id=65709

Patch by Justin Novosad <junov@chromium.org> on 2011-09-23
Reviewed by Oliver Hunt.

* fast/canvas/drawImage-with-invalid-args-expected.txt:
* fast/canvas/drawImage-with-invalid-args.html:
This test covers (among other things) cases where the source rectangle is
_completely_ outside the bounds of the source image.  It was modified to no
longer expect DOM exceptions
* platform/chromium/test_expectations.txt:
Out-dated test canvas/philip/tests/2d.drawImage.outsidesource.html
is now expected to fail
* platform/mac/Skipped:
Skipping canvas/philip/tests/2d.drawImage.outsidesource.html

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95899 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoPrinting of notImplemented() when logging enabled.
commit-queue@webkit.org [Sat, 24 Sep 2011 03:20:53 +0000 (03:20 +0000)]
Printing of notImplemented() when logging enabled.
https://bugs.webkit.org/show_bug.cgi?id=64590

Printing of notImplemented() method was enabled on Debug builds only.
Now it is enabled when logging is enabled.

Patch by Lukasz Slachciak <l.slachciak@samsung.com> on 2011-09-23
Reviewed by Oliver Hunt.

No new tests because there is no new functionality.

* platform/NotImplemented.h: Non-debug mode replaced with non-logging mode.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95898 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[Chromium] REGRESSION (r95725): Resizing a window doesn't resize the contents
mihaip@chromium.org [Sat, 24 Sep 2011 03:12:33 +0000 (03:12 +0000)]
[Chromium] REGRESSION (r95725): Resizing a window doesn't resize the contents
https://bugs.webkit.org/show_bug.cgi?id=68730

Reviewed by James Robinson.

Source/WebCore:

Adds a missing contentsResized() call in ScrollView::setFrameRect.

Test: fast/dom/Window/window-resize-contents.html

* platform/ScrollView.cpp:
(WebCore::ScrollView::setFrameRect):

LayoutTests:

Test for resizing of the window triggering resizing of contents.

* fast/dom/Window/window-resize-contents-expected.txt: Added.
* fast/dom/Window/window-resize-contents.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95897 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[CMake] Detect amd64 as a valid 64-bit architecture.
commit-queue@webkit.org [Sat, 24 Sep 2011 03:12:24 +0000 (03:12 +0000)]
[CMake] Detect amd64 as a valid 64-bit architecture.
https://bugs.webkit.org/show_bug.cgi?id=67481

Patch by Raphael Kubo da Costa <kubo@profusion.mobi> on 2011-09-23
Reviewed by Oliver Hunt.

Some operating systems (generally the BSDs) use amd64 instead of x86_64
to report they're running on 64 bits, so consider it a valid value.

* Source/CMakeLists.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95896 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agowtf/BitVector.h has a variety of bugs which manifest when the
fpizlo@apple.com [Sat, 24 Sep 2011 02:07:58 +0000 (02:07 +0000)]
wtf/BitVector.h has a variety of bugs which manifest when the
vector grows beyond 63 bits
https://bugs.webkit.org/show_bug.cgi?id=68746

Reviewed by Oliver Hunt.

Out-of-lined slow path code in BitVector so that not every user
of CodeBlock ends up having to compile it. Fixed a variety of
index computation and size computation bugs.

I have not seen these issues manifest themselves, but they are
blocking a patch that uses BitVector more aggressively.

* GNUmakefile.list.am:
* JavaScriptCore.vcproj/WTF/WTF.vcproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* wtf/BitVector.cpp: Added.
(BitVector::BitVector):
(BitVector::operator=):
(BitVector::resize):
(BitVector::clearAll):
(BitVector::OutOfLineBits::create):
(BitVector::OutOfLineBits::destroy):
(BitVector::resizeOutOfLine):
* wtf/BitVector.h:
(WTF::BitVector::ensureSize):
(WTF::BitVector::get):
(WTF::BitVector::set):
(WTF::BitVector::clear):
(WTF::BitVector::byteCount):
(WTF::BitVector::OutOfLineBits::numWords):
(WTF::BitVector::OutOfLineBits::bits):
(WTF::BitVector::outOfLineBits):
* wtf/CMakeLists.txt:
* wtf/wtf.pri:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95895 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoAdd ENABLE_MUTATION_OBSERVERS feature flag
adamk@chromium.org [Sat, 24 Sep 2011 01:25:22 +0000 (01:25 +0000)]
Add ENABLE_MUTATION_OBSERVERS feature flag
https://bugs.webkit.org/show_bug.cgi?id=68732

Reviewed by Ojan Vafai.

This flag will guard an implementation of the "Mutation Observers" proposed in
http://lists.w3.org/Archives/Public/public-webapps/2011JulSep/1622.html

.:

* configure.ac:

Source/JavaScriptCore:

* Configurations/FeatureDefines.xcconfig:

Source/WebCore:

* Configurations/FeatureDefines.xcconfig:
* GNUmakefile.am:

Source/WebKit/chromium:

* features.gypi:

Source/WebKit/mac:

* Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

* Configurations/FeatureDefines.xcconfig:

Tools:

* Scripts/build-webkit:

WebKitLibraries:

* win/tools/vsprops/FeatureDefines.vsprops:
* win/tools/vsprops/FeatureDefinesCairo.vsprops:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95894 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoDe-virtualize JSCell::getJSNumber
mhahnenberg@apple.com [Sat, 24 Sep 2011 01:19:56 +0000 (01:19 +0000)]
De-virtualize JSCell::getJSNumber
https://bugs.webkit.org/show_bug.cgi?id=68651

Reviewed by Oliver Hunt.

Added a new JSType to check whether or not something is a
NumberObject (which includes NumberPrototype) in TypeInfo::isNumberObject because there's not
currently a better way to determine whether something is indeed a NumberObject.
Also de-virtualized JSCell::getJSNumber, having it check the TypeInfo
for whether the object is a NumberObject or not.  This patch is part of
the larger process of de-virtualizing JSCell.

* JavaScriptCore.exp:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
* runtime/JSCell.cpp:
(JSC::JSCell::getJSNumber):
* runtime/JSCell.h:
(JSC::JSValue::getJSNumber):
* runtime/JSType.h:
* runtime/JSTypeInfo.h:
(JSC::TypeInfo::isNumberObject):
* runtime/JSValue.h:
* runtime/NumberObject.cpp:
(JSC::NumberObject::getJSNumber):
* runtime/NumberObject.h:
(JSC::NumberObject::createStructure):
* runtime/NumberPrototype.h:
(JSC::NumberPrototype::createStructure):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95893 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoRebaseline fast/ruby/ruby-text-before-after-content.html for Chromium Mac.
mihaip@chromium.org [Sat, 24 Sep 2011 01:12:29 +0000 (01:12 +0000)]
Rebaseline fast/ruby/ruby-text-before-after-content.html for Chromium Mac.

Mark media/controls-right-click-on-timebar.html as flaky.

* platform/chromium-cg-mac-leopard/fast/ruby/ruby-text-before-after-content-expected.png: Added.
* platform/chromium-cg-mac-leopard/fast/ruby/ruby-text-before-after-content-expected.txt: Added.
* platform/chromium-mac/fast/ruby/ruby-text-before-after-content-expected.png: Added.
* platform/chromium/test_expectations.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95892 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoMaking some WebBlob methods exportable.
jcivelli@chromium.org [Sat, 24 Sep 2011 00:44:37 +0000 (00:44 +0000)]
Making some WebBlob methods exportable.
This is needed by the shared lib chromium build.
https://bugs.webkit.org/show_bug.cgi?id=68709

Reviewed by Darin Fisher.

* public/WebBlob.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95891 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago.: Refactor WebViewImpl::scrollFocusedNodeIntoRect to a better place and add tests
commit-queue@webkit.org [Sat, 24 Sep 2011 00:23:55 +0000 (00:23 +0000)]
.: Refactor WebViewImpl::scrollFocusedNodeIntoRect to a better place and add tests
https://bugs.webkit.org/show_bug.cgi?id=68198

Patch by Varun Jain <varunjain@google.com> on 2011-09-23
Reviewed by Dimitri Glazkov.

* Source/autotools/symbols.filter:

Source/WebCore: Refactor WebViewImpl::scrollFocusedNodeIntoRect to a better place and add tests
https://bugs.webkit.org/show_bug.cgi?id=68198

Patch by Varun Jain <varunjain@google.com> on 2011-09-23
Reviewed by Dimitri Glazkov.

Tests: fast/dom/scroll-element-to-rect-centered.html
       fast/dom/scroll-element-to-rect.html

* WebCore.exp.in:
* page/FrameView.cpp:
(WebCore::FrameView::scrollElementToRect):
* page/FrameView.h:
* testing/Internals.cpp:
(WebCore::Internals::scrollElementToRect):
* testing/Internals.h:
* testing/Internals.idl:

Source/WebKit/chromium: Refactor WebViewImpl::scrollFocusedNodeIntoRect to a better place and add tests
https://bugs.webkit.org/show_bug.cgi?id=68198

Patch by Varun Jain <varunjain@google.com> on 2011-09-23
Reviewed by Dimitri Glazkov.

* public/WebView.h:
(WebKit::WebView::scrollFocusedNodeIntoRect):
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::scrollFocusedNodeIntoRect):

Source/WebKit2: Refactor WebViewImpl::scrollFocusedNodeIntoRect to a better place and add tests
https://bugs.webkit.org/show_bug.cgi?id=68198

Patch by Varun Jain <varunjain@google.com> on 2011-09-23
Reviewed by Dimitri Glazkov.

* win/WebKit2.def:
* win/WebKit2CFLite.def:

LayoutTests: Refactor WebViewImpl::scrollFocusedNodeIntoRect to a better place and add tests
https://bugs.webkit.org/show_bug.cgi?id=68198

Patch by Varun Jain <varunjain@google.com> on 2011-09-23
Reviewed by Dimitri Glazkov.

* fast/dom/scroll-element-to-rect-centered-expected.txt: Added.
* fast/dom/scroll-element-to-rect-centered.html: Added.
* fast/dom/scroll-element-to-rect-expected.txt: Added.
* fast/dom/scroll-element-to-rect.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95890 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoUnreviewed, rolling out r95860.
mihaip@chromium.org [Sat, 24 Sep 2011 00:07:11 +0000 (00:07 +0000)]
Unreviewed, rolling out r95860.
http://trac.webkit.org/changeset/95860
https://bugs.webkit.org/show_bug.cgi?id=68648

Breaks overhang rendering on Chromium Mac

Source/WebCore:

* platform/chromium/ScrollbarThemeChromium.cpp:
* platform/chromium/ScrollbarThemeChromium.h:
* platform/chromium/ScrollbarThemeChromiumMac.h:
* platform/chromium/ScrollbarThemeChromiumMac.mm:
(WebCore::ScrollbarThemeChromiumMac::ScrollbarThemeChromiumMac):
(WebCore::ScrollbarThemeChromiumMac::paintOverhangAreas):

Source/WebKit/chromium:

* features.gypi:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95889 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoAdd -webkit-filter to CSSPropertyNames
dino@apple.com [Fri, 23 Sep 2011 23:43:38 +0000 (23:43 +0000)]
Add -webkit-filter to CSSPropertyNames
https://bugs.webkit.org/show_bug.cgi?id=68675

Reviewed by Simon Fraser.

Add property and rudimentary parsing for -webkit-filter. The
property value isn't preserved anywhere yet. Add
stub definition for computed style.

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
* css/CSSParser.cpp:
(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::parseFilter):
* css/CSSParser.h:
* css/CSSPropertyNames.in:
* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::applyProperty):

New test for rudimentary parsing of -webkit-filter.
Since currently only the Apple port enables the
feature, add this new test to the platform skip lists
for GTK, QT and Chromium.

* css3/filters/filter-property-expected.txt: Added.
* css3/filters/filter-property.html: Added.
* css3/filters/script-tests/TEMPLATE.html: Added.
* css3/filters/script-tests/filter-property.js: Added.
* platform/chromium/test_expectations.txt:
* platform/gtk/Skipped:
* platform/qt/Skipped:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95888 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoResolve opcodes should have value profiling.
fpizlo@apple.com [Fri, 23 Sep 2011 23:28:07 +0000 (23:28 +0000)]
Resolve opcodes should have value profiling.
https://bugs.webkit.org/show_bug.cgi?id=68723

Reviewed by Oliver Hunt.

This adds value profiling to all forms of op_resolve in the
old JIT, and patches that information into the DFG along with
performing the appropriate type propagation.

* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::parseBlock):
* dfg/DFGGraph.h:
(JSC::DFG::Graph::predict):
* dfg/DFGNode.h:
(JSC::DFG::Node::hasIdentifier):
(JSC::DFG::Node::resolveGlobalDataIndex):
(JSC::DFG::Node::hasPrediction):
* dfg/DFGPropagator.cpp:
(JSC::DFG::Propagator::propagateNodePredictions):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* jit/JITOpcodes.cpp:
(JSC::JIT::emit_op_resolve):
(JSC::JIT::emit_op_resolve_base):
(JSC::JIT::emit_op_resolve_skip):
(JSC::JIT::emit_op_resolve_global):
(JSC::JIT::emitSlow_op_resolve_global):
(JSC::JIT::emit_op_resolve_with_base):
(JSC::JIT::emit_op_resolve_with_this):
(JSC::JIT::emitSlow_op_resolve_global_dynamic):
* jit/JITStubCall.h:
(JSC::JITStubCall::callWithValueProfiling):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95887 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoRemove preserves3D() from CCLayerDelegate, replacing it by setting the
commit-queue@webkit.org [Fri, 23 Sep 2011 23:25:01 +0000 (23:25 +0000)]
Remove preserves3D() from CCLayerDelegate, replacing it by setting the
value explicitly after creating a layer, or setting its delegate.
https://bugs.webkit.org/show_bug.cgi?id=68295

Patch by Antoine Labour <piman@chromium.org> on 2011-09-23
Reviewed by James Robinson.

Covered by compositing/ layeout tests.

* platform/graphics/chromium/GraphicsLayerChromium.cpp:
(WebCore::GraphicsLayerChromium::setContentsToCanvas):
(WebCore::GraphicsLayerChromium::setContentsToMedia):
(WebCore::GraphicsLayerChromium::updateLayerPreserves3D):
(WebCore::GraphicsLayerChromium::setupContentsLayer):
* platform/graphics/chromium/GraphicsLayerChromium.h:
* platform/graphics/chromium/LayerChromium.cpp:
(WebCore::LayerChromium::LayerChromium):
* platform/graphics/chromium/LayerChromium.h:
(WebCore::LayerChromium::setPreserves3D):
(WebCore::LayerChromium::preserves3D):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95886 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agochrome.dll!WebCore::ApplyStyleCommand::applyBlockStyle ReadAV@NULL (64db547804532a84b...
commit-queue@webkit.org [Fri, 23 Sep 2011 23:24:17 +0000 (23:24 +0000)]
chrome.dll!WebCore::ApplyStyleCommand::applyBlockStyle ReadAV@NULL (64db547804532a84be2e53721e499e9e)
https://bugs.webkit.org/show_bug.cgi?id=51639

Patch by Jay Soffian <jaysoffian@gmail.com> on 2011-09-23
Reviewed by Tony Chang.

Add repro for a crash inside WebCore::ApplyStyleCommand::applyBlockStyle. Fixed by r94840.

* editing/style/justify-without-enclosing-block-expected.txt: Added.
* editing/style/justify-without-enclosing-block.xhtml: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95885 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoFix windows build.
oliver@apple.com [Fri, 23 Sep 2011 23:19:14 +0000 (23:19 +0000)]
Fix windows build.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95884 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoNote flaky test.
abarth@webkit.org [Fri, 23 Sep 2011 23:17:37 +0000 (23:17 +0000)]
Note flaky test.

* platform/chromium/test_expectations.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95883 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoVersioning.
mrowe@apple.com [Fri, 23 Sep 2011 23:16:31 +0000 (23:16 +0000)]
Versioning.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95882 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoAdd a few more possiblities to the test cases for xss denial.
commit-queue@webkit.org [Fri, 23 Sep 2011 23:12:16 +0000 (23:12 +0000)]
Add a few more possiblities to the test cases for xss denial.
https://bugs.webkit.org/show_bug.cgi?id=47120

Patch by Tom Sepez <tsepez@chromium.org> on 2011-09-23
Reviewed by Adam Barth.

* http/tests/security/xss-DENIED-document-baseURI-javascript-with-spaces-expected.txt: Added.
* http/tests/security/xss-DENIED-document-baseURI-javascript-with-spaces.html: Added.
* http/tests/security/xss-DENIED-window-open-javascript-url-with-spaces-expected.txt: Added.
* http/tests/security/xss-DENIED-window-open-javascript-url-with-spaces.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95880 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoImplicit conversion double to float in ShadowBlur::adjustBlurRadius
jchaffraix@webkit.org [Fri, 23 Sep 2011 23:11:53 +0000 (23:11 +0000)]
Implicit conversion double to float in ShadowBlur::adjustBlurRadius
https://bugs.webkit.org/show_bug.cgi?id=68722

Reviewed by Simon Fraser.

* platform/graphics/ShadowBlur.cpp:
(WebCore::ShadowBlur::adjustBlurRadius): Added 2 explicit
conversions.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95879 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[WK2] [Qt] Implement MouseDown/MouseUp/MouseMoveTo functions for WebKit2 EventSender
commit-queue@webkit.org [Fri, 23 Sep 2011 23:02:02 +0000 (23:02 +0000)]
[WK2] [Qt] Implement MouseDown/MouseUp/MouseMoveTo functions for WebKit2 EventSender
https://bugs.webkit.org/show_bug.cgi?id=68556

Implement the MouseDown/MouseUp/MouseMoveTo functions on Qt platform.

Source/WebKit2:

Patch by Chang Shu <cshu@webkit.org> on 2011-09-23
Reviewed by Darin Adler.

* Shared/API/c/WKGeometry.h:
(operator==):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::mouseEventSyncForTesting): initialize "handled"

Tools:

Patch by Chang Shu <cshu@webkit.org> on 2011-09-23
Reviewed by Darin Adler.

* WebKitTestRunner/EventSenderProxy.h:
* WebKitTestRunner/InjectedBundle/EventSendingController.h:
* WebKitTestRunner/PlatformWebView.h:
* WebKitTestRunner/mac/EventSenderProxy.mm:
(WTR::EventSenderProxy::EventSenderProxy):
(WTR::EventSenderProxy::leapForward):
* WebKitTestRunner/qt/EventSenderProxyQt.cpp:
(WTR::EventSenderProxy::EventSenderProxy):
(WTR::getMouseButton):
(WTR::getModifiers):
(WTR::EventSenderProxy::updateClickCountForButton):
(WTR::EventSenderProxy::createGraphicsSceneMouseEvent):
(WTR::EventSenderProxy::mouseDown):
(WTR::EventSenderProxy::mouseUp):
(WTR::EventSenderProxy::mouseMoveTo):
(WTR::EventSenderProxy::leapForward):
(WTR::EventSenderProxy::sendOrQueueEvent):
(WTR::EventSenderProxy::replaySavedEvents):
* WebKitTestRunner/qt/PlatformWebViewQt.cpp:
(WTR::PlatformWebView::postEvent):
* WebKitTestRunner/qt/WebKitTestRunner.pro:

LayoutTests:

Unskip passed tests.

Patch by Chang Shu <cshu@webkit.org> on 2011-09-23
Reviewed by Darin Adler.

* platform/qt-wk2/Skipped:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95878 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoSource/JavaScriptCore: Strict mode does not work in non-trivial nested functions.
barraclough@apple.com [Fri, 23 Sep 2011 22:59:18 +0000 (22:59 +0000)]
Source/JavaScriptCore: Strict mode does not work in non-trivial nested functions.
https://bugs.webkit.org/show_bug.cgi?id=68740

Reviewed by Oliver Hunt.

Function-info caching does not preserve all state that it should.

* parser/JSParser.cpp:
(JSC::JSParser::Scope::saveFunctionInfo):
(JSC::JSParser::Scope::restoreFunctionInfo):
(JSC::JSParser::parseFunctionInfo):
* parser/SourceProviderCacheItem.h:

LayoutTests: gh@apple.com>

Strict mode does not work in non-trivial nested functions.
https://bugs.webkit.org/show_bug.cgi?id=68740

Reviewed by Oliver Hunt.

Function-info caching does not preserve all state that it should.

* fast/js/nested-functions-expected.txt: Added.
* fast/js/nested-functions.html: Added.
* fast/js/script-tests/nested-functions.js: Added.
(runTests.test1):
(runTests.test2):
(runTests.test3):
(runTests):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95877 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoValueToDouble handling in prediction propagation should be ASSERT_NOT_REACHED
fpizlo@apple.com [Fri, 23 Sep 2011 22:58:34 +0000 (22:58 +0000)]
ValueToDouble handling in prediction propagation should be ASSERT_NOT_REACHED
https://bugs.webkit.org/show_bug.cgi?id=68724

Reviewed by Oliver Hunt.

* dfg/DFGPropagator.cpp:
(JSC::DFG::Propagator::propagateNodePredictions):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95876 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[chromium] Make the layout test script's kill timeout proportional to --time-out-ms
commit-queue@webkit.org [Fri, 23 Sep 2011 22:47:24 +0000 (22:47 +0000)]
[chromium] Make the layout test script's kill timeout proportional to --time-out-ms
https://bugs.webkit.org/show_bug.cgi?id=68026

Patch by Lei Zhang <thestig@chromium.org> on 2011-09-23
Reviewed by Dirk Pranke.

* Scripts/webkitpy/layout_tests/port/chromium.py:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95875 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago<rdar://problem/10178576> REGRESSION (r95391): Crash in -[WebCascadeList objectAtInde...
mitz@apple.com [Fri, 23 Sep 2011 22:45:17 +0000 (22:45 +0000)]
<rdar://problem/10178576> REGRESSION (r95391): Crash in -[WebCascadeList objectAtIndex:] when a font-family list contains missing fonts
https://bugs.webkit.org/show_bug.cgi?id=68737

Reviewed by Darin Adler.

Source/WebCore:

Test: fast/text/combining-character-sequence-fallback-crash.html

* platform/graphics/mac/ComplexTextControllerCoreText.mm:
(-[WebCascadeList initWithFont:WebCore::character:]): Changed to intialize _count to the exact
number of FontData instances in the fallback list rather than the number of font families in the
font description.

LayoutTests:

* fast/text/combining-character-sequence-fallback-crash-expected.txt: Added.
* fast/text/combining-character-sequence-fallback-crash.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95874 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[chromium] Remove WEBWIDGET_HAS_ANIMATE_CHANGES #define
adamk@chromium.org [Fri, 23 Sep 2011 22:44:19 +0000 (22:44 +0000)]
[chromium] Remove WEBWIDGET_HAS_ANIMATE_CHANGES #define
https://bugs.webkit.org/show_bug.cgi?id=68720

Reviewed by James Robinson.

References to this macro were removed in http://crrev.com/102314.

* public/WebWidget.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95873 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoBuild fix.
oliver@apple.com [Fri, 23 Sep 2011 22:41:46 +0000 (22:41 +0000)]
Build fix.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95872 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[Chromium] Crash in WebCore::DatabaseObserver
commit-queue@webkit.org [Fri, 23 Sep 2011 22:34:17 +0000 (22:34 +0000)]
[Chromium] Crash in WebCore::DatabaseObserver
https://bugs.webkit.org/show_bug.cgi?id=67805

Patch by Stephen Chenney <schenney@chromium.org> on 2011-09-23
Reviewed by David Levin.

* src/DatabaseObserver.cpp:
(WebCore::DatabaseObserver::canEstablishDatabase): Added a check for a
null frame or page, and return false if null. Investigated
changing the fall-through return value to false but decided against
it given the way the code is used and existing default values for
related code. Reproduction and testing depends on having a document
with no frame or no page, which sometimes happens in practice but is
hard to construct explicitly.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95871 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[Chromium] Fix CSS 3D corner anti-aliasing.
commit-queue@webkit.org [Fri, 23 Sep 2011 22:28:55 +0000 (22:28 +0000)]
[Chromium] Fix CSS 3D corner anti-aliasing.
https://bugs.webkit.org/show_bug.cgi?id=68087

Patch by David Reveman <reveman@chromium.org> on 2011-09-23
Reviewed by James Robinson.

Source/WebCore:

Render sharp corners more correctly by adding bounding box
edges to anti-aliasing shaders.

Test: platform/chromium/compositing/3d-corners.html

* platform/graphics/chromium/ShaderChromium.cpp:
(WebCore::FragmentShaderRGBATexAlphaAA::getShaderString):
(WebCore::FragmentShaderRGBATexClampAlphaAA::getShaderString):
(WebCore::FragmentShaderRGBATexClampSwizzleAlphaAA::getShaderString):
(WebCore::FragmentShaderRGBATexAlphaMaskAA::getShaderString):
* platform/graphics/chromium/cc/CCRenderSurface.cpp:
(WebCore::CCRenderSurface::drawLayer):
(WebCore::CCRenderSurface::drawSurface):
* platform/graphics/chromium/cc/CCRenderSurface.h:
* platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
(WebCore::CCTiledLayerImpl::draw):
(WebCore::CCTiledLayerImpl::drawTiles):
* platform/graphics/chromium/cc/CCTiledLayerImpl.h:

LayoutTests:

Add a test to check sharp corner rendering of CSS 3D transformed
elements.

* platform/chromium-gpu-linux/compositing/flat-with-transformed-child-expected.checksum: Removed.
* platform/chromium-gpu-linux/compositing/flat-with-transformed-child-expected.png: Added.
* platform/chromium-gpu-linux/platform/chromium/compositing/3d-corners-expected.png: Added.
* platform/chromium-gpu-linux/platform/chromium/compositing/backface-visibility-transformed-expected.png:
* platform/chromium-gpu-linux/platform/chromium/compositing/perpendicular-layer-sorting-expected.png:
* platform/chromium/compositing/3d-corners-expected.txt: Added.
* platform/chromium/compositing/3d-corners.html: Added.
* platform/chromium/test_expectations.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95870 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoAdd failing expectations for tests added by r95852.
mihaip@chromium.org [Fri, 23 Sep 2011 22:22:20 +0000 (22:22 +0000)]
Add failing expectations for tests added by r95852.

* platform/chromium/test_expectations.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95869 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoDFG implementation of PutScopedVar corrupts register allocation
oliver@apple.com [Fri, 23 Sep 2011 22:13:10 +0000 (22:13 +0000)]
DFG implementation of PutScopedVar corrupts register allocation
https://bugs.webkit.org/show_bug.cgi?id=68735

Patch by Filip Pizlo <fpizlo@apple.com> on 2011-09-23
Reviewed by Oliver Hunt.

* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compile):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95868 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoUpdating now-passing Layout test.
barraclough@apple.com [Fri, 23 Sep 2011 22:10:57 +0000 (22:10 +0000)]
Updating now-passing Layout test.

Rubber stamped by geoff garen

* fast/js/Object-getOwnPropertyNames-expected.txt:
* fast/js/script-tests/Object-getOwnPropertyNames.js:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95867 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoMake write barriers actually do something when enabled
oliver@apple.com [Fri, 23 Sep 2011 22:05:24 +0000 (22:05 +0000)]
Make write barriers actually do something when enabled
https://bugs.webkit.org/show_bug.cgi?id=68717

Reviewed by Geoffrey Garen.

../../../../Volumes/Data/git/WebKit/OpenSource/Source/JavaScriptCore:

Add a basic card marking style write barrier to JSC (currently
turned off).  This requires two scratch registers in the JIT
so there was some register re-arranging to satisfy that requirement.
Happily this produced a minor perf bump in sunspider (~0.5%).

Turning the barriers on causes an overall regression of around 1.5%

* JavaScriptCore.exp:
* JavaScriptCore.xcodeproj/project.pbxproj:
* assembler/MacroAssemblerX86Common.h:
(JSC::MacroAssemblerX86Common::store8):
* assembler/X86Assembler.h:
(JSC::X86Assembler::movb_i8m):
* dfg/DFGJITCodeGenerator.cpp:
(JSC::DFG::JITCodeGenerator::isKnownNotCell):
(JSC::DFG::JITCodeGenerator::writeBarrier):
(JSC::DFG::JITCodeGenerator::markCellCard):
(JSC::DFG::JITCodeGenerator::cachedPutById):
* dfg/DFGJITCodeGenerator.h:
* dfg/DFGRepatch.cpp:
(JSC::DFG::tryCachePutByID):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* heap/CardSet.h: Added.
(JSC::CardSet::CardSet):
(JSC::::cardForAtom):
(JSC::::cardMarkedForAtom):
(JSC::::markCardForAtom):
* heap/Heap.cpp:
* heap/Heap.h:
(JSC::Heap::addressOfCardFor):
(JSC::Heap::writeBarrierFastCase):
* heap/MarkedBlock.h:
(JSC::MarkedBlock::setDirtyObject):
(JSC::MarkedBlock::addressOfCardFor):
(JSC::MarkedBlock::offsetOfCards):
* jit/JIT.h:
* jit/JITPropertyAccess.cpp:
(JSC::JIT::emit_op_put_by_val):
(JSC::JIT::emit_op_put_by_id):
(JSC::JIT::privateCompilePutByIdTransition):
(JSC::JIT::emit_op_put_scoped_var):
(JSC::JIT::emit_op_put_global_var):
(JSC::JIT::emitWriteBarrier):
* jit/JITPropertyAccess32_64.cpp:
(JSC::JIT::emit_op_put_by_val):
(JSC::JIT::emit_op_put_by_id):
(JSC::JIT::emitSlow_op_put_by_id):
(JSC::JIT::privateCompilePutByIdTransition):
(JSC::JIT::emit_op_put_scoped_var):
(JSC::JIT::emit_op_put_global_var):

../../../../Volumes/Data/git/WebKit/OpenSource/Source/WebCore:

Add a forwarding header, and fix an evaluation ordering
issue that shows up if you try to use write barriers.

* ForwardingHeaders/heap/CardSet.h: Added.
* bindings/js/JSEventListener.h:
(WebCore::JSEventListener::jsFunction):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95865 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agohttps://bugs.webkit.org/show_bug.cgi?id=68077
commit-queue@webkit.org [Fri, 23 Sep 2011 21:59:51 +0000 (21:59 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=68077
SH4 assemblers doesn't refer to executable memory handle.

Patch by Thouraya ANDOLSI <thouraya.andolsi@st.com> on 2011-09-23
Reviewed by Gavin Barraclough.

* assembler/MacroAssemblerSH4.h:
(JSC::MacroAssemblerSH4::branch8):
* assembler/SH4Assembler.h:
(JSC::SH4Assembler::executableCopy):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95864 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoAvoid updating compositing state during paint
jamesr@google.com [Fri, 23 Sep 2011 21:51:58 +0000 (21:51 +0000)]
Avoid updating compositing state during paint
https://bugs.webkit.org/show_bug.cgi?id=68727

Reviewed by Simon Fraser.

We shouldn't update our compositing state in the middle of a paint. The call to
updateCompositingAndLayerListsIfNeeded() was added to RenderLayer::paintLayer in r45715, which was intended to
fix this exact issue. Based off the ChangeLog entries, I think that this was just a typo.

* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::paintLayer):
(WebCore::RenderLayer::updateCompositingAndLayerListsIfNeeded):
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::updateCompositingLayers):
* rendering/RenderLayerCompositor.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95863 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoUnreviewed. Chromium rebaselines for r95857.
inferno@chromium.org [Fri, 23 Sep 2011 21:51:31 +0000 (21:51 +0000)]
Unreviewed. Chromium rebaselines for r95857.

* platform/chromium-linux/fast/ruby/ruby-text-before-after-content-expected.png: Added.
* platform/chromium-win/fast/ruby/ruby-text-before-after-content-expected.png: Added.
* platform/chromium-win/fast/ruby/ruby-text-before-after-content-expected.txt: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95862 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agooccasional crash in Chromium in dispatching keyEvent
commit-queue@webkit.org [Fri, 23 Sep 2011 21:48:02 +0000 (21:48 +0000)]
occasional crash in Chromium in dispatching keyEvent
https://bugs.webkit.org/show_bug.cgi?id=67941

Patch by Scott Graham <scottmg@chromium.org> on 2011-09-23
Reviewed by Darin Fisher.

Use focusedWebCoreNode() to handle null document for frame when
retrieving focused node in handling keyEvent.

* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::keyEvent):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95861 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoRefactor paintOverhangAreas to allow non-Mac Chromium platforms to reuse code
fsamuel@chromium.org [Fri, 23 Sep 2011 21:39:52 +0000 (21:39 +0000)]
Refactor paintOverhangAreas to allow non-Mac Chromium platforms to reuse code
https://bugs.webkit.org/show_bug.cgi?id=68648

Reviewed by Dimitri Glazkov.

Source/WebCore:

No new tests because there's no change in functionality (yet).

* platform/chromium/ScrollbarThemeChromium.cpp:
(WebCore::ScrollbarThemeChromium::ScrollbarThemeChromium):
(WebCore::ScrollbarThemeChromium::~ScrollbarThemeChromium):
(WebCore::ScrollbarThemeChromium::paintOverhangAreas):
* platform/chromium/ScrollbarThemeChromium.h:
* platform/chromium/ScrollbarThemeChromiumMac.h:
* platform/chromium/ScrollbarThemeChromiumMac.mm:
(WebCore::ScrollbarThemeChromiumMac::ScrollbarThemeChromiumMac):

Source/WebKit/chromium:

* features.gypi:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95860 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoremove physical flex-flow values to match the updated spec
ojan@chromium.org [Fri, 23 Sep 2011 21:35:30 +0000 (21:35 +0000)]
remove physical flex-flow values to match the updated spec
https://bugs.webkit.org/show_bug.cgi?id=68728

Reviewed by Tony Chang.

Source/WebCore:

* css/CSSParser.cpp:
(WebCore::CSSParser::parseValue):
* css/CSSPrimitiveValueMappings.h:
(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
(WebCore::CSSPrimitiveValue::operator EFlexFlow):
* css/CSSValueKeywords.in:
* rendering/style/RenderStyleConstants.h:

LayoutTests:

* css3/flexbox/css-properties-expected.txt:
* css3/flexbox/script-tests/css-properties.js:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95859 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoSource/WebCore: Style not updated for :before, :after content
inferno@chromium.org [Fri, 23 Sep 2011 21:01:01 +0000 (21:01 +0000)]
Source/WebCore: Style not updated for :before, :after content
in ruby text.
https://bugs.webkit.org/show_bug.cgi?id=68625

Reviewed by Dave Hyatt.

Test: fast/ruby/ruby-text-before-after-content.html

* rendering/RenderRubyText.cpp:
(WebCore::RenderRubyText::updateBeforeAfterContent):
* rendering/RenderRubyText.h:

LayoutTests: Style not updated for :before, :after content
in ruby text.
https://bugs.webkit.org/show_bug.cgi?id=68625

Reviewed by Dave Hyatt.

* fast/ruby/ruby-text-before-after-content-expected.png: Added.
* fast/ruby/ruby-text-before-after-content-expected.txt: Added.
* fast/ruby/ruby-text-before-after-content.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95857 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agorefactor RenderFlexibleBox to use flex-flow aware methods
ojan@chromium.org [Fri, 23 Sep 2011 20:32:18 +0000 (20:32 +0000)]
refactor RenderFlexibleBox to use flex-flow aware methods
https://bugs.webkit.org/show_bug.cgi?id=68665

Reviewed by Tony Chang.

This is just a refactor. Just move the all the code that needs to
be flow aware into helper functions. Actually making them flow-aware
can be done in a followup patch.

* rendering/RenderBlock.cpp:
* rendering/RenderBlock.h:
Moved setLogicalLocationForChild into RenderFlexibleBox since that was the only caller.
* rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::hasOrthogonalFlow):
(WebCore::RenderFlexibleBox::isHorizontalFlow):
(WebCore::RenderFlexibleBox::isLeftToRightFlow):
(WebCore::RenderFlexibleBox::setFlowAwareLogicalHeight):
(WebCore::RenderFlexibleBox::flowAwareLogicalHeightForChild):
(WebCore::RenderFlexibleBox::flowAwareLogicalWidthForChild):
(WebCore::RenderFlexibleBox::flowAwareLogicalHeight):
(WebCore::RenderFlexibleBox::flowAwareContentLogicalWidth):
(WebCore::RenderFlexibleBox::flowAwareAvailableLogicalWidth):
(WebCore::RenderFlexibleBox::flowAwareBorderStart):
(WebCore::RenderFlexibleBox::flowAwareBorderBefore):
(WebCore::RenderFlexibleBox::flowAwareBorderAfter):
(WebCore::RenderFlexibleBox::flowAwarePaddingStart):
(WebCore::RenderFlexibleBox::flowAwarePaddingBefore):
(WebCore::RenderFlexibleBox::flowAwarePaddingAfter):
(WebCore::RenderFlexibleBox::flowAwareMarginStartForChild):
(WebCore::RenderFlexibleBox::flowAwareMarginBeforeForChild):
(WebCore::RenderFlexibleBox::flowAwareMarginAfterForChild):
(WebCore::RenderFlexibleBox::setFlowAwareMarginStartForChild):
(WebCore::RenderFlexibleBox::setFlowAwareMarginEndForChild):
(WebCore::RenderFlexibleBox::setFlowAwareLogicalLocationForChild):
(WebCore::RenderFlexibleBox::logicalBorderAndPaddingWidthForChild):
(WebCore::RenderFlexibleBox::logicalScrollbarHeightForChild):
(WebCore::RenderFlexibleBox::marginStartStyleForChild):
(WebCore::RenderFlexibleBox::marginEndStyleForChild):
(WebCore::RenderFlexibleBox::preferredLogicalContentWidthForFlexItem):
(WebCore::RenderFlexibleBox::layoutInlineDirection):
(WebCore::RenderFlexibleBox::logicalPositiveFlexForChild):
(WebCore::RenderFlexibleBox::logicalNegativeFlexForChild):
(WebCore::RenderFlexibleBox::computePreferredLogicalWidth):
(WebCore::RenderFlexibleBox::runFreeSpaceAllocationAlgorithmInlineDirection):
(WebCore::RenderFlexibleBox::setLogicalOverrideSize):
(WebCore::RenderFlexibleBox::layoutAndPlaceChildrenInlineDirection):
* rendering/RenderFlexibleBox.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95856 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agohttps://bugs.webkit.org/show_bug.cgi?id=68719
hyatt@apple.com [Fri, 23 Sep 2011 20:25:11 +0000 (20:25 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=68719

Push through multiple regions when an object doesn't fit in any of them. Unlike with pages and
columns, when regions have a non-uniform height, we may need to push through multiple regions
in order to find one that fits.

Added an optimization for quickly noticing if regions do have a uniform height so that we can
treat them like columns and pages if so.

Also fixed the end line matchup to properly null out endLine when no next line box exists. The new
layout tests I wrote to cover this feature exposed this crasher, so fixing it in order to land
the new tests.

Reviewed by Anders Carlsson.

Source/WebCore:

Added new tests in fast/regions.

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::adjustForUnsplittableChild):
(WebCore::RenderBlock::pushToNextPageWithMinimumLogicalHeight):
(WebCore::RenderBlock::adjustLinePositionForPagination):
* rendering/RenderBlock.h:
* rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlock::matchedEndLine):
* rendering/RenderFlowThread.cpp:
(WebCore::RenderFlowThread::RenderFlowThread):
(WebCore::RenderFlowThread::layout):
* rendering/RenderFlowThread.h:

LayoutTests:

* fast/regions/webkit-flow-float-pushed-to-last-region.html: Added.
* fast/regions/webkit-flow-float-unable-to-push.html: Added.
* platform/mac/fast/regions/webkit-flow-float-pushed-to-last-region-expected.png: Added.
* platform/mac/fast/regions/webkit-flow-float-pushed-to-last-region-expected.txt: Added.
* platform/mac/fast/regions/webkit-flow-float-unable-to-push-expected.png: Added.
* platform/mac/fast/regions/webkit-flow-float-unable-to-push-expected.txt: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95855 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoPutScopedVar nodes should report that it has a var number
oliver@apple.com [Fri, 23 Sep 2011 20:21:41 +0000 (20:21 +0000)]
PutScopedVar nodes should report that it has a var number
https://bugs.webkit.org/show_bug.cgi?id=68721

Reviewed by Anders Carlsson.

Another assertion fix.

* dfg/DFGNode.h:
(JSC::DFG::Node::hasVarNumber):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95854 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoMove WebHitTestResult files to Shared/ in the Xcode project
andersca@apple.com [Fri, 23 Sep 2011 20:11:05 +0000 (20:11 +0000)]
Move WebHitTestResult files to Shared/ in the Xcode project
https://bugs.webkit.org/show_bug.cgi?id=68718

Reviewed by Sam Weinig.

* WebKit2.xcodeproj/project.pbxproj:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95853 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoRedrawing dirty parts of a large table is very slow
jchaffraix@webkit.org [Fri, 23 Sep 2011 19:56:21 +0000 (19:56 +0000)]
Redrawing dirty parts of a large table is very slow
https://bugs.webkit.org/show_bug.cgi?id=64546

Patch by Konstantin Scheglov <scheglov@google.com> on 2011-09-23
Reviewed by David Hyatt.

Source/WebCore:

Move CollapsedBorderValues into RenderTable.h.
Calculate collapsed borders only once and re-use during paintObject().
Invalidate cache when cell, row, row group, col, col group or table border is changed.

Tests: fast/table/border-collapsing/cached-cell-append.html
       fast/table/border-collapsing/cached-cell-remove.html
       fast/table/border-collapsing/cached-change-cell-border-color.html
       fast/table/border-collapsing/cached-change-cell-border-width.html
       fast/table/border-collapsing/cached-change-col-border-color.html
       fast/table/border-collapsing/cached-change-col-border-width.html
       fast/table/border-collapsing/cached-change-colgroup-border-color.html
       fast/table/border-collapsing/cached-change-colgroup-border-width.html
       fast/table/border-collapsing/cached-change-row-border-color.html
       fast/table/border-collapsing/cached-change-row-border-width.html
       fast/table/border-collapsing/cached-change-table-border-color.html
       fast/table/border-collapsing/cached-change-table-border-width.html
       fast/table/border-collapsing/cached-change-tbody-border-color.html
       fast/table/border-collapsing/cached-change-tbody-border-width.html

* rendering/RenderTable.cpp:
(WebCore::RenderTable::RenderTable):
(WebCore::RenderTable::styleDidChange): Invalidate cache on border change.
(WebCore::RenderTable::layout): Invalidate cache if layout changed.
(WebCore::RenderTable::recalcCollapsedBorders): Ensures that cache is valid.
(WebCore::RenderTable::paintObject): Use cached collapsed borders.
* rendering/RenderTable.h:
(WebCore::RenderTable::invalidateCollapsedBorders): Accessor to mark cache invalid.
(WebCore::RenderTable::currentBorderValue): Rename to use word "value".
* rendering/RenderTableCell.cpp:
(WebCore::RenderTableCell::styleDidChange): If border changed, invalidate cache.

Rename to use word "value".
(WebCore::addBorderStyle):
(WebCore::RenderTableCell::collectBorderValues):
(WebCore::compareBorderValuesForQSort):
(WebCore::RenderTableCell::sortBorderValues):
(WebCore::RenderTableCell::paintCollapsedBorder):
* rendering/RenderTableCell.h:

If border changed, invalidate cache.
* rendering/RenderTableCol.cpp:
(WebCore::RenderTableCol::styleDidChange):
* rendering/RenderTableCol.h:
* rendering/RenderTableRow.cpp:
(WebCore::RenderTableRow::styleDidChange):
* rendering/RenderTableSection.cpp:
(WebCore::RenderTableSection::styleDidChange):

LayoutTests:

Tests for invalidating collapsed borders cache.

* fast/table/border-collapsing/cached-cell-append-expected.png: Added.
* fast/table/border-collapsing/cached-cell-append-expected.txt: Added.
* fast/table/border-collapsing/cached-cell-append.html: Added.
* fast/table/border-collapsing/cached-cell-remove-expected.png: Added.
* fast/table/border-collapsing/cached-cell-remove-expected.txt: Added.
* fast/table/border-collapsing/cached-cell-remove.html: Added.
* fast/table/border-collapsing/cached-change-cell-border-color-expected.png: Added.
* fast/table/border-collapsing/cached-change-cell-border-color-expected.txt: Added.
* fast/table/border-collapsing/cached-change-cell-border-color.html: Added.
* fast/table/border-collapsing/cached-change-cell-border-width-expected.png: Added.
* fast/table/border-collapsing/cached-change-cell-border-width-expected.txt: Added.
* fast/table/border-collapsing/cached-change-cell-border-width.html: Added.
* fast/table/border-collapsing/cached-change-col-border-color-expected.png: Added.
* fast/table/border-collapsing/cached-change-col-border-color-expected.txt: Added.
* fast/table/border-collapsing/cached-change-col-border-color.html: Added.
* fast/table/border-collapsing/cached-change-col-border-width-expected.png: Added.
* fast/table/border-collapsing/cached-change-col-border-width-expected.txt: Added.
* fast/table/border-collapsing/cached-change-col-border-width.html: Added.
* fast/table/border-collapsing/cached-change-colgroup-border-color-expected.png: Added.
* fast/table/border-collapsing/cached-change-colgroup-border-color-expected.txt: Added.
* fast/table/border-collapsing/cached-change-colgroup-border-color.html: Added.
* fast/table/border-collapsing/cached-change-colgroup-border-width-expected.png: Added.
* fast/table/border-collapsing/cached-change-colgroup-border-width-expected.txt: Added.
* fast/table/border-collapsing/cached-change-colgroup-border-width.html: Added.
* fast/table/border-collapsing/cached-change-row-border-color-expected.png: Added.
* fast/table/border-collapsing/cached-change-row-border-color-expected.txt: Added.
* fast/table/border-collapsing/cached-change-row-border-color.html: Added.
* fast/table/border-collapsing/cached-change-row-border-width-expected.png: Added.
* fast/table/border-collapsing/cached-change-row-border-width-expected.txt: Added.
* fast/table/border-collapsing/cached-change-row-border-width.html: Added.
* fast/table/border-collapsing/cached-change-table-border-color-expected.png: Added.
* fast/table/border-collapsing/cached-change-table-border-color-expected.txt: Added.
* fast/table/border-collapsing/cached-change-table-border-color.html: Added.
* fast/table/border-collapsing/cached-change-table-border-width-expected.png: Added.
* fast/table/border-collapsing/cached-change-table-border-width-expected.txt: Added.
* fast/table/border-collapsing/cached-change-table-border-width.html: Added.
* fast/table/border-collapsing/cached-change-tbody-border-color-expected.png: Added.
* fast/table/border-collapsing/cached-change-tbody-border-color-expected.txt: Added.
* fast/table/border-collapsing/cached-change-tbody-border-color.html: Added.
* fast/table/border-collapsing/cached-change-tbody-border-width-expected.png: Added.
* fast/table/border-collapsing/cached-change-tbody-border-width-expected.txt: Added.
* fast/table/border-collapsing/cached-change-tbody-border-width.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95852 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoAdd a bunch of unhandled node types to the propagator
oliver@apple.com [Fri, 23 Sep 2011 19:48:26 +0000 (19:48 +0000)]
Add a bunch of unhandled node types to the propagator
https://bugs.webkit.org/show_bug.cgi?id=68716

Reviewed by Darin Adler.

Remove the ASSERT_NOT_REACHED() default for debug builds in the
prediction propagator, this way unhandled nodes will just cause
compile time failures rather than failing at some point in the
future.

* dfg/DFGPropagator.cpp:
(JSC::DFG::Propagator::propagateNodePredictions):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95851 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoupdate layout_tests to account for new default of use_skia=1
mihaip@chromium.org [Fri, 23 Sep 2011 19:46:50 +0000 (19:46 +0000)]
update layout_tests to account for new default of use_skia=1
https://bugs.webkit.org/show_bug.cgi?id=68698

Rolls Source/WebKit/chromium/DEPS to pick up new default use_skia=1
from http://src.chromium.org/viewvc/chrome?view=rev&revision=102532
(Chromium-on-Mac now uses the Skia graphics library instead of
Core Graphics).

Also updates layout_test code to work with that change.

Patch by Elliot Poger <epoger@google.com> on 2011-09-23
Reviewed by Mihai Parparita.

Source/WebKit/chromium:

* DEPS:

Tools:

* Scripts/webkitpy/layout_tests/port/chromium_mac.py:
* Scripts/webkitpy/layout_tests/port/chromium_mac_unittest.py:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95850 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoAdd static version of JSCell::visitChildren
mhahnenberg@apple.com [Fri, 23 Sep 2011 19:40:09 +0000 (19:40 +0000)]
Add static version of JSCell::visitChildren
https://bugs.webkit.org/show_bug.cgi?id=68404

Reviewed by Darin Adler.

.:

In this patch we just extract the bodies of the virtual visitChildren methods
throughout the JSCell inheritance hierarchy out into static methods, which are
now called from the virtual methods.  This is an intermediate step in trying to
move the virtual-ness of visitChildren into our own custom vtable stored in
ClassInfo.  We need to convert the methods to static methods in order to be
able to more easily store and refer to them in our custom vtable since normal
member methods store some implicit information in their types, making it
impossible to store them generically in ClassInfo.

* Source/autotools/symbols.filter:

Source/JavaScriptCore:

In this patch we just extract the bodies of the virtual visitChildren methods
throughout the JSCell inheritance hierarchy out into static methods, which are
now called from the virtual methods.  This is an intermediate step in trying to
move the virtual-ness of visitChildren into our own custom vtable stored in
ClassInfo.  We need to convert the methods to static methods in order to be
able to more easily store and refer to them in our custom vtable since normal
member methods store some implicit information in their types, making it
impossible to store them generically in ClassInfo.

* API/JSCallbackObject.h:
(JSC::JSCallbackObject::visitChildrenVirtual):
(JSC::JSCallbackObject::visitChildren):
* JavaScriptCore.exp:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
* debugger/DebuggerActivation.cpp:
(JSC::DebuggerActivation::visitChildrenVirtual):
(JSC::DebuggerActivation::visitChildren):
* debugger/DebuggerActivation.h:
* heap/MarkStack.cpp:
(JSC::SlotVisitor::visitChildren):
(JSC::SlotVisitor::drain):
* runtime/Arguments.cpp:
(JSC::Arguments::visitChildrenVirtual):
(JSC::Arguments::visitChildren):
* runtime/Arguments.h:
* runtime/Executable.cpp:
(JSC::EvalExecutable::visitChildrenVirtual):
(JSC::EvalExecutable::visitChildren):
(JSC::ProgramExecutable::visitChildrenVirtual):
(JSC::ProgramExecutable::visitChildren):
(JSC::FunctionExecutable::visitChildrenVirtual):
(JSC::FunctionExecutable::visitChildren):
* runtime/Executable.h:
* runtime/GetterSetter.cpp:
(JSC::GetterSetter::visitChildrenVirtual):
(JSC::GetterSetter::visitChildren):
* runtime/GetterSetter.h:
* runtime/JSActivation.cpp:
(JSC::JSActivation::visitChildrenVirtual):
(JSC::JSActivation::visitChildren):
* runtime/JSActivation.h:
* runtime/JSArray.cpp:
(JSC::JSArray::visitChildrenVirtual):
(JSC::JSArray::visitChildren):
* runtime/JSArray.h:
* runtime/JSBoundFunction.cpp:
(JSC::JSBoundFunction::visitChildrenVirtual):
(JSC::JSBoundFunction::visitChildren):
* runtime/JSBoundFunction.h:
* runtime/JSCell.h:
(JSC::JSCell::visitChildrenVirtual):
(JSC::JSCell::visitChildren):
* runtime/JSFunction.cpp:
(JSC::JSFunction::visitChildrenVirtual):
(JSC::JSFunction::visitChildren):
* runtime/JSFunction.h:
* runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::visitChildrenVirtual):
(JSC::JSGlobalObject::visitChildren):
* runtime/JSGlobalObject.h:
* runtime/JSObject.cpp:
(JSC::JSObject::visitChildrenVirtual):
(JSC::JSObject::visitChildren):
* runtime/JSObject.h:
(JSC::JSObject::visitChildrenDirect):
* runtime/JSPropertyNameIterator.cpp:
(JSC::JSPropertyNameIterator::visitChildrenVirtual):
(JSC::JSPropertyNameIterator::visitChildren):
* runtime/JSPropertyNameIterator.h:
* runtime/JSStaticScopeObject.cpp:
(JSC::JSStaticScopeObject::visitChildrenVirtual):
(JSC::JSStaticScopeObject::visitChildren):
* runtime/JSStaticScopeObject.h:
* runtime/JSWrapperObject.cpp:
(JSC::JSWrapperObject::visitChildrenVirtual):
(JSC::JSWrapperObject::visitChildren):
* runtime/JSWrapperObject.h:
* runtime/NativeErrorConstructor.cpp:
(JSC::NativeErrorConstructor::visitChildrenVirtual):
(JSC::NativeErrorConstructor::visitChildren):
* runtime/NativeErrorConstructor.h:
* runtime/RegExpObject.cpp:
(JSC::RegExpObject::visitChildrenVirtual):
(JSC::RegExpObject::visitChildren):
* runtime/RegExpObject.h:
* runtime/ScopeChain.cpp:
(JSC::ScopeChainNode::visitChildrenVirtual):
(JSC::ScopeChainNode::visitChildren):
* runtime/ScopeChain.h:
* runtime/Structure.cpp:
(JSC::Structure::visitChildrenVirtual):
(JSC::Structure::visitChildren):
* runtime/Structure.h:
* runtime/StructureChain.cpp:
(JSC::StructureChain::visitChildrenVirtual):
(JSC::StructureChain::visitChildren):
* runtime/StructureChain.h:

Source/JavaScriptGlue:

In this patch we just extract the bodies of the virtual visitChildren methods
throughout the JSCell inheritance hierarchy out into static methods, which are
now called from the virtual methods.  This is an intermediate step in trying to
move the virtual-ness of visitChildren into our own custom vtable stored in
ClassInfo.  We need to convert the methods to static methods in order to be
able to more easily store and refer to them in our custom vtable since normal
member methods store some implicit information in their types, making it
impossible to store them generically in ClassInfo.

* UserObjectImp.cpp:
(UserObjectImp::visitChildrenVirtual):
(UserObjectImp::visitChildren):
* UserObjectImp.h:

Source/WebCore:

No new tests.

In this patch we just extract the bodies of the virtual visitChildren methods
throughout the JSCell inheritance hierarchy out into static methods, which are
now called from the virtual methods.  This is an intermediate step in trying to
move the virtual-ness of visitChildren into our own custom vtable stored in
ClassInfo.  We need to convert the methods to static methods in order to be
able to more easily store and refer to them in our custom vtable since normal
member methods store some implicit information in their types, making it
impossible to store them generically in ClassInfo.

* WebCore.exp.in:
* bindings/js/JSAttrCustom.cpp:
(WebCore::JSAttr::visitChildrenVirtual):
(WebCore::JSAttr::visitChildren):
* bindings/js/JSAudioContextCustom.cpp:
(WebCore::JSAudioContext::visitChildrenVirtual):
(WebCore::JSAudioContext::visitChildren):
* bindings/js/JSCSSRuleCustom.cpp:
(WebCore::JSCSSRule::visitChildrenVirtual):
(WebCore::JSCSSRule::visitChildren):
* bindings/js/JSCSSStyleDeclarationCustom.cpp:
(WebCore::JSCSSStyleDeclaration::visitChildrenVirtual):
(WebCore::JSCSSStyleDeclaration::visitChildren):
* bindings/js/JSCanvasRenderingContextCustom.cpp:
(WebCore::JSCanvasRenderingContext::visitChildrenVirtual):
(WebCore::JSCanvasRenderingContext::visitChildren):
* bindings/js/JSDOMGlobalObject.cpp:
(WebCore::JSDOMGlobalObject::visitChildrenVirtual):
(WebCore::JSDOMGlobalObject::visitChildren):
* bindings/js/JSDOMGlobalObject.h:
* bindings/js/JSDOMWindowCustom.cpp:
(WebCore::JSDOMWindow::visitChildrenVirtual):
(WebCore::JSDOMWindow::visitChildren):
* bindings/js/JSDOMWindowShell.cpp:
(WebCore::JSDOMWindowShell::visitChildrenVirtual):
(WebCore::JSDOMWindowShell::visitChildren):
* bindings/js/JSDOMWindowShell.h:
* bindings/js/JSJavaScriptAudioNodeCustom.cpp:
(WebCore::JSJavaScriptAudioNode::visitChildrenVirtual):
(WebCore::JSJavaScriptAudioNode::visitChildren):
* bindings/js/JSMessageChannelCustom.cpp:
(WebCore::JSMessageChannel::visitChildrenVirtual):
(WebCore::JSMessageChannel::visitChildren):
* bindings/js/JSMessagePortCustom.cpp:
(WebCore::JSMessagePort::visitChildrenVirtual):
(WebCore::JSMessagePort::visitChildren):
* bindings/js/JSNamedNodeMapCustom.cpp:
(WebCore::JSNamedNodeMap::visitChildrenVirtual):
(WebCore::JSNamedNodeMap::visitChildren):
* bindings/js/JSNodeCustom.cpp:
(WebCore::JSNode::visitChildrenVirtual):
(WebCore::JSNode::visitChildren):
* bindings/js/JSNodeFilterCustom.cpp:
(WebCore::JSNodeFilter::visitChildrenVirtual):
(WebCore::JSNodeFilter::visitChildren):
* bindings/js/JSNodeIteratorCustom.cpp:
(WebCore::JSNodeIterator::visitChildrenVirtual):
(WebCore::JSNodeIterator::visitChildren):
* bindings/js/JSSVGElementInstanceCustom.cpp:
(WebCore::JSSVGElementInstance::visitChildrenVirtual):
(WebCore::JSSVGElementInstance::visitChildren):
* bindings/js/JSSharedWorkerCustom.cpp:
(WebCore::JSSharedWorker::visitChildrenVirtual):
(WebCore::JSSharedWorker::visitChildren):
* bindings/js/JSStyleSheetCustom.cpp:
(WebCore::JSStyleSheet::visitChildrenVirtual):
(WebCore::JSStyleSheet::visitChildren):
* bindings/js/JSTreeWalkerCustom.cpp:
(WebCore::JSTreeWalker::visitChildrenVirtual):
(WebCore::JSTreeWalker::visitChildren):
* bindings/js/JSWebGLRenderingContextCustom.cpp:
(WebCore::JSWebGLRenderingContext::visitChildrenVirtual):
(WebCore::JSWebGLRenderingContext::visitChildren):
* bindings/js/JSWorkerContextCustom.cpp:
(WebCore::JSWorkerContext::visitChildrenVirtual):
(WebCore::JSWorkerContext::visitChildren):
* bindings/js/JSXMLHttpRequestCustom.cpp:
(WebCore::JSXMLHttpRequest::visitChildrenVirtual):
(WebCore::JSXMLHttpRequest::visitChildren):
* bindings/js/JSXPathResultCustom.cpp:
(WebCore::JSXPathResult::visitChildrenVirtual):
(WebCore::JSXPathResult::visitChildren):
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateHeader):
(GenerateImplementation):
* bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::JSTestObj::visitChildrenVirtual):
(WebCore::JSTestObj::visitChildren):
* bindings/scripts/test/JS/JSTestObj.h:
* bridge/qt/qt_instance.cpp:
(JSC::Bindings::QtRuntimeObject::visitChildrenVirtual):
(JSC::Bindings::QtRuntimeObject::visitChildren):
* bridge/qt/qt_runtime.cpp:
(JSC::Bindings::QtRuntimeMetaMethod::visitChildrenVirtual):
(JSC::Bindings::QtRuntimeMetaMethod::visitChildren):
* bridge/qt/qt_runtime.h:
* workers/WorkerContext.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95849 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoAxe WebImageRendererFactory
andersca@apple.com [Fri, 23 Sep 2011 19:31:31 +0000 (19:31 +0000)]
Axe WebImageRendererFactory
https://bugs.webkit.org/show_bug.cgi?id=68715

Reviewed by Darin Adler.

../..:

Remove WebImageRendererFactory.m from the Xcode project.

* WebKit.xcodeproj/project.pbxproj:

../../mac:

Remove WebImageRendererFactory, it was used by Safari 3, many a moon ago.

* WebCoreSupport/WebImageRendererFactory.m: Removed.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95848 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoAdd OVERRIDE to a bunch of virtual member functions on clients
andersca@apple.com [Fri, 23 Sep 2011 19:24:34 +0000 (19:24 +0000)]
Add OVERRIDE to a bunch of virtual member functions on clients
https://bugs.webkit.org/show_bug.cgi?id=68712

Reviewed by Sam Weinig.

../..:

* WebKit.xcodeproj/project.pbxproj:

../../mac:

* Configurations/Base.xcconfig:
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebContextMenuClient.h:
* WebCoreSupport/WebDeviceOrientationClient.h:
* WebCoreSupport/WebDragClient.h:
* WebCoreSupport/WebEditorClient.h:
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameNetworkingContext.h:
* WebCoreSupport/WebGeolocationClient.h:
* WebCoreSupport/WebIconDatabaseClient.h:
* WebCoreSupport/WebInspectorClient.h:
* WebCoreSupport/WebPlatformStrategies.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95847 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoNode propagation doesn't handle PutScopedVar
oliver@apple.com [Fri, 23 Sep 2011 19:19:33 +0000 (19:19 +0000)]
Node propagation doesn't handle PutScopedVar
https://bugs.webkit.org/show_bug.cgi?id=68713

Reviewed by Sam Weinig.

This was causing assertion failures.

* dfg/DFGPropagator.cpp:
(JSC::DFG::Propagator::propagateNodePredictions):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95846 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoClarify wording in cross origin XSL tests and enable on all platforms
jochen@chromium.org [Fri, 23 Sep 2011 19:19:03 +0000 (19:19 +0000)]
Clarify wording in cross origin XSL tests and enable on all platforms
https://bugs.webkit.org/show_bug.cgi?id=68683

The condition for passing the test should be more clear now. Also, since the redirect case works on all platforms, the regular case should also work on all platforms.

Reviewed by Alexey Proskuryakov.

* http/tests/security/cross-origin-xsl-BLOCKED-expected.txt:
* http/tests/security/cross-origin-xsl-BLOCKED.html:
* http/tests/security/cross-origin-xsl-redirect-BLOCKED-expected.txt:
* http/tests/security/cross-origin-xsl-redirect-BLOCKED.html:
* platform/chromium-cg-mac/http/tests/security/cross-origin-xsl-BLOCKED-expected.txt:
* platform/chromium-cg-mac/http/tests/security/cross-origin-xsl-redirect-BLOCKED-expected.txt:
* platform/chromium-mac/http/tests/security/cross-origin-xsl-BLOCKED-expected.txt:
* platform/chromium-mac/http/tests/security/cross-origin-xsl-redirect-BLOCKED-expected.txt:
* platform/chromium-win/http/tests/security/cross-origin-xsl-BLOCKED-expected.txt:
* platform/chromium-win/http/tests/security/cross-origin-xsl-redirect-BLOCKED-expected.txt:
* platform/gtk/Skipped:
* platform/gtk/http/tests/security/cross-origin-xsl-BLOCKED-expected.txt:
* platform/gtk/http/tests/security/cross-origin-xsl-redirect-BLOCKED-expected.txt:
* platform/mac-wk2/http/tests/security/cross-origin-xsl-BLOCKED-expected.txt:
* platform/mac-wk2/http/tests/security/cross-origin-xsl-redirect-BLOCKED-expected.txt:
* platform/qt-wk2/http/tests/security/cross-origin-xsl-BLOCKED-expected.txt:
* platform/qt-wk2/http/tests/security/cross-origin-xsl-redirect-BLOCKED-expected.txt:
* platform/win-wk2/http/tests/security/cross-origin-xsl-BLOCKED-expected.txt:
* platform/win-wk2/http/tests/security/cross-origin-xsl-redirect-BLOCKED-expected.txt:
* platform/wk2/Skipped:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95845 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoMake sure to define OVERRIDE and FINAL for older builds of clang.
andersca@apple.com [Fri, 23 Sep 2011 19:17:15 +0000 (19:17 +0000)]
Make sure to define OVERRIDE and FINAL for older builds of clang.

* wtf/Compiler.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95844 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoMark two more tests as flaky.
mihaip@chromium.org [Fri, 23 Sep 2011 19:07:18 +0000 (19:07 +0000)]
Mark two more tests as flaky.

* platform/chromium/test_expectations.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95843 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoImplement op_resolve_global in the DFG JIT
barraclough@apple.com [Fri, 23 Sep 2011 18:52:19 +0000 (18:52 +0000)]
Implement op_resolve_global in the DFG JIT
https://bugs.webkit.org/show_bug.cgi?id=68704

Reviewed by Oliver Hunt.

This is performance neutral, but increases coverage.

* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::ByteCodeParser):
(JSC::DFG::ByteCodeParser::parseBlock):
* dfg/DFGNode.h:
(JSC::DFG::Node::hasIdentifier):
(JSC::DFG::Node::resolveInfoIndex):
* dfg/DFGOperations.cpp:
* dfg/DFGOperations.h:
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compile):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95840 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[GTK] Remove extra space at the beginning of the last line.
mario@webkit.org [Fri, 23 Sep 2011 18:51:04 +0000 (18:51 +0000)]
[GTK] Remove extra space at the beginning of the last line.
https://bugs.webkit.org/show_bug.cgi?id=68710

Reviewed by Gustavo Noronha Silva.

* platform/network/soup/SocketStreamHandleSoup.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95839 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoMark a test as flaky.
mihaip@chromium.org [Fri, 23 Sep 2011 18:41:33 +0000 (18:41 +0000)]
Mark a test as flaky.

* platform/chromium/test_expectations.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95838 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago2011-09-23 Mario Sanchez Prada <msanchez@igalia.com>
mario@webkit.org [Fri, 23 Sep 2011 18:24:20 +0000 (18:24 +0000)]
2011-09-23  Mario Sanchez Prada  <msanchez@igalia.com>

        [GTK] Fix coding style issues in ResourceRequestSoup.cpp
        https://bugs.webkit.org/show_bug.cgi?id=68707

        Reviewed by Xan Lopez.

        This patch fixes some issues as reported by check-webkit-style.

        * platform/network/soup/ResourceRequestSoup.cpp:
        (WebCore::ResourceRequest::updateFromSoupMessage):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95837 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoAdd OVERRIDE to overrides of virtual member functions in client classes
andersca@apple.com [Fri, 23 Sep 2011 18:07:33 +0000 (18:07 +0000)]
Add OVERRIDE to overrides of virtual member functions in client classes
https://bugs.webkit.org/show_bug.cgi?id=68702

Reviewed by Darin Adler.

Disable the warning in Xcode and VS2005 for using override and final when compiling as C++98,
and remove WebEditorClient::isEditable, WebChromeClient::formDidFocus,
WebChromeClient::formDidBlur and WebFrameLoaderClient::dispatchDidLoadResourceByXMLHttpRequest since
they have been removed from their respective base classes.

* Configurations/Base.xcconfig:
* WebProcess/WebCoreSupport/WebChromeClient.cpp:
* WebProcess/WebCoreSupport/WebChromeClient.h:
* WebProcess/WebCoreSupport/WebContextMenuClient.h:
* WebProcess/WebCoreSupport/WebDatabaseManager.h:
* WebProcess/WebCoreSupport/WebDragClient.h:
* WebProcess/WebCoreSupport/WebEditorClient.cpp:
* WebProcess/WebCoreSupport/WebEditorClient.h:
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
* WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
* WebProcess/WebCoreSupport/WebGeolocationClient.h:
* WebProcess/WebCoreSupport/WebInspectorClient.h:
* WebProcess/WebCoreSupport/WebInspectorFrontendClient.h:
* WebProcess/WebCoreSupport/WebPlatformStrategies.h:
* WebProcess/WebCoreSupport/WebPopupMenu.h:
* WebProcess/WebCoreSupport/WebSearchPopupMenu.h:
* win/WebKit2Common.vsprops:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95834 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoDefine BUILDING_ON_LION / TARGETING_LION when appropriate in Platform.h.
mrowe@apple.com [Fri, 23 Sep 2011 17:46:51 +0000 (17:46 +0000)]
Define BUILDING_ON_LION / TARGETING_LION when appropriate in Platform.h.

* wtf/Platform.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95833 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoFix the build.
mrowe@apple.com [Fri, 23 Sep 2011 17:46:46 +0000 (17:46 +0000)]
Fix the build.

* TestWebKitAPI/Tests/WTF/StringBuilder.cpp: Define operator<<(std::ostream&, const WTF::String&) inside
the WTF namespace.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95832 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoUnreviewed: [Qt] Workaround MSVC2010 problems when linking QtWebKit
ademar.reis@openbossa.org [Fri, 23 Sep 2011 17:38:27 +0000 (17:38 +0000)]
Unreviewed: [Qt] Workaround MSVC2010 problems when linking QtWebKit

Include MSVC2010 in the list of compilers where incremental
build is disabled (INCREMENTAL:NO).

Change suggested by Simo Falt <simo.falt@nokia.com>, already present
in the Qt-4.8 repository where the problem was identified.

* WebCore.pri:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95831 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoUnreviewed. Normalize test names.
loislo@chromium.org [Fri, 23 Sep 2011 17:03:31 +0000 (17:03 +0000)]
Unreviewed. Normalize test names.

* inspector/performance/resources/first-open-elements.html:
* inspector/performance/resources/first-open-resources.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95828 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoTry to fix warning seen in some 32-bit builds.
darin@apple.com [Fri, 23 Sep 2011 16:59:51 +0000 (16:59 +0000)]
Try to fix warning seen in some 32-bit builds.

* rendering/RenderBoxModelObject.cpp:
(WebCore::backgroundRectAdjustedForBleedAvoidance):
Use an explicit cast for the conversion from a double to a LayoutUnit.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95826 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoWe should add support for OVERRIDE and FINAL annotations
andersca@apple.com [Fri, 23 Sep 2011 16:49:08 +0000 (16:49 +0000)]
We should add support for OVERRIDE and FINAL annotations
https://bugs.webkit.org/show_bug.cgi?id=68654

Reviewed by David Hyatt.

Add OVERRIDE and FINAL macros for compilers that support them.

* wtf/Compiler.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95823 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoFix typo in file name from http://trac.webkit.org/changeset/95813.
yael.aharon@nokia.com [Fri, 23 Sep 2011 16:47:26 +0000 (16:47 +0000)]
Fix typo in file name from trac.webkit.org/changeset/95813.

Unreviewed.

* platform/gtk/media/video-playing-and-pause-actual.txt: Removed.
* platform/gtk/media/video-playing-and-pause-expected.txt: Copied from LayoutTests/platform/gtk/media/video-playing-and-pause-actual.txt.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95822 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoRebaseline after http://trac.webkit.org/changeset/95799
yael.aharon@nokia.com [Fri, 23 Sep 2011 16:39:31 +0000 (16:39 +0000)]
Rebaseline after trac.webkit.org/changeset/95799

Unreviewed.

* platform/mac-wk2/media/video-playing-and-pause-expected.txt: Added.
* platform/mac/media/video-playing-and-pause-expected.txt: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95818 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoRebaseline after http://trac.webkit.org/changeset/95799
yael.aharon@nokia.com [Fri, 23 Sep 2011 16:19:51 +0000 (16:19 +0000)]
Rebaseline after trac.webkit.org/changeset/95799

Unreviewed.

* platform/gtk/media/video-playing-and-pause-actual.txt: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95813 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago2011-09-23 Xan Lopez <xlopez@igalia.com>
xan@webkit.org [Fri, 23 Sep 2011 16:10:58 +0000 (16:10 +0000)]
2011-09-23  Xan Lopez  <xlopez@igalia.com>

        [GTK] Skip crashing test fast/workers/storage/interrupt-database.html
        https://bugs.webkit.org/show_bug.cgi?id=68700

        Unreviewed.

        * platform/gtk/Skipped:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95809 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoWeb Inspector: Clicking on error doesn't point on the correct line if user searched...
vsevik@chromium.org [Fri, 23 Sep 2011 15:57:13 +0000 (15:57 +0000)]
Web Inspector: Clicking on error doesn't point on the correct line if user searched something
https://bugs.webkit.org/show_bug.cgi?id=68627

Reviewed by Yury Semikhatsky.

* inspector/front-end/SearchController.js:
(WebInspector.SearchController.prototype.disableSearchUntilExplicitAction):
* inspector/front-end/inspector.js:
(WebInspector._showAnchorLocationInPanel):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95807 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoWeb Inspector: InspectorStyleSheet should use stylesheet's original url, not final...
vsevik@chromium.org [Fri, 23 Sep 2011 15:22:35 +0000 (15:22 +0000)]
Web Inspector: InspectorStyleSheet should use stylesheet's original url, not final one.
https://bugs.webkit.org/show_bug.cgi?id=68631

Reviewed by Yury Semikhatsky.

Source/WebCore:

Test: http/tests/inspector/styles/styles-redirected-css.html

* inspector/InspectorStyleSheet.cpp:
(WebCore::InspectorStyleSheet::resourceStyleSheetText):

LayoutTests:

* http/tests/inspector/elements-test.js:
(initialize_ElementTest.InspectorTest.getElementStylePropertyTreeItem):
(initialize_ElementTest.InspectorTest.getMatchedStylePropertyTreeItem):
(initialize_ElementTest.InspectorTest.getFirstPropertyTreeItemForSection):
* http/tests/inspector/styles/resources/styles-redirected-css.css: Added.
(div):
* http/tests/inspector/styles/resources/styles-redirected-css.php: Added.
* http/tests/inspector/styles/styles-redirected-css-expected.txt: Added.
* http/tests/inspector/styles/styles-redirected-css.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95806 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoWeb Inspector: XHRs requests with the same url as main resource should have correct...
vsevik@chromium.org [Fri, 23 Sep 2011 15:08:09 +0000 (15:08 +0000)]
Web Inspector: XHRs requests with the same url as main resource should have correct category.
https://bugs.webkit.org/show_bug.cgi?id=68646

Reviewed by Yury Semikhatsky.

Source/WebCore:

Test: http/tests/inspector/network/network-xhr-same-url-as-main-resource.html

* inspector/InspectorResourceAgent.cpp:
(WebCore::InspectorResourceAgent::didReceiveResponse):

LayoutTests:

* http/tests/inspector/network/network-xhr-same-url-as-main-resource-expected.txt: Added.
* http/tests/inspector/network/network-xhr-same-url-as-main-resource.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95805 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[Qt][WK2] QtFileDownloader ctor shouldn't call QtFileDownloader::onReadyRead()
jesus@webkit.org [Fri, 23 Sep 2011 15:06:36 +0000 (15:06 +0000)]
[Qt][WK2] QtFileDownloader ctor shouldn't call QtFileDownloader::onReadyRead()
https://bugs.webkit.org/show_bug.cgi?id=68696

Reviewed by Andreas Kling.

Instead of connecting signals and calling QtFileDownloader::onReadyRead()
on its constructor, QtFileDownloader will now handle this in start().

* WebProcess/Downloads/qt/DownloadQt.cpp:
(WebKit::Download::start):
* WebProcess/Downloads/qt/QtFileDownloader.cpp:
(WebKit::QtFileDownloader::QtFileDownloader):
(WebKit::QtFileDownloader::start):
* WebProcess/Downloads/qt/QtFileDownloader.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95804 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[chromium] Update expectation for pservers-grad-14-b.svg on snowleopard
bulach@chromium.org [Fri, 23 Sep 2011 14:58:30 +0000 (14:58 +0000)]
[chromium] Update expectation for pservers-grad-14-b.svg on snowleopard
https://bugs.webkit.org/show_bug.cgi?id=68697

Unreviewed rebaseline.

* platform/chromium/test_expectations.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95802 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoWeb Inspector: Add context menu action to navigate from resources panel resource...
vsevik@chromium.org [Fri, 23 Sep 2011 14:35:07 +0000 (14:35 +0000)]
Web Inspector: Add context menu action to navigate from resources panel resource to network panel.
https://bugs.webkit.org/show_bug.cgi?id=68657

Reviewed by Yury Semikhatsky.

* English.lproj/localizedStrings.js:
* inspector/front-end/NetworkPanel.js:
(WebInspector.NetworkPanel.prototype.showAnchorLocation):
(WebInspector.NetworkPanel.prototype.revealAndHighlightResource):
* inspector/front-end/ResourcesPanel.js:
(WebInspector.FrameResourceTreeElement.prototype._handleContextMenuEvent):
(WebInspector.FrameResourceTreeElement.prototype._appendOpenInNetworkPanelAction):
* inspector/front-end/inspector.js:
(WebInspector.openInNetworkPanelLabel):
(WebInspector.openRequestInNetworkPanel):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95801 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[Gtk] Title attribute is not respected on option elements.
commit-queue@webkit.org [Fri, 23 Sep 2011 14:14:01 +0000 (14:14 +0000)]
[Gtk] Title attribute is not respected on option elements.
https://bugs.webkit.org/show_bug.cgi?id=68615

Patch by Deepak Sherveghar <bpwv64@motorola.com> on 2011-09-23
Reviewed by Martin Robinson.

Set tooltip on PopupMenuGtk items created from GtkActions.

* platform/gtk/GtkPopupMenu.cpp:
(WebCore::GtkPopupMenu::appendItem): Added a call to gtk_widget_set_tooltip_text()
    to set the tooltip on menuitem. Tooltip text is retrieved from GtkAction.
* platform/gtk/PopupMenuGtk.cpp:
(WebCore::PopupMenuGtk::createGtkActionForMenuItem): Pass the tooltip text
    from client when creating a GtkAction.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95800 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[Qt][Gtk] Wrong state when pausing a video in the "playing" event handler
yael.aharon@nokia.com [Fri, 23 Sep 2011 14:03:46 +0000 (14:03 +0000)]
[Qt][Gtk] Wrong state when pausing a video in the "playing" event handler
https://bugs.webkit.org/show_bug.cgi?id=68589

Reviewed by Philippe Normand.

Source/WebCore:

Test: media/video-playing-and-pause.html

As suggested by Alexis Menard on IRC, query gstreamer's state instead of using a cached value
in MediaPlayerGstreamerPrivate::paused().

* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::paused):

LayoutTests:

* media/video-playing-and-pause.html: Added.
* media/video-paint-test.js:
* platform/qt/media/video-playing-and-pause-expected.txt: Added.
* platform/qt/media/video-playing-and-pause-expected.png: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95799 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[chromium, gtk, qt] Rebaseline following r95726
bulach@chromium.org [Fri, 23 Sep 2011 13:48:37 +0000 (13:48 +0000)]
[chromium, gtk, qt] Rebaseline following r95726
https://bugs.webkit.org/show_bug.cgi?id=68694

Unreviewed rebaseline.

* css2.1/20110323/abspos-non-replaced-width-margin-000-expected.txt: Renamed from LayoutTests/platform/gtk/css2.1/20110323/abspos-non-replaced-width-margin-000-expected.txt.
* css2.1/20110323/abspos-replaced-width-margin-000-expected.txt: Renamed from LayoutTests/platform/gtk/css2.1/20110323/abspos-replaced-width-margin-000-expected.txt.
* platform/chromium/css2.1/20110323/abspos-non-replaced-width-margin-000-expected.png: Added.
* platform/chromium/css2.1/20110323/abspos-replaced-width-margin-000-expected.png: Added.
* platform/qt/css2.1/20110323/abspos-non-replaced-width-margin-000-expected.txt: Removed.
* platform/qt/css2.1/20110323/abspos-replaced-width-margin-000-expected.txt: Removed.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95798 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoWeb Inspector: skip overlapping scripts when displaying concatenated content.
podivilov@chromium.org [Fri, 23 Sep 2011 13:17:49 +0000 (13:17 +0000)]
Web Inspector: skip overlapping scripts when displaying concatenated content.
https://bugs.webkit.org/show_bug.cgi?id=68144

Source/WebCore:

Dynamically appended script tags have wrong offsets and cause troubles building concatenated content.

Reviewed by Pavel Feldman.

* inspector/front-end/SourceFile.js:
(WebInspector.ConcatenatedScriptsContentProvider.prototype._concatenateScriptsContent.appendChunk):
(WebInspector.ConcatenatedScriptsContentProvider.prototype._concatenateScriptsContent):

LayoutTests:

Reviewed by Pavel Feldman.

* inspector/debugger/content-providers-expected.txt:
* inspector/debugger/content-providers.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95797 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago2011-09-23 Xan Lopez <xlopez@igalia.com>
xan@webkit.org [Fri, 23 Sep 2011 13:04:46 +0000 (13:04 +0000)]
2011-09-23  Xan Lopez  <xlopez@igalia.com>

        [GTK] Rebaseline following r95745, r95725

        Unreviewed rebaseline.

        * platform/gtk/editing/deleting/merge-whitespace-pre-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95796 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[chromium] Rebaseline following r95745, r95725
bulach@chromium.org [Fri, 23 Sep 2011 12:43:31 +0000 (12:43 +0000)]
[chromium] Rebaseline following r95745, r95725
https://bugs.webkit.org/show_bug.cgi?id=68685

Unreviewed rebaseline.

* platform/chromium-cg-mac-leopard/editing/deleting/merge-whitespace-pre-expected.png:
* platform/chromium-linux/editing/deleting/merge-whitespace-pre-expected.png:
* platform/chromium-mac/editing/deleting/merge-whitespace-pre-expected.png:
* platform/chromium-win/editing/deleting/merge-whitespace-pre-expected.png:
* platform/chromium-win/editing/deleting/merge-whitespace-pre-expected.txt:
* platform/chromium/test_expectations.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95795 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoWeb Inspector: file open dialog appears when user clicks on the timeline bar in timel...
loislo@chromium.org [Fri, 23 Sep 2011 12:06:15 +0000 (12:06 +0000)]
Web Inspector: file open dialog appears when user clicks on the timeline bar in timeline panel.
https://bugs.webkit.org/show_bug.cgi?id=68312

Reviewed by Yury Semikhatsky.

* inspector/front-end/TimelinePanel.js:
(WebInspector.TimelinePanel.prototype._createFileSelector):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95794 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoUnreviewed, rolling out r95383.
loislo@chromium.org [Fri, 23 Sep 2011 11:43:30 +0000 (11:43 +0000)]
Unreviewed, rolling out r95383.
http://trac.webkit.org/changeset/95383
https://bugs.webkit.org/show_bug.cgi?id=68690

It broke WebInspector.Timeline.LoadFromFile feature.
(Requested by loislo on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-09-23

* inspector/front-end/TimelinePanel.js:
(WebInspector.TimelinePanel.prototype._createFileSelector):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95793 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoWeb Inspector: UI performance test for Scripts panel first open experience.
loislo@chromium.org [Fri, 23 Sep 2011 10:59:59 +0000 (10:59 +0000)]
Web Inspector: UI performance test for Scripts panel first open experience.
https://bugs.webkit.org/show_bug.cgi?id=68541

The test's body has dummy scripts section copied from inspector-test.jss

Reviewed by Yury Semikhatsky.

* inspector/performance/resources/first-open-scripts.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95792 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agouse after free in WebCore::SVGTRefElement::updateReferencedText
commit-queue@webkit.org [Fri, 23 Sep 2011 10:56:23 +0000 (10:56 +0000)]
use after free in WebCore::SVGTRefElement::updateReferencedText
https://bugs.webkit.org/show_bug.cgi?id=67555

Patch by Rob Buis <rbuis@rim.com> on 2011-09-23
Reviewed by Nikolas Zimmermann.

Source/WebCore:

Event listeners can outlive the tref element that created them when
the tref is cloned and then garbage collected, causing a dangling pointer to the
tref. To fix this do not install event listener until the tref is inserted into the document.

Test: svg/custom/tref-clone-crash.html

* svg/SVGTRefElement.cpp:
(WebCore::SVGTRefElement::svgAttributeChanged):
(WebCore::SVGTRefElement::insertedIntoDocument):
* svg/SVGTRefElement.h:

LayoutTests:

Test that cloned tref does not cause a crash.

* svg/custom/tref-clone-crash-expected.txt: Added.
* svg/custom/tref-clone-crash.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95791 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoASSERTION FAILED: documentLoader in WebKit/Source/WebCore/inspector/InspectorInstrume...
vsevik@chromium.org [Fri, 23 Sep 2011 10:46:54 +0000 (10:46 +0000)]
ASSERTION FAILED: documentLoader in WebKit/Source/WebCore/inspector/InspectorInstrumentation.cpp(597)
https://bugs.webkit.org/show_bug.cgi?id=68291

Reviewed by Tony Chang.

* dom/Document.cpp:
(WebCore::Document::finishedParsing):
* inspector/InspectorInstrumentation.cpp:
(WebCore::InspectorInstrumentation::domContentLoadedEventFiredImpl):
(WebCore::InspectorInstrumentation::loadEventFiredImpl):
* inspector/InspectorInstrumentation.h:
(WebCore::InspectorInstrumentation::domContentLoadedEventFired):
(WebCore::InspectorInstrumentation::loadEventFired):
* page/DOMWindow.cpp:
(WebCore::DOMWindow::dispatchLoadEvent):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95790 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago2011-09-23 Xan Lopez <xlopez@igalia.com>
xan@webkit.org [Fri, 23 Sep 2011 10:35:28 +0000 (10:35 +0000)]
2011-09-23  Xan Lopez  <xlopez@igalia.com>

        Crash on editing/pasteboard/drag-drop-input-in-svg.svg
        https://bugs.webkit.org/show_bug.cgi?id=68686

        Unreviewed, skip crashing test.

        * platform/gtk/Skipped:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95789 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoplugins/mouse-click-iframe-to-plugin.html should not use flash plugin
kbalazs@webkit.org [Fri, 23 Sep 2011 09:19:32 +0000 (09:19 +0000)]
plugins/mouse-click-iframe-to-plugin.html should not use flash plugin
https://bugs.webkit.org/show_bug.cgi?id=68601

Use the test plugin that we always have.

* platform/qt-wk2/Skipped: Unskip the test.
* plugins/mouse-click-iframe-to-plugin.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95788 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoSource/JavaScriptCore: GetScopedVar should have value profiling
barraclough@apple.com [Fri, 23 Sep 2011 07:18:48 +0000 (07:18 +0000)]
Source/JavaScriptCore: GetScopedVar should have value profiling
https://bugs.webkit.org/show_bug.cgi?id=68676

Patch by Filip Pizlo <fpizlo@apple.com> on 2011-09-22
Reviewed by Oliver Hunt.

Added GetScopedVar value profiling and predictin propagation.
Added GetScopeChain to CSE.

* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::parseBlock):
* dfg/DFGGraph.h:
(JSC::DFG::Graph::predict):
* dfg/DFGNode.h:
(JSC::DFG::Node::hasPrediction):
* dfg/DFGPropagator.cpp:
(JSC::DFG::Propagator::propagateNodePredictions):
(JSC::DFG::Propagator::getScopeChainLoadElimination):
(JSC::DFG::Propagator::performNodeCSE):
* jit/JITPropertyAccess.cpp:
(JSC::JIT::emit_op_get_scoped_var):

LayoutTests: [Qt] Unreviewed gardening, update expected file after r95745.

Patch by Csaba Osztrogon√°c <ossy@webkit.org> on 2011-09-22

* platform/qt/editing/deleting/merge-whitespace-pre-expected.png:
* platform/qt/editing/deleting/merge-whitespace-pre-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95787 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoGetScopedVar should have value profiling
fpizlo@apple.com [Fri, 23 Sep 2011 06:59:38 +0000 (06:59 +0000)]
GetScopedVar should have value profiling
https://bugs.webkit.org/show_bug.cgi?id=68676

Reviewed by Oliver Hunt.

Added GetScopedVar value profiling and predictin propagation.
Added GetScopeChain to CSE.

* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::parseBlock):
* dfg/DFGGraph.h:
(JSC::DFG::Graph::predict):
* dfg/DFGNode.h:
(JSC::DFG::Node::hasPrediction):
* dfg/DFGPropagator.cpp:
(JSC::DFG::Propagator::propagateNodePredictions):
(JSC::DFG::Propagator::getScopeChainLoadElimination):
(JSC::DFG::Propagator::performNodeCSE):
* jit/JITPropertyAccess.cpp:
(JSC::JIT::emit_op_get_scoped_var):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95786 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[Qt] Unreviewed gardening, update expected file after r95745.
ossy@webkit.org [Fri, 23 Sep 2011 05:58:55 +0000 (05:58 +0000)]
[Qt] Unreviewed gardening, update expected file after r95745.

* platform/qt/editing/deleting/merge-whitespace-pre-expected.png:
* platform/qt/editing/deleting/merge-whitespace-pre-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95785 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoUnreviewed fix after r95764, update expected fail to expected pass.
ossy@webkit.org [Fri, 23 Sep 2011 05:53:32 +0000 (05:53 +0000)]
Unreviewed fix after r95764, update expected fail to expected pass.

* ietestcenter/Javascript/15.3.4.5-0-2-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95784 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoimplement -webkit-flex-order
tony@chromium.org [Fri, 23 Sep 2011 04:54:42 +0000 (04:54 +0000)]
implement -webkit-flex-order
https://bugs.webkit.org/show_bug.cgi?id=67432

Reviewed by Ojan Vafai.

Source/WebCore:

flex-order can be an int (including negative), but we disallow the two
smallest values so we can put the numbers into a hash set.

Also, create two iterators: one that goes in render tree order (we use
this for the first pass and to collect the possible flex order values)
and one that goes in flex order.

Test: css3/flexbox/flex-order.html

* css/CSSParser.cpp:
(WebCore::CSSParser::parseValue):
* rendering/RenderFlexibleBox.cpp:
(WebCore::FlexOrderHashTraits::emptyValue):
(WebCore::FlexOrderHashTraits::constructDeletedValue):
(WebCore::FlexOrderHashTraits::isDeletedValue):
(WebCore::RenderFlexibleBox::TreeOrderIterator::TreeOrderIterator): A simple iterator
    that goes in render tree order.
(WebCore::RenderFlexibleBox::TreeOrderIterator::next):
(WebCore::RenderFlexibleBox::TreeOrderIterator::reset):
(WebCore::RenderFlexibleBox::TreeOrderIterator::flexOrderValues):
(WebCore::RenderFlexibleBox::FlexOrderIterator::FlexOrderIterator): An iterator that
    goes in flex-order order.  Creating this involves sorting, so only create it once
    and pass it around.
(WebCore::RenderFlexibleBox::FlexOrderIterator::first):
(WebCore::RenderFlexibleBox::FlexOrderIterator::next):
(WebCore::RenderFlexibleBox::FlexOrderIterator::reset):
(WebCore::RenderFlexibleBox::layoutHorizontalBlock):
(WebCore::RenderFlexibleBox::computePreferredLogicalWidth):
(WebCore::RenderFlexibleBox::runFreeSpaceAllocationAlgorithmInlineDirection):
(WebCore::RenderFlexibleBox::layoutAndPlaceChildrenInlineDirection):
* rendering/RenderFlexibleBox.h:

LayoutTests:

* css3/flexbox/flex-order-expected.png: Added.
* css3/flexbox/flex-order-expected.txt: Added.
* css3/flexbox/flex-order.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95783 268f45cc-cd09-0410-ab3c-d52691b4dbfc