Bug 500873 - [DS] NPE on configuration delete causes performance

Do the null check

Change-Id: Id1d1caa5adb4bfd2e2b5136570ee45e251900f7d
Signed-off-by: Jens Kübler <kuebler@aquintos.com>
diff --git a/bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/SCRManager.java b/bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/SCRManager.java
index a6aa146..1536f53 100644
--- a/bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/SCRManager.java
+++ b/bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/SCRManager.java
@@ -438,12 +438,15 @@
 						sc.setState(Component.STATE_UNSATISFIED);
 						resolver.enableComponents(components);
 					} else {
-						// we can just dispose this SCP
-						sc.componentProps.removeElement(scp);
-						Vector components = new Vector();
-						components.addElement(scp);
-						resolver.disposeComponentConfigs(components, ComponentConstants.DEACTIVATION_REASON_CONFIGURATION_DELETED);
-						scp.setState(Component.STATE_DISPOSED);
+						// in case it has ever been constructed
+						if (scp != null) {
+							// we can just dispose this SCP
+							sc.componentProps.removeElement(scp);
+							Vector components = new Vector();
+							components.addElement(scp);
+							resolver.disposeComponentConfigs(components, ComponentConstants.DEACTIVATION_REASON_CONFIGURATION_DELETED);
+							scp.setState(Component.STATE_DISPOSED);
+						}
 					}
 				}
 				break;