bodewig     2005/01/14 02:09:23

  Modified:    src/main/org/apache/tools/ant Project.java
  Log:
  Silently ignore messages being written to System.err/out while a Listener is 
processing a different message
  
  Revision  Changes    Path
  1.183     +15 -5     ant/src/main/org/apache/tools/ant/Project.java
  
  Index: Project.java
  ===================================================================
  RCS file: /home/cvs/ant/src/main/org/apache/tools/ant/Project.java,v
  retrieving revision 1.182
  retrieving revision 1.183
  diff -u -r1.182 -r1.183
  --- Project.java      10 Jan 2005 23:44:57 -0000      1.182
  +++ Project.java      14 Jan 2005 10:09:23 -0000      1.183
  @@ -1982,10 +1982,20 @@
           }
           synchronized (this) {
               if (loggingMessage) {
  -                throw new BuildException("Listener attempted to access "
  -                    + (priority == MSG_ERR ? "System.err" : "System.out")
  -                    + " with message [" + message
  -                    + "] - infinite loop terminated");
  +                /* 
  +                 * One of the Listeners has attempted to access
  +                 * System.err or System.out.
  +                 *
  +                 * We used to throw an exception in this case, but
  +                 * sometimes Listeners can't prevent it(like our own
  +                 * Log4jListener which invokes getLogger() which in
  +                 * turn wants to write to the console).
  +                 *
  +                 * @see 
http://marc.theaimsgroup.com/?t=110538624200006&r=1&w=2
  +                 *
  +                 * We now (Ant 1.7 and 1.6.3) simply swallow the message.
  +                 */
  +                return;
               }
               try {
                   loggingMessage = true;
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to