No isChildAllowed checked when adding RenderFullScreen as the child..
https://bugs.webkit.org/show_bug.cgi?id=92995

Reviewed by Eric Seidel.

Source/WebCore:

Test: fullscreen/fullscreen-child-not-allowed-crash.html

* dom/Document.cpp:
(WebCore::Document::webkitWillEnterFullScreenForElement): pass the object's parent
pointer as an additional argument.
* dom/NodeRenderingContext.cpp:
(WebCore::NodeRendererFactory::createRendererIfNeeded): pass the to be parent |parentRenderer|
as the argument.
* rendering/RenderFullScreen.cpp:
(RenderFullScreen::wrapRenderer): make sure that parent allows RenderFullScreen as the child.
* rendering/RenderFullScreen.h:
(RenderFullScreen): support the object's parent
pointer as an additional argument.

LayoutTests:

* fullscreen/fullscreen-child-not-allowed-crash-expected.txt: Added.
* fullscreen/fullscreen-child-not-allowed-crash.html: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@124491 268f45cc-cd09-0410-ab3c-d52691b4dbfc
The generic bindings shouldn't use templates
https://bugs.webkit.org/show_bug.cgi?id=93016

Reviewed by Eric Seidel.

Source/WebCore: 

We originally created the generic bindings to share code between the
JavaScriptCore and V8 bindings. However, the code came out sort of ugly
because we used templates (with the idea that templates would let us
use more than one scripting engine).

This patch rips out the templates in an attempt to make the code
prettier and therefore easier to use in both V8 and JSC. I've tried to
keep this patch small by remaning things mostly in place. In the next
patch, I'll move a bunch of code out of headers and into cpp files.

No behavior change.

* GNUmakefile.am:
* UseV8.cmake:
* WebCore.gyp/WebCore.gyp:
* WebCore.gypi:
* WebCore.pri:
* bindings/generic/BindingSecurity.h:
(WebCore):
(BindingSecurity):
(WebCore::BindingSecurity::canAccessWindow):
(WebCore::BindingSecurity::canAccessFrame):
(WebCore::BindingSecurity::shouldAllowAccessToNode):
(WebCore::BindingSecurity::allowPopUp):
(WebCore::BindingSecurity::allowSettingFrameSrcToJavascriptUrl):
(WebCore::BindingSecurity::allowSettingSrcToJavascriptURL):
* bindings/generic/GenericBinding.h:
(WebCore::completeURL):
* bindings/scripts/CodeGeneratorV8.pm:
(GenerateDomainSafeFunctionGetter):
(GenerateNormalAttrGetter):
(GenerateReplaceableAttrSetter):
(GenerateFunctionCallback):
(GenerateImplementation):
* bindings/scripts/test/V8/V8Float64Array.cpp:
* bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
(WebCore::TestActiveDOMObjectV8Internal::excitingFunctionCallback):
(WebCore::TestActiveDOMObjectV8Internal::postMessageAttrGetter):
* bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:
* bindings/scripts/test/V8/V8TestEventConstructor.cpp:
* bindings/scripts/test/V8/V8TestEventTarget.cpp:
* bindings/scripts/test/V8/V8TestException.cpp:
* bindings/scripts/test/V8/V8TestInterface.cpp:
* bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
* bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
* bindings/scripts/test/V8/V8TestNode.cpp:
* bindings/scripts/test/V8/V8TestObj.cpp:
(WebCore::TestObjV8Internal::contentDocumentAttrGetter):
(WebCore::TestObjV8Internal::getSVGDocumentCallback):
* bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
* bindings/v8/BindingState.cpp: Renamed from Source/WebCore/bindings/v8/specialization/V8BindingState.cpp.
(WebCore):
(WebCore::BindingState::instance):
(WebCore::activeWindow):
(WebCore::firstWindow):
(WebCore::activeFrame):
(WebCore::firstFrame):
(WebCore::immediatelyReportUnsafeAccessTo):
* bindings/v8/BindingState.h: Renamed from Source/WebCore/bindings/v8/specialization/V8BindingState.h.
(WebCore):
(BindingState):
* bindings/v8/ScriptController.cpp:
(WebCore::ScriptController::canAccessFromCurrentOrigin):
* bindings/v8/V8Binding.h:
(WebCore):
* bindings/v8/V8DOMWindowShell.cpp:
* bindings/v8/V8Proxy.cpp:
* bindings/v8/V8Utilities.cpp:
(WebCore::callingOrEnteredFrame):
(WebCore::completeURL):
* bindings/v8/custom/V8DOMWindowCustom.cpp:
(WebCore::WindowSetTimeoutImpl):
(WebCore::V8DOMWindow::eventAccessorGetter):
(WebCore::V8DOMWindow::eventAccessorSetter):
(WebCore::V8DOMWindow::locationAccessorSetter):
(WebCore::V8DOMWindow::openerAccessorSetter):
(WebCore::V8DOMWindow::addEventListenerCallback):
(WebCore::V8DOMWindow::removeEventListenerCallback):
(WebCore::V8DOMWindow::showModalDialogCallback):
(WebCore::V8DOMWindow::openCallback):
(WebCore::V8DOMWindow::namedSecurityCheck):
(WebCore::V8DOMWindow::indexedSecurityCheck):
* bindings/v8/custom/V8DocumentLocationCustom.cpp:
(WebCore::V8Document::locationAccessorSetter):
* bindings/v8/custom/V8EntryCustom.cpp:
* bindings/v8/custom/V8EntrySyncCustom.cpp:
* bindings/v8/custom/V8HTMLFrameElementCustom.cpp:
(WebCore::V8HTMLFrameElement::locationAccessorSetter):
* bindings/v8/custom/V8HistoryCustom.cpp:
(WebCore::V8History::indexedSecurityCheck):
(WebCore::V8History::namedSecurityCheck):
* bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
* bindings/v8/custom/V8InjectedScriptManager.cpp:
(WebCore::InjectedScriptManager::canAccessInspectedWindow):
* bindings/v8/custom/V8LocationCustom.cpp:
(WebCore::V8Location::hashAccessorSetter):
(WebCore::V8Location::hostAccessorSetter):
(WebCore::V8Location::hostnameAccessorSetter):
(WebCore::V8Location::hrefAccessorSetter):
(WebCore::V8Location::pathnameAccessorSetter):
(WebCore::V8Location::portAccessorSetter):
(WebCore::V8Location::protocolAccessorSetter):
(WebCore::V8Location::searchAccessorSetter):
(WebCore::V8Location::reloadAccessorGetter):
(WebCore::V8Location::replaceAccessorGetter):
(WebCore::V8Location::assignAccessorGetter):
(WebCore::V8Location::reloadCallback):
(WebCore::V8Location::replaceCallback):
(WebCore::V8Location::assignCallback):
(WebCore::V8Location::toStringCallback):
(WebCore::V8Location::indexedSecurityCheck):
(WebCore::V8Location::namedSecurityCheck):
* bindings/v8/custom/V8NamedNodeMapCustom.cpp:
* bindings/v8/custom/V8NodeCustom.cpp:

