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 Apple Inc. All rights reserved. | 5 * Copyright (C) 2004, 2005, 2006, 2007 Apple Inc. All rights reserved. |
6 * (C) 2006 Alexey Proskuryakov (ap@nypop.com) | 6 * (C) 2006 Alexey Proskuryakov (ap@nypop.com) |
7 * | 7 * |
8 * This library is free software; you can redistribute it and/or | 8 * This library is free software; you can redistribute it and/or |
9 * modify it under the terms of the GNU Library General Public | 9 * modify it under the terms of the GNU Library General Public |
10 * License as published by the Free Software Foundation; either | 10 * License as published by the Free Software Foundation; either |
(...skipping 29 matching lines...) Expand all Loading... |
40 { | 40 { |
41 } | 41 } |
42 | 42 |
43 PassRefPtr<NodeList> LabelableElement::labels() | 43 PassRefPtr<NodeList> LabelableElement::labels() |
44 { | 44 { |
45 if (!supportLabels()) | 45 if (!supportLabels()) |
46 return 0; | 46 return 0; |
47 if (!document()) | 47 if (!document()) |
48 return 0; | 48 return 0; |
49 | 49 |
50 NodeListsNodeData* nodeLists = Node::ensureRareData()->ensureNodeLists(this)
; | 50 return Node::ensureRareData()->ensureNodeLists(this)->addCacheWithAtomicName
<LabelsNodeList>(this, DynamicNodeList::LabelsNodeListType, starAtom); |
51 if (nodeLists->m_labelsNodeListCache) | |
52 return nodeLists->m_labelsNodeListCache; | |
53 | |
54 RefPtr<LabelsNodeList> list = LabelsNodeList::create(this); | |
55 nodeLists->m_labelsNodeListCache = list.get(); | |
56 return list.release(); | |
57 } | 51 } |
58 | 52 |
59 } // namespace Webcore | 53 } // namespace Webcore |
OLD | NEW |