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>