Author: gnodet
Date: Mon Mar 20 14:33:16 2017
New Revision: 1787781

URL: http://svn.apache.org/viewvc?rev=1787781&view=rev
Log:
[ARIES-1701] Possible NPE

Modified:
    
aries/trunk/blueprint/blueprint-cm/src/main/java/org/apache/aries/blueprint/compendium/cm/CmUtils.java

Modified: 
aries/trunk/blueprint/blueprint-cm/src/main/java/org/apache/aries/blueprint/compendium/cm/CmUtils.java
URL: 
http://svn.apache.org/viewvc/aries/trunk/blueprint/blueprint-cm/src/main/java/org/apache/aries/blueprint/compendium/cm/CmUtils.java?rev=1787781&r1=1787780&r2=1787781&view=diff
==============================================================================
--- 
aries/trunk/blueprint/blueprint-cm/src/main/java/org/apache/aries/blueprint/compendium/cm/CmUtils.java
 (original)
+++ 
aries/trunk/blueprint/blueprint-cm/src/main/java/org/apache/aries/blueprint/compendium/cm/CmUtils.java
 Mon Mar 20 14:33:16 2017
@@ -26,6 +26,7 @@ import java.util.Dictionary;
 import java.util.Enumeration;
 import java.util.Hashtable;
 
+import org.osgi.framework.Bundle;
 import org.osgi.framework.BundleContext;
 import org.osgi.framework.Constants;
 import org.osgi.framework.InvalidSyntaxException;
@@ -65,8 +66,17 @@ public class CmUtils  {
             Configuration config = getConfiguration(ca, persistentId);
             if (config != null) {
                 Dictionary<String, Object> props = new 
CaseInsensitiveDictionary(config.getProperties());
-                BundleContext caBc = caRef.getBundle().getBundleContext();
-                callPlugins(caBc, props, service, persistentId, null);
+                Bundle bundle = caRef.getBundle();
+                if (bundle != null) {
+                    BundleContext caBc = bundle.getBundleContext();
+                    if (caBc != null) {
+                        try {
+                            callPlugins(caBc, props, service, persistentId, 
null);
+                        } catch (IllegalStateException ise) {
+                            // we don't care it doesn't exist so, shrug.
+                        }
+                    }
+                }
                 return props;
             } else {
                 return null;


Reply via email to