UI server: do not crash at payload validation
[e-mobility-charging-stations-simulator.git] / src / charging-station / ChargingStationWorkerBroadcastChannel.ts
index 3000626eced8cbd712fc6e047082cd9d54753a18..6ab170e5ba3a49c125236518f46577b3300dc0da 100644 (file)
@@ -45,11 +45,14 @@ export default class ChargingStationWorkerBroadcastChannel extends WorkerBroadca
   }
 
   private async requestHandler(messageEvent: MessageEvent): Promise<void> {
-    if (this.isResponse(messageEvent.data) === true) {
+    const validatedMessageEvent = this.validateMessageEvent(messageEvent);
+    if (validatedMessageEvent === false) {
       return;
     }
-    const [uuid, command, requestPayload] = this.validateMessageEvent(messageEvent)
-      .data as BroadcastChannelRequest;
+    if (this.isResponse(validatedMessageEvent.data) === true) {
+      return;
+    }
+    const [uuid, command, requestPayload] = validatedMessageEvent.data as BroadcastChannelRequest;
 
     if (
       requestPayload?.hashIds !== undefined &&