Fix array_mergev() semantics when passed an empty array
Summary:
- If you view "active revisions" and have some revisions in one panel but no
revisions in the other panel, we'll generate a call to array_mergev(array()),
which returns null instead of array().
- This cascades into a handle lookup failure because other arrays along the
way get nulled out.
- We should probably have more strict parameter checking in array_mergev(),
but this did emit piles of warnings already, it was just a nonobvious repro (one
panel with diffs, one without).
Test Plan: Looked at a panel-with-diffs + panel-without, no exception, no
errors. Ran unit test.
Reviewers: nh, btrahan
Reviewed By: nh
CC: aran, epriestley
Differential Revision: https://secure.phabricator.com/D1664