Author: musachy
Date: Mon Aug 10 21:57:37 2009
New Revision: 802937

URL: http://svn.apache.org/viewvc?rev=802937&view=rev
Log:
WW-3166 Prevent NPE when there is a null element in an array

thanks to Zoran Avtarovski for the patch

Modified:
    
struts/struts2/trunk/core/src/main/java/org/apache/struts2/util/ContainUtil.java
    
struts/struts2/trunk/core/src/test/java/org/apache/struts2/util/ContainUtilTest.java

Modified: 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/util/ContainUtil.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/util/ContainUtil.java?rev=802937&r1=802936&r2=802937&view=diff
==============================================================================
--- 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/util/ContainUtil.java
 (original)
+++ 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/util/ContainUtil.java
 Mon Aug 10 21:57:37 2009
@@ -93,7 +93,7 @@
                 Object value = null;
                 value = Array.get(obj1, i);
 
-                if (value.equals(obj2)) {
+                if (obj2.equals(value)) {
                     //log.debug("obj1 is an array and contains obj2");
                     return true;
                 }

Modified: 
struts/struts2/trunk/core/src/test/java/org/apache/struts2/util/ContainUtilTest.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/test/java/org/apache/struts2/util/ContainUtilTest.java?rev=802937&r1=802936&r2=802937&view=diff
==============================================================================
--- 
struts/struts2/trunk/core/src/test/java/org/apache/struts2/util/ContainUtilTest.java
 (original)
+++ 
struts/struts2/trunk/core/src/test/java/org/apache/struts2/util/ContainUtilTest.java
 Mon Aug 10 21:57:37 2009
@@ -42,6 +42,10 @@
         assertFalse(ContainUtil.contains(null, new Object()));
     }
 
+    public void testNullInAray()throws Exception {
+        assertTrue(ContainUtil.contains(new String[] {"a", null, "b"}, "b"));
+    }
+
     public void testSimpleList() throws Exception {
         List<String> l = new ArrayList<String>();
         l.add("one");


Reply via email to