8000 bug #30445 [Mime] Fix generate message id with named address (Jibbarth) · symfony/symfony@11f1660 · GitHub
[go: up one dir, main page]

Skip to content

Commit 11f1660

Browse files
committed
bug #30445 [Mime] Fix generate message id with named address (Jibbarth)
This PR was squashed before being merged into the 4.3-dev branch (closes #30445). Discussion ---------- [Mime] Fix generate message id with named address | Q | A | ------------- | --- | Branch? | master | Bug fix? | yes | New feature? | yes | BC breaks? | no <!-- see https://symfony.com/bc --> | Deprecations? | no <!-- don't forget to update UPGRADE-*.md and src/**/CHANGELOG.md files --> | Tests pass? | yes <!-- please add some, will be required by reviewers --> | Fixed tickets | #... <!-- #-prefixed issue number(s), if any --> | License | MIT | Doc PR | When using a NamedAddress in from(), the generated MessageId don't pass the validation. In effect, the email passed to generateMessageId look like this `Fabien <fabien@symfony.com>` and the strstr transform email in this `4641b2b294b53fe983a05b1a@symfony.com>` By passing the address only instead of toString, it's fixed. <!-- Write a short README entry for your feature/bugfix here (replace this comment block.) This will help people understand your PR and can be used as a start of the Doc PR. Additionally: - Bug fixes must be submitted against the lowest branch where they apply (lowest branches are regularly merged to upper ones so they get the fixes too). - Features and deprecations must be submitted against the master branch. --> Commits ------- 375ac92 [Mime] Fix generate message id with named address
2 parents a75dd9f + 375ac92 commit 11f1660

File tree

2 files changed

+11
-1
lines changed

2 files changed

+11
-1
lines changed

src/Symfony/Component/Mime/Message.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@ public function getPreparedHeaders(): Headers
9797
}
9898

9999
if (!$headers->has('Message-ID')) {
100-
$headers->addIdHeader('Message-ID', $this->generateMessageId($sender->toString()));
100+
$headers->addIdHeader('Message-ID', $this->generateMessageId($sender->getAddress()));
101101
}
102102

103103
// remove the Bcc field which should NOT be part of the sent message

src/Symfony/Component/Mime/Tests/MessageTest.php

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
use Symfony\Component\Mime\Header\MailboxListHeader;
1818
use Symfony\Component\Mime\Header\UnstructuredHeader;
1919
use Symfony\Component\Mime\Message;
20+
use Symfony\Component\Mime\NamedAddress;
2021
use Symfony\Component\Mime\Part\TextPart;
2122

2223
class MessageTest extends TestCase
@@ -90,6 +91,15 @@ public function testGetPreparedHeadersWithNoFrom()
9091
(new Message())->getPreparedHeaders();
9192
}
9293

94+
public function testGetPreparedHeadersWithNamedFrom()
95+
{
96+
$message = new Message();
97+
$message->getHeaders()->addMailboxListHeader('From', [new NamedAddress('fabien@symfony.com', 'Fabien')]);
98+
$h = $message->getPreparedHeaders();
99+
$this->assertEquals(new MailboxListHeader('From', [new NamedAddress('fabien@symfony.com', 'Fabien')]), $h->get('From'));
100+
$this->assertTrue($h->has('Message-Id'));
101+
}
102+
93103
public function testGetPreparedHeadersHasSenderWhenNeeded()
94104
{
95105
$message = new Message();

0 commit comments

Comments
 (0)
0