From: adam Date: Sat, 30 Oct 2004 22:50:34 +0000 (+0000) Subject: stupid bugfixes X-Git-Url: http://git.megacz.com/?a=commitdiff_plain;h=4cb6a79bbe3738645900a8cf85bbcf5d1b8e6065;p=org.ibex.mail.git stupid bugfixes darcs-hash:20041030225034-5007d-38f0a84a62be170acb6cbfbddda0fd2016d859ff.gz --- diff --git a/src/org/ibex/mail/Message.java b/src/org/ibex/mail/Message.java index ea06f0c..c392d3b 100644 --- a/src/org/ibex/mail/Message.java +++ b/src/org/ibex/mail/Message.java @@ -44,16 +44,16 @@ public class Message extends MIME.Part { public static Message newMessage(Stream stream) throws Malformed { return newMessage(stream, null, null); } public static Message newMessage(Stream stream, Address from, Address to) throws Malformed { - if (from == null && to == null) return newMessage(stream); + if (from == null && to == null) return new Message(stream); StringBuffer sb = new StringBuffer(); boolean inheaders = true; - if (from != null) sb.append("Return-Path: " + from.toString(true)); + if (from != null) sb.append("Return-Path: " + from.toString(true) + "\r\n"); while(true) { String s = stream.readln(); if (s == null) break; if (inheaders && to != null && s.toLowerCase().startsWith("envelope-to:")) continue; if (inheaders && from != null && s.toLowerCase().startsWith("return-path:")) continue; - if (s.length() == 0) { + if (s.length() == 0 && inheaders) { inheaders = false; if (to != null) sb.append("Envelope-To: " + to.toString(true) + "\r\n"); } @@ -111,7 +111,7 @@ public class Message extends MIME.Part { public void dump(Stream s) { s.setNewline("\r\n"); s.println(headers.raw); - s.println(); + s.println(""); s.println(body); s.flush(); } diff --git a/src/org/ibex/mail/protocol/NNTP.java b/src/org/ibex/mail/protocol/NNTP.java index e427b04..4d3fa9e 100644 --- a/src/org/ibex/mail/protocol/NNTP.java +++ b/src/org/ibex/mail/protocol/NNTP.java @@ -103,7 +103,7 @@ public class NNTP { public Listener(Login l) { this.login = l; } private void println(String s) { Log.warn("[nntp-write]", s); conn.println(s); } - private void println() { Log.warn("[nntp-write]", ""); conn.println(); } + private void println() { Log.warn("[nntp-write]", ""); conn.println(""); } private void article(String numOrMessageId, boolean head, boolean body) { String s = numOrMessageId.trim(); diff --git a/src/org/ibex/mail/protocol/SMTP.java b/src/org/ibex/mail/protocol/SMTP.java index 8b27057..3101f3f 100644 --- a/src/org/ibex/mail/protocol/SMTP.java +++ b/src/org/ibex/mail/protocol/SMTP.java @@ -164,7 +164,7 @@ public class SMTP { } private static void check(String s, Connection conn) { - while (s.charAt(3) == '-') s = conn.readln(); + while (s.length() > 3 && s.charAt(3) == '-') s = conn.readln(); if (s.startsWith("4")||s.startsWith("5")) throw new SMTPException(s); } private static boolean attempt(final Message m, final InetAddress mx) {