diff --git a/src/Parser/DomainPart.php b/src/Parser/DomainPart.php index 03f8488..4ca54f2 100644 --- a/src/Parser/DomainPart.php +++ b/src/Parser/DomainPart.php @@ -280,9 +280,9 @@ private function checkLabelLength(bool $isEndOfDomain = false) : Result { if ($this->lexer->token['type'] === EmailLexer::S_DOT || $isEndOfDomain) { if ($this->isLabelTooLong($this->label)) { - $this->label = ''; return new InvalidEmail(new LabelTooLong(), $this->lexer->token['value']); } + $this->label = ''; } $this->label .= $this->lexer->token['value']; return new ValidEmail(); diff --git a/tests/EmailValidator/Validation/RFCValidationDomainPartTest.php b/tests/EmailValidator/Validation/RFCValidationDomainPartTest.php index b989298..9a5f7f7 100644 --- a/tests/EmailValidator/Validation/RFCValidationDomainPartTest.php +++ b/tests/EmailValidator/Validation/RFCValidationDomainPartTest.php @@ -76,6 +76,7 @@ public function getValidEmails() ['validipv4@[127.0.0.0]'], ['validipv4@127.0.0.0'], ['withhyphen@domain-exam.com'], + ['valid_long_domain@71846jnrsoj91yfhc18rkbrf90ue3onl8y46js38kae8inz0t1.5a-xdycuau.na49.le.example.com'] ); }