Author: etnu
Date: Tue Jan 27 09:45:09 2009
New Revision: 738043

URL: http://svn.apache.org/viewvc?rev=738043&view=rev
Log:
Fixed potential NPE when accessing an invalid container.


Modified:
    
incubator/shindig/trunk/java/common/src/main/java/org/apache/shindig/config/JsonContainerConfig.java
    
incubator/shindig/trunk/java/common/src/test/java/org/apache/shindig/config/JsonContainerConfigTest.java

Modified: 
incubator/shindig/trunk/java/common/src/main/java/org/apache/shindig/config/JsonContainerConfig.java
URL: 
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/common/src/main/java/org/apache/shindig/config/JsonContainerConfig.java?rev=738043&r1=738042&r2=738043&view=diff
==============================================================================
--- 
incubator/shindig/trunk/java/common/src/main/java/org/apache/shindig/config/JsonContainerConfig.java
 (original)
+++ 
incubator/shindig/trunk/java/common/src/main/java/org/apache/shindig/config/JsonContainerConfig.java
 Tue Jan 27 09:45:09 2009
@@ -100,7 +100,12 @@
         return null;
       }
     }
-    return config.get(container).get(property);
+
+    Map<String, Object> containerData = config.get(container);
+    if (containerData == null) {
+      return null;
+    }
+    return containerData.get(property);
   }
 
   /**

Modified: 
incubator/shindig/trunk/java/common/src/test/java/org/apache/shindig/config/JsonContainerConfigTest.java
URL: 
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/common/src/test/java/org/apache/shindig/config/JsonContainerConfigTest.java?rev=738043&r1=738042&r2=738043&view=diff
==============================================================================
--- 
incubator/shindig/trunk/java/common/src/test/java/org/apache/shindig/config/JsonContainerConfigTest.java
 (original)
+++ 
incubator/shindig/trunk/java/common/src/test/java/org/apache/shindig/config/JsonContainerConfigTest.java
 Tue Jan 27 09:45:09 2009
@@ -23,10 +23,7 @@
 import static org.apache.shindig.config.JsonContainerConfig.CONTAINER_KEY;
 import static org.apache.shindig.config.JsonContainerConfig.PARENT_KEY;
 import static org.junit.Assert.assertEquals;
-
-import org.apache.shindig.config.ContainerConfig;
-import org.apache.shindig.config.ContainerConfigException;
-import org.apache.shindig.config.JsonContainerConfig;
+import static org.junit.Assert.assertNull;
 
 import org.json.JSONObject;
 import org.junit.Test;
@@ -155,6 +152,12 @@
     assertEquals(expected, actual);
   }
 
+  @Test
+  public void invalidContainerReturnsNull() throws Exception {
+    ContainerConfig config = new 
JsonContainerConfig(createDefaultContainer().getAbsolutePath());
+    assertNull("Did not return null for invalid container.", 
config.getString("fake", PARENT_KEY));
+  }
+
   @Test(expected = ContainerConfigException.class)
   public void badConfigThrows() throws Exception {
     JSONObject json = new JSONObject();


Reply via email to