sebb 2003/12/06 05:27:19 Modified: src/jorphan/org/apache/jorphan/logging LoggingManager.java Log: Don't close log file if it is assigned to System.out Revision Changes Path 1.6 +10 -2 jakarta-jmeter/src/jorphan/org/apache/jorphan/logging/LoggingManager.java Index: LoggingManager.java =================================================================== RCS file: /home/cvs/jakarta-jmeter/src/jorphan/org/apache/jorphan/logging/LoggingManager.java,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- LoggingManager.java 18 Aug 2003 19:42:02 -0000 1.5 +++ LoggingManager.java 6 Dec 2003 13:27:19 -0000 1.6 @@ -82,6 +82,10 @@ /** Used to hold the default logging target. */ private static LogTarget target; + + // Hack to detect when System.out has been set as the target, to avoid closing it + private static boolean isTargetSystemOut = false;// Is the target System.out? + private static boolean isWriterSystemOut = false;// Is the Writer System.out? public final static String LOG_FILE = "log_file"; public final static String LOG_PRIORITY = "log_level"; @@ -132,6 +136,7 @@ private static Writer makeWriter(String logFile, String propName) { Writer wt; + isWriterSystemOut=false; try { wt = new FileWriter(logFile); @@ -140,6 +145,7 @@ { System.out.println(propName + "=" + logFile + " " + e.toString()); System.out.println("[" + propName + "-> System.out]"); + isWriterSystemOut=true; wt = new PrintWriter(System.out); } return wt; @@ -254,14 +260,16 @@ if (target == null) { target = new WriterTarget(targetFile, format); + isTargetSystemOut=isWriterSystemOut; } else { - if (target instanceof WriterTarget) + if (!isTargetSystemOut && target instanceof WriterTarget) { ((WriterTarget) target).close(); } target = new WriterTarget(targetFile, format); + isTargetSystemOut=isWriterSystemOut; } Hierarchy.getDefaultHierarchy().setDefaultLogTarget(target); }
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]