I'm not sure if this is my system, or a bug, but always in the past on my Windows 2000 server, I would need to modify \libs\phpmailer\class.phpmailer.php after upgrading as follows for emails to be sent correctly, as per the SMTP RFC:

var $LE = "\r\n";

However, when I moved back to Linux, emails did not work correctly until I changed the line back to the default of:

var $LE = "\n";

Since the RFC for SMTP requires CRLF line breaks (aka \r\n), I assume that Linux adds in the CRs necessary when actually sending, which is why the \r\n doesn't work on Linux -- it actually is sending \r\r\n !

In any case, I would suggest that the code autodetect the platform, and send the CRLF on Windows servers, and only the LF on Linux servers -- unless it's just my server or something.

P.S. Also I was having some problems with emails in the past that was fixed by modifying this line of code to add some extra blank lines at the end of the email, so the end-of-email terminator would be detected correctly:

//$body = $this->CreateBody();
$body = $this->CreateBody() . $this->LE . $this->LE . $this->LE;

Thanks,
Shane


RnJpZW5kc2hpcCB3aXRoIHRoZSB3b3JsZCBpcyBob3N0aWxpdH
kgdG93YXJkcyBHb2QuICBKYW1lcyA0OjQ=