diff --git a/Ghidra/Features/Base/src/main/java/ghidra/plugins/importer/batch/BatchImportDialog.java b/Ghidra/Features/Base/src/main/java/ghidra/plugins/importer/batch/BatchImportDialog.java index 1710da0e0d..6b3f70cb53 100644 --- a/Ghidra/Features/Base/src/main/java/ghidra/plugins/importer/batch/BatchImportDialog.java +++ b/Ghidra/Features/Base/src/main/java/ghidra/plugins/importer/batch/BatchImportDialog.java @@ -231,10 +231,15 @@ public class BatchImportDialog extends DialogComponentProvider { }); removeSourceButton.addActionListener(e -> { - int index = sourceList.getSelectedIndex(); - if (index >= 0 && index < batchInfo.getUserAddedSources().size()) { - UserAddedSourceInfo uasi = batchInfo.getUserAddedSources().get(index); - batchInfo.remove(uasi.getFSRL()); + List sourcesToRemove = new ArrayList<>(); + for (int index : sourceList.getSelectedIndices()) { + if (index >= 0 && index < batchInfo.getUserAddedSources().size()) { + UserAddedSourceInfo uasi = batchInfo.getUserAddedSources().get(index); + sourcesToRemove.add(uasi.getFSRL()); + } + } + for (FSRL fsrl : sourcesToRemove) { + batchInfo.remove(fsrl); } refreshData(); });