From 91effd8de07e4afc59b6763ac72b268f58cfc941 Mon Sep 17 00:00:00 2001 From: Dominik Eckelmann Date: Fri, 23 Nov 2012 19:55:44 +0100 Subject: ignore empty header on mail sending --- _test/tests/inc/mailer.test.php | 3 +++ inc/Mailer.class.php | 12 +----------- 2 files changed, 4 insertions(+), 11 deletions(-) diff --git a/_test/tests/inc/mailer.test.php b/_test/tests/inc/mailer.test.php index 91c4a999d..053e216b8 100644 --- a/_test/tests/inc/mailer.test.php +++ b/_test/tests/inc/mailer.test.php @@ -98,6 +98,9 @@ class mailer_test extends DokuWikiTest { } } + /** + * @see https://forum.dokuwiki.org/post/35822 + */ function test_emptyBCCorCC() { $mail = new TestMailer(); $headers = &$mail->propRef('headers'); diff --git a/inc/Mailer.class.php b/inc/Mailer.class.php index 256a76d22..f1492be9b 100644 --- a/inc/Mailer.class.php +++ b/inc/Mailer.class.php @@ -553,24 +553,14 @@ class Mailer { * @returns string the headers */ protected function prepareHeaders() { - $this->removeEmptyBccOrCcHeader(); $headers = ''; foreach($this->headers as $key => $val) { + if ($val === '') continue; $headers .= "$key: $val".MAILHEADER_EOL; } return $headers; } - /** - * Removes empty BCC and CC Header. - * - * Empty BCC/CC Header can cause an error with Microsoft IIS. - */ - protected function removeEmptyBccOrCcHeader() { - if (isset($this->headers['Bcc']) && empty($this->headers['Bcc'])) unset($this->headers['Bcc']); - if (isset($this->headers['Cc']) && empty($this->headers['Cc'])) unset($this->headers['Cc']); - } - /** * return a full email with all headers * -- cgit v1.2.3