Author: norman Date: Sun Sep 18 19:30:33 2011 New Revision: 1172326 URL: http://svn.apache.org/viewvc?rev=1172326&view=rev Log: Don't call saveChanges() if not needed. See JAMES-1320
Modified: james/server/trunk/core/src/main/java/org/apache/james/core/MimeMessageWrapper.java Modified: james/server/trunk/core/src/main/java/org/apache/james/core/MimeMessageWrapper.java URL: http://svn.apache.org/viewvc/james/server/trunk/core/src/main/java/org/apache/james/core/MimeMessageWrapper.java?rev=1172326&r1=1172325&r2=1172326&view=diff ============================================================================== --- james/server/trunk/core/src/main/java/org/apache/james/core/MimeMessageWrapper.java (original) +++ james/server/trunk/core/src/main/java/org/apache/james/core/MimeMessageWrapper.java Sun Sep 18 19:30:33 2011 @@ -291,9 +291,7 @@ public class MimeMessageWrapper extends } public synchronized void writeTo(OutputStream headerOs, OutputStream bodyOs, String[] ignoreList, boolean preLoad) throws IOException, MessagingException { - if (!saved) - saveChanges(); - + if (preLoad == false && source != null && !isBodyModified()) { // We do not want to instantiate the message... just read from // source @@ -309,6 +307,10 @@ public class MimeMessageWrapper extends if (isHeaderModified() == false) { myHeaders = parsedHeaders; } else { + // The headers was modified so we need to call saveChanges() just to be sure + // See JAMES-1320 + if (!saved) + saveChanges(); myHeaders = headers; } IOUtils.copy(new InternetHeadersInputStream(myHeaders.getNonMatchingHeaderLines(ignoreList)), headerOs); @@ -317,6 +319,11 @@ public class MimeMessageWrapper extends IOUtils.closeQuietly(in); } } else { + // save the changes as the message was modified + // See JAMES-1320 + if (!saved) + saveChanges(); + // MimeMessageUtil.writeToInternal(this, headerOs, bodyOs, // ignoreList); if (headers == null) { --------------------------------------------------------------------- To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org For additional commands, e-mail: server-dev-h...@james.apache.org