GP-5577 avoid indexing large projects

This commit is contained in:
dev747368 2025-04-09 18:04:30 +00:00
parent 2c5669dbd0
commit 96e0532f8d
2 changed files with 6 additions and 5 deletions

View file

@ -20,6 +20,7 @@ import java.util.*;
import java.util.function.BiFunction;
import ghidra.formats.gfilesystem.FSRL;
import ghidra.framework.main.datatable.ProjectDataTablePanel;
import ghidra.framework.model.*;
import ghidra.util.Swing;
import ghidra.util.task.TaskMonitor;
@ -119,7 +120,7 @@ public class ProjectIndexService implements DomainFolderChangeListener {
private void indexProject(ProjectData projectData, TaskMonitor monitor) {
int fileCount = projectData.getFileCount();
if (fileCount < 0) {
if (fileCount < 0 || fileCount > ProjectDataTablePanel.MAX_FILE_COUNT) {
return;
}
monitor.initialize(fileCount, "Indexing Project Metadata");

View file

@ -45,7 +45,7 @@ public class ProjectDataTablePanel extends JPanel {
private static final String MAX_FILE_COUNT_PROPERTY = "ProjectDataTable.maxFileCount";
private static final int MAX_FILE_COUNT_DEFAULT = 2000;
private static int maxFileCount = loadMaxFileCount();
public static final int MAX_FILE_COUNT = loadMaxFileCount();
private FrontEndPlugin plugin;
private PluginTool tool;
@ -190,7 +190,7 @@ public class ProjectDataTablePanel extends JPanel {
int fileCount = projectData.getFileCount();
if (fileCount < 0 || fileCount > maxFileCount) {
if (fileCount < 0 || fileCount > MAX_FILE_COUNT) {
capacityExceeded = true;
this.projectData.removeDomainFolderChangeListener(changeListener);
model.setProjectData(null);