Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(758)

Side by Side Diff: Source/core/dom/Node.h

Issue 1265573003: Fix crash on null ptr dereference in EventPath propagation (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: update the comment (not necessarily async events) Created 5 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
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-2011, 2014 Apple Inc. All rights reserved. 5 * Copyright (C) 2004-2011, 2014 Apple Inc. All rights reserved.
6 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.t orchmobile.com/) 6 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.t orchmobile.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 277 matching lines...) Expand 10 before | Expand all | Expand 10 after
288 bool isTreeScope() const; 288 bool isTreeScope() const;
289 bool isDocumentFragment() const { return getFlag(IsDocumentFragmentFlag); } 289 bool isDocumentFragment() const { return getFlag(IsDocumentFragmentFlag); }
290 bool isShadowRoot() const { return isDocumentFragment() && isTreeScope(); } 290 bool isShadowRoot() const { return isDocumentFragment() && isTreeScope(); }
291 bool isInsertionPoint() const { return getFlag(IsInsertionPointFlag); } 291 bool isInsertionPoint() const { return getFlag(IsInsertionPointFlag); }
292 292
293 bool canParticipateInComposedTree() const; 293 bool canParticipateInComposedTree() const;
294 294
295 bool hasCustomStyleCallbacks() const { return getFlag(HasCustomStyleCallback sFlag); } 295 bool hasCustomStyleCallbacks() const { return getFlag(HasCustomStyleCallback sFlag); }
296 296
297 // If this node is in a shadow tree, returns its shadow host. Otherwise, ret urns nullptr. 297 // If this node is in a shadow tree, returns its shadow host. Otherwise, ret urns nullptr.
298 // TODO(kochi): crbug.com/507413 shadowHost() can return nullptr even when i t is in a
299 // shadow tree but its root is detached from its host. This can happen when handling
300 // queued events (e.g. during execCommand()).
298 Element* shadowHost() const; 301 Element* shadowHost() const;
299 ShadowRoot* containingShadowRoot() const; 302 ShadowRoot* containingShadowRoot() const;
300 ShadowRoot* youngestShadowRoot() const; 303 ShadowRoot* youngestShadowRoot() const;
301 304
302 // Returns nullptr, a child of ShadowRoot, or a legacy shadow root. 305 // Returns nullptr, a child of ShadowRoot, or a legacy shadow root.
303 Node* nonBoundaryShadowTreeRootNode(); 306 Node* nonBoundaryShadowTreeRootNode();
304 307
305 // Node's parent, shadow tree host. 308 // Node's parent, shadow tree host.
306 ContainerNode* parentOrShadowHostNode() const; 309 ContainerNode* parentOrShadowHostNode() const;
307 Element* parentOrShadowHostElement() const; 310 Element* parentOrShadowHostElement() const;
(...skipping 588 matching lines...) Expand 10 before | Expand all | Expand 10 after
896 } // namespace blink 899 } // namespace blink
897 900
898 #ifndef NDEBUG 901 #ifndef NDEBUG
899 // Outside the WebCore namespace for ease of invocation from gdb. 902 // Outside the WebCore namespace for ease of invocation from gdb.
900 void showNode(const blink::Node*); 903 void showNode(const blink::Node*);
901 void showTree(const blink::Node*); 904 void showTree(const blink::Node*);
902 void showNodePath(const blink::Node*); 905 void showNodePath(const blink::Node*);
903 #endif 906 #endif
904 907
905 #endif // Node_h 908 #endif // Node_h
OLDNEW
« no previous file with comments | « LayoutTests/fast/events/event-fire-disconnected-shadow-dom-crash-expected.txt ('k') | Source/core/dom/shadow/ShadowRoot.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698