WebKit-https.git
8 years agoREGRESSION (r87351): toggling display of lots (thousands) of elements with display...
dglazkov@chromium.org [Mon, 12 Sep 2011 03:25:04 +0000 (03:25 +0000)]
REGRESSION (r87351): toggling display of lots (thousands) of elements with display:none is very slow
https://bugs.webkit.org/show_bug.cgi?id=67581

Reviewed by Darin Adler.

Source/WebCore:

Test: perf/show-hide-table-rows.html

* dom/NodeRenderingContext.cpp:
(WebCore::NodeRendererFactory::createRendererAndStyle): Moved style-creating code into createRendererIfNeeded, renamed
    to createRenderer.
(WebCore::NodeRendererFactory::createRendererIfNeeded): Re-arrange code to avoid unnecessary creation of renderers.

LayoutTests:

* perf/show-hide-table-rows-expected.txt: Added.
* perf/show-hide-table-rows.html: Added.

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

8 years ago[Qt][WK2] Qt layer should be hardened against C API versioning in the sense of build...
kbalazs@webkit.org [Mon, 12 Sep 2011 03:21:28 +0000 (03:21 +0000)]
[Qt][WK2] Qt layer should be hardened against C API versioning in the sense of build failures
https://bugs.webkit.org/show_bug.cgi?id=67094

Reviewed by Andreas Kling.

* UIProcess/qt/QtWebPageProxy.cpp:
(QtWebPageProxy::init):

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

8 years ago[Chromium] Change OOP Font loading code to use CGFont*() APIs.
jeremy@chromium.org [Mon, 12 Sep 2011 03:14:42 +0000 (03:14 +0000)]
[Chromium] Change OOP Font loading code to use CGFont*() APIs.
https://bugs.webkit.org/show_bug.cgi?id=66935

This change is necessary due a bug in ATSFontDeactivate() on 10.7.
See crbug.com/93191 for details.

Reviewed by Eric Seidel.

Source/WebCore:

No new tests - covered by existing tests.

* platform/chromium/PlatformBridge.h:
* platform/graphics/chromium/CrossProcessFontLoading.h:
* platform/graphics/chromium/CrossProcessFontLoading.mm:
(WebCore::MemoryActivatedFont::create):
(WebCore::MemoryActivatedFont::MemoryActivatedFont):
(WebCore::MemoryActivatedFont::~MemoryActivatedFont):

Source/WebKit/chromium:

* public/mac/WebSandboxSupport.h:
* src/PlatformBridge.cpp:
(WebCore::PlatformBridge::loadFont):

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

8 years ago[Chromium] Add more key codes to WebInputEvent for Android
abarth@webkit.org [Mon, 12 Sep 2011 02:22:54 +0000 (02:22 +0000)]
[Chromium] Add more key codes to WebInputEvent for Android
https://bugs.webkit.org/show_bug.cgi?id=67887

Reviewed by Darin Fisher.

* src/WebInputEvent.cpp:
(WebKit::staticKeyIdentifiers):

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

8 years agoUnreviewed, one more rebaseline for r94912
ukai@chromium.org [Mon, 12 Sep 2011 02:19:50 +0000 (02:19 +0000)]
Unreviewed, one more rebaseline for r94912

* platform/chromium-cg-mac/fast/css/getComputedStyle/computed-style-expected.txt: Removed.
* platform/chromium-win/fast/css/getComputedStyle/computed-style-expected.txt:

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

8 years agoUnreviewed, update chromium test expectations and rebaselines for r94912
ukai@chromium.org [Mon, 12 Sep 2011 01:52:21 +0000 (01:52 +0000)]
Unreviewed, update chromium test expectations and rebaselines for r94912

* platform/chromium-cg-mac/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt: Removed.
* platform/chromium-cg-mac/svg/css/getComputedStyle-basic-expected.txt: Removed.
* platform/chromium-win/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
* platform/chromium-win/svg/css/getComputedStyle-basic-expected.txt:
* platform/chromium/test_expectations.txt:

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

8 years agoRemove JSCell::isPropertyNameIterator(), it is unused
weinig@apple.com [Sun, 11 Sep 2011 22:41:16 +0000 (22:41 +0000)]
Remove JSCell::isPropertyNameIterator(), it is unused
https://bugs.webkit.org/show_bug.cgi?id=67911

Reviewed by Oliver Hunt.

* runtime/JSCell.h:
* runtime/JSPropertyNameIterator.h:

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

8 years agoDe-virtualize JSCell::isAPIValueWrapper
weinig@apple.com [Sun, 11 Sep 2011 22:29:24 +0000 (22:29 +0000)]
De-virtualize JSCell::isAPIValueWrapper
https://bugs.webkit.org/show_bug.cgi?id=67909

Reviewed by Oliver Hunt.

* runtime/JSAPIValueWrapper.h:
(JSC::JSAPIValueWrapper::createStructure):
Set the correct type on structure creation.

* runtime/JSCell.h:
Remove virtual keyword and default implementation.

* runtime/JSType.h:
Add type for APIValueWrapper. It must come after CompoundType since
the APIValueWrapper has children in need of marking.

* runtime/Structure.h:
(JSC::JSCell::isAPIValueWrapper):
Implement predicate using type info.

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

8 years agoDe-virtualize JSCell::isGetterSetter, type information is available for it
weinig@apple.com [Sun, 11 Sep 2011 21:45:40 +0000 (21:45 +0000)]
De-virtualize JSCell::isGetterSetter, type information is available for it
https://bugs.webkit.org/show_bug.cgi?id=67902

Reviewed by Dan Bernstein.

* runtime/GetterSetter.cpp:
* runtime/GetterSetter.h:
Remove override of isGetterSetter.

* runtime/JSCell.cpp:
* runtime/JSCell.h:
De-virtualize and remove silly base implementation.

* runtime/Structure.h:
(JSC::JSCell::isGetterSetter):
Use type info to determine getter-setter-hood.

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

8 years agoRemove support for anonymous storage from jsobjects
oliver@apple.com [Sun, 11 Sep 2011 21:11:11 +0000 (21:11 +0000)]
Remove support for anonymous storage from jsobjects
https://bugs.webkit.org/show_bug.cgi?id=67881

Reviewed by Sam Weinig.

Source/JavaScriptCore:

Remove all use of anonymous slots, essentially a mechanical change
in JavaScriptCore

* API/JSCallbackConstructor.h:
(JSC::JSCallbackConstructor::createStructure):
* API/JSCallbackFunction.h:
(JSC::JSCallbackFunction::createStructure):
* API/JSCallbackObject.h:
(JSC::JSCallbackObject::createStructure):
* JavaScriptCore.exp:
* debugger/DebuggerActivation.h:
(JSC::DebuggerActivation::createStructure):
* heap/MarkStack.cpp:
(JSC::MarkStack::validateValue):
* heap/MarkStack.h:
* runtime/Arguments.h:
(JSC::Arguments::createStructure):
* runtime/ArrayConstructor.h:
(JSC::ArrayConstructor::createStructure):
* runtime/ArrayPrototype.cpp:
(JSC::ArrayPrototype::finishCreation):
* runtime/ArrayPrototype.h:
(JSC::ArrayPrototype::createStructure):
* runtime/BooleanObject.h:
(JSC::BooleanObject::createStructure):
* runtime/BooleanPrototype.cpp:
(JSC::BooleanPrototype::BooleanPrototype):
* runtime/BooleanPrototype.h:
(JSC::BooleanPrototype::createStructure):
* runtime/DateConstructor.h:
(JSC::DateConstructor::createStructure):
* runtime/DateInstance.h:
(JSC::DateInstance::createStructure):
* runtime/DatePrototype.cpp:
(JSC::DatePrototype::DatePrototype):
* runtime/DatePrototype.h:
(JSC::DatePrototype::createStructure):
* runtime/ErrorInstance.h:
(JSC::ErrorInstance::createStructure):
* runtime/ErrorPrototype.cpp:
(JSC::ErrorPrototype::finishCreation):
* runtime/ErrorPrototype.h:
(JSC::ErrorPrototype::createStructure):
* runtime/ExceptionHelpers.h:
(JSC::InterruptedExecutionError::createStructure):
(JSC::TerminatedExecutionError::createStructure):
* runtime/Executable.h:
(JSC::ExecutableBase::createStructure):
(JSC::NativeExecutable::createStructure):
(JSC::EvalExecutable::createStructure):
(JSC::ProgramExecutable::createStructure):
(JSC::FunctionExecutable::createStructure):
* runtime/FunctionPrototype.h:
(JSC::FunctionPrototype::createStructure):
* runtime/GetterSetter.h:
(JSC::GetterSetter::createStructure):
* runtime/InternalFunction.h:
(JSC::InternalFunction::createStructure):
* runtime/JSAPIValueWrapper.h:
(JSC::JSAPIValueWrapper::createStructure):
* runtime/JSActivation.h:
(JSC::JSActivation::createStructure):
* runtime/JSArray.h:
(JSC::JSArray::createStructure):
* runtime/JSByteArray.cpp:
(JSC::JSByteArray::createStructure):
* runtime/JSCell.h:
* runtime/JSFunction.h:
(JSC::JSFunction::createStructure):
* runtime/JSGlobalObject.h:
(JSC::JSGlobalObject::finishCreation):
(JSC::JSGlobalObject::createStructure):
* runtime/JSNotAnObject.h:
(JSC::JSNotAnObject::createStructure):
* runtime/JSONObject.h:
(JSC::JSONObject::createStructure):
* runtime/JSObject.h:
(JSC::JSObject::createStructure):
(JSC::JSNonFinalObject::createStructure):
(JSC::JSFinalObject::createStructure):
* runtime/JSPropertyNameIterator.cpp:
(JSC::JSPropertyNameIterator::create):
* runtime/JSPropertyNameIterator.h:
(JSC::JSPropertyNameIterator::createStructure):
* runtime/JSStaticScopeObject.h:
(JSC::JSStaticScopeObject::createStructure):
* runtime/JSString.h:
(JSC::RopeBuilder::createStructure):
* runtime/JSVariableObject.h:
(JSC::JSVariableObject::createStructure):
* runtime/JSWrapperObject.h:
(JSC::JSWrapperObject::createStructure):
* runtime/MathObject.h:
(JSC::MathObject::createStructure):
* runtime/NativeErrorConstructor.h:
(JSC::NativeErrorConstructor::createStructure):
* runtime/NumberConstructor.h:
(JSC::NumberConstructor::createStructure):
* runtime/NumberObject.h:
(JSC::NumberObject::createStructure):
* runtime/NumberPrototype.cpp:
(JSC::NumberPrototype::NumberPrototype):
* runtime/NumberPrototype.h:
(JSC::NumberPrototype::createStructure):
* runtime/ObjectConstructor.h:
(JSC::ObjectConstructor::createStructure):
* runtime/ObjectPrototype.cpp:
(JSC::ObjectPrototype::finishCreation):
* runtime/ObjectPrototype.h:
(JSC::ObjectPrototype::createStructure):
* runtime/RegExp.h:
(JSC::RegExp::createStructure):
* runtime/RegExpConstructor.h:
(JSC::RegExpConstructor::createStructure):
* runtime/RegExpObject.h:
(JSC::RegExpObject::createStructure):
* runtime/RegExpPrototype.h:
(JSC::RegExpPrototype::createStructure):
* runtime/ScopeChain.h:
(JSC::ScopeChainNode::createStructure):
* runtime/StrictEvalActivation.h:
(JSC::StrictEvalActivation::createStructure):
* runtime/StringConstructor.h:
(JSC::StringConstructor::createStructure):
* runtime/StringObject.h:
(JSC::StringObject::createStructure):
* runtime/StringObjectThatMasqueradesAsUndefined.h:
(JSC::StringObjectThatMasqueradesAsUndefined::createStructure):
* runtime/StringPrototype.cpp:
(JSC::StringPrototype::StringPrototype):
* runtime/StringPrototype.h:
(JSC::StringPrototype::createStructure):
* runtime/Structure.cpp:
(JSC::Structure::Structure):
(JSC::Structure::materializePropertyMap):
(JSC::Structure::addPropertyTransitionToExistingStructure):
(JSC::Structure::addPropertyTransition):
(JSC::Structure::removePropertyTransition):
(JSC::Structure::changePrototypeTransition):
(JSC::Structure::despecifyFunctionTransition):
(JSC::Structure::getterSetterTransition):
(JSC::Structure::toDictionaryTransition):
(JSC::Structure::preventExtensionsTransition):
(JSC::Structure::flattenDictionaryStructure):
(JSC::Structure::addPropertyWithoutTransition):
(JSC::Structure::removePropertyWithoutTransition):
(JSC::Structure::get):
(JSC::Structure::putSpecificValue):
(JSC::Structure::remove):
(JSC::Structure::checkConsistency):
* runtime/Structure.h:
(JSC::Structure::create):
(JSC::Structure::propertyStorageSize):
(JSC::Structure::get):
* runtime/StructureChain.h:
(JSC::StructureChain::createStructure):

Source/JavaScriptGlue:

Don't need an anonymous slot count anymore

* UserObjectImp.h:
(UserObjectImp::createStructure):

Source/WebCore:

Remove all use of anonymous slots, this required modifying
bindings generation to add member variables for cached attributes,
and override visitChildren with the necessary logic to mark those
new members.

I added bindings generation tests for these values.

* bindings/js/JSAudioConstructor.h:
(WebCore::JSAudioConstructor::createStructure):
* bindings/js/JSDOMBinding.h:
(WebCore::DOMConstructorObject::createStructure):
* bindings/js/JSDOMGlobalObject.h:
(WebCore::JSDOMGlobalObject::createStructure):
* bindings/js/JSDOMWindowBase.h:
(WebCore::JSDOMWindowBase::createStructure):
* bindings/js/JSDOMWindowShell.h:
(WebCore::JSDOMWindowShell::createStructure):
* bindings/js/JSDOMWrapper.h:
(WebCore::JSDOMWrapper::createStructure):
* bindings/js/JSImageConstructor.h:
(WebCore::JSImageConstructor::createStructure):
* bindings/js/JSMessageEventCustom.cpp:
(WebCore::JSMessageEvent::data):
(WebCore::JSMessageEvent::initMessageEvent):
* bindings/js/JSOptionConstructor.h:
(WebCore::JSOptionConstructor::createStructure):
* bindings/js/JSWorkerContextBase.h:
(WebCore::JSWorkerContextBase::createStructure):
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateHeader):
(GenerateImplementation):
(GenerateConstructorDeclaration):
* bindings/scripts/test/JS/JSTestInterface.cpp:
(WebCore::JSTestInterfaceConstructor::createStructure):
* bindings/scripts/test/JS/JSTestInterface.h:
(WebCore::JSTestInterface::createStructure):
(WebCore::JSTestInterfacePrototype::createStructure):
* bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
(WebCore::JSTestMediaQueryListListenerConstructor::createStructure):
* bindings/scripts/test/JS/JSTestMediaQueryListListener.h:
(WebCore::JSTestMediaQueryListListener::createStructure):
(WebCore::JSTestMediaQueryListListenerPrototype::createStructure):
* bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::JSTestObjConstructor::createStructure):
(WebCore::jsTestObjCachedAttribute1):
(WebCore::jsTestObjCachedAttribute2):
(WebCore::JSTestObj::visitChildren):
* bindings/scripts/test/JS/JSTestObj.h:
(WebCore::JSTestObj::createStructure):
(WebCore::JSTestObjPrototype::createStructure):
* bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
(WebCore::JSTestSerializedScriptValueInterfaceConstructor::createStructure):
* bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
(WebCore::JSTestSerializedScriptValueInterface::createStructure):
(WebCore::JSTestSerializedScriptValueInterfacePrototype::createStructure):
* bindings/scripts/test/TestObj.idl:
* bindings/scripts/test/V8/V8TestObj.cpp:
(WebCore::TestObjInternal::cachedAttribute1AttrGetter):
(WebCore::TestObjInternal::cachedAttribute2AttrGetter):
* bridge/c/CRuntimeObject.h:
(JSC::Bindings::CRuntimeObject::createStructure):
* bridge/c/c_instance.cpp:
(JSC::Bindings::CRuntimeMethod::createStructure):
* bridge/jni/jsc/JavaInstanceJSC.cpp:
(JavaRuntimeMethod::createStructure):
* bridge/jni/jsc/JavaRuntimeObject.h:
(JSC::Bindings::JavaRuntimeObject::createStructure):
* bridge/objc/ObjCRuntimeObject.h:
(JSC::Bindings::ObjCRuntimeObject::createStructure):
* bridge/objc/objc_instance.mm:
(ObjCRuntimeMethod::createStructure):
* bridge/objc/objc_runtime.h:
(JSC::Bindings::ObjcFallbackObjectImp::createStructure):
* bridge/runtime_array.h:
(JSC::RuntimeArray::createStructure):
* bridge/runtime_method.h:
(JSC::RuntimeMethod::createStructure):
* bridge/runtime_object.h:
(JSC::Bindings::RuntimeObject::createStructure):

