*** empty log message ***
diff --git a/update/org.eclipse.update.core/src/org/eclipse/update/core/Feature.java b/update/org.eclipse.update.core/src/org/eclipse/update/core/Feature.java
index 3a86b4a..0759d64 100644
--- a/update/org.eclipse.update.core/src/org/eclipse/update/core/Feature.java
+++ b/update/org.eclipse.update.core/src/org/eclipse/update/core/Feature.java
@@ -276,10 +276,13 @@
 			// Download and verify feature archive(s)

 			ContentReference[] references =

 				provider.getFeatureEntryArchiveReferences(monitor);

+			IVerificationResult vr;

 			if (verifier != null) {

-				promptForVerification(

-					verifier.verify(this, references, monitor),

-					verificationListener);

+				for (int i = 0; i < references.length; i++) {

+					vr = verifier.verify(this, references[i], monitor);

+					if (vr != null)

+						promptForVerification(vr, verificationListener);

+				}

 			}

 			if (monitor != null)

 				monitor.worked(1);

@@ -289,9 +292,11 @@
 				references =

 					provider.getPluginEntryArchiveReferences(pluginsToInstall[i], monitor);

 				if (verifier != null) {

-					promptForVerification(

-						verifier.verify(this, references, monitor),

-						verificationListener);

+					for (int j = 0; j < references.length; j++) {

+						vr = verifier.verify(this, references[j], monitor);

+						if (vr != null)

+							promptForVerification(vr, verificationListener);

+					}

 				}

 				if (monitor != null)

 					monitor.worked(1);

@@ -343,27 +348,26 @@
 				if (monitor != null)

 					monitor.worked(1);

 			}

-			handler.completeInstall(consumer);

 			

-			// install handler processed any non-plugin entries

+			// call handler to complete installation (eg. handle non-plugin entries)

+			handler.completeInstall(consumer);

 			if (monitor != null)

 				monitor.worked(1);

-				

+

 			// indicate install success

-			success = true;			

-			

+			success = true;

+

 		} finally {

 			// ensure we always cleanup

 			if (consumer != null)

 				if (success) {

 					// successful install

 					result = consumer.close();

-					handler.installCompleted(true);					

-				}

-				else {

+					handler.installCompleted(true);

+				} else {

 					// unsuccessful install

 					consumer.abort();

-					handler.installCompleted(false);		

+					handler.installCompleted(false);

 				}

 			if (monitor != null)

 				monitor.done();

diff --git a/update/org.eclipse.update.core/src/org/eclipse/update/internal/core/DefaultInstallHandler.java b/update/org.eclipse.update.core/src/org/eclipse/update/internal/core/DefaultInstallHandler.java
index 3124d97..f56dd24 100644
--- a/update/org.eclipse.update.core/src/org/eclipse/update/internal/core/DefaultInstallHandler.java
+++ b/update/org.eclipse.update.core/src/org/eclipse/update/internal/core/DefaultInstallHandler.java
@@ -46,10 +46,12 @@
 		for (int i = 0; i < this.nonPluginEntries.length; i++) {
 			ContentReference[] archives =
 				provider.getNonPluginEntryArchiveReferences(nonPluginEntries[i], this.monitor);
-			IVerificationResult result =
-				verifier.verify(this.feature, archives, this.monitor);
-			if (result != null)
-				promptForVerification(result, listener);
+			IVerificationResult result;
+			for (int j = 0; j < archives.length; j++) {
+				result = verifier.verify(this.feature, archives[j], this.monitor);
+				if (result != null)
+					promptForVerification(result, listener);
+			}
 		}
 	}