FELIX-3902 fix SingleDynamic config change problem
git-svn-id: https://svn.apache.org/repos/asf/felix/trunk@1446433 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/scr/changelog.txt b/scr/changelog.txt
index b99e774..4e957a8 100644
--- a/scr/changelog.txt
+++ b/scr/changelog.txt
@@ -16,6 +16,7 @@
* [FELIX-3888] - [DS] Expose the insides of ScrCommand as a service directly and enhance it
* [FELIX-3890] - [DS] We might try to unbind a service we couldn't get and didn't bind
* [FELIX-3891] - [DS] synchronization around registerService can create deadlocks
+ * [FELIX-3902] - [DS] Single dynamic mandatory reference problem on target filter update
Changes from 1.6.0 to 1.6.2
---------------------------
diff --git a/scr/src/main/java/org/apache/felix/scr/impl/manager/DependencyManager.java b/scr/src/main/java/org/apache/felix/scr/impl/manager/DependencyManager.java
index 01cc286..d17a04d 100644
--- a/scr/src/main/java/org/apache/felix/scr/impl/manager/DependencyManager.java
+++ b/scr/src/main/java/org/apache/felix/scr/impl/manager/DependencyManager.java
@@ -626,7 +626,7 @@
public void addedService( ServiceReference<T> serviceReference, RefPair<T> refPair, int trackingCount )
{
boolean tracked = false;
- if ( getPreviousRefMap().get( serviceReference ) == null )
+ if ( getPreviousRefMap().remove( serviceReference ) == null )
{
if (isActive() )
{