Source/WebKit/mac:

Remove the use of AnonymousSlotCount

* Plugins/Hosted/ProxyInstance.mm:
(WebKit::ProxyRuntimeMethod::createStructure):
* Plugins/Hosted/ProxyRuntimeObject.h:
(WebKit::ProxyRuntimeObject::createStructure):

Source/WebKit2:

Remove the use of AnonymousSlotCount.

* WebProcess/Plugins/Netscape/JSNPMethod.h:
(WebKit::JSNPMethod::createStructure):
* WebProcess/Plugins/Netscape/JSNPObject.h:
(WebKit::JSNPObject::createStructure):

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

8 years agoRemoved the svn:executable property from some source files
mitz@apple.com [Sun, 11 Sep 2011 20:49:50 +0000 (20:49 +0000)]
Removed the svn:executable property from some source files

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

8 years ago[Qt] Win32 build broken due to MachineStackMarker.cpp/.o failing to link against...
ossy@webkit.org [Sun, 11 Sep 2011 18:34:02 +0000 (18:34 +0000)]
[Qt] Win32 build broken due to MachineStackMarker.cpp/.o failing to link against pthreads library
https://bugs.webkit.org/show_bug.cgi?id=67864

Qt Win32 is not pthread compatible and cannot participate in multithreaded JSC or it fails to build.

Patch by Jarred Nicholls <jarred@sencha.com> on 2011-09-11
Reviewed by Csaba Osztrogonác.

* wtf/Platform.h:

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

8 years agoRemove two platform-specific results for GTK+ that no longer apply and
mrobinson@webkit.org [Sun, 11 Sep 2011 17:21:53 +0000 (17:21 +0000)]
Remove two platform-specific results for GTK+ that no longer apply and
rebaseline one more test.

* platform/gtk/fast/multicol/inherit-column-values-expected.txt: Removed.
* platform/gtk/fast/multicol/initial-column-values-expected.txt: Removed.
* svg/W3C-SVG-1.1-SE/filters-image-05-f-expected.png: Rebaselined.
* svg/W3C-SVG-1.1-SE/filters-image-05-f-expected.txt: Ditto.

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

8 years agoUnskip two tests that should be passing now that 67383 is resolved.
mrobinson@webkit.org [Sun, 11 Sep 2011 16:56:50 +0000 (16:56 +0000)]
Unskip two tests that should be passing now that 67383 is resolved.

* platform/gtk/Skipped: Unskip passing tests.

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

8 years ago[Qt][Mac] Unreviewed gardening. Paint the Qt-Mac bot green.
ossy@webkit.org [Sun, 11 Sep 2011 07:27:12 +0000 (07:27 +0000)]
[Qt][Mac] Unreviewed gardening. Paint the Qt-Mac bot green.

* platform/qt-mac/Skipped: Skip new failing tests.

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

8 years agoAdded my IRC nick to the committers file.
fpizlo@apple.com [Sun, 11 Sep 2011 07:13:19 +0000 (07:13 +0000)]
Added my IRC nick to the committers file.

* Scripts/webkitpy/common/config/committers.py:

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

8 years agoARM and MIPS assemblers still refer to executable pools.
ossy@webkit.org [Sun, 11 Sep 2011 07:08:25 +0000 (07:08 +0000)]
ARM and MIPS assemblers still refer to executable pools.
https://bugs.webkit.org/show_bug.cgi?id=67903

Patch by Filip Pizlo <fpizlo@apple.com> on 2011-09-11
Reviewed by Csaba Osztrogonác.

* assembler/ARMAssembler.cpp:
(JSC::ARMAssembler::executableCopy):
* assembler/ARMAssembler.h:
* assembler/AssemblerBufferWithConstantPool.h:
* assembler/MIPSAssembler.h:
(JSC::MIPSAssembler::executableCopy):

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

8 years ago[Qt] Unreviewed gardening. Add Qt specific expected results for new passing tests.
ossy@webkit.org [Sun, 11 Sep 2011 07:06:45 +0000 (07:06 +0000)]
[Qt] Unreviewed gardening. Add Qt specific expected results for new passing tests.

* platform/qt/fast/borders/block-mask-overlay-image-outset-expected.png: Added.
* platform/qt/fast/borders/block-mask-overlay-image-outset-expected.txt: Added.
* platform/qt/fast/borders/border-image-outset-expected.png: Added.
* platform/qt/fast/borders/border-image-outset-expected.txt: Added.
* platform/qt/fast/borders/border-image-outset-in-shorthand-expected.png: Added.
* platform/qt/fast/borders/border-image-outset-in-shorthand-expected.txt: Added.
* platform/qt/fast/borders/border-image-outset-split-inline-expected.png: Added.
* platform/qt/fast/borders/border-image-outset-split-inline-expected.txt: Added.
* platform/qt/fast/borders/border-image-outset-split-inline-vertical-lr-expected.png: Added.
* platform/qt/fast/borders/border-image-outset-split-inline-vertical-lr-expected.txt: Added.
* platform/qt/fast/borders/inline-mask-overlay-image-outset-expected.png: Added.
* platform/qt/fast/borders/inline-mask-overlay-image-outset-expected.txt: Added.
* platform/qt/fast/borders/inline-mask-overlay-image-outset-vertical-rl-expected.png: Added.
* platform/qt/fast/borders/inline-mask-overlay-image-outset-vertical-rl-expected.txt: Added.
* platform/qt/fast/reflections/reflection-masks-outset-expected.png: Added.
* platform/qt/fast/reflections/reflection-masks-outset-expected.txt: Added.

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

8 years agoThe executable allocator makes it difficult to free individual
fpizlo@apple.com [Sun, 11 Sep 2011 05:49:36 +0000 (05:49 +0000)]
The executable allocator makes it difficult to free individual
chunks of executable memory
https://bugs.webkit.org/show_bug.cgi?id=66363

Reviewed by Oliver Hunt.

Introduced a best-fit, balanced-tree based allocator. The allocator
required a balanced tree that does not allocate memory and that
permits the removal of individual nodes directly (as opposed to by
key); neither AVLTree nor WebCore's PODRedBlackTree supported this.
Changed all references to executable code to use a reference counted
handle.

Source/JavaScriptCore:

* GNUmakefile.list.am:
* JavaScriptCore.exp:
* JavaScriptCore.vcproj/WTF/WTF.vcproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* assembler/AssemblerBuffer.h:
(JSC::AssemblerBuffer::executableCopy):
* assembler/LinkBuffer.h:
(JSC::LinkBuffer::LinkBuffer):
(JSC::LinkBuffer::finalizeCode):
(JSC::LinkBuffer::linkCode):
* assembler/MacroAssemblerCodeRef.h:
(JSC::MacroAssemblerCodeRef::MacroAssemblerCodeRef):
(JSC::MacroAssemblerCodeRef::createSelfManagedCodeRef):
(JSC::MacroAssemblerCodeRef::executableMemory):
(JSC::MacroAssemblerCodeRef::code):
(JSC::MacroAssemblerCodeRef::size):
(JSC::MacroAssemblerCodeRef::operator!):
* assembler/X86Assembler.h:
(JSC::X86Assembler::executableCopy):
(JSC::X86Assembler::X86InstructionFormatter::executableCopy):
* bytecode/CodeBlock.h:
* bytecode/Instruction.h:
* bytecode/StructureStubInfo.h:
* dfg/DFGJITCompiler.cpp:
(JSC::DFG::JITCompiler::compile):
(JSC::DFG::JITCompiler::compileFunction):
* dfg/DFGRepatch.cpp:
(JSC::DFG::generateProtoChainAccessStub):
(JSC::DFG::tryCacheGetByID):
(JSC::DFG::tryBuildGetByIDList):
(JSC::DFG::tryBuildGetByIDProtoList):
(JSC::DFG::tryCachePutByID):
* jit/ExecutableAllocator.cpp:
(JSC::ExecutableAllocator::initializeAllocator):
(JSC::ExecutableAllocator::ExecutableAllocator):
(JSC::ExecutableAllocator::allocate):
(JSC::ExecutableAllocator::committedByteCount):
(JSC::ExecutableAllocator::dumpProfile):
* jit/ExecutableAllocator.h:
(JSC::ExecutableAllocator::dumpProfile):
* jit/ExecutableAllocatorFixedVMPool.cpp:
(JSC::ExecutableAllocator::initializeAllocator):
(JSC::ExecutableAllocator::ExecutableAllocator):
(JSC::ExecutableAllocator::isValid):
(JSC::ExecutableAllocator::underMemoryPressure):
(JSC::ExecutableAllocator::allocate):
(JSC::ExecutableAllocator::committedByteCount):
(JSC::ExecutableAllocator::dumpProfile):
* jit/JIT.cpp:
(JSC::JIT::privateCompile):
* jit/JIT.h:
(JSC::JIT::compileCTIMachineTrampolines):
(JSC::JIT::compileCTINativeCall):
* jit/JITCode.h:
(JSC::JITCode::operator !):
(JSC::JITCode::addressForCall):
(JSC::JITCode::offsetOf):
(JSC::JITCode::execute):
(JSC::JITCode::start):
(JSC::JITCode::size):
(JSC::JITCode::getExecutableMemory):
(JSC::JITCode::HostFunction):
(JSC::JITCode::JITCode):
* jit/JITOpcodes.cpp:
(JSC::JIT::privateCompileCTIMachineTrampolines):
(JSC::JIT::privateCompileCTINativeCall):
* jit/JITOpcodes32_64.cpp:
(JSC::JIT::privateCompileCTIMachineTrampolines):
(JSC::JIT::privateCompileCTINativeCall):
* jit/JITPropertyAccess.cpp:
(JSC::JIT::stringGetByValStubGenerator):
(JSC::JIT::emitSlow_op_get_by_val):
(JSC::JIT::privateCompilePutByIdTransition):
(JSC::JIT::privateCompilePatchGetArrayLength):
(JSC::JIT::privateCompileGetByIdProto):
(JSC::JIT::privateCompileGetByIdSelfList):
(JSC::JIT::privateCompileGetByIdProtoList):
(JSC::JIT::privateCompileGetByIdChainList):
(JSC::JIT::privateCompileGetByIdChain):
* jit/JITPropertyAccess32_64.cpp:
(JSC::JIT::stringGetByValStubGenerator):
(JSC::JIT::emitSlow_op_get_by_val):
(JSC::JIT::privateCompilePutByIdTransition):
(JSC::JIT::privateCompilePatchGetArrayLength):
(JSC::JIT::privateCompileGetByIdProto):
(JSC::JIT::privateCompileGetByIdSelfList):
(JSC::JIT::privateCompileGetByIdProtoList):
(JSC::JIT::privateCompileGetByIdChainList):
(JSC::JIT::privateCompileGetByIdChain):
* jit/JITStubs.cpp:
(JSC::JITThunks::JITThunks):
(JSC::DEFINE_STUB_FUNCTION):
(JSC::getPolymorphicAccessStructureListSlot):
(JSC::JITThunks::ctiStub):
(JSC::JITThunks::hostFunctionStub):
* jit/JITStubs.h:
* jit/SpecializedThunkJIT.h:
(JSC::SpecializedThunkJIT::SpecializedThunkJIT):
(JSC::SpecializedThunkJIT::finalize):
* jit/ThunkGenerators.cpp:
(JSC::charCodeAtThunkGenerator):
(JSC::charAtThunkGenerator):
(JSC::fromCharCodeThunkGenerator):
(JSC::sqrtThunkGenerator):
(JSC::floorThunkGenerator):
(JSC::ceilThunkGenerator):
(JSC::roundThunkGenerator):
(JSC::expThunkGenerator):
(JSC::logThunkGenerator):
(JSC::absThunkGenerator):
(JSC::powThunkGenerator):
* jit/ThunkGenerators.h:
* runtime/Executable.h:
(JSC::NativeExecutable::create):
* runtime/InitializeThreading.cpp:
(JSC::initializeThreadingOnce):
* runtime/JSGlobalData.cpp:
(JSC::JSGlobalData::JSGlobalData):
(JSC::JSGlobalData::dumpSampleData):
* runtime/JSGlobalData.h:
(JSC::JSGlobalData::getCTIStub):
* wtf/CMakeLists.txt:
* wtf/MetaAllocator.cpp: Added.
(WTF::MetaAllocatorHandle::MetaAllocatorHandle):
(WTF::MetaAllocatorHandle::~MetaAllocatorHandle):
(WTF::MetaAllocatorHandle::shrink):
(WTF::MetaAllocator::MetaAllocator):
(WTF::MetaAllocator::allocate):
(WTF::MetaAllocator::currentStatistics):
(WTF::MetaAllocator::findAndRemoveFreeSpace):
(WTF::MetaAllocator::addFreeSpaceFromReleasedHandle):
(WTF::MetaAllocator::addFreshFreeSpace):
(WTF::MetaAllocator::debugFreeSpaceSize):
(WTF::MetaAllocator::addFreeSpace):
(WTF::MetaAllocator::incrementPageOccupancy):
(WTF::MetaAllocator::decrementPageOccupancy):
(WTF::MetaAllocator::roundUp):
(WTF::MetaAllocator::allocFreeSpaceNode):
(WTF::MetaAllocator::freeFreeSpaceNode):
(WTF::MetaAllocator::dumpProfile):
* wtf/MetaAllocator.h: Added.
(WTF::MetaAllocator::bytesAllocated):
(WTF::MetaAllocator::bytesReserved):
(WTF::MetaAllocator::bytesCommitted):
(WTF::MetaAllocator::dumpProfile):
(WTF::MetaAllocator::~MetaAllocator):
* wtf/MetaAllocatorHandle.h: Added.
* wtf/RedBlackTree.h: Added.
(WTF::RedBlackTree::Node::Node):
(WTF::RedBlackTree::Node::successor):
(WTF::RedBlackTree::Node::predecessor):
(WTF::RedBlackTree::Node::reset):
(WTF::RedBlackTree::Node::parent):
(WTF::RedBlackTree::Node::setParent):
(WTF::RedBlackTree::Node::left):
(WTF::RedBlackTree::Node::setLeft):
(WTF::RedBlackTree::Node::right):
(WTF::RedBlackTree::Node::setRight):
(WTF::RedBlackTree::Node::color):
(WTF::RedBlackTree::Node::setColor):
(WTF::RedBlackTree::RedBlackTree):
(WTF::RedBlackTree::insert):
(WTF::RedBlackTree::remove):
(WTF::RedBlackTree::findExact):
(WTF::RedBlackTree::findLeastGreaterThanOrEqual):
(WTF::RedBlackTree::findGreatestLessThanOrEqual):
(WTF::RedBlackTree::first):
(WTF::RedBlackTree::last):
(WTF::RedBlackTree::size):
(WTF::RedBlackTree::isEmpty):
(WTF::RedBlackTree::treeMinimum):
(WTF::RedBlackTree::treeMaximum):
(WTF::RedBlackTree::treeInsert):
(WTF::RedBlackTree::leftRotate):
(WTF::RedBlackTree::rightRotate):
(WTF::RedBlackTree::removeFixup):
* wtf/wtf.pri:
* yarr/YarrJIT.cpp:
(JSC::Yarr::YarrGenerator::compile):
* yarr/YarrJIT.h:
(JSC::Yarr::YarrCodeBlock::execute):
(JSC::Yarr::YarrCodeBlock::getAddr):

Source/JavaScriptGlue:

* ForwardingHeaders/wtf/MetaAllocatorHandle.h: Added.

Source/WebCore:

No new layout tests because behavior is not changed.  New API unit
tests:
Tests/WTF/RedBlackTree.cpp
Tests/WTF/MetaAllocator.cpp

* ForwardingHeaders/wtf/MetaAllocatorHandle.h: Added.

Tools:

* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WTF/MetaAllocator.cpp: Added.
(TestWebKitAPI::TEST_F):
* TestWebKitAPI/Tests/WTF/RedBlackTree.cpp: Added.
(TestWebKitAPI::Pair::findExact):
(TestWebKitAPI::Pair::remove):
(TestWebKitAPI::Pair::findLeastGreaterThanOrEqual):
(TestWebKitAPI::Pair::assertFoundAndRemove):
(TestWebKitAPI::Pair::assertEqual):
(TestWebKitAPI::Pair::assertSameValuesForKey):
(TestWebKitAPI::Pair::testDriver):
(TestWebKitAPI::TEST_F):

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

8 years agoRemove JSC::isZombie() function, it did nothing and was called by no-one.
weinig@apple.com [Sun, 11 Sep 2011 05:24:02 +0000 (05:24 +0000)]
Remove JSC::isZombie() function, it did nothing and was called by no-one.
https://bugs.webkit.org/show_bug.cgi?id=67901

Reviewed by Andy Estes.

* JavaScriptCore.exp:
* runtime/JSCell.cpp:
* runtime/JSValue.h:

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

8 years agoAdd isInterruptedExecutionException and isTerminatedExecutionException predicates
weinig@apple.com [Sun, 11 Sep 2011 05:16:09 +0000 (05:16 +0000)]
Add isInterruptedExecutionException and isTerminatedExecutionException predicates
https://bugs.webkit.org/show_bug.cgi?id=67892

Reviewed by Andy "First Time Reviewer" Estes.

../JavaScriptCore:

* JavaScriptCore.exp:
Add symbols.

* interpreter/Interpreter.cpp:
(JSC::Interpreter::throwException):
Use new predicates.

* runtime/ExceptionHelpers.cpp:
(JSC::createInterruptedExecutionException):
(JSC::isInterruptedExecutionException):
(JSC::createTerminatedExecutionException):
(JSC::isTerminatedExecutionException):
* runtime/ExceptionHelpers.h:
(JSC::InterruptedExecutionError::InterruptedExecutionError):
Add predicates.

../WebCore:

* bindings/js/JSDOMBinding.cpp:
(WebCore::reportException):
* bindings/js/JSEventListener.cpp:
(WebCore::JSEventListener::handleEvent):
* bindings/js/WorkerScriptController.cpp:
(WebCore::WorkerScriptController::evaluate):
Use the new predicates instead of probing the ClassInfo directly.

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

8 years agoMove myself from committers_unable_to_review to reviewers_list.
aestes@apple.com [Sun, 11 Sep 2011 05:16:03 +0000 (05:16 +0000)]
Move myself from committers_unable_to_review to reviewers_list.

* Scripts/webkitpy/common/config/committers.py:

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

8 years ago[wx] Unreviewed build fix. MSW build fixes.
kevino@webkit.org [Sun, 11 Sep 2011 00:52:14 +0000 (00:52 +0000)]
[wx] Unreviewed build fix. MSW build fixes.

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

8 years agoSkip fast/images/support-broken-image-delegate.html temporarily on Mac.
rniwa@webkit.org [Sun, 11 Sep 2011 00:17:04 +0000 (00:17 +0000)]
Skip fast/images/support-broken-image-delegate.html temporarily on Mac.
The failure is tracked by the bug 67898.

* platform/mac/Skipped:

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

8 years agoDFG JIT completely undoes speculative compilation even in the case of
fpizlo@apple.com [Sat, 10 Sep 2011 21:23:45 +0000 (21:23 +0000)]
DFG JIT completely undoes speculative compilation even in the case of
a partial static speculation failure
https://bugs.webkit.org/show_bug.cgi?id=67798

Reviewed by Geoffrey Garen.

This is a regression with static speculation, so it is turned off by
default.  But it is a necessary prerequisite for further work on
dynamic speculation.

* dfg/DFGJITCodeGenerator.cpp:
(JSC::DFG::JITCodeGenerator::clearGenerationInfo):
* dfg/DFGJITCodeGenerator.h:
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::fillSpeculateIntInternal):
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::terminateSpeculativeExecution):

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

8 years agoRemove emacs backup file that got committed by mistake.
hyatt@apple.com [Sat, 10 Sep 2011 21:14:21 +0000 (21:14 +0000)]
Remove emacs backup file that got committed by mistake.

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

8 years agohttps://bugs.webkit.org/show_bug.cgi?id=67861
hyatt@apple.com [Sat, 10 Sep 2011 21:08:05 +0000 (21:08 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=67861

Implement border-image-outset (and the mask equivalents).

Reviewed by Beth Dakin.

Source/WebCore:

Added new tests in fast/borders and fast/reflections.

* css/CSSBorderImageValue.cpp:
(WebCore::CSSBorderImageValue::CSSBorderImageValue):
(WebCore::CSSBorderImageValue::cssText):
* css/CSSBorderImageValue.h:
(WebCore::CSSBorderImageValue::create):
Add m_outset field to CSSBorderImageValue and teach it how to dump the field as
part of cssText().

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::valueForNinePieceImageQuad):
(WebCore::valueForNinePieceImage):
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
Add support for border-image-outset and -webkit-mask-box-image-outset. Refactor
the code so that border-image-width and border-image-outset use a common
function.

* css/CSSParser.cpp:
(WebCore::CSSParser::parseValue):
(WebCore::BorderImageParseContext::BorderImageParseContext):
(WebCore::BorderImageParseContext::allowOutset):
(WebCore::BorderImageParseContext::commitSlash):
(WebCore::BorderImageParseContext::commitBorderWidth):
(WebCore::BorderImageParseContext::commitBorderOutset):
(WebCore::BorderImageParseContext::commitRepeat):
(WebCore::BorderImageParseContext::commitBorderImage):
(WebCore::CSSParser::parseBorderImage):
Teach the border image parsing code about outsets. This code will soon be
replaced by true shorthand parsing code, but for now keep it working and add
outset support to it.

(WebCore::BorderImageQuadParseContext::BorderImageQuadParseContext):
(WebCore::BorderImageQuadParseContext::commitBorderImageQuad):
(WebCore::CSSParser::parseBorderImageQuad):
(WebCore::CSSParser::parseBorderImageWidth):
(WebCore::CSSParser::parseBorderImageOutset):
* css/CSSParser.h:
Refactor the border-image-width code so that it can be shared by border-image-outset, since
they are extremely similar.

* css/CSSPropertyNames.in:
Add the new properties.

* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::applyProperty):
(WebCore::CSSStyleSelector::mapNinePieceImage):
(WebCore::CSSStyleSelector::mapNinePieceImageQuad):
(WebCore::CSSStyleSelector::loadPendingImages):
* css/CSSStyleSelector.h:
Refactor the code so that width/outset share common mapping functions. Add support for outset.

* rendering/InlineFlowBox.cpp:
(WebCore::InlineFlowBox::addToLine):
(WebCore::InlineFlowBox::addBoxShadowVisualOverflow):
(WebCore::InlineFlowBox::addBorderOutsetVisualOverflow):
(WebCore::InlineFlowBox::computeOverflow):
Add new functions for computing the visual overflow caused by border outsets. Fix bugs in
the shadow overflow code as well.

(WebCore::clipRectForNinePieceImageStrip):
(WebCore::InlineFlowBox::paintBoxDecorations):
(WebCore::InlineFlowBox::paintMask):
* rendering/InlineFlowBox.h:
Make sure the clip rect pushed when painting one piece of a split inline strip is expanded to
include the border and mask outsets. Always include the block direction expansion, and conditionally
include the inline direction expansion based off includeLogicalLeftEdge()/includeLogicalRightEdge().
clipRectForNinePieceImageStrip is a common function shared by masks and border images that does this
work.

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::computeOverflow):
* rendering/RenderBox.cpp:
(WebCore::RenderBox::maskClipRect):
(WebCore::RenderBox::addBoxShadowAndBorderOverflow):
* rendering/RenderBox.h:
Rename addShadowOverflow to addBoxShadowAndBorderOverflow. Have it compute both shadow and border image
outset overflow. Fix bugs with shadow overflow computation.

* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::paintNinePieceImage):
Change painting to apply the outsets to inflate the border image drawing area.

* rendering/RenderEmbeddedObject.cpp:
(WebCore::RenderEmbeddedObject::layout):
* rendering/RenderIFrame.cpp:
(WebCore::RenderIFrame::layout):
Patched to call the renamed addBoxShadowAndBorderOverflow function instead of addShadowOverflow.

* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::calculateRects):
Patched to no longer apply box-shadow to overflow clip areas when inflating the intersection area for the
layer bounds. Instead we generically apply all visual overflow so that border image outsets will also be
included. This fixes https://bugs.webkit.org/show_bug.cgi?id=37467.

* rendering/RenderReplaced.cpp:
(WebCore::RenderReplaced::layout):
Patched to call the renamed addBoxShadowAndBorderOverflow function instead of addShadowOverflow.

* rendering/style/NinePieceImage.cpp:
(WebCore::NinePieceImage::operator==):
* rendering/style/NinePieceImage.h:
(WebCore::NinePieceImage::NinePieceImage):
(WebCore::NinePieceImage::outset):
(WebCore::NinePieceImage::setOutset):
(WebCore::NinePieceImage::computeOutset):
(WebCore::NinePieceImage::copyOutsetFrom):
Add the outset field to NinePieceImage along with some helpers for manipulating outsets.

* rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::getImageOutsets):
(WebCore::RenderStyle::getImageHorizontalOutsets):
(WebCore::RenderStyle::getImageVerticalOutsets):
* rendering/style/RenderStyle.h:
(WebCore::InheritedFlags::hasBorderImageOutsets):
(WebCore::InheritedFlags::getBorderImageOutsets):
(WebCore::InheritedFlags::getBorderImageHorizontalOutsets):
(WebCore::InheritedFlags::getBorderImageVerticalOutsets):
(WebCore::InheritedFlags::getBorderImageInlineDirectionOutsets):
(WebCore::InheritedFlags::getBorderImageBlockDirectionOutsets):
(WebCore::InheritedFlags::getImageInlineDirectionOutsets):
(WebCore::InheritedFlags::getImageBlockDirectionOutsets):
Helpers for outset computation used by painting and overflow functions.

LayoutTests:

* fast/borders/block-mask-overlay-image-outset.html: Added.
* fast/borders/block-mask-overlay-image.html~: Added.
* fast/borders/border-image-outset-in-shorthand.html: Added.
* fast/borders/border-image-outset-split-inline-vertical-lr.html: Added.
* fast/borders/border-image-outset-split-inline.html: Added.
* fast/borders/border-image-outset.html: Added.
* fast/borders/inline-mask-overlay-image-outset-vertical-rl.html: Added.
* fast/borders/inline-mask-overlay-image-outset.html: Added.
* fast/css/getComputedStyle/computed-style-expected.txt:
* fast/css/getComputedStyle/computed-style-with-zoom-expected.txt:
* fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
* fast/css/getComputedStyle/getComputedStyle-border-image-expected.txt:
* fast/reflections/reflection-computed-style-expected.txt:
* fast/reflections/reflection-masks-outset.html: Added.
* platform/mac/fast/borders/block-mask-overlay-image-outset-expected.png: Added.
* platform/mac/fast/borders/block-mask-overlay-image-outset-expected.txt: Added.
* platform/mac/fast/borders/border-image-outset-expected.png: Added.
* platform/mac/fast/borders/border-image-outset-expected.txt: Added.
* platform/mac/fast/borders/border-image-outset-in-shorthand-expected.png: Added.
* platform/mac/fast/borders/border-image-outset-in-shorthand-expected.txt: Added.
* platform/mac/fast/borders/border-image-outset-split-inline-expected.png: Added.
* platform/mac/fast/borders/border-image-outset-split-inline-expected.txt: Added.
* platform/mac/fast/borders/border-image-outset-split-inline-vertical-lr-expected.png: Added.
* platform/mac/fast/borders/border-image-outset-split-inline-vertical-lr-expected.txt: Added.
* platform/mac/fast/borders/inline-mask-overlay-image-outset-expected.png: Added.
* platform/mac/fast/borders/inline-mask-overlay-image-outset-expected.txt: Added.
* platform/mac/fast/borders/inline-mask-overlay-image-outset-vertical-rl-expected.png: Added.
* platform/mac/fast/borders/inline-mask-overlay-image-outset-vertical-rl-expected.txt: Added.
* platform/mac/fast/reflections/reflection-masks-outset-expected.png: Added.
* platform/mac/fast/reflections/reflection-masks-outset-expected.txt: Added.
* svg/css/getComputedStyle-basic-expected.txt:

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

8 years agoActually prevent unnecessary casts to MediaControls*.
mitz@apple.com [Sat, 10 Sep 2011 19:17:08 +0000 (19:17 +0000)]
Actually prevent unnecessary casts to MediaControls*.

Reviewed by Oliver Hunt.

* html/shadow/MediaControls.h:

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

8 years agoRemove printf added by r94900.
rniwa@webkit.org [Sat, 10 Sep 2011 18:54:59 +0000 (18:54 +0000)]
Remove printf added by r94900.

* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::drawPlatformResizerImage):

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

8 years agoCrash beneath WKURLIsEqual() when reloading in MiniBrowser.
commit-queue@webkit.org [Sat, 10 Sep 2011 17:52:15 +0000 (17:52 +0000)]
Crash beneath WKURLIsEqual() when reloading in MiniBrowser.
https://bugs.webkit.org/show_bug.cgi?id=59328

Patch by Andreas Kling <kling@webkit.org> on 2011-09-10
Reviewed by Kenneth Rohde Christiansen.

* MiniBrowser/mac/BrowserWindowController.m:
(-[BrowserWindowController updateProvisionalURLForFrame:]): Add missing null check.

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

8 years agorequestAnimationFrame doesn't throttle on Mac
cmarrin@apple.com [Sat, 10 Sep 2011 14:21:01 +0000 (14:21 +0000)]
requestAnimationFrame doesn't throttle on Mac
https://bugs.webkit.org/show_bug.cgi?id=67171

Reviewed by Simon Fraser.

Source/JavaScriptCore:

Added WTF_USE_REQUEST_ANIMATION_FRAME_TIMER to allow any platform to run
requestAnimationFrame callbacks on a Timer defined in ScriptedAnimationController.
Currently only enabled for PLATFORM(MAC)

* wtf/Platform.h:

Source/WebCore:

Changed requestAnimationFrame to use a Timer in ScriptedAnimationController
on Mac, rather than runLoopObservers. The Timer is throttled to fire no
faster than every 15ms. It is behind a WTF_USE_REQUEST_ANIMATION_FRAME_TIMER
flag and can be used by any implementation, but currently it is only enabled
by PLATFORM(MAC).

* dom/ScriptedAnimationController.cpp:
(WebCore::ScriptedAnimationController::ScriptedAnimationController):
(WebCore::ScriptedAnimationController::resume):
(WebCore::ScriptedAnimationController::registerCallback):
(WebCore::ScriptedAnimationController::serviceScriptedAnimations):
(WebCore::ScriptedAnimationController::scheduleAnimation):
(WebCore::ScriptedAnimationController::animationTimerFired):
* dom/ScriptedAnimationController.h:
* loader/EmptyClients.h:
* page/Chrome.cpp:
(WebCore::Chrome::scheduleAnimation):
* page/ChromeClient.h:

Source/WebKit/mac:

Removed runLoopObserver for requestAnimationFrame. It's now
done by a Timer in ScriptedAnimationController in WebCore.

* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
* WebView/WebView.mm:
(-[WebView _close]):
* WebView/WebViewData.h:
* WebView/WebViewInternal.h:

Source/WebKit2:

Removed runLoopObserver for requestAnimationFrame. It's now
done by a Timer in ScriptedAnimationController in WebCore.

* WebProcess/WebCoreSupport/WebChromeClient.cpp:
* WebProcess/WebCoreSupport/WebChromeClient.h:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::~WebPage):
* WebProcess/WebPage/WebPage.h:
* WebProcess/WebPage/mac/WebPageMac.mm:

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

8 years ago[Qt] Unreviewed gardening after r94897.
ossy@webkit.org [Sat, 10 Sep 2011 14:06:06 +0000 (14:06 +0000)]
[Qt] Unreviewed gardening after r94897.

* platform/qt/svg/custom/simple-text-double-shadow-expected.png: Added.
* platform/qt/svg/custom/simple-text-double-shadow-expected.txt: Added.

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

