From b4a245f67fe6c40f3aa8ddfe627d28e3513a9463 Mon Sep 17 00:00:00 2001 From: Michael Drake Date: Fri, 29 Jan 2016 14:09:27 +0000 Subject: Don't add target event to list of capture/bubbling event targets. --- src/core/node.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/core/node.c b/src/core/node.c index 45db915..aceab34 100644 --- a/src/core/node.c +++ b/src/core/node.c @@ -2377,8 +2377,6 @@ dom_exception _dom_node_dispatch_event(dom_event_target *et, /** \todo Report memory exhaustion? */ return DOM_NO_ERR; } - targets[ntargets++] = (dom_event_target *)dom_node_ref(et); - target = target->parent; while (target != NULL) { if (ntargets == ntargets_allocated) { @@ -2412,7 +2410,7 @@ dom_exception _dom_node_dispatch_event(dom_event_target *et, } /* The capture phase */ - for (targetnr = ntargets; targetnr > 1; --targetnr) { + for (targetnr = ntargets; targetnr > 0; --targetnr) { dom_node_internal *node = (dom_node_internal *) targets[targetnr - 1]; @@ -2443,7 +2441,7 @@ dom_exception _dom_node_dispatch_event(dom_event_target *et, /* Bubbling phase */ evt->phase = DOM_BUBBLING_PHASE; - for (targetnr = 1; targetnr < ntargets; ++targetnr) { + for (targetnr = 0; targetnr < ntargets; ++targetnr) { dom_node_internal *node = (dom_node_internal *) targets[targetnr]; err = _dom_event_target_dispatch(targets[targetnr], -- cgit v1.2.3