Bug 513255 - NPE in MonitorManager.unmonitorLinkedContents

Change-Id: I50ff2d952facea7e93d5725fdaea50072d687602
Signed-off-by: Andrey Loskutov <loskutov@gmx.de>
diff --git a/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/refresh/MonitorManager.java b/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/refresh/MonitorManager.java
index 651e39e..1f6882d 100644
--- a/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/refresh/MonitorManager.java
+++ b/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/refresh/MonitorManager.java
@@ -345,11 +345,15 @@
 		} catch (CoreException e) {
 			Policy.log(IStatus.WARNING, Messages.refresh_refreshErr, e);
 		}
-		SubMonitor subMonitor = SubMonitor.convert(progressMonitor, children.length);
-		if (children != null && children.length > 0)
-			for (int i = 0; i < children.length; i++)
-				if (children[i].isLinked())
+
+		if (children != null && children.length > 0) {
+			SubMonitor subMonitor = SubMonitor.convert(progressMonitor, children.length);
+			for (int i = 0; i < children.length; i++) {
+				if (children[i].isLinked()) {
 					unmonitor(children[i], subMonitor.split(1));
+				}
+			}
+		}
 	}
 
 	@Override