8 years agoSource/WebCore: [Qt] QWebSettings::setUserStyleSheetUrl() does not work with windows...
commit-queue@webkit.org [Sat, 10 Sep 2011 13:15:49 +0000 (13:15 +0000)]
Source/WebCore: [Qt] QWebSettings::setUserStyleSheetUrl() does not work with windows paths that contain drive letters
https://bugs.webkit.org/show_bug.cgi?id=34884

KURL::path() alone does not handle removing the leading slash from a windows file path.
Using QUrl::toLocalFile() will turn file:///C:/path into C:/path appropriately.

Patch by Jarred Nicholls <jarred@sencha.com> on 2011-09-10
Reviewed by Andreas Kling.

* platform/qt/KURLQt.cpp:
(WebCore::KURL::fileSystemPath):

Source/WebKit/qt: [Qt] QWebSettings::setUserStyleSheetUrl() does not work with windows paths that contain drive letters
https://bugs.webkit.org/show_bug.cgi?id=34884

KURL::path() alone does not handle removing the leading slash from a windows file path.
Using QUrl::toLocalFile() will turn file:///C:/path into C:/path appropriately.

New test case that ensures a user stylesheet from the file system will load correctly
on all platforms.

Patch by Jarred Nicholls <jarred@sencha.com> on 2011-09-10
Reviewed by Andreas Kling.

* tests/qwebpage/resources/user.css: Added.
(p):
* tests/qwebpage/tst_qwebpage.cpp:
(tst_QWebPage::userStyleSheetFromFile):

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

8 years agoSource/WebCore: Crash due to bad data in SVGDocumentExtensions m_pendingResources
commit-queue@webkit.org [Sat, 10 Sep 2011 11:25:03 +0000 (11:25 +0000)]
Source/WebCore: Crash due to bad data in SVGDocumentExtensions m_pendingResources
https://bugs.webkit.org/show_bug.cgi?id=67488

Patch by Ken Buchanan <kenrb@chromium.org> on 2011-09-10
Reviewed by Nikolas Zimmermann.

Resolving a crash condition caused by the deletion of
elements while pending resource entries for those elements are still
recorded.

* rendering/svg/RenderSVGResourceContainer.cpp:
(WebCore::RenderSVGResourceContainer::registerResource)
* svg/SVGDocumentExtensions.h:
(WebCore::SVGDocumentExtensions::isElementInPendingResources)
* svg/SVGDocumentExtensions.cpp:
(WebCore::SVGDocumentExtensions::addPendingResource)
(WebCore::SVGDocumentExtensions::isElementInPendingResources)
(WebCore::SVGDocumentExtensions::removeElementFromPendingResources)
* svg/SVGStyledElement.h:
(WebCore::SVGStyledElement::clearHasPendingResourcesIfPossible)
* svg/SVGStyledElement.cpp:
(WebCore::SVGStyledElement::buildPendingResourcesIfNeeded)
(WebCore::SVGStyledElement::clearHasPendingResourcesIfPossible)
* svg/SVGUseElement.cpp:
(WebCore::SVGUseElement::svgAttributeChanged)

LayoutTests: Crash due to bad data in SVGDocumentExtensions m_pendingResources.
https://bugs.webkit.org/show_bug.cgi?id=67488

Patch by Ken Buchanan <kenrb@chromium.org> on 2011-09-10
Reviewed by Nikolas Zimmermann.

Test added: validating that the crash referenced in the bug is not present.

* svg/dom/SVGStyledElement-pendingResource-crash.html: Added.
* svg/dom/SVGStyledElement-pendingResource-crash-expected.txt: Added.
* svg/dom/resources/SVGStyledElement-pendingResource-crash.svg: Added.

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

8 years agoBuild fix for Android. DumpRenderTree is a client of the WebKit API
abarth@webkit.org [Sat, 10 Sep 2011 08:33:43 +0000 (08:33 +0000)]
Build fix for Android.  DumpRenderTree is a client of the WebKit API
and does not have access to notImplemented().

* DumpRenderTree/chromium/TestShellAndroid.cpp:
(openStartupDialog):

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

8 years agoFix build break.
abarth@webkit.org [Sat, 10 Sep 2011 07:56:06 +0000 (07:56 +0000)]
Fix build break.

* webkit/webkitwebview.cpp:
(webkit_web_view_get_encoding):

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

8 years agoRemove DocumentWriter::deprecatedFrameEncoding()
abarth@webkit.org [Sat, 10 Sep 2011 07:54:40 +0000 (07:54 +0000)]
Remove DocumentWriter::deprecatedFrameEncoding()
https://bugs.webkit.org/show_bug.cgi?id=67882

Reviewed by Eric Seidel.

Three years ago, in http://trac.webkit.org/changeset/39026, Alexey
Proskuryakov added ContentDispositionEncodingFallbackArray to work
around a web site compatibility issue with a non-ASCII file name
becoming garbled when received in the Content-Disposition header.

Since that time, there has been copious discussion of this topic among
browser vendors, in the IETF, and in the broader web community.  For
example, here is a Stack Overflow thread about this topic:

http://stackoverflow.com/questions/93551/how-to-encode-the-filename-parameter-of-content-disposition-header-in-http

Eric Lawrence has written a blog post that summarizes IE's perspective
on this issue:

http://blogs.msdn.com/b/ieinternals/archive/2010/06/07/content-disposition-attachment-and-international-unicode-characters.aspx

The current consensus is that browsers should implement RFC 6266,
which is a new RFC that updates the definition of the
Content-Disposition header.  Chrome and Firefox have both implemented
RFC 6266 and have encountered only one issue, which was then fixed by
the web site operator.  IE has also implemented RFC 6266, but I don't
have detailed information about their compatibility experience.

This patch add explicit PLATFORM #ifdefs around the quirky
implementation previously used in Apple's Mac and Windows ports.  This
code is already only used on Apple's ports, so this patch introduces no
functional changes.  It does, however, discourage other ports from
adopting this quirk.  IMHO, Apple should remove this quirk as soon as
compatibility allows and converge behavior with the other major browser
vendors.

See bug for manual test (the bug manifests in Safari download UI).

* loader/DocumentWriter.cpp:
* loader/DocumentWriter.h:
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::addExtraFieldsToRequest):
* platform/network/ResourceRequestBase.cpp:
(WebCore::ResourceRequestBase::adopt):
(WebCore::ResourceRequestBase::copyData):
* platform/network/ResourceRequestBase.h:

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

8 years agoAttempted Leopard build fix.
bdakin@apple.com [Sat, 10 Sep 2011 06:47:59 +0000 (06:47 +0000)]
Attempted Leopard build fix.

* rendering/RenderImage.cpp:
(WebCore::RenderImage::paintReplaced):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::drawPlatformResizerImage):

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

8 years agoFix for https://bugs.webkit.org/show_bug.cgi?id=67819
bdakin@apple.com [Sat, 10 Sep 2011 06:28:00 +0000 (06:28 +0000)]
Fix for https://bugs.webkit.org/show_bug.cgi?id=67819
Use high resolution platform images when the deviceScaleFactor > 1
-and corresponding-
<rdar://problem/10003098>

Reviewed by Darin Adler.

Add all of the new high resolution images. I also removed some tiffs from the
project and replaced them with png equivalents (that are already checked into
WebCore anyway). Since the high resolution images are pngs, it makes sense to use
pngs for all of the images that load through Image::loadPlatformResource()
* WebCore.xcodeproj/project.pbxproj:
* platform/graphics/mac/ImageMac.mm:
(WebCore::Image::loadPlatformResource):

Load the @2x resource for deviceScaleFactors >= 2.
* editing/DeleteButtonController.cpp:
(WebCore::DeleteButtonController::createDeletionUI):

CachedImage::brokenImage() is no longer a static helper function, but a real
member function. It also now loads the @2x resource for deviceScaleFactors >= 2
and takes a parameter for the deviceScaleFactor. When CachedImage::image() returns
the brokenImage(), it just returns the 1x version. brokenImage() has to be called
directly to reliably return the deviceScaleFactor-appropriate resource.
* loader/cache/CachedImage.cpp:
(WebCore::CachedImage::brokenImage):
(WebCore::CachedImage::image):
* loader/cache/CachedImage.h:
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::drawPlatformResizerImage):
(WebCore::RenderLayer::paintResizer):
* rendering/RenderLayer.h:

New static function to retrieve the deviceScaleFactor for callers that do not have
direct access to a Page.
* page/Page.cpp:
(WebCore::Page::deviceScaleFactor):
* page/Page.h:

Call CachedImage::brokenImage() for the broken-image image at an accurate
resolution.
* rendering/RenderImage.cpp:
(WebCore::RenderImage::imageSizeForError):
(WebCore::RenderImage::paintReplaced):

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

8 years ago Add a script to create a monolithic script-test
ap@apple.com [Sat, 10 Sep 2011 04:00:45 +0000 (04:00 +0000)]
    Add a script to create a monolithic script-test
        https://bugs.webkit.org/show_bug.cgi?id=67747

        Reviewed by Darin Adler.

        * Scripts/make-new-script-test: Added.

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

8 years agoMove Element.contains to Node
arv@chromium.org [Sat, 10 Sep 2011 03:21:41 +0000 (03:21 +0000)]
Move Element.contains to Node
https://bugs.webkit.org/show_bug.cgi?id=67651

Reviewed by Darin Adler.

This moves the contains method from Element to Node as in the DOM4 working draft:
http://dvcs.w3.org/hg/domcore/raw-file/tip/Overview.html#dom-node-contains

This also special cases Document contains to make it O(1) instead of O(depth).

Source/WebCore:

Tests: fast/dom/Node/contains-method.html
       perf/document-contains.html

* bindings/objc/PublicDOMInterfaces.h: Move contains from DOMElement to DOMNode.
* dom/Element.idl:
* dom/Node.cpp:
(WebCore::Node::contains): Added document special case.
* dom/Node.idl:
* editing/DeleteSelectionCommand.cpp:
(WebCore::DeleteSelectionCommand::mergeParagraphs): Added a null check.

LayoutTests:

* fast/dom/Element/contains-method-expected.txt: Removed.
* fast/dom/Element/script-tests/contains-method.js: Removed.
* fast/dom/Node/contains-method-expected.txt: Added.
* fast/dom/Node/contains-method.html: Renamed from LayoutTests/fast/dom/Element/contains-method.html.
* fast/dom/Node/script-tests/contains-method.js: Added. Expanded tests.
* fast/dom/Window/window-properties-expected.txt:
* perf/document-contains-expected.txt: Added.
* perf/document-contains.html: Added.
                               Perf test to ensure that document.contains is O(1).
* platform/gtk/fast/dom/Window/window-properties-expected.txt:
* platform/mac/fast/dom/Window/window-properties-expected.txt:
* platform/qt-wk2/fast/dom/Window/window-properties-expected.txt:
* platform/qt/fast/dom/Window/window-properties-expected.txt:

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

8 years agoText rendered with a simple (i.e. 0px blur) shadow inside a transparency layer has...
timothy_horton@apple.com [Sat, 10 Sep 2011 02:56:29 +0000 (02:56 +0000)]
Text rendered with a simple (i.e. 0px blur) shadow inside a transparency layer has a double shadow
https://bugs.webkit.org/show_bug.cgi?id=67543
<rdar://problem/10070536>

Reviewed by Darin Adler.

Source/WebCore:

Generalize (begin|end)TransparencyLayer, which now forward
through to (begin|end)PlatformTransparencyLayer, so that
isInTransparencyLayer can exist on every platform.

Make use of isInTransparencyLayer in FontMac to disable
"simple" shadow drawing when the text is being rendered
into a transparency layer.

Test: svg/custom/simple-text-double-shadow.svg

