You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@logging.apache.org by rp...@apache.org on 2013/05/11 11:33:29 UTC
svn commit: r1481278 -
/logging/log4j/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/net/SMTPManager.java
Author: rpopma
Date: Sat May 11 09:33:29 2013
New Revision: 1481278
URL: http://svn.apache.org/r1481278
Log:
check if LogEvents array removed from buffer is empty (may happen in concurrent scenarios) to avoid sending an empty email
Modified:
logging/log4j/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/net/SMTPManager.java
Modified: logging/log4j/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/net/SMTPManager.java
URL: http://svn.apache.org/viewvc/logging/log4j/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/net/SMTPManager.java?rev=1481278&r1=1481277&r2=1481278&view=diff
==============================================================================
--- logging/log4j/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/net/SMTPManager.java (original)
+++ logging/log4j/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/net/SMTPManager.java Sat May 11 09:33:29 2013
@@ -135,6 +135,9 @@ public class SMTPManager extends Abstrac
}
try {
final LogEvent[] priorEvents = buffer.removeAll();
+ if (priorEvents == null || priorEvents.length == 0) {
+ return; // nothing to do, another thread already took all events
+ }
final byte[] rawBytes = formatContentToBytes(priorEvents, appendEvent, layout);
final String contentType = layout.getContentType();