From ac6df17036dba86afe8ae7e5503fd2e6de771cea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miroslav=20=C5=A0ediv=C3=BD?= Date: Wed, 17 Aug 2022 21:08:34 +0200 Subject: [PATCH] emit close event after closing all reconnectors. --- src/component/internal/connection.ts | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/component/internal/connection.ts b/src/component/internal/connection.ts index 256e5a70..2860185b 100644 --- a/src/component/internal/connection.ts +++ b/src/component/internal/connection.ts @@ -201,18 +201,19 @@ export class NekoConnection extends EventEmitter { public close(error?: Error) { if (this._open) { - this._open = false - // set state to disconnected Vue.set(this._state.websocket, 'connected', false) Vue.set(this._state.webrtc, 'connected', false) Vue.set(this._state, 'status', 'disconnected') - - this.emit('close', error) } // close all reconnectors Object.values(this._reconnector).forEach((r) => r.close()) + + if (this._open) { + this._open = false + this.emit('close', error) + } } public destroy() {