Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEike Stepper2011-11-17 06:26:13 +0000
committerEike Stepper2011-11-17 06:26:13 +0000
commitb77bac6afcc8951ee3e180c647d265f22507037b (patch)
tree341f3fd2d828e224c241cf1807517e38c4f04aca
parentc433181bbca17c7c39bb61d58f1f900b3490df0a (diff)
downloadcdo-b77bac6afcc8951ee3e180c647d265f22507037b.tar.gz
cdo-b77bac6afcc8951ee3e180c647d265f22507037b.tar.xz
cdo-b77bac6afcc8951ee3e180c647d265f22507037b.zip
[364000] Deadlock in ManagedContainer
https://bugs.eclipse.org/bugs/show_bug.cgi?id=364000
-rw-r--r--plugins/org.eclipse.net4j.util/src/org/eclipse/net4j/util/container/ManagedContainer.java20
1 files changed, 11 insertions, 9 deletions
diff --git a/plugins/org.eclipse.net4j.util/src/org/eclipse/net4j/util/container/ManagedContainer.java b/plugins/org.eclipse.net4j.util/src/org/eclipse/net4j/util/container/ManagedContainer.java
index fa13fa4882..1ae7ef4e99 100644
--- a/plugins/org.eclipse.net4j.util/src/org/eclipse/net4j/util/container/ManagedContainer.java
+++ b/plugins/org.eclipse.net4j.util/src/org/eclipse/net4j/util/container/ManagedContainer.java
@@ -276,17 +276,19 @@ public class ManagedContainer extends Lifecycle implements IManagedContainer
synchronized (elementRegistry)
{
element = elementRegistry.get(key);
- if (element == null)
- {
- element = createElement(productGroup, factoryType, description);
- element = postProcessElement(productGroup, factoryType, description, element);
- if (activate)
- {
- LifecycleUtil.activate(element);
- }
+ }
- putElement(key, element);
+ if (element == null)
+ {
+ element = createElement(productGroup, factoryType, description);
+ element = postProcessElement(productGroup, factoryType, description, element);
+
+ if (activate)
+ {
+ LifecycleUtil.activate(element);
}
+
+ putElement(key, element);
}
return element;

Back to the top