aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/dom/event.rs
diff options
context:
space:
mode:
authorBastien Orivel <eijebong@bananium.fr>2018-11-03 16:23:33 +0100
committerBastien Orivel <eijebong@bananium.fr>2018-12-22 17:11:30 +0100
commit50c832762f4ae1799401942732faf2e5b3cf2678 (patch)
treeb2e7a1ea93fb277548f280fccf369ba383e078aa /components/script/dom/event.rs
parentf3ca48206e02d48fc8e9f7d340d25e2210d00723 (diff)
downloadservo-50c832762f4ae1799401942732faf2e5b3cf2678.tar.gz
servo-50c832762f4ae1799401942732faf2e5b3cf2678.zip
Implement AddEventListenerOptions: once
Fixes #13242
Diffstat (limited to 'components/script/dom/event.rs')
-rw-r--r--components/script/dom/event.rs5
1 files changed, 4 insertions, 1 deletions
diff --git a/components/script/dom/event.rs b/components/script/dom/event.rs
index 203b5449bd4..61b9b14877e 100644
--- a/components/script/dom/event.rs
+++ b/components/script/dom/event.rs
@@ -525,7 +525,10 @@ fn inner_invoke(
// Step 2.2.
found = true;
- // TODO: step 2.5.
+ // Step 2.5.
+ if let CompiledEventListener::Listener(event_listener) = listener {
+ object.remove_listener_if_once(&event.type_(), &event_listener);
+ }
// Step 2.6.
let marker = TimelineMarker::start("DOMEvent".to_owned());