summaryrefslogtreecommitdiffhomepage
path: root/gui/src/main
diff options
context:
space:
mode:
Diffstat (limited to 'gui/src/main')
-rw-r--r--gui/src/main/daemon-rpc.ts14
1 files changed, 9 insertions, 5 deletions
diff --git a/gui/src/main/daemon-rpc.ts b/gui/src/main/daemon-rpc.ts
index 0619e873ca..89360fbc15 100644
--- a/gui/src/main/daemon-rpc.ts
+++ b/gui/src/main/daemon-rpc.ts
@@ -155,7 +155,11 @@ export class DaemonRpc {
public disconnect() {
this.isConnected = false;
- this.subscriptions.clear();
+
+ for (const subscriptionId of this.subscriptions.keys()) {
+ this.removeSubscription(subscriptionId);
+ }
+
this.client.close();
if (this.reconnectionTimeout) {
clearTimeout(this.reconnectionTimeout);
@@ -558,14 +562,14 @@ export class DaemonRpc {
this.subscriptions.delete(id);
subscription.removeAllListeners('data');
subscription.removeAllListeners('error');
- try {
- subscription.cancel();
- } catch (e) {
+
+ subscription.on('error', (e) => {
const error = e as grpc.ServiceError;
if (error.code !== grpc.status.CANCELLED) {
throw error;
}
- }
+ });
+ subscription.cancel();
}
}