You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@felix.apache.org by ri...@apache.org on 2010/05/26 21:22:26 UTC

svn commit: r948545 - /felix/trunk/framework/src/main/java/org/apache/felix/framework/capabilityset/CapabilitySet.java

Author: rickhall
Date: Wed May 26 19:22:26 2010
New Revision: 948545

URL: http://svn.apache.org/viewvc?rev=948545&view=rev
Log:
To pass the OSGi CT we must let an exception bubble up. (FELIX-2039)

Modified:
    felix/trunk/framework/src/main/java/org/apache/felix/framework/capabilityset/CapabilitySet.java

Modified: felix/trunk/framework/src/main/java/org/apache/felix/framework/capabilityset/CapabilitySet.java
URL: http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/apache/felix/framework/capabilityset/CapabilitySet.java?rev=948545&r1=948544&r2=948545&view=diff
==============================================================================
--- felix/trunk/framework/src/main/java/org/apache/felix/framework/capabilityset/CapabilitySet.java (original)
+++ felix/trunk/framework/src/main/java/org/apache/felix/framework/capabilityset/CapabilitySet.java Wed May 26 19:22:26 2010
@@ -438,14 +438,27 @@ public class CapabilitySet
 
         // Since we cannot identify the LHS type, then we can only perform
         // equality comparison.
+// TODO: COMPLIANCE - This should be changed to return false in case
+//       of an exception, but the R4.2 CT has a mistake in it, so for
+//       now we'll throw exceptions from equals().
+//        try
+//        {
+//            return lhs.equals(coerceType(lhs, (String) rhsUnknown));
+//        }
+//        catch (Exception ex)
+//        {
+//            return false;
+//        }
+        Object rhsObj = null;
         try
         {
-            return lhs.equals(coerceType(lhs, (String) rhsUnknown));
+            rhsObj = coerceType(lhs, (String) rhsUnknown);
         }
         catch (Exception ex)
         {
             return false;
         }
+        return lhs.equals(rhsObj);
     }
 
     private static boolean compareApproximate(Object lhs, Object rhs)