modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/configuration/util/ConfigurationMaskingUtility.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-)
New commits: commit 1307c8ddd76d5567fe7914c5b359dc8ad354cb67 Author: Ian Springer ian.springer@redhat.com Date: Mon Aug 1 11:39:38 2011 -0400
[BZ 717921] fix potential IndexOutOfBoundsException in unmaskProperty() (https://bugzilla.redhat.com/show_bug.cgi?id=717921)
diff --git a/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/configuration/util/ConfigurationMaskingUtility.java b/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/configuration/util/ConfigurationMaskingUtility.java index 2059064..0884fbb 100644 --- a/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/configuration/util/ConfigurationMaskingUtility.java +++ b/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/configuration/util/ConfigurationMaskingUtility.java @@ -157,10 +157,11 @@ public class ConfigurationMaskingUtility { // properties. if (!memberProperties.isEmpty() && memberProperties.get(0) instanceof PropertyMap) { PropertyList unmaskedPropertyList = unmaskedParentPropertyMap.getList(propertyList.getName()); - if (unmaskedPropertyList!=null) { - for (int i = 0; i < propertyList.getList().size(); i++) { + if (unmaskedPropertyList != null) { + List<Property> unmaskedMemberProperties = unmaskedPropertyList.getList(); + for (int i = 0; (i < memberProperties.size()) && (i < unmaskedMemberProperties.size()); i++) { PropertyMap propertyMap = (PropertyMap) memberProperties.get(i); - PropertyMap unmaskedPropertyMap = (PropertyMap) unmaskedPropertyList.getList().get(i); + PropertyMap unmaskedPropertyMap = (PropertyMap) unmaskedMemberProperties.get(i); unmaskPropertyMap(propertyMap, unmaskedPropertyMap); } }