* platform/graphics/GraphicsContext.cpp:
(WebCore::GraphicsContext::GraphicsContext):
(WebCore::GraphicsContext::~GraphicsContext):
(WebCore::GraphicsContext::beginTransparencyLayer):
(WebCore::GraphicsContext::endTransparencyLayer):
(WebCore::GraphicsContext::isInTransparencyLayer):
* platform/graphics/GraphicsContext.h:
* platform/graphics/cairo/GraphicsContextCairo.cpp:
(WebCore::GraphicsContext::beginPlatformTransparencyLayer):
(WebCore::GraphicsContext::endPlatformTransparencyLayer):
(WebCore::GraphicsContext::supportsTransparencyLayers):
* platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
* platform/graphics/cg/GraphicsContextCG.cpp:
(WebCore::GraphicsContext::beginPlatformTransparencyLayer):
(WebCore::GraphicsContext::endPlatformTransparencyLayer):
(WebCore::GraphicsContext::supportsTransparencyLayers):
* platform/graphics/cg/GraphicsContextPlatformPrivateCG.h:
(WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
* platform/graphics/haiku/GraphicsContextHaiku.cpp:
(WebCore::GraphicsContext::beginPlatformTransparencyLayer):
(WebCore::GraphicsContext::endPlatformTransparencyLayer):
(WebCore::GraphicsContext::supportsTransparencyLayers):
* platform/graphics/mac/FontMac.mm:
(WebCore::Font::drawGlyphs):
* platform/graphics/openvg/GraphicsContextOpenVG.cpp:
(WebCore::GraphicsContext::beginPlatformTransparencyLayer):
(WebCore::GraphicsContext::endPlatformTransparencyLayer):
(WebCore::GraphicsContext::supportsTransparencyLayers):
* platform/graphics/qt/GraphicsContextQt.cpp:
(WebCore::GraphicsContext::isInTransparencyLayer):
(WebCore::GraphicsContext::beginPlatformTransparencyLayer):
(WebCore::GraphicsContext::endPlatformTransparencyLayer):
(WebCore::GraphicsContext::supportsTransparencyLayers):
* platform/graphics/skia/GraphicsContextSkia.cpp:
(WebCore::GraphicsContext::beginPlatformTransparencyLayer):
(WebCore::GraphicsContext::endPlatformTransparencyLayer):
(WebCore::GraphicsContext::supportsTransparencyLayers):
* platform/graphics/win/FontCGWin.cpp:
(WebCore::drawGDIGlyphs):
* platform/graphics/win/GraphicsContextCGWin.cpp:
(WebCore::GraphicsContext::releaseWindowsContext):
* platform/graphics/win/GraphicsContextCairoWin.cpp:
(WebCore::GraphicsContext::releaseWindowsContext):
* platform/graphics/win/GraphicsContextWin.cpp:
(WebCore::GraphicsContext::getWindowsContext):
* platform/graphics/wince/GraphicsContextWinCE.cpp:
(WebCore::GraphicsContext::beginPlatformTransparencyLayer):
(WebCore::GraphicsContext::endPlatformTransparencyLayer):
(WebCore::GraphicsContext::supportsTransparencyLayers):
* platform/graphics/wx/GraphicsContextWx.cpp:
(WebCore::GraphicsContext::beginPlatformTransparencyLayer):
(WebCore::GraphicsContext::endPlatformTransparencyLayer):
(WebCore::GraphicsContext::supportsTransparencyLayers):
* platform/win/ScrollbarThemeWin.cpp:
* plugins/win/PluginViewWin.cpp:
* rendering/RenderThemeWin.cpp:

LayoutTests:

Add a test ensuring that text with 0px blur CSS shadow doesn't get rendered
with a second shadow when inside a transparency layer.

* platform/mac/svg/custom/simple-text-double-shadow-expected.png: Added.
* platform/mac/svg/custom/simple-text-double-shadow-expected.txt: Added.
* svg/custom/simple-text-double-shadow.svg: Added.

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

8 years agoAdding myself to the reviewers list.
luiz@webkit.org [Sat, 10 Sep 2011 02:49:06 +0000 (02:49 +0000)]
Adding myself to the reviewers list.

* Scripts/webkitpy/common/config/committers.py:

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

8 years agoUpdate Skipped lists for mac and mac-lion w.r.t. canvas
mdelaney@apple.com [Sat, 10 Sep 2011 01:58:44 +0000 (01:58 +0000)]
Update Skipped lists for mac and mac-lion w.r.t. canvas
https://bugs.webkit.org/show_bug.cgi?id=67867

Reviewed by Simon Fraser.

* platform/mac-lion/Skipped:
* platform/mac/Skipped:

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

8 years ago[V8] V8WebKitPoint::constructorCallback leaks
jchaffraix@webkit.org [Sat, 10 Sep 2011 01:16:12 +0000 (01:16 +0000)]
[V8] V8WebKitPoint::constructorCallback leaks
https://bugs.webkit.org/show_bug.cgi?id=67865

Reviewed by Adam Barth.

Covered by fast/js/instanceof-XMLHttpRequest.html under Valgrind.

* bindings/v8/custom/V8WebKitPointConstructor.cpp:
(WebCore::V8WebKitPoint::constructorCallback): Changed the code
to use a RefPtr (per our usual style). Also use toV8 that will
take care of properly wrapping the object.

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

8 years agoHRTFDatabaseLoader should not call WTF::waitForThreadCompletion() more than once
crogers@google.com [Sat, 10 Sep 2011 00:59:43 +0000 (00:59 +0000)]
HRTFDatabaseLoader should not call WTF::waitForThreadCompletion() more than once
https://bugs.webkit.org/show_bug.cgi?id=67866

Reviewed by David Levin.

No new tests since this is difficult to test.
This is designed to fix existing webaudio layout test failures.

* platform/audio/HRTFDatabaseLoader.cpp:
(WebCore::HRTFDatabaseLoader::HRTFDatabaseLoader):
(WebCore::HRTFDatabaseLoader::~HRTFDatabaseLoader):
(WebCore::HRTFDatabaseLoader::loadAsynchronously):
(WebCore::HRTFDatabaseLoader::waitForLoaderThreadCompletion):
* platform/audio/HRTFDatabaseLoader.h:

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

8 years agoCookies are not available after turning off Private Browsing after the last window...
jberlin@webkit.org [Sat, 10 Sep 2011 00:57:43 +0000 (00:57 +0000)]
Cookies are not available after turning off Private Browsing after the last window has been
closed.
https://bugs.webkit.org/show_bug.cgi?id=67874

Reviewed by Darin Adler.

The private browsing storage session is a global setting that is being incorrectly set on a
per-page basis (see http://webkit.org/b/67870).

In this case, the global value was getting out of sync with the per-page setting:
1. The global value was getting set to true when setPrivateBrowsingEnabled(true) was called.
2. All Pages were then closed, destroying their Settings objects.
3. When a new Page was created, a new Settings object was created and its
   m_privateBrowsingEnabled value was getting set to false.
4. The WebPage settings were then applied to the new Settings object, resulting in
   setPrivateBrowsingEnabled(false) to be called.
5. An if (m_privateBrowsingEnabled == privateBrowsingEnabled) early return prevented the
   global value for the storage session from being destroyed.

* page/Settings.cpp:
(WebCore::Settings::setPrivateBrowsingEnabled):
Move the early return to be after setting the global private browsing values, and add a
clearer comment + FIXME.

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

8 years agoGenerate a WebKitCSSMatrix constructor of V8 using the IDL 'Constructor' extended...
rolandsteiner@chromium.org [Sat, 10 Sep 2011 00:29:10 +0000 (00:29 +0000)]
Generate a WebKitCSSMatrix constructor of V8 using the IDL 'Constructor' extended attribute
https://bugs.webkit.org/show_bug.cgi?id=67458

Patch by Kentaro Hara <haraken@google.com> on 2011-09-09
Reviewed by Adam Barth.

Source/WebCore:

Added a 'CallWithNullValue' extended attribute.
If a parameter is optional and missing, 'CallWithDefaultValue'
handles it as a string "undefined". On the other hand,
'CallWithNullValue' handles it as a null string
(Note: not a string "null", but a null string).

Tests: fast/dom/Window/custom-constructors.html
       transforms/svg-vs-css.xhtml
       transforms/cssmatrix-2d-interface.xhtml
       transforms/cssmatrix-3d-interface.xhtmlGenerate a WebKitCSSMatrix constructor

* WebCore.gypi: Removed V8WebKitCSSMatrixConstructor.cpp.
* WebCore.pro: Removed V8WebKitCSSMatrixConstructor.cpp.
* bindings/scripts/CodeGeneratorV8.pm:
(GenerateParametersCheck): If the 'CallWithNullValue' extended attribute is set, we call MAYBE_MISSING_PARAMETER() with MissingIsEmpty mode to obtain a maybe missing parameter. Otherwise, we call MAYBE_MISSING_PARAMETER() with MissingIsUndefined mode.
(RequiresCustomSignature):
* bindings/scripts/test/V8/V8TestInterface.cpp: Updated test results.
(WebCore::V8TestInterface::constructorCallback):
* bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp: Ditto.
(WebCore::TestMediaQueryListListenerInternal::methodCallback):
* bindings/scripts/test/V8/V8TestObj.cpp: Ditto.
(WebCore::TestObjInternal::voidMethodWithArgsCallback):
(WebCore::TestObjInternal::intMethodWithArgsCallback):
(WebCore::TestObjInternal::objMethodWithArgsCallback):
(WebCore::TestObjInternal::methodThatRequiresAllArgsCallback):
(WebCore::TestObjInternal::methodThatRequiresAllArgsAndThrowsCallback):
(WebCore::TestObjInternal::optionsObjectCallback):
(WebCore::TestObjInternal::customArgsAndExceptionCallback):
(WebCore::TestObjInternal::withDynamicFrameAndArgCallback):
(WebCore::TestObjInternal::withDynamicFrameAndOptionalArgCallback):
(WebCore::TestObjInternal::withDynamicFrameAndUserGestureCallback):
(WebCore::TestObjInternal::withDynamicFrameAndUserGestureASADCallback):
(WebCore::TestObjInternal::methodWithOptionalArgCallback):
(WebCore::TestObjInternal::methodWithNonOptionalArgAndOptionalArgCallback):
(WebCore::TestObjInternal::methodWithNonOptionalArgAndTwoOptionalArgsCallback):
(WebCore::TestObjInternal::methodWithNonCallbackArgAndCallbackArgCallback):
(WebCore::TestObjInternal::overloadedMethod1Callback):
(WebCore::TestObjInternal::overloadedMethod2Callback):
(WebCore::TestObjInternal::overloadedMethod3Callback):
(WebCore::TestObjInternal::overloadedMethod4Callback):
(WebCore::TestObjInternal::classMethodWithOptionalCallback):
(WebCore::TestObjInternal::enabledAtRuntimeMethod1Callback):
(WebCore::TestObjInternal::enabledAtRuntimeMethod2Callback):
* bindings/v8/V8Binding.h:
(WebCore::V8ParameterBase::prepareBase): The fact that V8ParameterBase does not have any object means that we do not need to prepare anything, i.e. we should just return true in this case.
(WebCore::::prepare): If V8ParameterBase does not have any object, then we set a null string.
* bindings/v8/custom/V8BindingMacros.h: MAYBE_MISSING_PARAMETER() returns the parameter of a given index if the parameter exists. If the parameter does not exist and MissingIsUndefined is set, this macro returns an object that represents undefined. If the parameter does not exist and MissingIsEmpty is set, this macro returns an empty object.
* bindings/v8/custom/V8WebKitCSSMatrixConstructor.cpp: Removed.
* css/WebKitCSSMatrix.idl: Added the 'Constructor' extended attribute.

LayoutTests:

Added a test case for "new WebKitCSSMatrix(null)" and "new WebKitCSSMatrix(undefined)".

* fast/dom/Window/custom-constructors-expected.txt:
* fast/dom/Window/custom-constructors.html:

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

8 years ago2011-09-09 Geoffrey Garen <ggaren@apple.com>
ggaren@apple.com [Sat, 10 Sep 2011 00:05:28 +0000 (00:05 +0000)]
2011-09-09  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Dan Bernstein.

        Removed ENABLE(SINGLE_THREADED) support, since it is always false
        https://bugs.webkit.org/show_bug.cgi?id=67862

        Next step toward making the baseline platform assumption that threads exist.

        * wtf/wtf.pri:
        * JavaScriptCore.gypi:
        * JavaScriptCore.vcproj/WTF/WTF.vcproj: Removed references to
        ThreadingNone.cpp, which was only compiled in single-threaded mode.

        * wtf/Platform.h:
        * wtf/ThreadSpecific.h:
        (WTF::::destroy):
        * wtf/qt/ThreadingQt.cpp: Removed now-dead code.

        * wtf/ThreadingNone.cpp: Removed.
2011-09-09  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Dan Bernstein.

        Removed ENABLE(SINGLE_THREADED) support, since it is always false
        https://bugs.webkit.org/show_bug.cgi?id=67862

        Next step toward making the baseline platform assumption that threads exist.

        * WebCore.pri:
        * features.pri:
        * platform/sql/SQLiteDatabase.cpp:
        (WebCore::SQLiteDatabase::interrupt): Removed now-dead code.

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

8 years agoMove pageScaleFactor code from Frame.{h|cpp} to Page.{h|cpp}
fsamuel@chromium.org [Fri, 9 Sep 2011 23:39:56 +0000 (23:39 +0000)]
Move pageScaleFactor code from Frame.{h|cpp} to Page.{h|cpp}
https://bugs.webkit.org/show_bug.cgi?id=67250

Reviewed by Simon Fraser.

Source/WebCore:

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

* WebCore.exp.in:
* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::styleForDocument):
* dom/Element.cpp:
(WebCore::Element::getClientRects):
(WebCore::Element::getBoundingClientRect):
* dom/Range.cpp:
(WebCore::adjustFloatQuadsForScrollAndAbsoluteZoomAndPageScale):
* loader/HistoryController.cpp:
(WebCore::HistoryController::restoreScrollPositionAndViewState):
* page/Frame.cpp:
(WebCore::Frame::Frame):
(WebCore::Frame::pageScaleFactor):
* page/Frame.h:
* page/Page.cpp:
(WebCore::Page::Page):
(WebCore::Page::setPageScaleFactor):
* page/Page.h:
(WebCore::Page::pageScaleFactor):
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::shouldPropagateCompositingToEnclosingFrame):
(WebCore::RenderLayerCompositor::pageScaleFactor):
* rendering/RenderView.cpp:
(WebCore::RenderView::paintBoxDecorations):

Source/WebKit/chromium:

* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::pageScaleFactor):
(WebKit::WebViewImpl::scalePage):

Source/WebKit/gtk:

* WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
(DumpRenderTreeSupportGtk::scalePageBy):

Source/WebKit/mac:

* WebView/WebView.mm:
(-[WebView _scaleWebView:atOrigin:]):
(-[WebView _viewScaleFactor]):

Source/WebKit/qt:

* WebCoreSupport/DumpRenderTreeSupportQt.cpp:
(DumpRenderTreeSupportQt::scalePageBy):

Source/WebKit2:

* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::dispatchDidCommitLoad):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::scalePage):
(WebKit::WebPage::pageScaleFactor):

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

8 years agoSource/WebCore: AX: Images within anchors causes crash
commit-queue@webkit.org [Fri, 9 Sep 2011 23:24:25 +0000 (23:24 +0000)]
Source/WebCore: AX: Images within anchors causes crash
https://bugs.webkit.org/show_bug.cgi?id=44149

Patch by Dominic Mazzoni <dmazzoni@google.com> on 2011-09-09
Reviewed by Chris Fleizach.

Fixes the way parent RenderObject of an AccessibilityRenderObject
is computed in the presence of adjacent continuations.

Test: accessibility/div-within-anchors-causes-crash.html

* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::renderParentObject):

LayoutTests: Add a test to catch a case where an assertion failure or
crash is triggered in AccessibilityRenderObject when deleting
a node that includes a continuation.
https://bugs.webkit.org/show_bug.cgi?id=44149

Patch by Dominic Mazzoni <dmazzoni@google.com> on 2011-09-09
Reviewed by Chris Fleizach.

* accessibility/div-within-anchors-causes-crash.html: Added.
* platform/mac/accessibility/div-within-anchors-causes-crash-expected.txt: Added.

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

8 years agoCSS rules not being applied when a hidden field is inserted between an input[type...
commit-queue@webkit.org [Fri, 9 Sep 2011 23:22:49 +0000 (23:22 +0000)]
CSS rules not being applied when a hidden field is inserted between an input[type=checkbox] and a label
https://bugs.webkit.org/show_bug.cgi?id=66887

Patch by Kulanthaivel Palanichamy <kulanthaivel@codeaurora.org> on 2011-09-09
Reviewed by David Hyatt.

Source/WebCore:

Test: fast/css/adjacent-sibling-selector.html

This patch addresses the problem of elements not getting their style recomputed
when they are affected by direct adjacent sibling rules and one of their sibling in
their corresponding rules is modified dynamically.

* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::canShareStyleWithElement):
(WebCore::parentStylePreventsSharing):
* css/SelectorChecker.cpp:
(WebCore::SelectorChecker::checkSelector):
* dom/Element.cpp:
(WebCore::Element::recalcStyle):
(WebCore::checkForSiblingStyleChanges):
* rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::RenderStyle):
* rendering/style/RenderStyle.h:
(WebCore::InheritedFlags::affectedByDirectAdjacentRules):
(WebCore::InheritedFlags::setAffectedByDirectAdjacentRules):

LayoutTests:

* fast/css/adjacent-sibling-selector-expected.txt: Added.
* fast/css/adjacent-sibling-selector.html: Added.

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

8 years agoMake the EFL port use the correct rendering file.
commit-queue@webkit.org [Fri, 9 Sep 2011 23:14:14 +0000 (23:14 +0000)]
Make the EFL port use the correct rendering file.
https://bugs.webkit.org/show_bug.cgi?id=66323

Patch by Rafael Antognolli <antognolli@profusion.mobi> on 2011-09-09
Reviewed by Martin Robinson.

When compiling with Pango support, the EFL port should use
FontPango.cpp instead of FontEfl.cpp (which is just full of stubs).

No new functionality so no new tests.

* CMakeListsEfl.txt:

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

8 years agoAdd test cases for xss auditor encoding bugs.
commit-queue@webkit.org [Fri, 9 Sep 2011 23:05:27 +0000 (23:05 +0000)]
Add test cases for xss auditor encoding bugs.
https://bugs.webkit.org/show_bug.cgi?id=67134

Patch by Tom Sepez <tsepez@chromium.org> on 2011-09-09
Reviewed by Daniel Bates.

* http/tests/security/xssAuditor/resources/echo-intertag.pl:
* http/tests/security/xssAuditor/xss-filter-bypass-big5-expected.txt: Added.
* http/tests/security/xssAuditor/xss-filter-bypass-big5.html: Added.
* http/tests/security/xssAuditor/xss-filter-bypass-sjis-expected.txt: Added.
* http/tests/security/xssAuditor/xss-filter-bypass-sjis.html: Added.

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

8 years agoAudioBufferSourceNode must validate AudioBuffer in .buffer attribute setter
crogers@google.com [Fri, 9 Sep 2011 22:15:37 +0000 (22:15 +0000)]
AudioBufferSourceNode must validate AudioBuffer in .buffer attribute setter
https://bugs.webkit.org/show_bug.cgi?id=67749

Reviewed by Kenneth Russell.

Source/WebCore:

Test: webaudio/audiobuffersource-channels.html

* WebCore.gypi:
* bindings/js/JSAudioBufferSourceNodeCustom.cpp:
(WebCore::JSAudioBufferSourceNode::setBuffer):
* bindings/v8/custom/V8AudioBufferSourceNodeCustom.cpp: Copied from Source/WebCore/bindings/js/JSAudioBufferSourceNodeCustom.cpp.
(WebCore::V8AudioBufferSourceNode::bufferAccessorSetter):
* webaudio/AudioBufferSourceNode.cpp:
(WebCore::AudioBufferSourceNode::setBuffer):
* webaudio/AudioBufferSourceNode.h:
* webaudio/AudioBufferSourceNode.idl:

LayoutTests:

* webaudio/audiobuffersource-channels-expected.txt: Added.
* webaudio/audiobuffersource-channels.html: Added.

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

8 years agoRenderBlock::addOverhangingFloats() takes superfluous parameters
mitz@apple.com [Fri, 9 Sep 2011 22:08:52 +0000 (22:08 +0000)]
RenderBlock::addOverhangingFloats() takes superfluous parameters
https://bugs.webkit.org/show_bug.cgi?id=67863

Reviewed by Dave Hyatt.

No new tests, because behavior is unchanged.

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::layoutBlock):
(WebCore::RenderBlock::layoutBlockChild):
(WebCore::RenderBlock::addOverhangingFloats): Removed the logical{Left, Top}Offset parameters,
since they were always the inverse of the logical{Left, Top}() of the child parameter.
* rendering/RenderBlock.h:

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

