From 70e67a5445d2c508e65f84beea1540653d71221a Mon Sep 17 00:00:00 2001 From: antelder Date: Wed, 30 Nov 2011 10:48:53 +0000 Subject: Work around for Java bug with map entry setValue git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@1208374 13f79535-47bb-0310-9956-ffa450edef68 --- .../java/org/apache/tuscany/sca/common/xml/dom/ParserPool.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'sca-java-2.x/trunk/modules/common-xml/src/main/java/org/apache/tuscany/sca') diff --git a/sca-java-2.x/trunk/modules/common-xml/src/main/java/org/apache/tuscany/sca/common/xml/dom/ParserPool.java b/sca-java-2.x/trunk/modules/common-xml/src/main/java/org/apache/tuscany/sca/common/xml/dom/ParserPool.java index 6c987b39d4..e8187d481d 100644 --- a/sca-java-2.x/trunk/modules/common-xml/src/main/java/org/apache/tuscany/sca/common/xml/dom/ParserPool.java +++ b/sca-java-2.x/trunk/modules/common-xml/src/main/java/org/apache/tuscany/sca/common/xml/dom/ParserPool.java @@ -43,8 +43,11 @@ public abstract class ParserPool { while (true) { for (Map.Entry e : objects.entrySet()) { if (Boolean.FALSE.equals(e.getValue())) { - e.setValue(Boolean.TRUE); // in use - return e.getKey(); + // setValue fails on some Harmony based JDKs, see https://issues.apache.org/jira/browse/HARMONY-6419 + //e.setValue(Boolean.TRUE); // in use + V key = e.getKey(); + objects.put(key, Boolean.TRUE); // in use + return key; } } if (objects.size() < maxSize) { -- cgit v1.2.3