diff --git a/src/main/java/org/dom4j/tree/QNameCache.java b/src/main/java/org/dom4j/tree/QNameCache.java index d37e8aaa..ee856c3a 100644 --- a/src/main/java/org/dom4j/tree/QNameCache.java +++ b/src/main/java/org/dom4j/tree/QNameCache.java @@ -52,11 +52,15 @@ public QNameCache(DocumentFactory documentFactory) { */ public List getQNames() { List answer = new ArrayList(); - answer.addAll(noNamespaceCache.values()); + synchronized(noNamespaceCache) { + answer.addAll(noNamespaceCache.values()); + } - for (Map map : namespaceCache.values()) { - answer.addAll(map.values()); - } + synchronized(namespaceCache) { + for (Map map : namespaceCache.values()) { + answer.addAll(map.values()); + } + } return answer; } @@ -297,4 +301,4 @@ protected QName createQName(String name, Namespace namespace, * POSSIBILITY OF SUCH DAMAGE. * * Copyright 2001-2005 (C) MetaStuff, Ltd. All Rights Reserved. - */ \ No newline at end of file + */