Skip to content

Commit b73c3ae

Browse files
authored
Only run the formatter on trusted projects (palantir#1681)
Only run the formatter on trusted projects
1 parent f043c29 commit b73c3ae

1 file changed

Lines changed: 8 additions & 0 deletions

File tree

‎idea-plugin/src/main/java/com/palantir/javaformat/intellij/PalantirJavaFormatFormattingService.java‎

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
import com.intellij.formatting.service.AsyncDocumentFormattingService;
2424
import com.intellij.formatting.service.AsyncFormattingRequest;
2525
import com.intellij.ide.highlighter.JavaFileType;
26+
import com.intellij.ide.impl.TrustedProjects;
2627
import com.intellij.openapi.diagnostic.Logger;
2728
import com.intellij.openapi.project.Project;
2829
import com.intellij.openapi.util.NlsSafe;
@@ -45,6 +46,13 @@ class PalantirJavaFormatFormattingService extends AsyncDocumentFormattingService
4546
@Override
4647
protected FormattingTask createFormattingTask(@NotNull AsyncFormattingRequest request) {
4748
Project project = request.getContext().getProject();
49+
if (!TrustedProjects.isTrusted(project)) {
50+
logger.warn("palantir-java-format: skipping formatting for untrusted project: " + project.getName());
51+
request.onError(
52+
Notifications.GENERIC_ERROR_NOTIFICATION_GROUP,
53+
"palantir-java-format requires a trusted project to load the external formatter classpath.");
54+
return null;
55+
}
4856
PalantirJavaFormatSettings settings = PalantirJavaFormatSettings.getInstance(project);
4957
Optional<FormatterService> formatter = formatterProvider.get(project, settings);
5058
return new PalantirJavaFormatFormattingTask(request, formatter);

0 commit comments

Comments
 (0)