Skip to content
This repository was archived by the owner on May 22, 2020. It is now read-only.

Commit 0b4518a

Browse files
committed
RUN 5493 Release ExtWin ids even if cleanup errors
1 parent 0ea5335 commit 0b4518a

File tree

1 file changed

+15
-10
lines changed

1 file changed

+15
-10
lines changed

src/browser/api/external_window.ts

Lines changed: 15 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -681,20 +681,25 @@ function externalWindowCloseCleanup(externalWindow: Shapes.ExternalWindow): void
681681
externalWindow.emit('closing');
682682
disabledUserMovementRequestorCount.delete(key);
683683

684-
winEventHooks.removeAllListeners();
685-
winEventHooksEmitters.delete(key);
684+
try {
685+
winEventHooks.removeAllListeners();
686+
winEventHooksEmitters.delete(key);
686687

687-
injectionBus.removeAllListeners();
688-
injectionBuses.delete(key);
688+
injectionBus.removeAllListeners();
689+
injectionBuses.delete(key);
689690

690-
windowGroupUnSubscription();
691-
windowGroupUnSubscriptions.delete(key);
691+
windowGroupUnSubscription();
692+
windowGroupUnSubscriptions.delete(key);
692693

693-
externalWindowEventAdapter.removeAllListeners();
694-
externalWindowEventAdapters.delete(key);
694+
externalWindowEventAdapter.removeAllListeners();
695+
externalWindowEventAdapters.delete(key);
696+
697+
externalWindow.emit('closed');
698+
externalWindow.removeAllListeners();
699+
} catch (err) {
700+
electronApp.vlog(2, `Error cleaning up ExternalWindow: ${err}`);
701+
}
695702

696-
externalWindow.emit('closed');
697-
externalWindow.removeAllListeners();
698703
externalWindows.delete(uuid);
699704
nativeIdToUuid.delete(nativeId);
700705
releaseUuid(uuid);

0 commit comments

Comments
 (0)