From c5e144f327e7990853f2623f05562d877e133058 Mon Sep 17 00:00:00 2001 From: Steven Degutis Date: Fri, 6 Dec 2019 15:57:26 -0600 Subject: [PATCH] Avoid roundtrip to browser when double-disposing. --- src/browser/Lifecycle.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/browser/Lifecycle.ts b/src/browser/Lifecycle.ts index 1344ea9b..a8172db5 100644 --- a/src/browser/Lifecycle.ts +++ b/src/browser/Lifecycle.ts @@ -17,12 +17,13 @@ export function addDisposableDomListener( useCapture?: boolean ): IDisposable { node.addEventListener(type, handler, useCapture); + let disposed = false; return { dispose: () => { - if (!handler) { - // Already disposed + if (!disposed) { return; } + disposed = true; node.removeEventListener(type, handler, useCapture); } };