From cd9a2c808581ed1e51a017e59263048ea3c270d8 Mon Sep 17 00:00:00 2001 From: Bastien Jansen Date: Wed, 28 Jun 2023 17:56:18 +0200 Subject: [PATCH] fix: run code generation inside a read action (fixes #638) --- .../antlr/intellij/plugin/parsing/RunANTLROnGrammarFile.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/antlr/intellij/plugin/parsing/RunANTLROnGrammarFile.java b/src/main/java/org/antlr/intellij/plugin/parsing/RunANTLROnGrammarFile.java index f53abce9..16d377e1 100644 --- a/src/main/java/org/antlr/intellij/plugin/parsing/RunANTLROnGrammarFile.java +++ b/src/main/java/org/antlr/intellij/plugin/parsing/RunANTLROnGrammarFile.java @@ -6,6 +6,7 @@ import com.intellij.notification.NotificationType; import com.intellij.notification.Notifications; import com.intellij.openapi.application.ApplicationManager; +import com.intellij.openapi.application.ReadAction; import com.intellij.openapi.diagnostic.Logger; import com.intellij.openapi.progress.ProgressIndicator; import com.intellij.openapi.progress.Task; @@ -75,7 +76,7 @@ public void run(@NotNull ProgressIndicator indicator) { ANTLRv4GrammarProperties grammarProperties = getGrammarProperties(project, grammarFile); boolean autogen = grammarProperties.shouldAutoGenerateParser(); if ( forceGeneration || (autogen && isGrammarStale(grammarProperties)) ) { - antlr(grammarFile); + ReadAction.run(() -> antlr(grammarFile)); } else { ANTLRv4PluginController controller = ANTLRv4PluginController.getInstance(project);