8 years agoAdd replacement functions for gdk ones.
commit-queue@webkit.org [Fri, 9 Sep 2011 22:06:03 +0000 (22:06 +0000)]
Add replacement functions for gdk ones.
https://bugs.webkit.org/show_bug.cgi?id=66323

Patch by Rafael Antognolli <antognolli@profusion.mobi> on 2011-09-09
Reviewed by Martin Robinson.

.:

* Source/cmake/FindPango.cmake:

Source/WebCore:

This will allow the EFL port to don't depend on gdk anymore.

No new functionality so no new tests.

* CMakeListsEfl.txt:
* platform/graphics/cairo/CairoUtilities.cpp:
(WebCore::appendRegionToCairoContext):
* platform/graphics/cairo/CairoUtilities.h:
* platform/graphics/pango/FontPango.cpp:
(WebCore::drawGlyphsShadow):
(WebCore::Font::drawComplexText):
* platform/graphics/pango/PangoUtilities.cpp: Added.
(WebCore::getLineClipRegionFromLayoutIter):
(WebCore::getClipRegionFromPangoLayoutLine):
* platform/graphics/pango/PangoUtilities.h: Added.

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

8 years agoUnzip initialization lists and constructors in JSCell hierarchy (5/7)
mhahnenberg@apple.com [Fri, 9 Sep 2011 21:43:14 +0000 (21:43 +0000)]
Unzip initialization lists and constructors in JSCell hierarchy (5/7)
https://bugs.webkit.org/show_bug.cgi?id=67420

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

Completed the fifth level of the refactoring to add finishCreation()
methods to all classes within the JSCell hierarchy with non-trivial
constructor bodies.

This primarily consists of pushing the calls to finishCreation() down
into the constructors of the subclasses of the second level of the hierarchy
as well as pulling the finishCreation() calls out into the class's corresponding
create() method if it has one.  Doing both simultaneously allows us to
maintain the invariant that the finishCreation() method chain is called exactly
once during the creation of an object, since calling it any other number of
times (0, 2, or more) will cause an assertion failure.

* API/JSCallbackConstructor.cpp:
(JSC::JSCallbackConstructor::JSCallbackConstructor):
* API/JSCallbackConstructor.h:
(JSC::JSCallbackConstructor::create):
* API/JSCallbackFunction.cpp:
(JSC::JSCallbackFunction::JSCallbackFunction):
(JSC::JSCallbackFunction::finishCreation):
* API/JSCallbackFunction.h:
* API/JSCallbackObject.h:
* API/JSCallbackObjectFunctions.h:
(JSC::::JSCallbackObject):
(JSC::::finishCreation):
* JavaScriptCore.exp:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
* debugger/DebuggerActivation.cpp:
* debugger/DebuggerActivation.h:
(JSC::DebuggerActivation::create):
* jsc.cpp:
(GlobalObject::finishCreation):
(GlobalObject::GlobalObject):
* runtime/ArrayConstructor.cpp:
(JSC::ArrayConstructor::ArrayConstructor):
(JSC::ArrayConstructor::finishCreation):
* runtime/ArrayConstructor.h:
* runtime/ArrayPrototype.cpp:
(JSC::ArrayPrototype::ArrayPrototype):
* runtime/ArrayPrototype.h:
(JSC::ArrayPrototype::create):
* runtime/BooleanConstructor.cpp:
(JSC::BooleanConstructor::BooleanConstructor):
(JSC::BooleanConstructor::finishCreation):
* runtime/BooleanConstructor.h:
* runtime/BooleanObject.cpp:
(JSC::BooleanObject::BooleanObject):
* runtime/BooleanObject.h:
(JSC::BooleanObject::create):
* runtime/BooleanPrototype.cpp:
(JSC::BooleanPrototype::BooleanPrototype):
(JSC::BooleanPrototype::finishCreation):
* runtime/BooleanPrototype.h:
* runtime/DateConstructor.cpp:
(JSC::DateConstructor::DateConstructor):
(JSC::DateConstructor::finishCreation):
* runtime/DateConstructor.h:
* runtime/DateInstance.cpp:
(JSC::DateInstance::DateInstance):
* runtime/DateInstance.h:
(JSC::DateInstance::create):
* runtime/DatePrototype.cpp:
(JSC::DatePrototype::DatePrototype):
(JSC::DatePrototype::finishCreation):
* runtime/DatePrototype.h:
* runtime/Error.cpp:
(JSC::StrictModeTypeErrorFunction::StrictModeTypeErrorFunction):
* runtime/ErrorConstructor.cpp:
(JSC::ErrorConstructor::ErrorConstructor):
(JSC::ErrorConstructor::finishCreation):
* runtime/ErrorConstructor.h:
* runtime/ErrorPrototype.cpp:
(JSC::ErrorPrototype::ErrorPrototype):
* runtime/ErrorPrototype.h:
(JSC::ErrorPrototype::create):
* runtime/FunctionConstructor.cpp:
(JSC::FunctionConstructor::FunctionConstructor):
(JSC::FunctionConstructor::finishCreation):
* runtime/FunctionConstructor.h:
* runtime/FunctionPrototype.cpp:
(JSC::FunctionPrototype::FunctionPrototype):
(JSC::FunctionPrototype::finishCreation):
* runtime/FunctionPrototype.h:
* runtime/InternalFunction.cpp:
(JSC::InternalFunction::InternalFunction):
* runtime/InternalFunction.h:
* runtime/JSActivation.cpp:
(JSC::JSActivation::JSActivation):
* runtime/JSActivation.h:
(JSC::JSActivation::create):
* runtime/JSGlobalObject.h:
(JSC::JSGlobalObject::create):
(JSC::JSGlobalObject::JSGlobalObject):
* runtime/JSONObject.cpp:
(JSC::JSONObject::JSONObject):
* runtime/JSONObject.h:
(JSC::JSONObject::create):
* runtime/JSStaticScopeObject.h:
(JSC::JSStaticScopeObject::create):
(JSC::JSStaticScopeObject::JSStaticScopeObject):
* runtime/JSString.cpp:
(JSC::StringObject::create):
* runtime/MathObject.cpp:
(JSC::MathObject::MathObject):
* runtime/MathObject.h:
(JSC::MathObject::create):
* runtime/NativeErrorConstructor.cpp:
(JSC::NativeErrorConstructor::NativeErrorConstructor):
* runtime/NativeErrorConstructor.h:
(JSC::NativeErrorConstructor::finishCreation):
* runtime/NativeErrorPrototype.cpp:
(JSC::NativeErrorPrototype::NativeErrorPrototype):
(JSC::NativeErrorPrototype::finishCreation):
* runtime/NativeErrorPrototype.h:
* runtime/NumberConstructor.cpp:
(JSC::NumberConstructor::NumberConstructor):
(JSC::NumberConstructor::finishCreation):
* runtime/NumberConstructor.h:
* runtime/NumberObject.cpp:
(JSC::NumberObject::NumberObject):
* runtime/NumberObject.h:
(JSC::NumberObject::create):
* runtime/NumberPrototype.cpp:
(JSC::NumberPrototype::NumberPrototype):
(JSC::NumberPrototype::finishCreation):
* runtime/NumberPrototype.h:
* runtime/ObjectConstructor.cpp:
(JSC::ObjectConstructor::ObjectConstructor):
(JSC::ObjectConstructor::finishCreation):
* runtime/ObjectConstructor.h:
* runtime/RegExpConstructor.cpp:
(JSC::RegExpConstructor::RegExpConstructor):
(JSC::RegExpConstructor::finishCreation):
(JSC::RegExpMatchesArray::RegExpMatchesArray):
* runtime/RegExpConstructor.h:
* runtime/RegExpMatchesArray.h:
(JSC::RegExpMatchesArray::create):
* runtime/RegExpObject.cpp:
(JSC::RegExpObject::RegExpObject):
* runtime/RegExpObject.h:
(JSC::RegExpObject::create):
* runtime/RegExpPrototype.cpp:
(JSC::RegExpPrototype::RegExpPrototype):
* runtime/StringConstructor.cpp:
(JSC::StringConstructor::StringConstructor):
(JSC::StringConstructor::finishCreation):
* runtime/StringConstructor.h:
* runtime/StringObject.cpp:
(JSC::StringObject::StringObject):
* runtime/StringObject.h:
(JSC::StringObject::create):
* runtime/StringObjectThatMasqueradesAsUndefined.h:
(JSC::StringObjectThatMasqueradesAsUndefined::StringObjectThatMasqueradesAsUndefined):
* runtime/StringPrototype.cpp:
(JSC::StringPrototype::StringPrototype):
(JSC::StringPrototype::finishCreation):
* runtime/StringPrototype.h:

Source/JavaScriptGlue:

Completed the fifth level of the refactoring to add finishCreation()
methods to all classes within the JSCell hierarchy with non-trivial
constructor bodies.

This primarily consists of pushing the calls to finishCreation() down
into the constructors of the subclasses of the second level of the hierarchy
as well as pulling the finishCreation() calls out into the class's corresponding
create() method if it has one.  Doing both simultaneously allows us to
maintain the invariant that the finishCreation() method chain is called exactly
once during the creation of an object, since calling it any other number of
times (0, 2, or more) will cause an assertion failure.

* JSRun.cpp:
(JSGlueGlobalObject::JSGlueGlobalObject):

Source/WebCore:

No new tests.

Completed the fifth level of the refactoring to add finishCreation()
methods to all classes within the JSCell hierarchy with non-trivial
constructor bodies.

This primarily consists of pushing the calls to finishCreation() down
into the constructors of the subclasses of the second level of the hierarchy
as well as pulling the finishCreation() calls out into the class's corresponding
create() method if it has one.  Doing both simultaneously allows us to
maintain the invariant that the finishCreation() method chain is called exactly
once during the creation of an object, since calling it any other number of
times (0, 2, or more) will cause an assertion failure.

* WebCore.exp.in:
* bindings/js/JSDOMBinding.h:
(WebCore::DOMConstructorObject::DOMConstructorObject):
* bindings/js/JSDOMGlobalObject.cpp:
(WebCore::JSDOMGlobalObject::JSDOMGlobalObject):
(WebCore::JSDOMGlobalObject::finishCreation):
* bindings/js/JSDOMGlobalObject.h:
* bindings/js/JSDOMWindowShell.cpp:
* bindings/js/JSDOMWindowShell.h:
(WebCore::JSDOMWindowShell::create):
* bindings/js/JSDOMWrapper.h:
(WebCore::JSDOMWrapper::JSDOMWrapper):
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateImplementation):
* bindings/scripts/test/JS/JSTestInterface.cpp:
(WebCore::JSTestInterface::JSTestInterface):
* bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
(WebCore::JSTestMediaQueryListListener::JSTestMediaQueryListListener):
* bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::JSTestObj::JSTestObj):
* bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
(WebCore::JSTestSerializedScriptValueInterface::JSTestSerializedScriptValueInterface):
* bridge/c/CRuntimeObject.cpp:
(JSC::Bindings::CRuntimeObject::CRuntimeObject):
(JSC::Bindings::CRuntimeObject::finishCreation):
* bridge/c/CRuntimeObject.h:
* bridge/jni/jsc/JavaRuntimeObject.cpp:
(JSC::Bindings::JavaRuntimeObject::JavaRuntimeObject):
(JSC::Bindings::JavaRuntimeObject::finishCreation):
* bridge/jni/jsc/JavaRuntimeObject.h:
* bridge/objc/ObjCRuntimeObject.h:
* bridge/objc/ObjCRuntimeObject.mm:
(JSC::Bindings::ObjCRuntimeObject::ObjCRuntimeObject):
(JSC::Bindings::ObjCRuntimeObject::finishCreation):
* bridge/objc/objc_runtime.h:
(JSC::Bindings::ObjcFallbackObjectImp::create):
* bridge/objc/objc_runtime.mm:
(JSC::Bindings::ObjcFallbackObjectImp::ObjcFallbackObjectImp):
* bridge/qt/qt_instance.cpp:
(JSC::Bindings::QtRuntimeObject::QtRuntimeObject):
* bridge/qt/qt_pixmapruntime.cpp:
(JSC::Bindings::QtPixmapRuntimeObject::QtPixmapRuntimeObject):
* bridge/qt/qt_runtime.cpp:
(JSC::Bindings::QtRuntimeMethod::QtRuntimeMethod):
(JSC::Bindings::QtRuntimeMethod::finishCreation):
* bridge/qt/qt_runtime.h:
* bridge/runtime_array.cpp:
(JSC::RuntimeArray::RuntimeArray):
* bridge/runtime_array.h:
(JSC::RuntimeArray::create):
* bridge/runtime_method.cpp:
(JSC::RuntimeMethod::RuntimeMethod):
(JSC::RuntimeMethod::finishCreation):
* bridge/runtime_method.h:
* bridge/runtime_object.cpp:
(JSC::Bindings::RuntimeObject::RuntimeObject):
* bridge/runtime_object.h:
(JSC::Bindings::RuntimeObject::create):

Source/WebKit/mac:

Completed the fifth level of the refactoring to add finishCreation()
methods to all classes within the JSCell hierarchy with non-trivial
constructor bodies.

This primarily consists of pushing the calls to finishCreation() down
into the constructors of the subclasses of the second level of the hierarchy
as well as pulling the finishCreation() calls out into the class's corresponding
create() method if it has one.  Doing both simultaneously allows us to
maintain the invariant that the finishCreation() method chain is called exactly
once during the creation of an object, since calling it any other number of
times (0, 2, or more) will cause an assertion failure.

* Plugins/Hosted/ProxyRuntimeObject.h:
* Plugins/Hosted/ProxyRuntimeObject.mm:
(WebKit::ProxyRuntimeObject::ProxyRuntimeObject):
(WebKit::ProxyRuntimeObject::finishCreation):

Source/WebKit2:

Completed the fifth level of the refactoring to add finishCreation()
methods to all classes within the JSCell hierarchy with non-trivial
constructor bodies.

This primarily consists of pushing the calls to finishCreation() down
into the constructors of the subclasses of the second level of the hierarchy
as well as pulling the finishCreation() calls out into the class's corresponding
create() method if it has one.  Doing both simultaneously allows us to
maintain the invariant that the finishCreation() method chain is called exactly
once during the creation of an object, since calling it any other number of
times (0, 2, or more) will cause an assertion failure.

* WebProcess/Plugins/Netscape/JSNPMethod.cpp:
(WebKit::JSNPMethod::JSNPMethod):
(WebKit::JSNPMethod::finishCreation):
* WebProcess/Plugins/Netscape/JSNPMethod.h:
(WebKit::JSNPMethod::create):
* WebProcess/Plugins/Netscape/JSNPObject.cpp:
(WebKit::JSNPObject::JSNPObject):
* WebProcess/Plugins/Netscape/JSNPObject.h:
(WebKit::JSNPObject::create):

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

8 years agoRename FontGtk.cpp to FontPango.cpp
commit-queue@webkit.org [Fri, 9 Sep 2011 21:40:04 +0000 (21:40 +0000)]
Rename FontGtk.cpp to FontPango.cpp
https://bugs.webkit.org/show_bug.cgi?id=66323

Patch by Rafael Antognolli <antognolli@profusion.mobi> on 2011-09-09
Reviewed by Martin Robinson.

This file will be used by the EFL port too, and since it's not GTK
specific anymore, rename it to something better.

No new functionality so no new tests.

* GNUmakefile.list.am:
* platform/graphics/pango/FontPango.cpp: Renamed from Source/WebCore/platform/graphics/gtk/FontGtk.cpp.

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

8 years agoGTK rebaseline.
rniwa@webkit.org [Fri, 9 Sep 2011 21:17:18 +0000 (21:17 +0000)]
GTK rebaseline.

* platform/gtk/css2.1/t090204-display-change-01-b-ao-expected.txt:

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

8 years ago2011-09-09 Geoffrey Garen <ggaren@apple.com>
ggaren@apple.com [Fri, 9 Sep 2011 20:42:06 +0000 (20:42 +0000)]
2011-09-09  Geoffrey Garen  <ggaren@apple.com>

        Build fix: Guard against double-#define for something already #defined
        by the build system.

        * wtf/Platform.h:

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

