From 3798853881b55905031f85225e40925918143a11 Mon Sep 17 00:00:00 2001 From: Tom Tromey Date: Fri, 30 Mar 2007 04:34:58 +0000 Subject: libjava PR libgcj/29869: * java/util/logging/LogManager.java (readConfiguration): Handle comma-separated 'handlers'. Don't try to add a non-existing handler. libgcj/classpath PR libgcj/29869: * gnu/java/util/jar/JarUtils.java (log): Commented out. (readSFManifest): Don't log. git-svn-id: https://gcc.gnu.org/svn/gcc/branches/redhat/gcc-4_1-branch@123357 138bc75d-0d04-0410-961f-82ee72b054a4 --- libjava/ChangeLog | 7 +++++++ libjava/classpath/ChangeLog | 6 ++++++ libjava/classpath/gnu/java/util/jar/JarUtils.java | 14 +++++++++----- libjava/java/util/logging/LogManager.java | 12 ++++++++++-- 4 files changed, 32 insertions(+), 7 deletions(-) diff --git a/libjava/ChangeLog b/libjava/ChangeLog index 0cde783951d..059dff0e1cb 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,3 +1,10 @@ +2007-03-29 Tom Tromey + + PR libgcj/29869: + * java/util/logging/LogManager.java (readConfiguration): Handle + comma-separated 'handlers'. Don't try to add a non-existing + handler. + 2007-03-07 Alexandre Oliva * include/jvm.h (_Jv_ClosureListFinalizer): New. diff --git a/libjava/classpath/ChangeLog b/libjava/classpath/ChangeLog index c75e0178640..5a136cc29b7 100644 --- a/libjava/classpath/ChangeLog +++ b/libjava/classpath/ChangeLog @@ -1,3 +1,9 @@ +2007-03-29 Tom Tromey + + PR libgcj/29869: + * gnu/java/util/jar/JarUtils.java (log): Commented out. + (readSFManifest): Don't log. + 2007-03-28 Casey Marshall * gnu/javax/net/ssl/provider/ClientHandshake.java (RSAGen.implRun): diff --git a/libjava/classpath/gnu/java/util/jar/JarUtils.java b/libjava/classpath/gnu/java/util/jar/JarUtils.java index c35daec55ef..9debf647b66 100644 --- a/libjava/classpath/gnu/java/util/jar/JarUtils.java +++ b/libjava/classpath/gnu/java/util/jar/JarUtils.java @@ -1,5 +1,5 @@ /* JarUtils.java -- Utility methods for reading/writing Manifest[-like] files - Copyright (C) 2006 Free Software Foundation, Inc. + Copyright (C) 2006, 2007 Free Software Foundation, Inc. This file is part of GNU Classpath. @@ -62,7 +62,10 @@ import java.util.logging.Logger; */ public abstract class JarUtils { - private static final Logger log = Logger.getLogger(JarUtils.class.getName()); + // We used to log here, but this causes problems during bootstrap, + // and it didn't seem worthwhile to preserve this. Still, this + // might be useful for debugging. + // private static final Logger log = Logger.getLogger(JarUtils.class.getName()); public static final String META_INF = "META-INF/"; public static final String DSA_SUFFIX = ".DSA"; public static final String SF_SUFFIX = ".SF"; @@ -112,9 +115,10 @@ public abstract class JarUtils { String version = expectHeader(version_header, br); attr.putValue(SIGNATURE_VERSION, version); - if (! DEFAULT_SF_VERSION.equals(version)) - log.warning("Unexpected version number: " + version - + ". Continue (but may fail later)"); + // This may cause problems during VM bootstrap. + // if (! DEFAULT_SF_VERSION.equals(version)) + // log.warning("Unexpected version number: " + version + // + ". Continue (but may fail later)"); } catch (IOException ioe) { diff --git a/libjava/java/util/logging/LogManager.java b/libjava/java/util/logging/LogManager.java index 1e0192e3f34..811310c709d 100644 --- a/libjava/java/util/logging/LogManager.java +++ b/libjava/java/util/logging/LogManager.java @@ -559,13 +559,21 @@ public class LogManager if ("handlers".equals(key)) { - StringTokenizer tokenizer = new StringTokenizer(value); + // In Java 5 and earlier this was specified to be + // whitespace-separated, but in reality it also accepted + // commas (tomcat relied on this), and in Java 6 the + // documentation was updated to fit the implementation. + StringTokenizer tokenizer = new StringTokenizer(value, + " \t\n\r\f,"); while (tokenizer.hasMoreTokens()) { String handlerName = tokenizer.nextToken(); Handler handler = (Handler) createInstance(handlerName, Handler.class, key); - Logger.root.addHandler(handler); + // Tomcat also relies on the implementation ignoring + // items in 'handlers' which are not class names. + if (handler != null) + Logger.root.addHandler(handler); } } -- cgit v1.2.3