Changeset View
Changeset View
Standalone View
Standalone View
scripts/mail/mail_handler.php
| Show All 38 Lines | |||||
| $text_body_headers = $parser->getMessageBodyHeaders('text'); | $text_body_headers = $parser->getMessageBodyHeaders('text'); | ||||
| $content_type = idx($text_body_headers, 'content-type'); | $content_type = idx($text_body_headers, 'content-type'); | ||||
| if ( | if ( | ||||
| !phutil_is_utf8($text_body) && | !phutil_is_utf8($text_body) && | ||||
| (preg_match('/charset="(.*?)"/', $content_type, $matches) || | (preg_match('/charset="(.*?)"/', $content_type, $matches) || | ||||
| preg_match('/charset=(\S+)/', $content_type, $matches)) | preg_match('/charset=(\S+)/', $content_type, $matches)) | ||||
| ) { | ) { | ||||
| $text_body = phutil_utf8_convert($text_body, "UTF-8", $matches[1]); | $text_body = phutil_utf8_convert($text_body, 'UTF-8', $matches[1]); | ||||
| } | } | ||||
| $headers = $parser->getHeaders(); | $headers = $parser->getHeaders(); | ||||
| $headers['subject'] = iconv_mime_decode($headers['subject'], 0, "UTF-8"); | $headers['subject'] = iconv_mime_decode($headers['subject'], 0, 'UTF-8'); | ||||
| $headers['from'] = iconv_mime_decode($headers['from'], 0, "UTF-8"); | $headers['from'] = iconv_mime_decode($headers['from'], 0, 'UTF-8'); | ||||
| if ($args->getArg('process-duplicates')) { | if ($args->getArg('process-duplicates')) { | ||||
| $headers['message-id'] = Filesystem::readRandomCharacters(64); | $headers['message-id'] = Filesystem::readRandomCharacters(64); | ||||
| } | } | ||||
| $received = new PhabricatorMetaMTAReceivedMail(); | $received = new PhabricatorMetaMTAReceivedMail(); | ||||
| $received->setHeaders($headers); | $received->setHeaders($headers); | ||||
| $received->setBodies(array( | $received->setBodies(array( | ||||
| Show All 34 Lines | |||||