8 years ago2011-09-09 Geoffrey Garen <ggaren@apple.com>
ggaren@apple.com [Fri, 9 Sep 2011 19:44:54 +0000 (19:44 +0000)]
2011-09-09  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Dan Bernstein.

        Never #define ENABLE_SINGLE_THREADED, !ENABLE_JSC_MULTIPLE_THREADS, or
        !ENABLE_WTF_MULTIPLE_THREADS
        https://bugs.webkit.org/show_bug.cgi?id=67860

        First step toward making the baseline platform assumption that threads
        exist: Never #define ENABLE_SINGLE_THREADED, !ENABLE_JSC_MULTIPLE_THREADS,
        or !ENABLE_WTF_MULTIPLE_THREADS.

        * wtf/Platform.h:

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

8 years agoInitialize ExceptionCode in Element::removeAttribute
adamk@chromium.org [Fri, 9 Sep 2011 18:37:05 +0000 (18:37 +0000)]
Initialize ExceptionCode in Element::removeAttribute
https://bugs.webkit.org/show_bug.cgi?id=67820

Reviewed by Darin Adler.

Silences valgrind warning reported in http://crbug.com/76490.

No new tests since this would only very occasionally be flaky,
and in the codepath in the valgrind report, the ec is ignored anyway.

* dom/Element.cpp:
(WebCore::Element::removeAttribute): Initialize ec to 0.

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

8 years agoBuildbot may use RunWebKitTest's evaluateCommand on bots that run nrwt
rniwa@webkit.org [Fri, 9 Sep 2011 18:21:54 +0000 (18:21 +0000)]
Buildbot may use RunWebKitTest's evaluateCommand on bots that run nrwt
https://bugs.webkit.org/show_bug.cgi?id=67855

Reviewed by Dirk Pranke.

The bug was caused by the fact some ports use RunWebKitTests instead of NewRunWebKitTests to run tests,
and using RunWebKitTests.evaluateCommand after calling _parseNewRunWebKitTestsOutput.

Fixed the bug by merging evaluateCommand of RunWebKitTests and NewRunWebKitTests.

* BuildSlaveSupport/build.webkit.org-config/master.cfg:

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

8 years agoAdd myself to committers.py
mhahnenberg@apple.com [Fri, 9 Sep 2011 18:17:32 +0000 (18:17 +0000)]
Add myself to committers.py
https://bugs.webkit.org/show_bug.cgi?id=67853

Reviewed by Darin Adler.

* Scripts/webkitpy/common/config/committers.py:

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

8 years ago[Qt] Remove common.pri
laszlo.1.gombos@nokia.com [Fri, 9 Sep 2011 18:11:00 +0000 (18:11 +0000)]
[Qt] Remove common.pri
https://bugs.webkit.org/show_bug.cgi?id=67814

Reviewed by Andreas Kling.

.:

* Source/WebKit.pri: Move rules from common.pri to WebKit.pri.
* Source/common.pri: Removed.

Source/JavaScriptCore:

* JavaScriptCore.pri:

Source/WebCore:

No new tests, no change in functionality.

* CodeGenerators.pri:
* WebCore.pri:

Tools:

* Tools.pro:

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

8 years agoUnreviewed. Chromium, GTK, Qt rebaselines for r94857.
inferno@chromium.org [Fri, 9 Sep 2011 18:08:00 +0000 (18:08 +0000)]
Unreviewed. Chromium, GTK, Qt rebaselines for r94857.

* platform/chromium-linux/fast/lists/list-marker-before-content-table-expected.png: Added.
* platform/chromium-linux/fast/runin/runin-generated-before-content-expected.png: Added.
* platform/chromium-win-xp/fast/lists: Removed.
* platform/chromium-win/fast/lists/list-marker-before-content-table-expected.png: Added.
* platform/chromium-win/fast/runin/runin-generated-before-content-expected.png: Added.
* platform/gtk/fast/lists/list-marker-before-content-table-expected.txt: Added.
* platform/gtk/fast/runin/runin-generated-before-content-expected.txt: Added.
* platform/mac/fast/lists/list-marker-before-content-table-expected.txt: Added.
* platform/mac/fast/runin/runin-generated-before-content-expected.txt: Added.
* platform/qt/fast/lists/list-marker-before-content-table-expected.txt: Added.
* platform/qt/fast/runin/runin-generated-before-content-expected.txt: Added.

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

8 years agoSource/WebCore: Assert being hit in AccessibilityRenderObject::addChildren()
commit-queue@webkit.org [Fri, 9 Sep 2011 18:06:22 +0000 (18:06 +0000)]
Source/WebCore: Assert being hit in AccessibilityRenderObject::addChildren()
https://bugs.webkit.org/show_bug.cgi?id=61805

Patch by Dominic Mazzoni <dmazzoni@google.com> on 2011-09-09
Reviewed by Chris Fleizach.

Fix nextSibling and previousSibling to handle adjacent continuations
properly, otherwise nodes end up appearing in the accessibility
tree twice (or a debug assertion could be raised).

Test: accessibility/adjacent-continuations-cause-assertion-failure.html

* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::previousSibling):
(WebCore::AccessibilityRenderObject::nextSibling):

LayoutTests: Add a test to catch a case where adjacent continuations were
causing nodes to get added to the accessibility tree twice, leading
to an assertion failure or a crash. The test expectations are
currently Mac-specific, so added the test to the Skipped file for
gtk and win.
https://bugs.webkit.org/show_bug.cgi?id=61805

Patch by Dominic Mazzoni <dmazzoni@google.com> on 2011-09-09
Reviewed by Chris Fleizach.

* accessibility/adjacent-continuations-cause-assertion-failure.html: Added.
* platform/mac/accessibility/adjacent-continuations-cause-assertion-failure-expected.txt: Added.

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

8 years ago[NRWT] the nrwt check httpd with --no-http option
commit-queue@webkit.org [Fri, 9 Sep 2011 18:00:12 +0000 (18:00 +0000)]
[NRWT] the nrwt check httpd with --no-http option
https://bugs.webkit.org/show_bug.cgi?id=67835

Patch by Kristóf Kosztyó <kkristof@inf.u-szeged.hu> on 2011-09-09
Reviewed by Tony Chang.

* Scripts/webkitpy/layout_tests/controllers/manager.py:
* Scripts/webkitpy/layout_tests/controllers/manager_unittest.py:

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

8 years ago[chromium] Implement DRT support for Android.
commit-queue@webkit.org [Fri, 9 Sep 2011 17:37:05 +0000 (17:37 +0000)]
[chromium] Implement DRT support for Android.
https://bugs.webkit.org/show_bug.cgi?id=67590

Patch by Hao Zheng <zhenghao@chromium.org> on 2011-09-09
Reviewed by Tony Chang.

Source/WebKit/chromium:

Exclude Android specific files of DRT from other platforms.

* WebKit.gyp:

Tools:

Add 2 mechanism to make DRT interaction more robust on Android:
- Send 'QUIT' to DRT to make it stop.
- Wait until receiving '#READY' from DRT, so that DRT won't miss any
input commands before it starts.
And LayoutTestController.cpp needs to include <cctype> for 'tolower'
and <clocale> for 'LC_ALL' to compile on Android.

Also change to use sigaction instead of signal for TestShellGtk.cpp,
as signal() man page recommends using sigaction().

* DumpRenderTree/DumpRenderTree.gypi:
* DumpRenderTree/chromium/DumpRenderTree.cpp:
(main):
* DumpRenderTree/chromium/LayoutTestController.cpp:
* DumpRenderTree/chromium/TestShellAndroid.cpp: Added.
(AlarmHandler):
(TestShell::waitTestFinished):
(platformInit):
(openStartupDialog):
(checkLayoutTestSystemDependencies):
* DumpRenderTree/chromium/TestShellGtk.cpp:
(AlarmHandler):
(TestShell::waitTestFinished):

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

8 years agoImplement a WebKitAnimationEvent constructor.
rolandsteiner@chromium.org [Fri, 9 Sep 2011 17:27:50 +0000 (17:27 +0000)]
Implement a WebKitAnimationEvent constructor.
https://bugs.webkit.org/show_bug.cgi?id=67825

Source/WebCore:

Patch by Kentaro Hara <haraken@google.com> on 2011-09-08
Reviewed by Sam Weinig.

There is no spec for the WebKitAnimationEvent constructor
since it is WebKit-specific. However, based on the current
IDL of initWebKitAnimationEvent(), the constructor IDL
should be as follows.

[Constructor(DOMString type, optional WebKitAnimationEventInit eventInitDict)]
interface WebKitAnimationEvent : Event {
    ...;
}

dictionary WebKitAnimationEventInit : EventInit {
    DOMString animationName;
    double elapsedTime;
}

Test: fast/events/constructors/webkit-animation-event-constructor.html

* bindings/generic/EventConstructors.h: Added a definition for the WebKitAnimationEvent constructor.
* bindings/js/JSEventConstructors.cpp: Added #includes for WebKitAnimationEvent.
* dom/WebKitAnimationEvent.cpp:
(WebCore::WebKitAnimationEventInit::WebKitAnimationEventInit):
(WebCore::WebKitAnimationEvent::WebKitAnimationEvent):
* dom/WebKitAnimationEvent.h: Added a definition for WebKitAnimationEventInit.
(WebCore::WebKitAnimationEvent::create):
* dom/WebKitAnimationEvent.idl: Makes WebKitAnimationEvent constructible.

LayoutTests:

Checks the behavior of the WebKitAnimationEvent constructor.

Patch by Kentaro Hara <haraken@google.com> on 2011-09-08
Reviewed by Sam Weinig.

* fast/dom/constructed-objects-prototypes-expected.txt:
* fast/events/constructors/webkit-animation-event-constructor-expected.txt: Added.
* fast/events/constructors/webkit-animation-event-constructor.html: Added.
* platform/chromium/test_expectations.txt: Skipped webkit-animation-event-constructor.html, since V8 does not yet have the WebKitAnimationEvent constructor.

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

8 years ago[Qt] Unreviewed gardening after r94857. Add platform specific expected files.
ossy@webkit.org [Fri, 9 Sep 2011 17:24:59 +0000 (17:24 +0000)]
[Qt] Unreviewed gardening after r94857. Add platform specific expected files.

* platform/qt/fast/lists/list-marker-before-content-table-expected.png: Added.
* platform/qt/fast/lists/list-marker-before-content-table-expected.txt: Added.
* platform/qt/fast/runin/runin-generated-before-content-expected.png: Added.
* platform/qt/fast/runin/runin-generated-before-content-expected.txt: Added.

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

8 years ago[Chromium] Add WebSandboxSupport and WebThemeEngine for Android.
commit-queue@webkit.org [Fri, 9 Sep 2011 16:58:11 +0000 (16:58 +0000)]
[Chromium] Add WebSandboxSupport and WebThemeEngine for Android.
https://bugs.webkit.org/show_bug.cgi?id=67584

Patch by Hao Zheng <zhenghao@chromium.org> on 2011-09-09
Reviewed by Steve Block.

Make src/PlatformSupport.cpp and src/WebFrameImpl.cpp compile on
Chromium port for Android.

* WebKit.gyp:
* public/android: Added.
* public/android/WebSandboxSupport.h: Added.
* public/android/WebThemeEngine.h: Added.
(WebKit::WebThemeEngine::getSize):
(WebKit::WebThemeEngine::paint):
* src/PlatformSupport.cpp:
(WebCore::PlatformSupport::getFontFamilyForCharacters):
(WebCore::PlatformSupport::getRenderStyleForStrike):
* src/WebFrameImpl.cpp:

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

8 years ago[wx] Unreviewed build fix. Add Source/JavaScriptCore/dfg directory to the build.
kevino@webkit.org [Fri, 9 Sep 2011 16:49:49 +0000 (16:49 +0000)]
[wx] Unreviewed build fix. Add Source/JavaScriptCore/dfg directory to the build.

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

8 years ago:before content rendering issues with list markers and run-ins.
inferno@chromium.org [Fri, 9 Sep 2011 16:23:53 +0000 (16:23 +0000)]
:before content rendering issues with list markers and run-ins.
https://bugs.webkit.org/show_bug.cgi?id=67735

Source/WebCore:

1) Remove the isAnonymous checks for run-in detection since the
run-in can belong to a node.
2) When the parent has block children, then the list marker will
be enclosed in an anonymous block. In that case, for going to the
next list marker, we need to traverse one level up. We don't need
this check when searching for generated run-in (loop 2), since we
know parent will have inline children, so the list marker wont be
enclosed in an anonymous block.

Reviewed by Dave Hyatt.

Tests: fast/lists/list-marker-before-content-table.html
       fast/runin/runin-generated-before-content.html

* rendering/RenderObjectChildList.cpp:
(WebCore::RenderObjectChildList::beforePseudoElementRenderer):

LayoutTests:

Reviewed by Dave Hyatt.

* fast/lists/list-marker-before-content-table-expected.png: Added.
* fast/lists/list-marker-before-content-table-expected.txt: Added.
* fast/lists/list-marker-before-content-table.html: Added.
* fast/runin/runin-generated-before-content-expected.png: Added.
* fast/runin/runin-generated-before-content-expected.txt: Added.
* fast/runin/runin-generated-before-content.html: Added.

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

8 years ago2011-09-09 Nate Chapin <japhet@chromium.org>
japhet@chromium.org [Fri, 9 Sep 2011 16:16:04 +0000 (16:16 +0000)]
2011-09-09  Nate Chapin  <japhet@chromium.org>

        Chromium leopard css3 baselines, and new mac gpu baselines.

        * platform/chromium-cg-mac-leopard/css3: Added.
        * platform/chromium-cg-mac-leopard/css3/bdi-element-expected.png: Added.
        * platform/chromium-cg-mac-leopard/css3/bdi-element-expected.txt: Added.
        * platform/chromium-cg-mac-leopard/css3/unicode-bidi-isolate-aharon-expected.png: Added.
        * platform/chromium-cg-mac-leopard/css3/unicode-bidi-isolate-basic-expected.png: Added.
        * platform/chromium-gpu-cg-mac/platform/chromium/compositing/zoom-animator-scale-test-expected.png: Added.
        * platform/chromium-gpu-win/platform/chromium/compositing/zoom-animator-scale-test-expected.txt: Removed.
        * platform/chromium-gpu/platform/chromium/compositing/zoom-animator-scale-test-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

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

8 years agoWeb Inspector: introduce JavaScriptSourceFrame class.
podivilov@chromium.org [Fri, 9 Sep 2011 15:21:31 +0000 (15:21 +0000)]
Web Inspector: introduce JavaScriptSourceFrame class.
https://bugs.webkit.org/show_bug.cgi?id=67838

SourceFrame should not deal with JavaScript debugging since it is a base class for all source frame implementations.

Reviewed by Pavel Feldman.

* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* inspector/front-end/JavaScriptSourceFrame.js: Added.
(WebInspector.JavaScriptSourceFrame):
(WebInspector.SourceFrameDelegateForScriptsPanel): moved from ScriptsPanel.js
(WebInspector.SourceFrameDelegateForScriptsPanel.prototype.requestContent):
(WebInspector.SourceFrameDelegateForScriptsPanel.prototype.debuggingSupported):
(WebInspector.SourceFrameDelegateForScriptsPanel.prototype.setBreakpoint):
(WebInspector.SourceFrameDelegateForScriptsPanel.prototype.updateBreakpoint):
(WebInspector.SourceFrameDelegateForScriptsPanel.prototype.removeBreakpoint):
(WebInspector.SourceFrameDelegateForScriptsPanel.prototype.findBreakpoint):
(WebInspector.SourceFrameDelegateForScriptsPanel.prototype.continueToLine):
(WebInspector.SourceFrameDelegateForScriptsPanel.prototype.canEditScriptSource):
(WebInspector.SourceFrameDelegateForScriptsPanel.prototype.setScriptSource):
(WebInspector.SourceFrameDelegateForScriptsPanel.prototype.setScriptSourceIsBeingEdited):
(WebInspector.SourceFrameDelegateForScriptsPanel.prototype.debuggerPaused):
(WebInspector.SourceFrameDelegateForScriptsPanel.prototype.evaluateInSelectedCallFrame):
(WebInspector.SourceFrameDelegateForScriptsPanel.prototype.releaseEvaluationResult):
(WebInspector.SourceFrameDelegateForScriptsPanel.prototype.suggestedFileName):
* inspector/front-end/ScriptsPanel.js:
(WebInspector.ScriptsPanel.prototype._createSourceFrame):
* inspector/front-end/WebKit.qrc:
* inspector/front-end/inspector.html:

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

8 years agoUnreviewed; new baselines (Skia on Mac, GPU edition)
caryclark@google.com [Fri, 9 Sep 2011 15:15:40 +0000 (15:15 +0000)]
Unreviewed; new baselines (Skia on Mac, GPU edition)
Added reference images.

