FELIX-4928 Singleton getService() sometimes incorrectly returns null

This commit fixes the issue. The holder.m_service assignment was originally put there to avoid memory leakes, but as the holder is dereferenced anyway there is no risk of that here.


git-svn-id: https://svn.apache.org/repos/asf/felix/trunk@1685519 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/framework/pom.xml b/framework/pom.xml
index fe73c46..027401c 100644
--- a/framework/pom.xml
+++ b/framework/pom.xml
@@ -135,7 +135,7 @@
     <dependency>
        <groupId>org.apache.felix</groupId>
        <artifactId>org.apache.felix.resolver</artifactId>
-       <version>1.4.0</version>
+       <version>1.6.0-SNAPSHOT</version>
        <scope>provided</scope>
     </dependency>
     <dependency>
diff --git a/framework/src/main/java/org/apache/felix/framework/ServiceRegistry.java b/framework/src/main/java/org/apache/felix/framework/ServiceRegistry.java
index dd7d4d0..6702cb8 100644
--- a/framework/src/main/java/org/apache/felix/framework/ServiceRegistry.java
+++ b/framework/src/main/java/org/apache/felix/framework/ServiceRegistry.java
@@ -426,8 +426,6 @@
                     {
                         if (usage.m_svcHolderRef.compareAndSet(holder, null))
                         {
-                            holder.m_service = null;
-
                             // Remove reference from usages array.
                             ((ServiceRegistrationImpl.ServiceReferenceImpl) ref)
                                 .getRegistration().ungetService(bundle, svc);
diff --git a/main/pom.xml b/main/pom.xml
index 91f1b9b..31405db 100644
--- a/main/pom.xml
+++ b/main/pom.xml
@@ -37,7 +37,7 @@
     <dependency>
       <groupId>${project.groupId}</groupId>
       <artifactId>org.apache.felix.framework</artifactId>
-      <version>5.0.1</version>
+      <version>${project.version}</version>
     </dependency>
   </dependencies>
   <properties>