Author: csierra
Date: Thu Aug  9 15:35:05 2018
New Revision: 1837741

URL: http://svn.apache.org/viewvc?rev=1837741&view=rev
Log:
[Component-DSL] missing synchronized

Modified:
    
aries/trunk/component-dsl/component-dsl/src/main/java/org/apache/aries/component/dsl/internal/OnlyLastPublisher.java

Modified: 
aries/trunk/component-dsl/component-dsl/src/main/java/org/apache/aries/component/dsl/internal/OnlyLastPublisher.java
URL: 
http://svn.apache.org/viewvc/aries/trunk/component-dsl/component-dsl/src/main/java/org/apache/aries/component/dsl/internal/OnlyLastPublisher.java?rev=1837741&r1=1837740&r2=1837741&view=diff
==============================================================================
--- 
aries/trunk/component-dsl/component-dsl/src/main/java/org/apache/aries/component/dsl/internal/OnlyLastPublisher.java
 (original)
+++ 
aries/trunk/component-dsl/component-dsl/src/main/java/org/apache/aries/component/dsl/internal/OnlyLastPublisher.java
 Thu Aug  9 15:35:05 2018
@@ -59,10 +59,12 @@ public class OnlyLastPublisher<T> implem
             _counter.incrementAndGet();
 
             return () -> {
-                _terminator.run();
+                synchronized (this) {
+                    _terminator.run();
 
-                if (_counter.decrementAndGet() > 0) {
-                    _terminator = _op.publish(_injectOnLeave.get());
+                    if (_counter.decrementAndGet() > 0) {
+                        _terminator = _op.publish(_injectOnLeave.get());
+                    }
                 }
             };
         }


Reply via email to