Commit 1156018c authored by eric@webkit.org's avatar eric@webkit.org

2010-05-22 Justin Schuh <jschuh@chromium.org>

        Reviewed by Nate Chapin.

        Remove custom bindings for NamedNodeMap.setNamedItem and .setNamedItemNS
        https://bugs.webkit.org/show_bug.cgi?id=39462

        Custom bindings are no longer needed because origin checks were moved
        out of the bindings by: http://trac.webkit.org/changeset/59866

        Behavior isn't changed and is covered by existing tests.

        * bindings/js/JSNamedNodeMapCustom.cpp:
        * bindings/v8/custom/V8NamedNodeMapCustom.cpp:
        * dom/NamedNodeMap.idl:

git-svn-id: svn://svn.chromium.org/blink/trunk@60022 bbb929c8-8fbe-4397-9dbb-9b2b20218538
parent 629553ea
2010-05-22 Justin Schuh <jschuh@chromium.org>
Reviewed by Nate Chapin.
Remove custom bindings for NamedNodeMap.setNamedItem and .setNamedItemNS
https://bugs.webkit.org/show_bug.cgi?id=39462
Custom bindings are no longer needed because origin checks were moved
out of the bindings by: http://trac.webkit.org/changeset/59866
Behavior isn't changed and is covered by existing tests.
* bindings/js/JSNamedNodeMapCustom.cpp:
* bindings/v8/custom/V8NamedNodeMapCustom.cpp:
* dom/NamedNodeMap.idl:
2010-05-22 Daniel Bates <dbates@rim.com>
No review, rolling out 60017.
......@@ -35,38 +35,6 @@ using namespace JSC;
namespace WebCore {
JSValue JSNamedNodeMap::setNamedItem(ExecState* exec, const ArgList& args)
{
NamedNodeMap* imp = static_cast<NamedNodeMap*>(impl());
ExceptionCode ec = 0;
Node* newNode = toNode(args.at(0));
if (newNode && newNode->nodeType() == Node::ATTRIBUTE_NODE && imp->element()) {
if (!allowSettingSrcToJavascriptURL(exec, imp->element(), newNode->nodeName(), newNode->nodeValue()))
return jsNull();
}
JSValue result = toJS(exec, globalObject(), WTF::getPtr(imp->setNamedItem(newNode, ec)));
setDOMException(exec, ec);
return result;
}
JSValue JSNamedNodeMap::setNamedItemNS(ExecState* exec, const ArgList& args)
{
NamedNodeMap* imp = static_cast<NamedNodeMap*>(impl());
ExceptionCode ec = 0;
Node* newNode = toNode(args.at(0));
if (newNode && newNode->nodeType() == Node::ATTRIBUTE_NODE && imp->element()) {
if (!allowSettingSrcToJavascriptURL(exec, imp->element(), newNode->nodeName(), newNode->nodeValue()))
return jsNull();
}
JSValue result = toJS(exec, globalObject(), WTF::getPtr(imp->setNamedItemNS(newNode, ec)));
setDOMException(exec, ec);
return result;
}
bool JSNamedNodeMap::canGetItemsForName(ExecState*, NamedNodeMap* impl, const Identifier& propertyName)
{
return impl->getNamedItem(identifierToString(propertyName));
......
......@@ -75,48 +75,6 @@ v8::Handle<v8::Value> V8NamedNodeMap::namedPropertyGetter(v8::Local<v8::String>
return toV8(result.release());
}
v8::Handle<v8::Value> V8NamedNodeMap::setNamedItemNSCallback(const v8::Arguments& args)
{
INC_STATS("DOM.NamedNodeMap.setNamedItemNS");
NamedNodeMap* imp = V8NamedNodeMap::toNative(args.Holder());
Node* newNode = V8Node::HasInstance(args[0]) ? V8Node::toNative(v8::Handle<v8::Object>::Cast(args[0])) : 0;
if (newNode && newNode->nodeType() == Node::ATTRIBUTE_NODE && imp->element()) {
if (!V8BindingSecurity::allowSettingSrcToJavascriptURL(V8BindingState::Only(), imp->element(), newNode->nodeName(), newNode->nodeValue()))
return v8::Handle<v8::Value>();
}
ExceptionCode ec = 0;
RefPtr<Node> result = imp->setNamedItemNS(newNode, ec);
if (UNLIKELY(ec)) {
throwError(ec);
return v8::Handle<v8::Value>();
}
return toV8(result.release());
}
v8::Handle<v8::Value> V8NamedNodeMap::setNamedItemCallback(const v8::Arguments & args)
{
INC_STATS("DOM.NamedNodeMap.setNamedItem");
NamedNodeMap* imp = V8NamedNodeMap::toNative(args.Holder());
Node* newNode = V8Node::HasInstance(args[0]) ? V8Node::toNative(v8::Handle<v8::Object>::Cast(args[0])) : 0;
if (newNode && newNode->nodeType() == Node::ATTRIBUTE_NODE && imp->element()) {
if (!V8BindingSecurity::allowSettingSrcToJavascriptURL(V8BindingState::Only(), imp->element(), newNode->nodeName(), newNode->nodeValue()))
return v8::Handle<v8::Value>();
}
ExceptionCode ec = 0;
RefPtr<Node> result = imp->setNamedItem(newNode, ec);
if (UNLIKELY(ec)) {
throwError(ec);
return v8::Handle<v8::Value>();
}
return toV8(result.release());
}
v8::Handle<v8::Value> toV8(NamedNodeMap* impl)
{
if (!impl)
......
......@@ -28,7 +28,7 @@ module core {
Node getNamedItem(in DOMString name);
[Custom] Node setNamedItem(in Node node)
Node setNamedItem(in Node node)
raises(DOMException);
Node removeNamedItem(in DOMString name)
......@@ -46,7 +46,7 @@ module core {
// FIXME: the implementation does take an exceptioncode parameter.
/*raises(DOMException)*/;
[Custom] Node setNamedItemNS(in Node node)
Node setNamedItemNS(in Node node)
raises(DOMException);
[OldStyleObjC] Node removeNamedItemNS(in [ConvertNullToNullString] DOMString namespaceURI,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment