You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by sh...@apache.org on 2011/01/25 14:31:42 UTC

svn commit: r1063271 - in /lucene/dev/branches/branch_3x/lucene/src: java/org/apache/lucene/search/function/OrdFieldSource.java java/org/apache/lucene/search/function/ReverseOrdFieldSource.java test/org/apache/lucene/search/function/TestOrdValues.java

Author: shaie
Date: Tue Jan 25 13:31:42 2011
New Revision: 1063271

URL: http://svn.apache.org/viewvc?rev=1063271&view=rev
Log:
LUCENE-1250: fix equals() to check for null and not fail on NPE (3x)

Modified:
    lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/search/function/OrdFieldSource.java
    lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/search/function/ReverseOrdFieldSource.java
    lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/function/TestOrdValues.java

Modified: lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/search/function/OrdFieldSource.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/search/function/OrdFieldSource.java?rev=1063271&r1=1063270&r2=1063271&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/search/function/OrdFieldSource.java (original)
+++ lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/search/function/OrdFieldSource.java Tue Jan 25 13:31:42 2011
@@ -98,7 +98,9 @@ public class OrdFieldSource extends Valu
   /*(non-Javadoc) @see java.lang.Object#equals(java.lang.Object) */
   @Override
   public boolean equals(Object o) {
-    if (o.getClass() !=  OrdFieldSource.class) return false;
+    if (o == this) return true;
+    if (o == null) return false;
+    if (o.getClass() != OrdFieldSource.class) return false;
     OrdFieldSource other = (OrdFieldSource)o;
     return this.field.equals(other.field);
   }

Modified: lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/search/function/ReverseOrdFieldSource.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/search/function/ReverseOrdFieldSource.java?rev=1063271&r1=1063270&r2=1063271&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/search/function/ReverseOrdFieldSource.java (original)
+++ lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/search/function/ReverseOrdFieldSource.java Tue Jan 25 13:31:42 2011
@@ -108,7 +108,9 @@ public class ReverseOrdFieldSource exten
   /*(non-Javadoc) @see java.lang.Object#equals(java.lang.Object) */
   @Override
   public boolean equals(Object o) {
-    if (o.getClass() !=  ReverseOrdFieldSource.class) return false;
+    if (o == this) return true;
+    if (o == null) return false;
+    if (o.getClass() != ReverseOrdFieldSource.class) return false;
     ReverseOrdFieldSource other = (ReverseOrdFieldSource)o;
     return this.field.equals(other.field); 
   }

Modified: lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/function/TestOrdValues.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/function/TestOrdValues.java?rev=1063271&r1=1063270&r2=1063271&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/function/TestOrdValues.java (original)
+++ lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/function/TestOrdValues.java Tue Jan 25 13:31:42 2011
@@ -253,4 +253,13 @@ public class TestOrdValues extends Funct
     return getClass().getName() + "." + getName();
   }
 
+  // LUCENE-1250
+  public void testEqualsNull() throws Exception {
+    OrdFieldSource ofs = new OrdFieldSource("f");
+    assertFalse(ofs.equals(null));
+    
+    ReverseOrdFieldSource rofs = new ReverseOrdFieldSource("f");
+    assertFalse(rofs.equals(null));
+  }
+  
 }