Bug 263949 NPE in FeatureContentProvider when IO Exception occurs
diff --git a/update/org.eclipse.update.core/src/org/eclipse/update/core/FeatureContentProvider.java b/update/org.eclipse.update.core/src/org/eclipse/update/core/FeatureContentProvider.java
index b24f51f..568ccd2 100644
--- a/update/org.eclipse.update.core/src/org/eclipse/update/core/FeatureContentProvider.java
+++ b/update/org.eclipse.update.core/src/org/eclipse/update/core/FeatureContentProvider.java
@@ -290,7 +290,7 @@
 						// preserve partially downloaded file
 						UpdateManagerUtils.mapLocalFileFragment(key, new FileFragment(localFile, bytesCopied));
 					}
-					if (monitor.isCanceled()) {
+					if (monitor != null && monitor.isCanceled()) {
 						String msg = Messages.Feature_InstallationCancelled;
 						throw new InstallAbortedException(msg, null);
 					} else {
diff --git a/update/org.eclipse.update.core/src/org/eclipse/update/core/Utilities.java b/update/org.eclipse.update.core/src/org/eclipse/update/core/Utilities.java
index 6c834bf..a436c2e 100644
--- a/update/org.eclipse.update.core/src/org/eclipse/update/core/Utilities.java
+++ b/update/org.eclipse.update.core/src/org/eclipse/update/core/Utilities.java
@@ -171,7 +171,7 @@
 	public static void copy(InputStream is, OutputStream os, InstallMonitor monitor) throws IOException, InstallAbortedException {
 		long offset = UpdateManagerUtils.copy(is, os, monitor, 0);
 		if (offset != -1) {
-			if (monitor.isCanceled()) {
+			if (monitor != null && monitor.isCanceled()) {
 				String msg = Messages.Feature_InstallationCancelled; 
 				throw new InstallAbortedException(msg, null);
 			} else {