From e1e856d7da9c92952c3de94853794337fea1945d Mon Sep 17 00:00:00 2001 From: Koen Kanters Date: Tue, 24 Feb 2026 20:46:30 +0100 Subject: [PATCH] fix(ignore): Fix enableDisableExtension (#31176) --- lib/controller.ts | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/lib/controller.ts b/lib/controller.ts index 15f7002f8..f5e1d627b 100644 --- a/lib/controller.ts +++ b/lib/controller.ts @@ -211,10 +211,7 @@ export class Controller { @bind async enableDisableExtension(enable: boolean, name: string): Promise { if (enable) { - const extension = this.getExtension(name); - if (extension) { - await this.removeExtension(extension); - } + let extension: Extension; switch (name) { case "Frontend": { @@ -226,7 +223,7 @@ export class Controller { /* v8 ignore start */ const {Frontend} = await import("./extension/frontend.js"); - await this.addExtension(new Frontend(...this.extensionArgs)); + extension = new Frontend(...this.extensionArgs); break; /* v8 ignore stop */ @@ -238,7 +235,7 @@ export class Controller { const {HomeAssistant} = await import("./extension/homeassistant.js"); - await this.addExtension(new HomeAssistant(...this.extensionArgs)); + extension = new HomeAssistant(...this.extensionArgs); break; } @@ -248,6 +245,12 @@ export class Controller { ); } } + + const existingExtension = this.getExtension(name); + if (existingExtension) { + await this.removeExtension(existingExtension); + } + await this.extensions.add(extension); } else { switch (name) { case "Frontend": {