From 6c20a5f4f90bfb9d406dacd4632f8bc5db1ca6e8 Mon Sep 17 00:00:00 2001 From: MichaelDvP Date: Thu, 11 Nov 2021 08:22:20 +0100 Subject: [PATCH] prevent double messages in weblog --- interface/src/system/LogEventController.tsx | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/interface/src/system/LogEventController.tsx b/interface/src/system/LogEventController.tsx index a7197ffa4..9a4cca052 100644 --- a/interface/src/system/LogEventController.tsx +++ b/interface/src/system/LogEventController.tsx @@ -45,6 +45,7 @@ interface LogEventControllerState { compact: boolean; level: number; max_messages: number; + last_id: number; } type LogEventControllerProps = RestControllerProps; @@ -62,7 +63,8 @@ class LogEventController extends Component< events: [], compact: false, level: 6, - max_messages: 25 + max_messages: 25, + last_id: 0 }; } @@ -157,7 +159,10 @@ class LogEventController extends Component< const rawData = event.data; if (typeof rawData === 'string' || rawData instanceof String) { const event = JSON.parse(rawData as string) as LogEvent; - this.setState((state) => ({ events: [...state.events, event] })); + if (event.i > this.state.last_id) { + this.setState({ last_id: event.i }); + this.setState((state) => ({ events: [...state.events, event] })); + } } };