1
0
Fork 0
mirror of https://we.phorge.it/source/phorge.git synced 2024-12-23 14:00:56 +01:00
phorge-phorge/scripts
epriestley 1cb0d41367 Fix inbound mail handling for messages with no HTML body part
Summary:
See D18776. See <https://discourse.phabricator-community.org/t/cant-create-maniphest-tasks-by-email/754/2>.

The change in D18776 to improve handling of non-utf8 HTML parts broke handling of mail with //no// HTML parts. Partly, this is because MimeMailParser has a "traditional" PHP-style API where the return type is an exciting surprise.

Test Plan:
  - Sent a text-only message in `Mail.app`.
  - Used "Show Raw" to copy it to `mail.txt`, verifying that the raw message contains ONLY a text body.
  - Ran `cat mail.txt | ./scripts/mail/mail_handler.php --trace --process-duplicates`.
    - Before patch: error about bad `idx()` on a non-array.
    - After patch: clean mail processing.
  - Did the same with a message with both HTML and text bodies to make sure I didn't break anything.

Ideally we'd probably get test coverage on this, but it's been touched roughly once a year since 2013 so it'll probably hold.

Reviewers: amckinley, alexmv

Reviewed By: amckinley, alexmv

Differential Revision: https://secure.phabricator.com/D18778
2017-11-22 11:14:24 -08:00
..
almanac Use PhutilClassMapQuery instead of PhutilSymbolLoader 2015-08-14 07:49:01 +10:00
cache Use PhutilClassMapQuery instead of PhutilSymbolLoader 2015-08-14 07:49:01 +10:00
celerity Add some sort of sort to Emoji Autocomplete 2017-01-24 20:21:06 -08:00
daemon When available, use async_signals in Phabricator 2017-01-12 16:00:13 -08:00
diviner Use PhutilClassMapQuery instead of PhutilSymbolLoader 2015-08-14 07:49:01 +10:00
drydock Use PhutilClassMapQuery instead of PhutilSymbolLoader 2015-08-14 07:49:01 +10:00
fact Use PhutilClassMapQuery instead of PhutilSymbolLoader 2015-08-14 07:49:01 +10:00
files Use PhutilClassMapQuery instead of PhutilSymbolLoader 2015-08-14 07:49:01 +10:00
fpm Delete license headers from files 2012-11-05 11:16:51 -08:00
init Allow bin/aphlict to start without a valid database connection 2016-11-13 16:43:23 -08:00
install Use HTTPS, not HTTP, in install scripts 2016-11-29 12:11:04 -08:00
lipsum Improve bin/lipsum UX 2015-12-24 09:06:35 -08:00
mail Fix inbound mail handling for messages with no HTML body part 2017-11-22 11:14:24 -08:00
people Add a profileimage generation workflow for the cli 2017-03-04 15:43:13 -08:00
repository Treat commit hook execution in observed repositories as a no-op, not an error 2017-08-01 08:32:42 -07:00
search Use PhutilClassMapQuery instead of PhutilSymbolLoader 2015-08-14 07:49:01 +10:00
setup Fix spelling 2017-10-09 10:48:04 -07:00
sms Use PhutilClassMapQuery instead of PhutilSymbolLoader 2015-08-14 07:49:01 +10:00
sql Respect user/pass flags to bin/storage for direct DatabaseRef-based queries 2016-11-19 08:39:45 -08:00
ssh When available, use async_signals in Phabricator 2017-01-12 16:00:13 -08:00
symbols Update import/clear symbols scripts for callsigns 2016-02-18 09:55:57 -08:00
user Add "Mailing List" users 2015-06-03 18:42:33 -07:00
util phtize all the things 2015-05-22 21:16:39 +10:00
__init_script__.php Continue on bad database configuration from select scripts 2016-09-06 14:20:57 -07:00