Unhandled Exception rendering Maniphest Task


  • Bug reports MUST include reproduction instructions which allow someone who does not have access to your environment to reproduce the issue you’re encountering.
  • Bug reports MUST be against a recent version of Phabricator, and include version information. You can find version information in “Config > Version Information” in the web UI, or arc version from the CLI.

Reproduction Instructions
Using conduit, call maniphest.edit such that PhabricatorApplicationTransaction->getInterestingMoves() thinks there is more than one move.
Try to view the task.

Unhandled Exception: Runtime Exception
Undefined variable: board_phid

Using DarkMode we can see that line 1138 in PhabricatorApplicationTransaction is to blame - the variables for to_column and board_phid are only defined in the first branch of the if and not the second else part. Duplicating those definitions before generating the fragment should fix this issue.

Phabricator/Arcanist Version
Current stable version:

7585b1212b90467088092cc89debdf832ac2a221 (Mon, Nov 4) (branched from be2b8f4bcb62deb953049debacfbc7dca2e6edef on phacility)
db1959900a644d9b28064ec479af3296331d2a4f (Mon, Nov 4) (branched from cc1ff38843c47ef1516b9bdc3fa2ae00b2e53a38 on phacility)
1750586fdc50a6cd98adba4aa2f5a7649bd91dbe (Sep 30 2019) (branched from 39ed96cd818aae761ec92613a9ba0800824d0ab0 on phacility)

This bug was introduced in https://secure.phabricator.com/D15635 and has existed since 2016, so clearly this code path isn’t being exercised often.

Thanks, this should be fixed by https://secure.phabricator.com/D20901.

Thanks @epriestley, I can confirm that this makes the Task page render correctly, but I missed a similar usage in getTitleForFeed which shows up in the users profile page.

Lines 1307-1308 in PhabricatorApplicationTransaction have the same issue.