Skip to content
Open
Show file tree
Hide file tree
Changes from 4 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions src/client/ClientGameRunner.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1121,6 +1121,11 @@ export class ClientGameRunner {
public stop() {
this.soundManager.dispose();
this.graphicsListenerAbort?.abort();
// Detach the input handler's window/canvas listeners. Nothing else ever
// did, so a handler from a finished game kept translating keys into events
// on a dead bus, and joining another game without a page reload stacked a
// second live handler on top. Idempotent, like the disposals around it.
this.input.destroy();
this.disposeRenderer?.();
if (!this.isActive) return;

Expand Down
Loading
Loading