Make WordPress Core


Ignore:
Timestamp:
08/16/2022 06:16:43 PM (3 years ago)
Author:
desrosj
Message:

Mail: Prevent the last character of names in “From” headers from being trimmed.

When extracting the email and name from a “From” header, the last character of the name is incorrectly trimmed when a space is not included between the name and the opening <.

Though the space is required for the header to be compliant with RFC5322 (see https://www.rfc-editor.org/rfc/rfc5322#section-3.4), the absence of a space can be ignored here. PHPMailer accepts the name and email as separate parameters and constructs the header correctly later on.

Props hakanca, mikehansenme, SergeyBiryukov, kovshenin, mattyrob, drewapicture, desrosj.
Fixes #19847.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/wp-includes/pluggable.php

    r53827 r53900  
    308308                                // Text before the bracketed email is the "From" name.
    309309                                if ( $bracket_pos > 0 ) {
    310                                     $from_name = substr( $content, 0, $bracket_pos - 1 );
     310                                    $from_name = substr( $content, 0, $bracket_pos );
    311311                                    $from_name = str_replace( '"', '', $from_name );
    312312                                    $from_name = trim( $from_name );
Note: See TracChangeset for help on using the changeset viewer.