From 9fa397915d7afe16238fb7edda561c8963aeedc7 Mon Sep 17 00:00:00 2001 From: Clive Paterson Date: Sat, 17 Aug 2024 15:49:20 +0800 Subject: [PATCH] Allow visual debugging from any thread (#412) * This fix to the visual debugger allows this `visualizeMask()` method to be used from any thread. * Update shared/src/main/java/com/faforever/neroxis/visualization/VisualDebugger.java yep Co-authored-by: Sheikah45 <66929319+Sheikah45@users.noreply.github.com> * Update VisualDebugger.java Fixing syntax --------- Co-authored-by: Sheikah45 <66929319+Sheikah45@users.noreply.github.com> --- .../neroxis/visualization/VisualDebugger.java | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/shared/src/main/java/com/faforever/neroxis/visualization/VisualDebugger.java b/shared/src/main/java/com/faforever/neroxis/visualization/VisualDebugger.java index aa94dae5..803de609 100644 --- a/shared/src/main/java/com/faforever/neroxis/visualization/VisualDebugger.java +++ b/shared/src/main/java/com/faforever/neroxis/visualization/VisualDebugger.java @@ -20,10 +20,14 @@ public static void visualizeMask(Mask mask, String method) { } public static void visualizeMask(Mask mask, String method, String line) { - createGui(); - String name = mask.getVisualName(); - name = name == null ? mask.getName() : name; - updateList(name + " " + method + " " + line, mask.immutableCopy()); + Mask copyOfmask = mask.immutableCopy(); + SwingUtilities.invokeLater(() -> { + createGui(); + String name = copyOfmask.getVisualName(); + name = name == null ? copyOfmask.getName() : name; + updateList(name + " " + method + " " + line, copyOfmask.immutableCopy()); + } + ); } public static void createGui() {