You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openjpa.apache.org by mp...@apache.org on 2006/12/17 02:10:20 UTC

svn commit: r487926 - /incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/jpql/JPQLExpressionBuilder.java

Author: mprudhom
Date: Sat Dec 16 17:10:19 2006
New Revision: 487926

URL: http://svn.apache.org/viewvc?view=rev&rev=487926
Log:
Put in missing check for a NOT clause when short-circuiting an IN expression that has a single value.

Modified:
    incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/jpql/JPQLExpressionBuilder.java

Modified: incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/jpql/JPQLExpressionBuilder.java
URL: http://svn.apache.org/viewvc/incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/jpql/JPQLExpressionBuilder.java?view=diff&rev=487926&r1=487925&r2=487926
==============================================================================
--- incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/jpql/JPQLExpressionBuilder.java (original)
+++ incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/jpql/JPQLExpressionBuilder.java Sat Dec 16 17:10:19 2006
@@ -825,7 +825,7 @@
                     // special case for <value> IN (<subquery>) or
                     // <value> IN (<single value>)
                     if (!(val2 instanceof Literal) && node.getChildCount() == 2)
-                        return factory.contains(val2, val1); 
+                        return evalNot(not, factory.contains(val2, val1)); 
 
                     // this is currently a sequence of OR expressions, since we
                     // do not have support for IN expressions