diff --git a/components/script/dom/eventdispatcher.rs b/components/script/dom/eventdispatcher.rs index 05133f35304..33c1a5c8314 100644 --- a/components/script/dom/eventdispatcher.rs +++ b/components/script/dom/eventdispatcher.rs @@ -24,8 +24,6 @@ pub fn dispatch_event(target: &EventTarget, pseudo_target: Option<&EventTarget>, }); event.set_dispatching(true); - let type_ = event.Type(); - //TODO: no chain if not participating in a tree let mut chain: RootedVec> = RootedVec::new(); if let Some(target_node) = NodeCast::to_ref(target) { @@ -35,9 +33,10 @@ pub fn dispatch_event(target: &EventTarget, pseudo_target: Option<&EventTarget>, } } - event.set_phase(EventPhase::Capturing); + let type_ = event.Type(); /* capturing */ + event.set_phase(EventPhase::Capturing); for cur_target in chain.r().iter().rev() { let stopped = match cur_target.get_listeners_for(&type_, ListenerPhase::Capturing) { Some(listeners) => {