Changeset 118889 in webkit
- Timestamp:
- May 29, 2012, 9:05:53 PM (14 years ago)
- Location:
- trunk/Source/WebCore
- Files:
-
- 3 edited
-
ChangeLog (modified) (1 diff)
-
dom/EventContext.cpp (modified) (1 diff)
-
dom/EventContext.h (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r118888 r118889 1 2012-05-29 Hayato Ito <hayato@chromium.org> 2 3 Add assertions to make sure that event's target and relatedTarget are accessible. 4 https://bugs.webkit.org/show_bug.cgi?id=87641 5 6 Reviewed by Dimitri Glazkov. 7 8 No new tests. No new functionality except for assertions. 9 10 * dom/EventContext.cpp: 11 (WebCore::EventContext::EventContext): 12 * dom/EventContext.h: 13 (WebCore): 14 (EventContext): 15 (WebCore::EventContext::setRelatedTarget): 16 (WebCore::EventContext::accessible): 17 1 18 2012-05-29 Kent Tamura <tkent@chromium.org> 2 19 -
trunk/Source/WebCore/dom/EventContext.cpp
r117394 r118889 42 42 , m_relatedTarget(0) 43 43 { 44 ASSERT(m_node); 45 ASSERT(!m_target || m_target->toNode() || accessible(m_target->toNode())); 44 46 } 45 47 -
trunk/Source/WebCore/dom/EventContext.h
r117394 r118889 28 28 #define EventContext_h 29 29 30 #include "EventTarget.h" 31 #include "Node.h" 32 #include "TreeScope.h" 30 33 #include <wtf/RefPtr.h> 31 34 32 35 namespace WebCore { 33 36 34 class EventTarget;35 37 class Event; 36 class Node;37 38 38 39 class EventContext { … … 49 50 50 51 private: 52 #ifndef NDEBUG 53 bool accessible(Node*); 54 #endif 51 55 RefPtr<Node> m_node; 52 56 RefPtr<EventTarget> m_currentTarget; … … 77 81 inline void EventContext::setRelatedTarget(PassRefPtr<EventTarget> relatedTarget) 78 82 { 83 ASSERT(!relatedTarget || !relatedTarget->toNode() || accessible(relatedTarget->toNode())); 79 84 m_relatedTarget = relatedTarget; 80 85 } 86 87 #ifndef NDEBUG 88 inline bool EventContext::accessible(Node* target) 89 { 90 ASSERT(target); 91 TreeScope* targetScope = target->treeScope(); 92 for (TreeScope* scope = m_node->treeScope(); scope; scope = scope->parentTreeScope()) { 93 if (scope == targetScope) 94 return true; 95 } 96 return false; 97 } 98 #endif 81 99 82 100 }
Note:
See TracChangeset
for help on using the changeset viewer.