Author: davidb
Date: Mon Jun 15 09:11:37 2015
New Revision: 1685519

URL: http://svn.apache.org/r1685519
Log:
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.

Modified:
    felix/trunk/framework/pom.xml
    
felix/trunk/framework/src/main/java/org/apache/felix/framework/ServiceRegistry.java
    felix/trunk/main/pom.xml

Modified: felix/trunk/framework/pom.xml
URL: 
http://svn.apache.org/viewvc/felix/trunk/framework/pom.xml?rev=1685519&r1=1685518&r2=1685519&view=diff
==============================================================================
--- felix/trunk/framework/pom.xml (original)
+++ felix/trunk/framework/pom.xml Mon Jun 15 09:11:37 2015
@@ -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>

Modified: 
felix/trunk/framework/src/main/java/org/apache/felix/framework/ServiceRegistry.java
URL: 
http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/apache/felix/framework/ServiceRegistry.java?rev=1685519&r1=1685518&r2=1685519&view=diff
==============================================================================
--- 
felix/trunk/framework/src/main/java/org/apache/felix/framework/ServiceRegistry.java
 (original)
+++ 
felix/trunk/framework/src/main/java/org/apache/felix/framework/ServiceRegistry.java
 Mon Jun 15 09:11:37 2015
@@ -426,8 +426,6 @@ public class ServiceRegistry
                     {
                         if (usage.m_svcHolderRef.compareAndSet(holder, null))
                         {
-                            holder.m_service = null;
-
                             // Remove reference from usages array.
                             ((ServiceRegistrationImpl.ServiceReferenceImpl) 
ref)
                                 .getRegistration().ungetService(bundle, svc);

Modified: felix/trunk/main/pom.xml
URL: 
http://svn.apache.org/viewvc/felix/trunk/main/pom.xml?rev=1685519&r1=1685518&r2=1685519&view=diff
==============================================================================
--- felix/trunk/main/pom.xml (original)
+++ felix/trunk/main/pom.xml Mon Jun 15 09:11:37 2015
@@ -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>


Reply via email to