From 627c21565c06be8fd11dcdcb78a52f733dceaf62 Mon Sep 17 00:00:00 2001
From: "mathias.chouet" <mathias.chouet@irstea.fr>
Date: Mon, 7 Sep 2020 11:28:46 +0200
Subject: [PATCH] Properly clear Formulaires list in service after buggy
 session load

---
 src/app/app.component.ts               | 2 ++
 src/app/services/formulaire.service.ts | 7 ++++++-
 2 files changed, 8 insertions(+), 1 deletion(-)

diff --git a/src/app/app.component.ts b/src/app/app.component.ts
index 6cbd0887f..7b79d655a 100644
--- a/src/app/app.component.ts
+++ b/src/app/app.component.ts
@@ -621,6 +621,8 @@ export class AppComponent implements OnInit, OnDestroy, Observer {
         // just to be sure, get rid of any Nub possibly stuck in session without any form attached
         Session.getInstance().clear();
         Session.getInstance().documentation = "";
+        // just to be sure, get rid of any Formulaire possibly stuck in the service without any Nub attached
+        this.formulaireService.clearFormulaires();
         // restore notifications
         this.appSetupService.enableNotifications = oldNotifState;
     }
diff --git a/src/app/services/formulaire.service.ts b/src/app/services/formulaire.service.ts
index 462b312c4..a9a6a7160 100644
--- a/src/app/services/formulaire.service.ts
+++ b/src/app/services/formulaire.service.ts
@@ -64,13 +64,18 @@ export class FormulaireService extends Observable {
         private notificationsService: NotificationsService
     ) {
         super();
-        this._formulaires = [];
+        this.clearFormulaires();
     }
 
     public get formulaires(): FormulaireDefinition[] {
         return this._formulaires;
     }
 
+    /** Removes all formulaires from the list */
+    public clearFormulaires() {
+        this._formulaires = [];
+    }
+
     /**
      * Retourne le titre complet du type de module de calcul, dans la langue en cours
      */
-- 
GitLab