OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) |
3 * (C) 1999 Antti Koivisto (koivisto@kde.org) | 3 * (C) 1999 Antti Koivisto (koivisto@kde.org) |
4 * (C) 2001 Dirk Mueller (mueller@kde.org) | 4 * (C) 2001 Dirk Mueller (mueller@kde.org) |
5 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2013 Apple Inc. All rights
reserved. | 5 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2013 Apple Inc. All rights
reserved. |
6 * | 6 * |
7 * This library is free software; you can redistribute it and/or | 7 * This library is free software; you can redistribute it and/or |
8 * modify it under the terms of the GNU Library General Public | 8 * modify it under the terms of the GNU Library General Public |
9 * License as published by the Free Software Foundation; either | 9 * License as published by the Free Software Foundation; either |
10 * version 2 of the License, or (at your option) any later version. | 10 * version 2 of the License, or (at your option) any later version. |
(...skipping 1447 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1458 document().invalidateNodeListCaches(attrName); | 1458 document().invalidateNodeListCaches(attrName); |
1459 | 1459 |
1460 for (ContainerNode* node = this; node; node = node->parentNode()) { | 1460 for (ContainerNode* node = this; node; node = node->parentNode()) { |
1461 if (NodeListsNodeData* lists = node->nodeLists()) | 1461 if (NodeListsNodeData* lists = node->nodeLists()) |
1462 lists->invalidateCaches(attrName); | 1462 lists->invalidateCaches(attrName); |
1463 } | 1463 } |
1464 } | 1464 } |
1465 | 1465 |
1466 PassRefPtrWillBeRawPtr<TagCollection> ContainerNode::getElementsByTagName(const
AtomicString& localName) | 1466 PassRefPtrWillBeRawPtr<TagCollection> ContainerNode::getElementsByTagName(const
AtomicString& localName) |
1467 { | 1467 { |
1468 if (localName.isNull()) | |
1469 return nullptr; | |
1470 | |
1471 if (document().isHTMLDocument()) | 1468 if (document().isHTMLDocument()) |
1472 return ensureCachedCollection<HTMLTagCollection>(HTMLTagCollectionType,
localName); | 1469 return ensureCachedCollection<HTMLTagCollection>(HTMLTagCollectionType,
localName); |
1473 return ensureCachedCollection<TagCollection>(TagCollectionType, localName); | 1470 return ensureCachedCollection<TagCollection>(TagCollectionType, localName); |
1474 } | 1471 } |
1475 | 1472 |
1476 PassRefPtrWillBeRawPtr<TagCollection> ContainerNode::getElementsByTagNameNS(cons
t AtomicString& namespaceURI, const AtomicString& localName) | 1473 PassRefPtrWillBeRawPtr<TagCollection> ContainerNode::getElementsByTagNameNS(cons
t AtomicString& namespaceURI, const AtomicString& localName) |
1477 { | 1474 { |
1478 if (localName.isNull()) | |
1479 return nullptr; | |
1480 | |
1481 if (namespaceURI == starAtom) | 1475 if (namespaceURI == starAtom) |
1482 return getElementsByTagName(localName); | 1476 return getElementsByTagName(localName); |
1483 | 1477 |
1484 return ensureCachedCollection<TagCollection>(TagCollectionType, namespaceURI
.isEmpty() ? nullAtom : namespaceURI, localName); | 1478 return ensureCachedCollection<TagCollection>(TagCollectionType, namespaceURI
.isEmpty() ? nullAtom : namespaceURI, localName); |
1485 } | 1479 } |
1486 | 1480 |
1487 // Takes an AtomicString in argument because it is common for elements to share
the same name attribute. | 1481 // Takes an AtomicString in argument because it is common for elements to share
the same name attribute. |
1488 // Therefore, the NameNodeList factory function expects an AtomicString type. | 1482 // Therefore, the NameNodeList factory function expects an AtomicString type. |
1489 PassRefPtrWillBeRawPtr<NameNodeList> ContainerNode::getElementsByName(const Atom
icString& elementName) | 1483 PassRefPtrWillBeRawPtr<NameNodeList> ContainerNode::getElementsByName(const Atom
icString& elementName) |
1490 { | 1484 { |
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1543 return true; | 1537 return true; |
1544 | 1538 |
1545 if (node->isElementNode() && toElement(node)->shadow()) | 1539 if (node->isElementNode() && toElement(node)->shadow()) |
1546 return true; | 1540 return true; |
1547 | 1541 |
1548 return false; | 1542 return false; |
1549 } | 1543 } |
1550 #endif | 1544 #endif |
1551 | 1545 |
1552 } // namespace blink | 1546 } // namespace blink |
OLD | NEW |