You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@vxquery.apache.org by pr...@apache.org on 2012/08/21 02:31:04 UTC

svn commit: r1375345 - /incubator/vxquery/trunk/vxquery/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnCompareEvaluatorFactory.java

Author: prestonc
Date: Tue Aug 21 00:31:04 2012
New Revision: 1375345

URL: http://svn.apache.org/viewvc?rev=1375345&view=rev
Log:
Limit compare results to -1, 0, 1 instead of a full integer value.

Modified:
    incubator/vxquery/trunk/vxquery/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnCompareEvaluatorFactory.java

Modified: incubator/vxquery/trunk/vxquery/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnCompareEvaluatorFactory.java
URL: http://svn.apache.org/viewvc/incubator/vxquery/trunk/vxquery/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnCompareEvaluatorFactory.java?rev=1375345&r1=1375344&r2=1375345&view=diff
==============================================================================
--- incubator/vxquery/trunk/vxquery/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnCompareEvaluatorFactory.java (original)
+++ incubator/vxquery/trunk/vxquery/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnCompareEvaluatorFactory.java Tue Aug 21 00:31:04 2012
@@ -57,7 +57,8 @@ public class FnCompareEvaluatorFactory e
                 // TODO use the third value as collation
 
                 integerResult[0] = ValueTag.XS_INTEGER_TAG;
-                LongPointable.setLong(integerResult, 1, (long) stringp1.compareTo(stringp2));
+                long compareTo = (stringp1.compareTo(stringp2) == 0 ? 0 : (stringp1.compareTo(stringp2) > 0 ? 1 : -1));
+                LongPointable.setLong(integerResult, 1, compareTo);
                 result.set(integerResult, 0, LongPointable.TYPE_TRAITS.getFixedLength() + 1);
             }
         };