summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRyosuke Niwa <rniwa@webkit.org>2013-10-22 15:35:15 +0200
committerThe Qt Project <gerrit-noreply@qt-project.org>2013-10-22 21:24:00 +0200
commitf65ce030982a2ee743bb8adfab4423499d81f379 (patch)
tree361713a192cf90f0ed096fd4ee620fbf633b4d29
parente0e98ce58b906ea2c91f2babad7b69f9a98391dd (diff)
downloadqtwebkit-f65ce030982a2ee743bb8adfab4423499d81f379.tar.gz
ASSERTION FAILED: !node || node->isShadowRoot() in WebCore::EventRetargeter::eventTargetRespectingTargetRules
https://bugs.webkit.org/show_bug.cgi?id=119720 Reviewed by Andy Estes. Merge https://chromium.googlesource.com/chromium/blink/+/4ce9bfbf54410179cd0f18b3d1a912045fc0ec3d * dom/EventRetargeter.h: (WebCore::EventRetargeter::eventTargetRespectingTargetRules): Change-Id: I56a3429e72689e58e744895b2f85cbcea20e7f54 git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154289 268f45cc-cd09-0410-ab3c-d52691b4dbfc Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
-rw-r--r--Source/WebCore/dom/EventRetargeter.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/Source/WebCore/dom/EventRetargeter.h b/Source/WebCore/dom/EventRetargeter.h
index 7d39ae137..2cc62742c 100644
--- a/Source/WebCore/dom/EventRetargeter.h
+++ b/Source/WebCore/dom/EventRetargeter.h
@@ -89,7 +89,8 @@ inline EventTarget* EventRetargeter::eventTargetRespectingTargetRules(Node* refe
// Spec: The event handling for the non-exposed tree works as if the referenced element had been textually included
// as a deeply cloned child of the 'use' element, except that events are dispatched to the SVGElementInstance objects
- Element* shadowHostElement = toShadowRoot(referenceNode->treeScope()->rootNode())->host();
+ Node* rootNode = referenceNode->treeScope()->rootNode();
+ Element* shadowHostElement = rootNode->isShadowRoot() ? toShadowRoot(rootNode)->host() : 0;
// At this time, SVG nodes are not supported in non-<use> shadow trees.
if (!shadowHostElement || !shadowHostElement->hasTagName(SVGNames::useTag))
return referenceNode;