From 672c5880ea32e78b8d04a0b5132ba3aeb299b278 Mon Sep 17 00:00:00 2001 From: mkoch Date: Mon, 18 Oct 2004 14:05:04 +0000 Subject: 2004-10-18 Jeroen Frijters * java/util/logging/LogManager.java (findAncestor): Fixed IndexOutOfBoundsException. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@89220 138bc75d-0d04-0410-961f-82ee72b054a4 --- libjava/java/util/logging/LogManager.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'libjava/java') diff --git a/libjava/java/util/logging/LogManager.java b/libjava/java/util/logging/LogManager.java index 24757089410..c77e086b564 100644 --- a/libjava/java/util/logging/LogManager.java +++ b/libjava/java/util/logging/LogManager.java @@ -351,6 +351,7 @@ public class LogManager private synchronized Logger findAncestor(Logger child) { String childName = child.getName(); + int childNameLength = childName.length(); Logger best = rootLogger; int bestNameLength = 0; @@ -366,9 +367,10 @@ public class LogManager candName = (String) iter.next(); candNameLength = candName.length(); - if ((candNameLength > bestNameLength) + if (candNameLength > bestNameLength + && childNameLength > candNameLength && childName.startsWith(candName) - && (childName.charAt(candNameLength) == '.')) + && childName.charAt(candNameLength) == '.') { cand = (Logger) ((WeakReference) loggers.get(candName)).get(); if ((cand == null) || (cand == child)) -- cgit v1.2.3