Bug 406814 - NPE in FileSystemResourceManager
Check if the RefreshManager is null: it can be already cleaned up on
shutdown.
Change-Id: Idd31c38c6e2b535e32c84edfed334a859192da58
Signed-off-by: Andrey Loskutov <loskutov@gmx.de>
diff --git a/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/localstore/FileSystemResourceManager.java b/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/localstore/FileSystemResourceManager.java
index efbf1c2..3c3cc74 100644
--- a/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/localstore/FileSystemResourceManager.java
+++ b/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/localstore/FileSystemResourceManager.java
@@ -21,6 +21,7 @@
import java.util.*;
import org.eclipse.core.filesystem.*;
import org.eclipse.core.filesystem.URIUtil;
+import org.eclipse.core.internal.refresh.RefreshManager;
import org.eclipse.core.internal.resources.*;
import org.eclipse.core.internal.resources.File;
import org.eclipse.core.internal.utils.*;
@@ -138,8 +139,13 @@
* @param target
*/
private void asyncRefresh(IResource target) {
- if (lightweightAutoRefreshEnabled)
- workspace.getRefreshManager().refresh(target);
+ if (lightweightAutoRefreshEnabled) {
+ RefreshManager refreshManager = workspace.getRefreshManager();
+ // refreshManager can be null during shutdown
+ if (refreshManager != null) {
+ refreshManager.refresh(target);
+ }
+ }
}
private void findLinkedResourcesPaths(URI inputLocation, final ArrayList<IPath> results) throws CoreException {