Author: fmeschbe
Date: Thu Aug 28 07:03:47 2008
New Revision: 689826

URL: http://svn.apache.org/viewvc?rev=689826&view=rev
Log:
FELIX-108 Prevent NullPointerException if a locally installed bundle
does not have a Bundle-SymbolicName or version

Modified:
    
felix/trunk/bundlerepository/src/main/java/org/apache/felix/bundlerepository/ResourceImpl.java

Modified: 
felix/trunk/bundlerepository/src/main/java/org/apache/felix/bundlerepository/ResourceImpl.java
URL: 
http://svn.apache.org/viewvc/felix/trunk/bundlerepository/src/main/java/org/apache/felix/bundlerepository/ResourceImpl.java?rev=689826&r1=689825&r2=689826&view=diff
==============================================================================
--- 
felix/trunk/bundlerepository/src/main/java/org/apache/felix/bundlerepository/ResourceImpl.java
 (original)
+++ 
felix/trunk/bundlerepository/src/main/java/org/apache/felix/bundlerepository/ResourceImpl.java
 Thu Aug 28 07:03:47 2008
@@ -67,16 +67,24 @@
 
     public boolean equals(Object o)
     {
+        if (getSymbolicName() == null || getVersion() == null)
+        {
+            return this == o;
+        }
         if (o instanceof Resource)
         {
-            return ((Resource) o).getSymbolicName().equals(getSymbolicName())
-                && ((Resource) o).getVersion().equals(getVersion());
+            return getSymbolicName().equals(((Resource) o).getSymbolicName())
+                && getVersion().equals(((Resource) o).getVersion());
         }
         return false;
     }
 
     public int hashCode()
     {
+        if (getSymbolicName() == null || getVersion() == null)
+        {
+            return super.hashCode();
+        }
         return getSymbolicName().hashCode() ^ getVersion().hashCode();
     }
 


Reply via email to