Source/WebKit/chromium: 

Update #include.

* src/WebBindings.cpp:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@124492 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Turn on tests for the mac-ews, for realz this time.

* Scripts/webkitpy/tool/commands/earlywarningsystem.py:
(MacEWS):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@124493 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Remove unused includes from compositor code
https://bugs.webkit.org/show_bug.cgi?id=92930

Reviewed by Adrienne Walker.

* platform/graphics/chromium/BitmapCanvasLayerTextureUpdater.cpp:
* platform/graphics/chromium/ScrollbarLayerChromium.cpp:
* platform/graphics/chromium/cc/CCScrollbarLayerImpl.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@124495 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add back ASSERT(!needsLayout) to RenderTableSection which is now valid
https://bugs.webkit.org/show_bug.cgi?id=92954

Unreviewed, follow-up per Mitz's request.


* rendering/RenderTableSection.cpp:
(WebCore::RenderTableSection::paint):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@124496 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed, build fix for DFG_ENABLE(DEBUG_PROPAGATION_VERBOSE).

* dfg/DFGStructureCheckHoistingPhase.cpp:
(JSC::DFG::StructureCheckHoistingPhase::run):



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@124497 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[V8] Handle case where Error.prototype returns an empty object
https://bugs.webkit.org/show_bug.cgi?id=91792

Reviewed by Kentaro Hara.

In some edge cases we get an empty object back from Error.prototype.

No new tests. I cannot reproduce this.

* bindings/v8/V8BindingPerContextData.cpp:
(WebCore::V8BindingPerContextData::constructorForTypeSlowCase):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@124498 268f45cc-cd09-0410-ab3c-d52691b4dbfc
DOM4: className should be defined on Element and not on HTMLElement
https://bugs.webkit.org/show_bug.cgi?id=93014

Reviewed by Adam Barth.

DOM4 specs that Element should have the className WebIDL attribute. This moves the
attribute to the correct IDL file.

Source/WebCore:

Test: fast/dom/Element/class-name.html

* dom/Element.idl:
* html/HTMLElement.idl:

LayoutTests:

* fast/dom/Element/class-name-expected.txt: Added.
* fast/dom/Element/class-name.html: Added.


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