diff --git a/build/org.eclipse.cdt.make.core/src/org/eclipse/cdt/make/internal/core/scannerconfig2/PerFileSICollector.java b/build/org.eclipse.cdt.make.core/src/org/eclipse/cdt/make/internal/core/scannerconfig2/PerFileSICollector.java index 5738f07ba3d..fa405a8022f 100644 --- a/build/org.eclipse.cdt.make.core/src/org/eclipse/cdt/make/internal/core/scannerconfig2/PerFileSICollector.java +++ b/build/org.eclipse.cdt.make.core/src/org/eclipse/cdt/make/internal/core/scannerconfig2/PerFileSICollector.java @@ -360,7 +360,9 @@ public class PerFileSICollector implements IScannerInfoCollector3, IScannerInfoC } else { Set oldFileSet = (Set) sid.commandIdToFilesMap.get(oldCommandId); - oldFileSet.remove(file); + if (oldFileSet != null) { + oldFileSet.remove(file); + } } } if (change) { @@ -498,7 +500,7 @@ public class PerFileSICollector implements IScannerInfoCollector3, IScannerInfoC for (Iterator i = sid.commandIdCommandMap.keySet().iterator(); i.hasNext(); ) { Integer cmdId = (Integer) i.next(); Set fileSet = (Set) sid.commandIdToFilesMap.get(cmdId); - if (!fileSet.isEmpty()) { + if (fileSet != null && !fileSet.isEmpty()) { rv.add(sid.commandIdCommandMap.get(cmdId)); } }