diff -u b/core/lib/Drupal/Core/Mail/Plugin/Mail/PhpMail.php b/core/lib/Drupal/Core/Mail/Plugin/Mail/PhpMail.php --- b/core/lib/Drupal/Core/Mail/Plugin/Mail/PhpMail.php +++ b/core/lib/Drupal/Core/Mail/Plugin/Mail/PhpMail.php @@ -76,8 +76,23 @@ unset($message['headers']['Return-Path']); } } + $headers = new Headers(); + // Format the data for Symfony header handlers. + // @see \Symfony\Component\Mime\Header\Headers::HEADER_CLASS_MAP foreach ($message['headers'] as $name => $value) { + switch (strtolower($name)) { + case 'from': + case 'to': + case 'reply-to': + case 'cc': + case 'bcc': + $value = is_array($value) ? $value : [$value]; + break; + + default: + break; + } $headers->addHeader($name, $value); } $line_endings = Settings::get('mail_line_endings', PHP_EOL);