* platform/chromium-gpu-mac: Added.
(remaining files omitted for brevity)

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

8 years agoUnreviewed, rolling out r94851.
ossy@webkit.org [Fri, 9 Sep 2011 14:47:20 +0000 (14:47 +0000)]
Unreviewed, rolling out r94851.
http://trac.webkit.org/changeset/94851
https://bugs.webkit.org/show_bug.cgi?id=67847

It broke a webkitpy test (Requested by ossy on #webkit).

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

* Scripts/webkitpy/layout_tests/controllers/manager.py:

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

8 years ago[Qt] QWebElement::encloseWith doesn't work at all
commit-queue@webkit.org [Fri, 9 Sep 2011 14:32:15 +0000 (14:32 +0000)]
[Qt] QWebElement::encloseWith doesn't work at all
https://bugs.webkit.org/show_bug.cgi?id=62464

Enclosing an element means wrapping something around an element,
not inserting something into an element. Therefore we need to check
if the parent of the element allows insertion rather than checking
the element itself.

Patch by Zeno Albisser <zeno.albisser@nokia.com> on 2011-09-09
Reviewed by Andreas Kling.

* Api/qwebelement.cpp:
(QWebElement::prependOutside):
(QWebElement::appendOutside):
(QWebElement::encloseWith):
* tests/qwebelement/tst_qwebelement.cpp:
(tst_QWebElement::appendAndPrepend):
(tst_QWebElement::encloseWith):

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

8 years ago[NRWT] the nrwt check httpd with --no-http option
ossy@webkit.org [Fri, 9 Sep 2011 13:08:05 +0000 (13:08 +0000)]
[NRWT] the nrwt check httpd with --no-http option
https://bugs.webkit.org/show_bug.cgi?id=67835

Patch by Kristóf Kosztyó <kkristof@inf.u-szeged.hu> on 2011-09-09
Reviewed by Csaba Osztrogonác.

* Scripts/webkitpy/layout_tests/controllers/manager.py:

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

8 years ago[Qt] Unreviewed. Update test expectations for css3/bdi-element.html after r94822
zoltan@webkit.org [Fri, 9 Sep 2011 12:55:54 +0000 (12:55 +0000)]
[Qt] Unreviewed. Update test expectations for css3/bdi-element.html after r94822

Patch by Kristóf Kosztyó <kkristof@inf.u-szeged.hu> on 2011-09-09

* platform/qt/css3/bdi-element-expected.png: Added.
* platform/qt/css3/bdi-element-expected.txt: Added.

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

8 years agoCanadian English translation.
kov@webkit.org [Fri, 9 Sep 2011 12:41:59 +0000 (12:41 +0000)]
Canadian English translation.
https://bugzilla.gnome.org/show_bug.cgi?id=610152

Patch by Tiffany Antopolski  <tiffany@antopolski.com> on 2011-09-09
Reviewed by Gustavo Noronha.

* en_CA.po: Added.

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

8 years ago[Qt] http/tests/security/xssAuditor/script-tag-with-16bit-unicode4.html fails on Qt
zoltan@webkit.org [Fri, 9 Sep 2011 12:27:35 +0000 (12:27 +0000)]
[Qt] http/tests/security/xssAuditor/script-tag-with-16bit-unicode4.html fails on Qt
https://bugs.webkit.org/show_bug.cgi?id=67842

Patch by Kristóf Kosztyó <kkristof@inf.u-szeged.hu> on 2011-09-09

* platform/qt/Skipped:

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

8 years agoExposing the isLink method on WebNode for the Chromium port on Android.
commit-queue@webkit.org [Fri, 9 Sep 2011 11:39:40 +0000 (11:39 +0000)]
Exposing the isLink method on WebNode for the Chromium port on Android.

Patch by Martin Kosiba <mkosiba@chromium.org> on 2011-09-09
Reviewed by Darin Fisher.

* public/WebNode.h:
* src/WebNode.cpp:
(WebKit::WebNode::isLink):

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

8 years agoUnreviewed, rolling out r94845.
ossy@webkit.org [Fri, 9 Sep 2011 11:34:12 +0000 (11:34 +0000)]
Unreviewed, rolling out r94845.
http://trac.webkit.org/changeset/94845
https://bugs.webkit.org/show_bug.cgi?id=67839

This patch kicked Qt-SL bots, but we don't need this
modification. (Requested by ossy_ on #webkit).

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

* platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
* platform/mac/WebVideoFullscreenController.mm:
* platform/mac/WebVideoFullscreenHUDWindowController.mm:

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

8 years ago[Qt][Mac]REGRESSION(r94774): Build is broken
ossy@webkit.org [Fri, 9 Sep 2011 11:04:10 +0000 (11:04 +0000)]
[Qt][Mac]REGRESSION(r94774): Build is broken
https://bugs.webkit.org/show_bug.cgi?id=67799

It seems these files didn't rebuilt because of a
dependency bug. Touch them to trigger a rebuild.

* platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
* platform/mac/WebVideoFullscreenController.mm:
* platform/mac/WebVideoFullscreenHUDWindowController.mm:

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

8 years agoUnreviewed, Chromium valgrind build fix.
apavlov@chromium.org [Fri, 9 Sep 2011 10:41:01 +0000 (10:41 +0000)]
Unreviewed, Chromium valgrind build fix.

Web Inspector: [Chromium] Valgrind signals use of uninitialized field in InspectorStyleSheetForInlineStyle
https://bugs.webkit.org/show_bug.cgi?id=67837

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

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

8 years agoUnreviewed, rolling out r94536.
commit-queue@webkit.org [Fri, 9 Sep 2011 10:32:16 +0000 (10:32 +0000)]
Unreviewed, rolling out r94536.
http://trac.webkit.org/changeset/94536
https://bugs.webkit.org/show_bug.cgi?id=67836

breaks absoluteLocation() of RelatedMouseEvent (Requested by
jknotten on #webkit).

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

Source/WebCore:

* dom/MouseRelatedEvent.cpp:
(WebCore::MouseRelatedEvent::MouseRelatedEvent):

LayoutTests:

* fast/events/page-scaled-mouse-click-expected.txt: Removed.
* fast/events/page-scaled-mouse-click.html: Removed.
* fast/events/script-tests/page-scaled-mouse-click.js: Removed.

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

8 years agoWeb Inspector: live edit both for JS and CSS is not discoverable.
apavlov@chromium.org [Fri, 9 Sep 2011 10:16:14 +0000 (10:16 +0000)]
Web Inspector: live edit both for JS and CSS is not discoverable.
https://bugs.webkit.org/show_bug.cgi?id=65962

Source/WebCore:

Add the "Edit" button to SourceFrame, so that resources/scripts can be edited both in the
Resources and the Scripts panels. The button is grayed out if the resource/script is not editable.

Reviewed by Yury Semikhatsky.

* inspector/front-end/Images/statusbarButtonGlyphs.png:
* inspector/front-end/ResourceView.js:
(WebInspector.EditableResourceSourceFrame.prototype.canEditSource):
* inspector/front-end/ScriptsPanel.js:
(WebInspector.ScriptsPanel.prototype.get statusBarItems):
(WebInspector.ScriptsPanel.prototype.set visibleView):
* inspector/front-end/SourceFrame.js:
(WebInspector.SourceFrame):
(WebInspector.SourceFrame.prototype.get statusBarItems):
(WebInspector.SourceFrame.prototype._initializeTextViewer):
(WebInspector.SourceFrame.prototype._editButtonClicked):
(WebInspector.SourceFrame.prototype.canEditSource):
(WebInspector.SourceFrame.prototype.startEditing):
(WebInspector.SourceFrame.prototype.commitEditing):
(WebInspector.SourceFrame.prototype._setReadOnly):
(WebInspector.TextViewerDelegateForSourceFrame.prototype.doubleClick):
* inspector/front-end/TextViewer.js:
(WebInspector.TextEditorMainPanel.prototype.set readOnly):
(WebInspector.TextEditorMainPanel.prototype._updateSelectionOnStartEditing):
* inspector/front-end/inspector.css:
(button.edit-source-status-bar-item .glyph):
(button.edit-source-status-bar-item.toggled-on .glyph):

LayoutTests:

Reviewed by Yury Semikhatsky.

* inspector/debugger/scripts-panel.html:

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

8 years agoCrashes in WebCore::AppendNodeCommand::create().
commit-queue@webkit.org [Fri, 9 Sep 2011 09:13:19 +0000 (09:13 +0000)]
Crashes in WebCore::AppendNodeCommand::create().
https://bugs.webkit.org/show_bug.cgi?id=67767

Patch by Shinya Kawanaka <shinyak@google.com> on 2011-09-09
Reviewed by Darin Adler.

Source/WebCore:

In CompositeEditCommand::closeParagraphUnderNewElement(), lastNode could be a non Element node.
The current code assumes lastNode is an Element node. This patch checks it.

Test: editing/execCommand/ident-crashes-topnode-is-text.html

* editing/CompositeEditCommand.cpp:
(WebCore::CompositeEditCommand::cloneParagraphUnderNewElement): Added an element node check.

LayoutTests:

Added a crash test case.

* editing/execCommand/ident-crashes-topnode-is-text-expected.txt: Added.
* editing/execCommand/ident-crashes-topnode-is-text.html: Added.

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

8 years agoCrashes in WebCore::ApplyStyleCommand.doApply()
commit-queue@webkit.org [Fri, 9 Sep 2011 09:02:36 +0000 (09:02 +0000)]
Crashes in WebCore::ApplyStyleCommand.doApply()
https://bugs.webkit.org/show_bug.cgi?id=67765

Patch by Shinya Kawanaka <shinyak@google.com> on 2011-09-09
Reviewed by Ryosuke Niwa.

WebCore::enclosingBlock may return null, but ApplyStyleCommand::applyBlockStyle did not check it. This patch make it to be checked.

Source/WebCore:

Test: editing/style/remove-format-without-enclosing-block.html

* editing/ApplyStyleCommand.cpp:
(WebCore::ApplyStyleCommand::applyBlockStyle): Added null check.

LayoutTests:

* editing/style/remove-format-without-enclosing-block-expected.txt: Added.
* editing/style/remove-format-without-enclosing-block.html: Added.

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

8 years ago2011-09-09 Ilya Tikhonovsky <loislo@chromium.org>
loislo@chromium.org [Fri, 9 Sep 2011 08:16:03 +0000 (08:16 +0000)]
2011-09-09  Ilya Tikhonovsky  <loislo@chromium.org>

        Unreviewed. Update test expectations for hyphenate-limit-lines.html.

        * platform/chromium/test_expectations.txt:

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

8 years ago[Chromium] Fix leak of Skia stream with custom CSS fonts
simonjam@chromium.org [Fri, 9 Sep 2011 07:14:01 +0000 (07:14 +0000)]
[Chromium] Fix leak of Skia stream with custom CSS fonts
https://bugs.webkit.org/show_bug.cgi?id=67815

Reviewed by Adam Barth.

Test: fast/css/font-face-opentype.html under valgrind

* platform/graphics/mac/FontCustomPlatformData.cpp:
(WebCore::createFontCustomPlatformData):
* platform/graphics/skia/FontCustomPlatformData.cpp:
(WebCore::createFontCustomPlatformData):

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

8 years ago2011-09-08 Ilya Tikhonovsky <loislo@chromium.org>
loislo@chromium.org [Fri, 9 Sep 2011 06:48:26 +0000 (06:48 +0000)]
2011-09-08  Ilya Tikhonovsky  <loislo@chromium.org>

        Unreviewed, remove wrong chromium expectations for hyphenate-limit-lines.html and mark the test as failing IMAGE+TEXT.

        I rebaselined the expectations yesterday but actualy Chromium doesn't support hyphenation yet.
        See CR47083.

        * platform/chromium-cg-mac/fast/text/hyphenate-limit-lines-expected.png: Removed.
        * platform/chromium-linux/fast/text/hyphenate-limit-lines-expected.png: Removed.
        * platform/chromium-mac/fast/text/hyphenate-limit-lines-expected.png: Removed.
        * platform/chromium-win/fast/text/hyphenate-limit-lines-expected.png: Removed.
        * platform/chromium-win/fast/text/hyphenate-limit-lines-expected.txt: Removed.
        * platform/chromium/test_expectations.txt:

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

8 years agoPush more code from HTMLInputElement::setValue to TextFieldInputType::setValue
rniwa@webkit.org [Fri, 9 Sep 2011 06:16:49 +0000 (06:16 +0000)]
Push more code from HTMLInputElement::setValue to TextFieldInputType::setValue
https://bugs.webkit.org/show_bug.cgi?id=67742

Reviewed by Darin Adler.

Moved more code in HTMLInputElement::setValue to TextFieldInputType::setValue, and merged
InputType::valueChanged into InputType::setValue. Also introduced
InputType::dispatchChangeEventInResponseToSetValue to be overridden by TextFieldInputType.

* html/BaseButtonInputType.cpp:
(WebCore::BaseButtonInputType::setValue):
* html/BaseButtonInputType.h:
* html/BaseCheckableInputType.cpp:
(WebCore::BaseCheckableInputType::setValue):
* html/BaseCheckableInputType.h:
* html/ColorInputType.cpp:
* html/ColorInputType.h:
* html/FileInputType.cpp:
(WebCore::FileInputType::setValue):
* html/FileInputType.h:
* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::setValue):
* html/HTMLInputElement.h:
(WebCore::HTMLInputElement::cacheSelectionInResponseToSetValue):
* html/HiddenInputType.cpp:
(WebCore::HiddenInputType::setValue):
* html/HiddenInputType.h:
* html/InputType.cpp:
(WebCore::InputType::setValue):
(WebCore::InputType::dispatchChangeEventInResponseToSetValue):
* html/InputType.h:
* html/RangeInputType.cpp:
(WebCore::RangeInputType::setValue):
* html/RangeInputType.h:
* html/TextFieldInputType.cpp:
(WebCore::TextFieldInputType::setValue):
(WebCore::TextFieldInputType::dispatchChangeEventInResponseToSetValue):
* html/TextFieldInputType.h:

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

8 years agoREGRESSION(r94811): Assertion failure in 2 worker tests
rniwa@webkit.org [Fri, 9 Sep 2011 06:07:22 +0000 (06:07 +0000)]
REGRESSION(r94811): Assertion failure in 2 worker tests
https://bugs.webkit.org/show_bug.cgi?id=67829

Patch by Mark Hahnenberg <mhahnenberg@apple.com> on 2011-09-08
Reviewed by Sam Weinig.

Fixing a couple tests that were broken due to the wrong values being
set in the parent class pointers in the ClassInfo structs for
TerminatedExecutionError and InterruptedExecutionError.

* runtime/ExceptionHelpers.cpp:

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

8 years agoUnreviewed, update chromium test expectations.
ukai@chromium.org [Fri, 9 Sep 2011 05:52:10 +0000 (05:52 +0000)]
Unreviewed, update chromium test expectations.

* platform/chromium/test_expectations.txt: chromium/compositing/zoom-animator-scale-test missing on leopard gpu

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

8 years agoUnreviewed, update chromium test expectations.
ukai@chromium.org [Fri, 9 Sep 2011 05:39:36 +0000 (05:39 +0000)]
Unreviewed, update chromium test expectations.

* platform/chromium/test_expectations.txt: add webaudio/sample-accurate-scheduling.html

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

8 years agoCrashes in WebCore::InsertNodeBeforeCommand constructor.
sullivan@chromium.org [Fri, 9 Sep 2011 04:03:21 +0000 (04:03 +0000)]
Crashes in WebCore::InsertNodeBeforeCommand constructor.
https://bugs.webkit.org/show_bug.cgi?id=67763

Reviewed by Ryosuke Niwa.

Source/WebCore:

Changes editableRootForPosition() to use the position's containerNode instead of deprecatedNode so that
positions which are before or after a given node cannot return that node as the editable root.

Test: editing/inserting/insert-paragraph-selection-outside-contenteditable.html

* editing/htmlediting.cpp:
(WebCore::editableRootForPosition): use containerNode instead of deprecatedNode.

LayoutTests:

Tests for crash when the selection is outside the contenteditable node.

* editing/inserting/insert-paragraph-selection-outside-contenteditable-expected.txt: Added.
* editing/inserting/insert-paragraph-selection-outside-contenteditable.html: Added.

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